| 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 25 6f 09 dd a9 02 00 00 | ontainer>.PK..........!R%o...... |
| 0180 | a9 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 31 34 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 | :0.14.1</dc:identifier>.....<dc: |
| 02a0 | 74 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 | title>Zig.Language.Reference.(0. |
| 02c0 | 31 34 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 | 14.1)</dc:title>.....<dc:languag |
| 02e0 | 65 3e 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 | e>en</dc:language>.....<meta.pro |
| 0300 | 70 65 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 | perty="dcterms:modified">2021-01 |
| 0320 | 2d 30 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 | -01T00:00:00Z</meta>...</metadat |
| 0340 | 61 3e 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 | a>...<manifest>.....<item.id="na |
| 0360 | 76 22 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 | v".href="nav.xhtml".media-type=" |
| 0380 | 61 70 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 | application/xhtml+xml".propertie |
| 03a0 | 73 3d 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 | s="nav"/>.....<item.id="index".h |
| 03c0 | 72 65 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 | ref="index.xhtml".media-type="ap |
| 03e0 | 70 6c 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 | plication/xhtml+xml"/>...</manif |
| 0400 | 65 73 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 | est>...<spine>.....<itemref.idre |
| 0420 | 66 3d 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 | f="index"/>...</spine>.</package |
| 0440 | 3e 0a 50 4b 03 04 14 00 00 00 00 00 00 00 21 52 84 12 97 eb 88 01 00 00 88 01 00 00 0f 00 00 00 | >.PK..........!R................ |
| 0460 | 4f 45 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 | OEBPS/nav.xhtml<?xml.version="1. |
| 0480 | 30 22 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 | 0".encoding="utf-8"?>.<html.xmln |
| 04a0 | 73 3d 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 | s="http://www.w3.org/1999/xhtml" |
| 04c0 | 20 78 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 | .xmlns:epub="http://www.idpf.org |
| 04e0 | 2f 32 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 | /2007/ops".lang="en">...<head><t |
| 0500 | 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 31 | itle>Zig.Language.Reference.(0.1 |
| 0520 | 34 2e 31 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 | 4.1)</title></head>...<body>.... |
| 0540 | 20 3c 6e 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 | .<nav.epub:type="toc".id="toc">. |
| 0560 | 20 20 20 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 | ......<h1>Contents</h1>.......<o |
| 0580 | 6c 3e 0a 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 | l>.........<li><a.href="index.xh |
| 05a0 | 74 6d 6c 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 31 | tml">Zig.Language.Reference.(0.1 |
| 05c0 | 34 2e 31 29 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 | 4.1)</a></li>.......</ol>.....</ |
| 05e0 | 6e 61 76 3e 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 | nav>...</body>.</html>.PK....... |
| 0600 | 00 00 00 21 52 78 77 5a ea 3a bc 0e 00 3a bc 0e 00 11 00 00 00 4f 45 42 50 53 2f 69 6e 64 65 78 | ...!RxwZ.:...:.......OEBPS/index |
| 0620 | 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 20 65 6e 63 6f 64 69 | .xhtml<?xml.version="1.0".encodi |
| 0640 | 6e 67 3d 22 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 | ng="utf-8"?>..<html.xmlns="http: |
| 0660 | 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 6c 61 6e 67 3d 22 65 | //www.w3.org/1999/xhtml".lang="e |
| 0680 | 6e 22 3e 0a 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 | n">...<head>.....<meta.charset=" |
| 06a0 | 75 74 66 2d 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 | utf-8"/>.....<meta.name="viewpor |
| 06c0 | 74 22 20 63 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 | t".content="width=device-width,. |
| 06e0 | 69 6e 69 74 69 61 6c 2d 73 63 61 6c 65 3d 31 2e 30 22 2f 3e 0a 20 20 20 20 3c 6d 65 74 61 20 6e | initial-scale=1.0"/>.....<meta.n |
| 0700 | 61 6d 65 3d 22 63 6f 6c 6f 72 2d 73 63 68 65 6d 65 22 20 63 6f 6e 74 65 6e 74 3d 22 6c 69 67 68 | ame="color-scheme".content="ligh |
| 0720 | 74 20 64 61 72 6b 22 2f 3e 0a 20 20 20 20 3c 74 69 74 6c 65 3e 44 6f 63 75 6d 65 6e 74 61 74 69 | t.dark"/>.....<title>Documentati |
| 0740 | 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 4c 61 6e 67 75 61 67 | on.-.The.Zig.Programming.Languag |
| 0760 | 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 69 63 6f 6e 22 20 68 | e</title>.....<link.rel="icon".h |
| 0780 | 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 34 2c 69 56 42 4f 52 | ref="data:image/png;base64,iVBOR |
| 07a0 | 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 41 51 43 41 59 41 41 | w0KGgoAAAANSUhEUgAAABAAAAAQCAYAA |
| 07c0 | 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 44 37 45 6c 6c 4a 49 | AAf8/9hAAAAgklEQVR4AWMYWuD7EllJI |
| 07e0 | 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 58 67 4e 78 44 48 6f | M4G4g4g5oIJ/odhOJ8wToOxSTXgNxDHo |
| 0800 | 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 7a 69 45 7a 59 41 6f | eiBMfA4+wGShjyYOCkG/IGqWQziEzYAo |
| 0820 | 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 49 42 49 4f 64 43 78 | UAeiF9D5U+DxEg14DRU7jWIT5IBIOdCx |
| 0840 | 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 70 38 55 59 6d 52 64 | f+A+CQZAAoopEB7QJwBCBwHiip8UYmRd |
| 0860 | 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 43 78 78 79 63 42 6e | rAlDpIMgApwQZNnNii5Dq0MBgCxxycBn |
| 0880 | 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 3e 0a 20 20 20 20 3c | wEd+wAAAABJRU5ErkJggg=="/>.....< |
| 08a0 | 6c 69 6e 6b 20 72 65 6c 3d 22 69 63 6f 6e 22 20 68 72 65 66 3d 22 64 61 74 61 3a 69 6d 61 67 65 | link.rel="icon".href="data:image |
| 08c0 | 2f 73 76 67 2b 78 6d 6c 3b 62 61 73 65 36 34 2c 50 48 4e 32 5a 79 42 34 62 57 78 75 63 7a 30 69 | /svg+xml;base64,PHN2ZyB4bWxucz0i |
| 08e0 | 61 48 52 30 63 44 6f 76 4c 33 64 33 64 79 35 33 4d 79 35 76 63 6d 63 76 4d 6a 41 77 4d 43 39 7a | aHR0cDovL3d3dy53My5vcmcvMjAwMC9z |
| 0900 | 64 6d 63 69 49 48 5a 70 5a 58 64 43 62 33 67 39 49 6a 41 67 4d 43 41 78 4e 54 4d 67 4d 54 51 77 | dmciIHZpZXdCb3g9IjAgMCAxNTMgMTQw |
| 0920 | 49 6a 34 38 5a 79 42 6d 61 57 78 73 50 53 49 6a 52 6a 64 42 4e 44 46 45 49 6a 34 38 5a 7a 34 38 | Ij48ZyBmaWxsPSIjRjdBNDFEIj48Zz48 |
| 0940 | 63 47 39 73 65 57 64 76 62 69 42 77 62 32 6c 75 64 48 4d 39 49 6a 51 32 4c 44 49 79 49 44 49 34 | cG9seWdvbiBwb2ludHM9IjQ2LDIyIDI4 |
| 0960 | 4c 44 51 30 49 44 45 35 4c 44 4d 77 49 69 38 2b 50 48 42 76 62 48 6c 6e 62 32 34 67 63 47 39 70 | LDQ0IDE5LDMwIi8+PHBvbHlnb24gcG9p |
| 0980 | 62 6e 52 7a 50 53 49 30 4e 69 77 79 4d 69 41 7a 4d 79 77 7a 4d 79 41 79 4f 43 77 30 4e 43 41 79 | bnRzPSI0NiwyMiAzMywzMyAyOCw0NCAy |
| 09a0 | 4d 69 77 30 4e 43 41 79 4d 69 77 35 4e 53 41 7a 4d 53 77 35 4e 53 41 79 4d 43 77 78 4d 44 41 67 | Miw0NCAyMiw5NSAzMSw5NSAyMCwxMDAg |
| 09c0 | 4d 54 49 73 4d 54 45 33 49 44 41 73 4d 54 45 33 49 44 41 73 4d 6a 49 69 49 48 4e 6f 59 58 42 6c | MTIsMTE3IDAsMTE3IDAsMjIiIHNoYXBl |
| 09e0 | 4c 58 4a 6c 62 6d 52 6c 63 6d 6c 75 5a 7a 30 69 59 33 4a 70 63 33 42 46 5a 47 64 6c 63 79 49 76 | LXJlbmRlcmluZz0iY3Jpc3BFZGdlcyIv |
| 0a00 | 50 6a 78 77 62 32 78 35 5a 32 39 75 49 48 42 76 61 57 35 30 63 7a 30 69 4d 7a 45 73 4f 54 55 67 | Pjxwb2x5Z29uIHBvaW50cz0iMzEsOTUg |
| 0a20 | 4d 54 49 73 4d 54 45 33 49 44 51 73 4d 54 41 32 49 69 38 2b 50 43 39 6e 50 6a 78 6e 50 6a 78 77 | MTIsMTE3IDQsMTA2Ii8+PC9nPjxnPjxw |
| 0a40 | 62 32 78 35 5a 32 39 75 49 48 42 76 61 57 35 30 63 7a 30 69 4e 54 59 73 4d 6a 49 67 4e 6a 49 73 | b2x5Z29uIHBvaW50cz0iNTYsMjIgNjIs |
| 0a60 | 4d 7a 59 67 4d 7a 63 73 4e 44 51 69 4c 7a 34 38 63 47 39 73 65 57 64 76 62 69 42 77 62 32 6c 75 | MzYgMzcsNDQiLz48cG9seWdvbiBwb2lu |
| 0a80 | 64 48 4d 39 49 6a 55 32 4c 44 49 79 49 44 45 78 4d 53 77 79 4d 69 41 78 4d 54 45 73 4e 44 51 67 | dHM9IjU2LDIyIDExMSwyMiAxMTEsNDQg |
| 0aa0 | 4d 7a 63 73 4e 44 51 67 4e 54 59 73 4d 7a 49 69 49 48 4e 6f 59 58 42 6c 4c 58 4a 6c 62 6d 52 6c | MzcsNDQgNTYsMzIiIHNoYXBlLXJlbmRl |
| 0ac0 | 63 6d 6c 75 5a 7a 30 69 59 33 4a 70 63 33 42 46 5a 47 64 6c 63 79 49 76 50 6a 78 77 62 32 78 35 | cmluZz0iY3Jpc3BFZGdlcyIvPjxwb2x5 |
| 0ae0 | 5a 32 39 75 49 48 42 76 61 57 35 30 63 7a 30 69 4d 54 45 32 4c 44 6b 31 49 44 6b 33 4c 44 45 78 | Z29uIHBvaW50cz0iMTE2LDk1IDk3LDEx |
| 0b00 | 4e 79 41 35 4d 43 77 78 4d 44 51 69 4c 7a 34 38 63 47 39 73 65 57 64 76 62 69 42 77 62 32 6c 75 | NyA5MCwxMDQiLz48cG9seWdvbiBwb2lu |
| 0b20 | 64 48 4d 39 49 6a 45 78 4e 69 77 35 4e 53 41 78 4d 44 41 73 4d 54 41 30 49 44 6b 33 4c 44 45 78 | dHM9IjExNiw5NSAxMDAsMTA0IDk3LDEx |
| 0b40 | 4e 79 41 30 4d 69 77 78 4d 54 63 67 4e 44 49 73 4f 54 55 69 49 48 4e 6f 59 58 42 6c 4c 58 4a 6c | NyA0MiwxMTcgNDIsOTUiIHNoYXBlLXJl |
| 0b60 | 62 6d 52 6c 63 6d 6c 75 5a 7a 30 69 59 33 4a 70 63 33 42 46 5a 47 64 6c 63 79 49 76 50 6a 78 77 | bmRlcmluZz0iY3Jpc3BFZGdlcyIvPjxw |
| 0b80 | 62 32 78 35 5a 32 39 75 49 48 42 76 61 57 35 30 63 7a 30 69 4d 54 55 77 4c 44 41 67 4e 54 49 73 | b2x5Z29uIHBvaW50cz0iMTUwLDAgNTIs |
| 0ba0 | 4d 54 45 33 49 44 4d 73 4d 54 51 77 49 44 45 77 4d 53 77 79 4d 69 49 76 50 6a 77 76 5a 7a 34 38 | MTE3IDMsMTQwIDEwMSwyMiIvPjwvZz48 |
| 0bc0 | 5a 7a 34 38 63 47 39 73 65 57 64 76 62 69 42 77 62 32 6c 75 64 48 4d 39 49 6a 45 30 4d 53 77 79 | Zz48cG9seWdvbiBwb2ludHM9IjE0MSwy |
| 0be0 | 4d 69 41 78 4e 44 41 73 4e 44 41 67 4d 54 49 79 4c 44 51 31 49 69 38 2b 50 48 42 76 62 48 6c 6e | MiAxNDAsNDAgMTIyLDQ1Ii8+PHBvbHln |
| 0c00 | 62 32 34 67 63 47 39 70 62 6e 52 7a 50 53 49 78 4e 54 4d 73 4d 6a 49 67 4d 54 55 7a 4c 44 45 78 | b24gcG9pbnRzPSIxNTMsMjIgMTUzLDEx |
| 0c20 | 4e 79 41 78 4d 44 59 73 4d 54 45 33 49 44 45 79 4d 43 77 78 4d 44 55 67 4d 54 49 31 4c 44 6b 31 | NyAxMDYsMTE3IDEyMCwxMDUgMTI1LDk1 |
| 0c40 | 49 44 45 7a 4d 53 77 35 4e 53 41 78 4d 7a 45 73 4e 44 55 67 4d 54 49 79 4c 44 51 31 49 44 45 7a | IDEzMSw5NSAxMzEsNDUgMTIyLDQ1IDEz |
| 0c60 | 4d 69 77 7a 4e 69 41 78 4e 44 45 73 4d 6a 49 69 49 48 4e 6f 59 58 42 6c 4c 58 4a 6c 62 6d 52 6c | MiwzNiAxNDEsMjIiIHNoYXBlLXJlbmRl |
| 0c80 | 63 6d 6c 75 5a 7a 30 69 59 33 4a 70 63 33 42 46 5a 47 64 6c 63 79 49 76 50 6a 78 77 62 32 78 35 | cmluZz0iY3Jpc3BFZGdlcyIvPjxwb2x5 |
| 0ca0 | 5a 32 39 75 49 48 42 76 61 57 35 30 63 7a 30 69 4d 54 49 31 4c 44 6b 31 49 44 45 7a 4d 43 77 78 | Z29uIHBvaW50cz0iMTI1LDk1IDEzMCwx |
| 0cc0 | 4d 54 41 67 4d 54 41 32 4c 44 45 78 4e 79 49 76 50 6a 77 76 5a 7a 34 38 4c 32 63 2b 50 43 39 7a | MTAgMTA2LDExNyIvPjwvZz48L2c+PC9z |
| 0ce0 | 64 6d 63 2b 22 2f 3e 0a 20 20 20 20 3c 73 74 79 6c 65 3e 0a 20 20 20 20 20 20 3a 72 6f 6f 74 7b | dmc+"/>.....<style>.......:root{ |
| 0d00 | 0a 20 20 20 20 20 20 20 20 20 2d 2d 6e 61 76 2d 77 69 64 74 68 3a 20 32 36 65 6d 3b 0a 20 20 20 | ..........--nav-width:.26em;.... |
| 0d20 | 20 20 20 20 20 20 2d 2d 6e 61 76 2d 6d 61 72 67 69 6e 2d 6c 3a 20 31 65 6d 3b 0a 20 20 20 20 20 | ......--nav-margin-l:.1em;...... |
| 0d40 | 20 7d 0a 20 20 20 20 20 20 62 6f 64 79 7b 0a 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 66 61 6d 69 | .}.......body{.........font-fami |
| 0d60 | 6c 79 3a 20 73 79 73 74 65 6d 2d 75 69 2c 20 2d 61 70 70 6c 65 2d 73 79 73 74 65 6d 2c 20 52 6f | ly:.system-ui,.-apple-system,.Ro |
| 0d80 | 62 6f 74 6f 2c 20 22 53 65 67 6f 65 20 55 49 22 2c 20 73 61 6e 73 2d 73 65 72 69 66 3b 0a 20 20 | boto,."Segoe.UI",.sans-serif;... |
| 0da0 | 20 20 20 20 20 20 6d 61 72 67 69 6e 3a 20 30 3b 0a 20 20 20 20 20 20 20 20 6c 69 6e 65 2d 68 65 | ......margin:.0;.........line-he |
| 0dc0 | 69 67 68 74 3a 20 31 2e 35 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 68 65 61 64 65 72 20 | ight:.1.5;.......}.......header. |
| 0de0 | 7b 0a 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 30 20 31 65 6d 3b 0a 20 20 20 20 20 20 | {.........padding:.0.1em;....... |
| 0e00 | 7d 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 2d | }.......#contents.{.........max- |
| 0e20 | 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 74 | width:.60em;.........margin:.aut |
| 0e40 | 6f 3b 0a 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 30 20 31 65 6d 3b 0a 20 20 20 20 20 | o;.........padding:.0.1em;...... |
| 0e60 | 20 7d 0a 20 20 20 20 20 20 23 6e 61 76 69 67 61 74 69 6f 6e 20 7b 0a 20 20 20 20 20 20 20 20 70 | .}.......#navigation.{.........p |
| 0e80 | 61 64 64 69 6e 67 3a 20 30 20 31 65 6d 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 74 61 62 | adding:.0.1em;.......}.......tab |
| 0ea0 | 6c 65 20 75 6c 20 7b 0a 20 20 20 20 20 20 20 20 6c 69 73 74 2d 73 74 79 6c 65 2d 74 79 70 65 3a | le.ul.{.........list-style-type: |
| 0ec0 | 20 6e 6f 6e 65 3b 0a 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 30 65 6d 3b 0a 20 20 20 | .none;.........padding:.0em;.... |
| 0ee0 | 20 20 20 7d 0a 20 20 20 20 20 20 74 61 62 6c 65 20 6c 69 20 7b 0a 20 20 20 20 20 20 20 20 70 61 | ...}.......table.li.{.........pa |
| 0f00 | 64 64 69 6e 67 2d 62 6f 74 74 6f 6d 3a 20 31 65 6d 3b 0a 20 20 20 20 20 20 20 20 6c 69 6e 65 2d | dding-bottom:.1em;.........line- |
| 0f20 | 68 65 69 67 68 74 3a 31 2e 32 65 6d 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 74 61 62 6c | height:1.2em;.......}.......tabl |
| 0f40 | 65 2c 20 74 68 2c 20 74 64 20 7b 0a 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 2d 63 6f 6c 6c 61 | e,.th,.td.{.........border-colla |
| 0f60 | 70 73 65 3a 20 63 6f 6c 6c 61 70 73 65 3b 0a 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 3a 20 31 | pse:.collapse;.........border:.1 |
| 0f80 | 70 78 20 73 6f 6c 69 64 20 67 72 65 79 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 74 68 2c | px.solid.grey;.......}.......th, |
| 0fa0 | 20 74 64 20 7b 0a 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 30 2e 35 65 6d 3b 0a 20 20 | .td.{.........padding:.0.5em;... |
| 0fc0 | 20 20 20 20 7d 0a 20 20 20 20 20 20 74 68 5b 73 63 6f 70 65 3d 72 6f 77 5d 20 7b 0a 20 20 20 20 | ....}.......th[scope=row].{..... |
| 0fe0 | 20 20 20 20 20 20 74 65 78 74 2d 61 6c 69 67 6e 3a 20 6c 65 66 74 3b 0a 20 20 20 20 20 20 20 20 | ......text-align:.left;......... |
| 1000 | 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 6e 6f 72 6d 61 6c 3b 0a 20 20 20 20 20 20 7d 0a 0a | ..font-weight:.normal;.......}.. |
| 1020 | 20 20 20 20 20 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 | ......@media.screen.and.(min-wid |
| 1040 | 74 68 3a 20 31 30 32 35 70 78 29 20 7b 0a 20 20 20 20 20 20 20 20 68 65 61 64 65 72 20 7b 0a 20 | th:.1025px).{.........header.{.. |
| 1060 | 20 20 20 20 20 20 20 20 20 6d 61 72 67 69 6e 2d 6c 65 66 74 3a 20 63 61 6c 63 28 76 61 72 28 2d | .........margin-left:.calc(var(- |
| 1080 | 2d 6e 61 76 2d 77 69 64 74 68 29 20 2b 20 76 61 72 28 2d 2d 6e 61 76 2d 6d 61 72 67 69 6e 2d 6c | -nav-width).+.var(--nav-margin-l |
| 10a0 | 29 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 68 65 61 64 65 72 20 68 31 20 | ));.........}.........header.h1. |
| 10c0 | 7b 0a 20 20 20 20 20 20 20 20 20 20 6d 61 72 67 69 6e 3a 20 61 75 74 6f 3b 0a 20 20 20 20 20 20 | {...........margin:.auto;....... |
| 10e0 | 20 20 20 20 6d 61 78 2d 77 69 64 74 68 3a 20 33 30 65 6d 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 | ....max-width:.30em;.........}.. |
| 1100 | 20 20 20 20 20 20 20 23 6e 61 76 69 67 61 74 69 6f 6e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 6f | .......#navigation.{...........o |
| 1120 | 76 65 72 66 6c 6f 77 3a 20 61 75 74 6f 3b 0a 20 20 20 20 20 20 20 20 20 20 77 69 64 74 68 3a 20 | verflow:.auto;...........width:. |
| 1140 | 76 61 72 28 2d 2d 6e 61 76 2d 77 69 64 74 68 29 3b 0a 20 20 20 20 20 20 20 20 20 20 68 65 69 67 | var(--nav-width);...........heig |
| 1160 | 68 74 3a 20 31 30 30 76 68 3b 0a 20 20 20 20 20 20 20 20 20 20 70 6f 73 69 74 69 6f 6e 3a 20 66 | ht:.100vh;...........position:.f |
| 1180 | 69 78 65 64 3b 0a 20 20 20 20 20 20 20 20 20 20 74 6f 70 3a 30 3b 0a 20 20 20 20 20 20 20 20 20 | ixed;...........top:0;.......... |
| 11a0 | 20 6c 65 66 74 3a 30 3b 0a 20 20 20 20 20 20 20 20 20 20 62 6f 74 74 6f 6d 3a 30 3b 0a 20 20 20 | .left:0;...........bottom:0;.... |
| 11c0 | 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 75 6e 73 65 74 3b 0a 20 20 20 20 20 20 20 20 20 | .......padding:.unset;.......... |
| 11e0 | 20 6d 61 72 67 69 6e 2d 6c 65 66 74 3a 20 76 61 72 28 2d 2d 6e 61 76 2d 6d 61 72 67 69 6e 2d 6c | .margin-left:.var(--nav-margin-l |
| 1200 | 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 23 6e 61 76 69 67 61 74 69 6f 6e | );.........}.........#navigation |
| 1220 | 20 6e 61 76 20 75 6c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 2d 6c 65 66 74 | .nav.ul.{...........padding-left |
| 1240 | 3a 20 31 65 6d 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 6e | :.1em;.........}.........#conten |
| 1260 | 74 73 2d 77 72 61 70 70 65 72 20 7b 0a 20 20 20 20 20 20 20 20 20 20 6d 61 72 67 69 6e 2d 6c 65 | ts-wrapper.{...........margin-le |
| 1280 | 66 74 3a 20 63 61 6c 63 28 76 61 72 28 2d 2d 6e 61 76 2d 77 69 64 74 68 29 20 2b 20 76 61 72 28 | ft:.calc(var(--nav-width).+.var( |
| 12a0 | 2d 2d 6e 61 76 2d 6d 61 72 67 69 6e 2d 6c 29 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 | --nav-margin-l));.........}..... |
| 12c0 | 20 20 7d 0a 0a 20 20 20 20 20 20 61 3a 68 6f 76 65 72 2c 61 3a 66 6f 63 75 73 20 7b 0a 20 20 20 | ..}........a:hover,a:focus.{.... |
| 12e0 | 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a 20 23 66 66 66 32 61 38 3b 0a 20 20 20 20 20 20 | .....background:.#fff2a8;....... |
| 1300 | 7d 0a 20 20 20 20 20 20 64 74 20 7b 0a 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 | }.......dt.{.........font-weight |
| 1320 | 3a 20 62 6f 6c 64 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 73 67 72 2d 31 6d 20 7b 0a | :.bold;.......}........sgr-1m.{. |
| 1340 | 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;...... |
| 1360 | 20 7d 0a 20 20 20 20 20 20 2e 73 67 72 2d 32 6d 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 | .}........sgr-2m.{.........color |
| 1380 | 3a 20 23 35 37 35 37 35 37 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 73 67 72 2d 33 31 | :.#575757;.......}........sgr-31 |
| 13a0 | 5f 31 6d 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 62 34 30 30 30 30 3b 0a 20 20 | _1m.{.........color:.#b40000;... |
| 13c0 | 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 73 67 72 2d 33 32 5f 31 6d 20 7b 0a 20 20 20 20 20 20 20 | ....}........sgr-32_1m.{........ |
| 13e0 | 20 63 6f 6c 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 73 67 | .color:.green;.......}........sg |
| 1400 | 72 2d 33 36 5f 31 6d 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 35 43 37 41 | r-36_1m.{.........color:.#005C7A |
| 1420 | 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 66 69 6c 65 20 7b 0a 20 20 20 20 20 20 20 20 | ;.......}........file.{......... |
| 1440 | 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 20 20 62 6f 72 64 65 | font-weight:.bold;.........borde |
| 1460 | 72 3a 20 75 6e 73 65 74 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 63 6f 64 65 20 7b 0a 20 | r:.unset;.......}.......code.{.. |
| 1480 | 20 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 | .......background:.#f8f8f8;..... |
| 14a0 | 20 20 20 20 62 6f 72 64 65 72 3a 20 31 70 78 20 64 6f 74 74 65 64 20 73 69 6c 76 65 72 3b 0a 20 | ....border:.1px.dotted.silver;.. |
| 14c0 | 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 2d 6c 65 66 74 3a 20 30 2e 33 65 6d 3b 0a 20 20 20 20 | .......padding-left:.0.3em;..... |
| 14e0 | 20 20 20 20 70 61 64 64 69 6e 67 2d 72 69 67 68 74 3a 20 30 2e 33 65 6d 3b 0a 20 20 20 20 20 20 | ....padding-right:.0.3em;....... |
| 1500 | 7d 0a 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 64 69 73 | }.......pre.>.code.{.........dis |
| 1520 | 70 6c 61 79 3a 20 62 6c 6f 63 6b 3b 0a 20 20 20 20 20 20 20 20 6f 76 65 72 66 6c 6f 77 3a 20 61 | play:.block;.........overflow:.a |
| 1540 | 75 74 6f 3b 0a 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 30 2e 35 65 6d 3b 0a 20 20 20 | uto;.........padding:.0.5em;.... |
| 1560 | 20 20 20 20 20 62 6f 72 64 65 72 3a 20 31 70 78 20 73 6f 6c 69 64 20 23 65 65 65 3b 0a 20 20 20 | .....border:.1px.solid.#eee;.... |
| 1580 | 20 20 20 20 20 6c 69 6e 65 2d 68 65 69 67 68 74 3a 20 6e 6f 72 6d 61 6c 3b 0a 20 20 20 20 20 20 | .....line-height:.normal;....... |
| 15a0 | 7d 0a 20 20 20 20 20 20 73 61 6d 70 20 7b 0a 20 20 20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e | }.......samp.{.........backgroun |
| 15c0 | 64 3a 20 23 66 61 66 61 66 61 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 70 72 65 20 3e 20 | d:.#fafafa;.......}.......pre.>. |
| 15e0 | 73 61 6d 70 20 7b 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 | samp.{.........display:.block;.. |
| 1600 | 20 20 20 20 20 20 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 | .......overflow:.auto;.........p |
| 1620 | 61 64 64 69 6e 67 3a 20 30 2e 35 65 6d 3b 0a 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 3a 20 31 | adding:.0.5em;.........border:.1 |
| 1640 | 70 78 20 73 6f 6c 69 64 20 23 65 65 65 3b 0a 20 20 20 20 20 20 20 20 6c 69 6e 65 2d 68 65 69 67 | px.solid.#eee;.........line-heig |
| 1660 | 68 74 3a 20 6e 6f 72 6d 61 6c 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 6b 62 64 20 7b 0a | ht:.normal;.......}.......kbd.{. |
| 1680 | 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 6e 6f 72 6d 61 6c 3b 0a 20 20 20 | ........font-weight:.normal;.... |
| 16a0 | 20 20 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 | ...}........table-wrapper.{..... |
| 16c0 | 20 20 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 | ....width:.100%;.........overflo |
| 16e0 | 77 2d 78 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 | w-x:.auto;.......}.........tok-k |
| 1700 | 77 20 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 | w.{...........color:.#333;...... |
| 1720 | 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 20 7d 0a | .....font-weight:.bold;.......}. |
| 1740 | 20 20 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 | .......tok-str.{...........color |
| 1760 | 3a 20 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 | :.#d14;.......}........tok-built |
| 1780 | 69 6e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 35 43 37 41 3b 0a 20 | in.{...........color:.#005C7A;.. |
| 17a0 | 20 20 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 | .....}........tok-comment.{..... |
| 17c0 | 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 35 34 35 34 35 34 3b 0a 20 20 20 20 20 20 20 20 20 20 | ......color:.#545454;........... |
| 17e0 | 66 6f 6e 74 2d 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 | font-style:.italic;.......}..... |
| 1800 | 20 20 2e 74 6f 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 | ...tok-fn.{...........color:.#90 |
| 1820 | 30 3b 0a 20 20 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 | 0;...........font-weight:.bold;. |
| 1840 | 20 20 20 20 20 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 | ......}........tok-null.{....... |
| 1860 | 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 35 43 35 43 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 | ....color:.#005C5C;.......}..... |
| 1880 | 20 20 2e 74 6f 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 | ...tok-number.{...........color: |
| 18a0 | 20 23 30 30 35 43 35 43 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 74 79 70 | .#005C5C;.......}........tok-typ |
| 18c0 | 65 20 7b 0a 20 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 | e.{...........color:.#458;...... |
| 18e0 | 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 20 7d 0a | .....font-weight:.bold;.......}. |
| 1900 | 0a 20 20 20 20 20 20 66 69 67 75 72 65 20 7b 0a 20 20 20 20 20 20 20 20 6d 61 72 67 69 6e 3a 20 | .......figure.{.........margin:. |
| 1920 | 61 75 74 6f 20 30 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 66 69 67 75 72 65 20 70 72 65 | auto.0;.......}.......figure.pre |
| 1940 | 20 7b 0a 20 20 20 20 20 20 20 20 6d 61 72 67 69 6e 2d 74 6f 70 3a 20 30 3b 0a 20 20 20 20 20 20 | .{.........margin-top:.0;....... |
| 1960 | 7d 0a 0a 20 20 20 20 20 20 66 69 67 63 61 70 74 69 6f 6e 20 7b 0a 20 20 20 20 20 20 20 20 70 61 | }........figcaption.{.........pa |
| 1980 | 64 64 69 6e 67 2d 6c 65 66 74 3a 20 30 2e 35 65 6d 3b 0a 20 20 20 20 20 20 20 20 66 6f 6e 74 2d | dding-left:.0.5em;.........font- |
| 19a0 | 73 69 7a 65 3a 20 73 6d 61 6c 6c 3b 0a 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 2d 74 6f 70 2d | size:.small;.........border-top- |
| 19c0 | 6c 65 66 74 2d 72 61 64 69 75 73 3a 20 35 70 78 3b 0a 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 | left-radius:.5px;.........border |
| 19e0 | 2d 74 6f 70 2d 72 69 67 68 74 2d 72 61 64 69 75 73 3a 20 35 70 78 3b 0a 20 20 20 20 20 20 7d 0a | -top-right-radius:.5px;.......}. |
| 1a00 | 20 20 20 20 20 20 66 69 67 63 61 70 74 69 6f 6e 2e 7a 69 67 2d 63 61 70 20 7b 0a 20 20 20 20 20 | ......figcaption.zig-cap.{...... |
| 1a20 | 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a 20 23 66 63 64 62 61 35 3b 0a 20 20 20 20 20 20 7d 0a | ...background:.#fcdba5;.......}. |
| 1a40 | 20 20 20 20 20 20 66 69 67 63 61 70 74 69 6f 6e 2e 63 2d 63 61 70 20 7b 0a 20 20 20 20 20 20 20 | ......figcaption.c-cap.{........ |
| 1a60 | 20 62 61 63 6b 67 72 6f 75 6e 64 3a 20 23 61 38 62 39 63 63 3b 0a 20 20 20 20 20 20 20 20 63 6f | .background:.#a8b9cc;.........co |
| 1a80 | 6c 6f 72 3a 20 23 30 30 30 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 66 69 67 63 61 70 74 | lor:.#000;.......}.......figcapt |
| 1aa0 | 69 6f 6e 2e 70 65 67 2d 63 61 70 20 7b 0a 20 20 20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 | ion.peg-cap.{.........background |
| 1ac0 | 3a 20 23 66 63 64 62 61 35 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 66 69 67 63 61 70 74 | :.#fcdba5;.......}.......figcapt |
| 1ae0 | 69 6f 6e 2e 6a 61 76 61 73 63 72 69 70 74 2d 63 61 70 20 7b 0a 20 20 20 20 20 20 20 20 62 61 63 | ion.javascript-cap.{.........bac |
| 1b00 | 6b 67 72 6f 75 6e 64 3a 20 23 33 36 35 64 39 35 3b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a | kground:.#365d95;.........color: |
| 1b20 | 20 23 66 66 66 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 66 69 67 63 61 70 74 69 6f 6e 2e | .#fff;.......}.......figcaption. |
| 1b40 | 73 68 65 6c 6c 2d 63 61 70 20 7b 0a 20 20 20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a 20 | shell-cap.{.........background:. |
| 1b60 | 23 63 63 63 3b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 30 3b 0a 20 20 20 20 20 | #ccc;.........color:.#000;...... |
| 1b80 | 20 7d 0a 0a 20 20 20 20 20 20 61 73 69 64 65 20 7b 0a 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 | .}........aside.{.........border |
| 1ba0 | 2d 6c 65 66 74 3a 20 30 2e 32 35 65 6d 20 73 6f 6c 69 64 20 23 66 37 61 34 31 64 3b 0a 20 20 20 | -left:.0.25em.solid.#f7a41d;.... |
| 1bc0 | 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 30 20 31 65 6d 20 30 20 31 65 6d 3b 0a 20 20 20 20 20 | .....padding:.0.1em.0.1em;...... |
| 1be0 | 20 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 | .}........h1.a,.h2.a,.h3.a,.h4.a |
| 1c00 | 2c 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 | ,.h5.a.{.........text-decoration |
| 1c20 | 3a 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 | :.none;.........color:.#333;.... |
| 1c40 | 20 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 | ...}........a.hdr.{.........visi |
| 1c60 | 62 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 | bility:.hidden;.......}.......h1 |
| 1c80 | 3a 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 | :hover.>.a.hdr,.h2:hover.>.a.hdr |
| 1ca0 | 2c 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 | ,.h3:hover.>.a.hdr,.h4:hover.>.a |
| 1cc0 | 2e 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 | .hdr,.h5:hover.>.a.hdr.{........ |
| 1ce0 | 20 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 | .visibility:.visible;.......}... |
| 1d00 | 20 20 20 20 20 74 68 20 70 72 65 20 63 6f 64 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 62 61 63 | .....th.pre.code.{...........bac |
| 1d20 | 6b 67 72 6f 75 6e 64 3a 20 6e 6f 6e 65 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 40 6d | kground:.none;.......}........@m |
| 1d40 | 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 3a 20 64 61 72 6b | edia.(prefers-color-scheme:.dark |
| 1d60 | 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 20 20 20 20 62 61 | ).{.........body{.............ba |
| 1d80 | 63 6b 67 72 6f 75 6e 64 3a 23 31 32 31 32 31 32 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f | ckground:#121212;.............co |
| 1da0 | 6c 6f 72 3a 20 23 63 63 63 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 61 20 7b | lor:.#ccc;.........}.........a.{ |
| 1dc0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 38 38 66 3b 0a 20 20 20 20 20 20 | .............color:.#88f;....... |
| 1de0 | 20 20 7d 0a 20 20 20 20 20 20 20 20 61 3a 68 6f 76 65 72 2c 61 3a 66 6f 63 75 73 20 7b 0a 20 20 | ..}.........a:hover,a:focus.{... |
| 1e00 | 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 30 3b 0a 20 20 20 20 20 20 20 20 7d | ..........color:.#000;.........} |
| 1e20 | 0a 20 20 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 | .........table,.th,.td.{........ |
| 1e40 | 20 20 20 20 20 62 6f 72 64 65 72 2d 63 6f 6c 6f 72 3a 20 67 72 65 79 3b 0a 20 20 20 20 20 20 20 | .....border-color:.grey;........ |
| 1e60 | 20 7d 0a 20 20 20 20 20 20 20 20 2e 73 67 72 2d 32 6d 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | .}..........sgr-2m.{............ |
| 1e80 | 20 63 6f 6c 6f 72 3a 20 67 72 65 79 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 | .color:.grey;.........}......... |
| 1ea0 | 2e 73 67 72 2d 33 31 5f 31 6d 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 | .sgr-31_1m.{.............color:. |
| 1ec0 | 72 65 64 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 2e 73 67 72 2d 33 32 5f 31 | red;.........}..........sgr-32_1 |
| 1ee0 | 6d 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 42 38 30 30 3b 0a | m.{.............color:.#00B800;. |
| 1f00 | 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 2e 73 67 72 2d 33 36 5f 31 6d 20 7b 0a 20 | ........}..........sgr-36_1m.{.. |
| 1f20 | 20 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 20 20 | ...........color:.#0086b3;...... |
| 1f40 | 20 20 20 7d 0a 20 20 20 20 20 20 20 20 63 6f 64 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 62 61 | ...}.........code.{...........ba |
| 1f60 | 63 6b 67 72 6f 75 6e 64 3a 20 23 32 32 32 3b 0a 20 20 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 | ckground:.#222;...........border |
| 1f80 | 2d 63 6f 6c 6f 72 3a 20 23 34 34 34 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 | -color:.#444;.........}......... |
| 1fa0 | 70 72 65 20 3e 20 63 6f 64 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 | pre.>.code.{.............color:. |
| 1fc0 | 23 63 63 63 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a 20 23 32 | #ccc;.............background:.#2 |
| 1fe0 | 32 32 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 3a 20 75 6e 73 65 74 3b 0a 20 | 22;.............border:.unset;.. |
| 2000 | 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 73 61 6d 70 20 7b 0a 20 20 20 20 20 20 20 20 | .......}.........samp.{......... |
| 2020 | 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a 20 23 30 30 30 3b 0a 20 20 20 20 20 20 20 20 20 20 63 6f | ..background:.#000;...........co |
| 2040 | 6c 6f 72 3a 20 23 63 63 63 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 70 72 65 | lor:.#ccc;.........}.........pre |
| 2060 | 20 3e 20 73 61 6d 70 20 7b 0a 20 20 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 3a 20 75 6e 73 65 | .>.samp.{...........border:.unse |
| 2080 | 74 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 6b 77 20 7b 0a 20 | t;.........}..........tok-kw.{.. |
| 20a0 | 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 65 65 65 3b 0a 20 20 20 20 20 20 20 20 | ...........color:.#eee;......... |
| 20c0 | 7d 0a 20 20 20 20 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 20 | }..........tok-str.{............ |
| 20e0 | 20 63 6f 6c 6f 72 3a 20 23 32 65 35 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 | .color:.#2e5;.........}......... |
| 2100 | 2e 74 6f 6b 2d 62 75 69 6c 74 69 6e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 | .tok-builtin.{.............color |
| 2120 | 3a 20 23 66 66 38 39 34 63 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 2e 74 6f | :.#ff894c;.........}..........to |
| 2140 | 6b 2d 63 6f 6d 6d 65 6e 74 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 | k-comment.{.............color:.# |
| 2160 | 61 61 37 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 66 6e 20 7b | aa7;.........}..........tok-fn.{ |
| 2180 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 42 31 41 30 46 38 3b 0a 20 20 20 | .............color:.#B1A0F8;.... |
| 21a0 | 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 7b 0a 20 20 20 20 20 | .....}..........tok-null.{...... |
| 21c0 | 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 20 20 7d | .......color:.#ff8080;.........} |
| 21e0 | 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 20 20 20 20 20 20 20 | ..........tok-number.{.......... |
| 2200 | 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 20 20 7d 0a 20 20 20 | ...color:.#ff8080;.........}.... |
| 2220 | 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 20 20 20 20 63 6f 6c | ......tok-type.{.............col |
| 2240 | 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 20 20 20 68 31 20 61 | or:.#68f;.........}.........h1.a |
| 2260 | 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 7b 0a 20 20 20 20 20 | ,.h2.a,.h3.a,.h4.a,.h5.a.{...... |
| 2280 | 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 20 20 20 7d 0a 20 20 | .......color:.#aaa;.........}... |
| 22a0 | 20 20 20 20 20 20 66 69 67 63 61 70 74 69 6f 6e 2e 7a 69 67 2d 63 61 70 20 7b 0a 20 20 20 20 20 | ......figcaption.zig-cap.{...... |
| 22c0 | 20 20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20 23 62 32 37 33 30 36 | .......background-color:.#b27306 |
| 22e0 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 30 3b 0a 20 20 20 20 20 | ;.............color:.#000;...... |
| 2300 | 20 20 20 7d 0a 20 20 20 20 20 20 20 20 66 69 67 63 61 70 74 69 6f 6e 2e 70 65 67 2d 63 61 70 20 | ...}.........figcaption.peg-cap. |
| 2320 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20 | {.............background-color:. |
| 2340 | 23 62 32 37 33 30 36 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 30 | #b27306;.............color:.#000 |
| 2360 | 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 66 69 67 63 61 70 74 69 6f 6e 2e 73 | ;.........}.........figcaption.s |
| 2380 | 68 65 6c 6c 2d 63 61 70 20 7b 0a 20 20 20 20 20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a | hell-cap.{...........background: |
| 23a0 | 20 23 32 61 32 61 32 61 3b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 66 66 66 3b | .#2a2a2a;...........color:.#fff; |
| 23c0 | 0a 20 20 20 20 20 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 | .........}.......}.....</style>. |
| 23e0 | 3c 2f 68 65 61 64 3e 0a 3c 62 6f 64 79 3e 0a 20 20 3c 68 65 61 64 65 72 3e 3c 68 31 3e 5a 69 67 | </head>.<body>...<header><h1>Zig |
| 2400 | 20 4c 61 6e 67 75 61 67 65 20 52 65 66 65 72 65 6e 63 65 3c 2f 68 31 3e 3c 2f 68 65 61 64 65 72 | .Language.Reference</h1></header |
| 2420 | 3e 0a 20 20 3c 64 69 76 20 69 64 3d 22 6d 61 69 6e 2d 77 72 61 70 70 65 72 22 3e 0a 20 20 20 20 | >...<div.id="main-wrapper">..... |
| 2440 | 20 20 3c 64 69 76 20 69 64 3d 22 6e 61 76 69 67 61 74 69 6f 6e 22 3e 0a 20 20 20 20 20 20 20 20 | ..<div.id="navigation">......... |
| 2460 | 3c 6e 61 76 20 61 72 69 61 2d 6c 61 62 65 6c 6c 65 64 62 79 3d 22 7a 69 67 2d 76 65 72 73 69 6f | <nav.aria-labelledby="zig-versio |
| 2480 | 6e 22 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 7a 69 67 2d 76 65 72 73 69 6f | n">...........<h2.id="zig-versio |
| 24a0 | 6e 22 3e 5a 69 67 20 56 65 72 73 69 6f 6e 3c 2f 68 32 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 61 | n">Zig.Version</h2>...........<a |
| 24c0 | 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 75 6d | .href="https://ziglang.org/docum |
| 24e0 | 65 6e 74 61 74 69 6f 6e 2f 30 2e 31 2e 31 2f 22 3e 30 2e 31 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 | entation/0.1.1/">0.1.1</a>.|.<a. |
| 2500 | 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 75 6d 65 | href="https://ziglang.org/docume |
| 2520 | 6e 74 61 74 69 6f 6e 2f 30 2e 32 2e 30 2f 22 3e 30 2e 32 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 | ntation/0.2.0/">0.2.0</a>.|.<a.h |
| 2540 | 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 75 6d 65 6e | ref="https://ziglang.org/documen |
| 2560 | 74 61 74 69 6f 6e 2f 30 2e 33 2e 30 2f 22 3e 30 2e 33 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 | tation/0.3.0/">0.3.0</a>.|.<a.hr |
| 2580 | 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 75 6d 65 6e 74 | ef="https://ziglang.org/document |
| 25a0 | 61 74 69 6f 6e 2f 30 2e 34 2e 30 2f 22 3e 30 2e 34 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 | ation/0.4.0/">0.4.0</a>.|.<a.hre |
| 25c0 | 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 75 6d 65 6e 74 61 | f="https://ziglang.org/documenta |
| 25e0 | 74 69 6f 6e 2f 30 2e 35 2e 30 2f 22 3e 30 2e 35 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 | tion/0.5.0/">0.5.0</a>.|.<a.href |
| 2600 | 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 75 6d 65 6e 74 61 74 | ="https://ziglang.org/documentat |
| 2620 | 69 6f 6e 2f 30 2e 36 2e 30 2f 22 3e 30 2e 36 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d | ion/0.6.0/">0.6.0</a>.|.<a.href= |
| 2640 | 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 | "https://ziglang.org/documentati |
| 2660 | 6f 6e 2f 30 2e 37 2e 31 2f 22 3e 30 2e 37 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 | on/0.7.1/">0.7.1</a>.|.<a.href=" |
| 2680 | 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f | https://ziglang.org/documentatio |
| 26a0 | 6e 2f 30 2e 38 2e 31 2f 22 3e 30 2e 38 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 | n/0.8.1/">0.8.1</a>.|.<a.href="h |
| 26c0 | 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e | ttps://ziglang.org/documentation |
| 26e0 | 2f 30 2e 39 2e 31 2f 22 3e 30 2e 39 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 | /0.9.1/">0.9.1</a>.|.<a.href="ht |
| 2700 | 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f | tps://ziglang.org/documentation/ |
| 2720 | 30 2e 31 30 2e 31 2f 22 3e 30 2e 31 30 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 | 0.10.1/">0.10.1</a>.|.<a.href="h |
| 2740 | 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e | ttps://ziglang.org/documentation |
| 2760 | 2f 30 2e 31 31 2e 30 2f 22 3e 30 2e 31 31 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 | /0.11.0/">0.11.0</a>.|.<a.href=" |
| 2780 | 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f | https://ziglang.org/documentatio |
| 27a0 | 6e 2f 30 2e 31 32 2e 31 2f 22 3e 30 2e 31 32 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d | n/0.12.1/">0.12.1</a>.|.<a.href= |
| 27c0 | 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 | "https://ziglang.org/documentati |
| 27e0 | 6f 6e 2f 30 2e 31 33 2e 30 2f 22 3e 30 2e 31 33 2e 30 3c 2f 61 3e 20 7c 0a 30 2e 31 34 2e 31 20 | on/0.13.0/">0.13.0</a>.|.0.14.1. |
| 2800 | 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 |
| 2820 | 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 31 35 2e 32 2f 22 3e 30 2e 31 35 2e 32 3c 2f 61 3e | ocumentation/0.15.2/">0.15.2</a> |
| 2840 | 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/ |
| 2860 | 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 31 36 2e 30 2f 22 3e 30 2e 31 36 2e 30 3c 2f 61 | documentation/0.16.0/">0.16.0</a |
| 2880 | 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 |
| 28a0 | 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 6d 61 73 74 65 72 2f 22 3e 6d 61 73 74 65 72 3c 2f | /documentation/master/">master</ |
| 28c0 | 61 3e 0a 20 20 20 20 20 20 20 20 3c 2f 6e 61 76 3e 0a 20 20 20 20 20 20 20 20 3c 6e 61 76 20 61 | a>.........</nav>.........<nav.a |
| 28e0 | 72 69 61 2d 6c 61 62 65 6c 6c 65 64 62 79 3d 22 74 61 62 6c 65 2d 6f 66 2d 63 6f 6e 74 65 6e 74 | ria-labelledby="table-of-content |
| 2900 | 73 22 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 74 61 62 6c 65 2d 6f 66 2d 63 | s">...........<h2.id="table-of-c |
| 2920 | 6f 6e 74 65 6e 74 73 22 3e 54 61 62 6c 65 20 6f 66 20 43 6f 6e 74 65 6e 74 73 3c 2f 68 32 3e 0a | ontents">Table.of.Contents</h2>. |
| 2940 | 20 20 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 20 3c 6c 69 | ................<ul>.........<li |
| 2960 | 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 65 66 3d 22 | ><a.id="toc-Introduction".href=" |
| 2980 | 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 2f 61 3e 3c | #Introduction">Introduction</a>< |
| 29a0 | 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 2d | /li>.........<li><a.id="toc-Zig- |
| 29c0 | 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 22 20 68 72 65 66 3d 22 23 5a 69 67 2d 53 74 61 | Standard-Library".href="#Zig-Sta |
| 29e0 | 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 22 3e 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 | ndard-Library">Zig.Standard.Libr |
| 2a00 | 61 72 79 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 | ary</a></li>.........<li><a.id=" |
| 2a20 | 74 6f 63 2d 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 | toc-Hello-World".href="#Hello-Wo |
| 2a40 | 72 6c 64 22 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 | rld">Hello.World</a></li>....... |
| 2a60 | 20 20 3c 6c 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 | ..<li><a.id="toc-Comments".href= |
| 2a80 | 22 23 43 6f 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 | "#Comments">Comments</a>........ |
| 2aa0 | 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 63 | .<ul>.............<li><a.id="toc |
| 2ac0 | 2d 44 6f 63 2d 43 6f 6d 6d 65 6e 74 73 22 20 68 72 65 66 3d 22 23 44 6f 63 2d 43 6f 6d 6d 65 6e | -Doc-Comments".href="#Doc-Commen |
| 2ae0 | 74 73 22 3e 44 6f 63 20 43 6f 6d 6d 65 6e 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ts">Doc.Comments</a></li>....... |
| 2b00 | 20 20 20 20 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 | ......<li><a.id="toc-Top-Level-D |
| 2b20 | 6f 63 2d 43 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 | oc-Comments".href="#Top-Level-Do |
| 2b40 | 63 2d 43 6f 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 | c-Comments">Top-Level.Doc.Commen |
| 2b60 | 74 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 0a 20 | ts</a></li>.........</ul></li>.. |
| 2b80 | 20 20 20 20 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 | .......<li><a.id="toc-Values".hr |
| 2ba0 | 65 66 3d 22 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 | ef="#Values">Values</a>......... |
| 2bc0 | 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- |
| 2be0 | 50 72 69 6d 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 | Primitive-Types".href="#Primitiv |
| 2c00 | 65 2d 54 79 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 | e-Types">Primitive.Types</a></li |
| 2c20 | 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 50 72 69 | >.............<li><a.id="toc-Pri |
| 2c40 | 6d 69 74 69 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 | mitive-Values".href="#Primitive- |
| 2c60 | 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 2f 6c 69 | Values">Primitive.Values</a></li |
| 2c80 | 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 53 74 72 | >.............<li><a.id="toc-Str |
| 2ca0 | 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 2d 50 6f | ing-Literals-and-Unicode-Code-Po |
| 2cc0 | 69 6e 74 2d 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 | int-Literals".href="#String-Lite |
| 2ce0 | 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 65 | rals-and-Unicode-Code-Point-Lite |
| 2d00 | 72 61 6c 73 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 | rals">String.Literals.and.Unicod |
| 2d20 | 65 20 43 6f 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 | e.Code.Point.Literals</a>....... |
| 2d40 | 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 20 3c 6c 69 3e 3c | ......<ul>.................<li>< |
| 2d60 | 61 20 69 64 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 | a.id="toc-Escape-Sequences".href |
| 2d80 | 3d 22 23 45 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 | ="#Escape-Sequences">Escape.Sequ |
| 2da0 | 65 6e 63 65 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 | ences</a></li>.................< |
| 2dc0 | 6c 69 3e 3c 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 | li><a.id="toc-Multiline-String-L |
| 2de0 | 69 74 65 72 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 | iterals".href="#Multiline-String |
| 2e00 | 2d 4c 69 74 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 | -Literals">Multiline.String.Lite |
| 2e20 | 72 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 3c | rals</a></li>.............</ul>< |
| 2e40 | 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- |
| 2e60 | 41 73 73 69 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 | Assignment".href="#Assignment">A |
| 2e80 | 73 73 69 67 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 | ssignment</a>.............<ul>.. |
| 2ea0 | 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 75 6e | ...............<li><a.id="toc-un |
| 2ec0 | 64 65 66 69 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 | defined".href="#undefined">undef |
| 2ee0 | 69 6e 65 64 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 | ined</a></li>.................<l |
| 2f00 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 65 73 74 72 75 63 74 75 72 69 6e 67 22 20 68 72 65 66 | i><a.id="toc-Destructuring".href |
| 2f20 | 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 3c | ="#Destructuring">Destructuring< |
| 2f40 | 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 0a | /a></li>.............</ul></li>. |
| 2f60 | 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 3c | ........</ul></li>.........<li>< |
| 2f80 | 61 20 69 64 3d 22 74 6f 63 2d 5a 69 67 2d 54 65 73 74 22 20 68 72 65 66 3d 22 23 5a 69 67 2d 54 | a.id="toc-Zig-Test".href="#Zig-T |
| 2fa0 | 65 73 74 22 3e 5a 69 67 20 54 65 73 74 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | est">Zig.Test</a>.........<ul>.. |
| 2fc0 | 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 65 73 74 2d 44 | ...........<li><a.id="toc-Test-D |
| 2fe0 | 65 63 6c 61 72 61 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 54 65 73 74 2d 44 65 63 6c 61 72 61 | eclarations".href="#Test-Declara |
| 3000 | 74 69 6f 6e 73 22 3e 54 65 73 74 20 44 65 63 6c 61 72 61 74 69 6f 6e 73 3c 2f 61 3e 0a 20 20 20 | tions">Test.Declarations</a>.... |
| 3020 | 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 20 3c 6c | .........<ul>.................<l |
| 3040 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 6f 63 74 65 73 74 73 22 20 68 72 65 66 3d 22 23 44 6f | i><a.id="toc-Doctests".href="#Do |
| 3060 | 63 74 65 73 74 73 22 3e 44 6f 63 74 65 73 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ctests">Doctests</a></li>....... |
| 3080 | 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 3c 6c 69 | ......</ul></li>.............<li |
| 30a0 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 65 73 74 2d 46 61 69 6c 75 72 65 22 20 68 72 65 66 3d 22 | ><a.id="toc-Test-Failure".href=" |
| 30c0 | 23 54 65 73 74 2d 46 61 69 6c 75 72 65 22 3e 54 65 73 74 20 46 61 69 6c 75 72 65 3c 2f 61 3e 3c | #Test-Failure">Test.Failure</a>< |
| 30e0 | 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- |
| 3100 | 53 6b 69 70 2d 54 65 73 74 73 22 20 68 72 65 66 3d 22 23 53 6b 69 70 2d 54 65 73 74 73 22 3e 53 | Skip-Tests".href="#Skip-Tests">S |
| 3120 | 6b 69 70 20 54 65 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 | kip.Tests</a></li>.............< |
| 3140 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 70 6f 72 74 2d 4d 65 6d 6f 72 79 2d 4c 65 61 6b | li><a.id="toc-Report-Memory-Leak |
| 3160 | 73 22 20 68 72 65 66 3d 22 23 52 65 70 6f 72 74 2d 4d 65 6d 6f 72 79 2d 4c 65 61 6b 73 22 3e 52 | s".href="#Report-Memory-Leaks">R |
| 3180 | 65 70 6f 72 74 20 4d 65 6d 6f 72 79 20 4c 65 61 6b 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | eport.Memory.Leaks</a></li>..... |
| 31a0 | 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 74 65 63 74 69 6e 67 | ........<li><a.id="toc-Detecting |
| 31c0 | 2d 54 65 73 74 2d 42 75 69 6c 64 22 20 68 72 65 66 3d 22 23 44 65 74 65 63 74 69 6e 67 2d 54 65 | -Test-Build".href="#Detecting-Te |
| 31e0 | 73 74 2d 42 75 69 6c 64 22 3e 44 65 74 65 63 74 69 6e 67 20 54 65 73 74 20 42 75 69 6c 64 3c 2f | st-Build">Detecting.Test.Build</ |
| 3200 | 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 |
| 3220 | 6f 63 2d 54 65 73 74 2d 4f 75 74 70 75 74 2d 61 6e 64 2d 4c 6f 67 67 69 6e 67 22 20 68 72 65 66 | oc-Test-Output-and-Logging".href |
| 3240 | 3d 22 23 54 65 73 74 2d 4f 75 74 70 75 74 2d 61 6e 64 2d 4c 6f 67 67 69 6e 67 22 3e 54 65 73 74 | ="#Test-Output-and-Logging">Test |
| 3260 | 20 4f 75 74 70 75 74 20 61 6e 64 20 4c 6f 67 67 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | .Output.and.Logging</a></li>.... |
| 3280 | 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 68 65 2d 54 65 73 74 | .........<li><a.id="toc-The-Test |
| 32a0 | 69 6e 67 2d 4e 61 6d 65 73 70 61 63 65 22 20 68 72 65 66 3d 22 23 54 68 65 2d 54 65 73 74 69 6e | ing-Namespace".href="#The-Testin |
| 32c0 | 67 2d 4e 61 6d 65 73 70 61 63 65 22 3e 54 68 65 20 54 65 73 74 69 6e 67 20 4e 61 6d 65 73 70 61 | g-Namespace">The.Testing.Namespa |
| 32e0 | 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 6c 69 3e 3c 61 20 69 | ce</a></li>.............<li><a.i |
| 3300 | 64 3d 22 74 6f 63 2d 54 65 73 74 2d 54 6f 6f 6c 2d 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 22 20 | d="toc-Test-Tool-Documentation". |
| 3320 | 68 72 65 66 3d 22 23 54 65 73 74 2d 54 6f 6f 6c 2d 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 22 3e | href="#Test-Tool-Documentation"> |
| 3340 | 54 65 73 74 20 54 6f 6f 6c 20 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e | Test.Tool.Documentation</a></li> |
| 3360 | 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> |
| 3380 | 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 |
| 33a0 | 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 |
| 33c0 | 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 49 64 | l>.............<li><a.id="toc-Id |
| 33e0 | 65 6e 74 69 66 69 65 72 73 22 20 68 72 65 66 3d 22 23 49 64 65 6e 74 69 66 69 65 72 73 22 3e 49 | entifiers".href="#Identifiers">I |
| 3400 | 64 65 6e 74 69 66 69 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 | dentifiers</a></li>............. |
| 3420 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 6f 6e 74 61 69 6e 65 72 2d 4c 65 76 65 6c 2d 56 | <li><a.id="toc-Container-Level-V |
| 3440 | 61 72 69 61 62 6c 65 73 22 20 68 72 65 66 3d 22 23 43 6f 6e 74 61 69 6e 65 72 2d 4c 65 76 65 6c | ariables".href="#Container-Level |
| 3460 | 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 20 56 61 72 69 | -Variables">Container.Level.Vari |
| 3480 | 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 3c | ables</a></li>.............<li>< |
| 34a0 | 61 20 69 64 3d 22 74 6f 63 2d 53 74 61 74 69 63 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 | a.id="toc-Static-Local-Variables |
| 34c0 | 22 20 68 72 65 66 3d 22 23 53 74 61 74 69 63 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 | ".href="#Static-Local-Variables" |
| 34e0 | 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 3c 2f 6c 69 3e | >Static.Local.Variables</a></li> |
| 3500 | 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 68 72 65 | .............<li><a.id="toc-Thre |
| 3520 | 61 64 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 20 68 72 65 66 3d 22 23 54 68 72 65 61 | ad-Local-Variables".href="#Threa |
| 3540 | 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 20 4c 6f 63 61 6c 20 | d-Local-Variables">Thread.Local. |
| 3560 | 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 20 20 20 20 20 20 3c | Variables</a></li>.............< |
| 3580 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 20 68 | li><a.id="toc-Local-Variables".h |
| 35a0 | 72 65 66 3d 22 23 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 | ref="#Local-Variables">Local.Var |
| 35c0 | 69 61 62 6c 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 | iables</a></li>.........</ul></l |
| 35e0 | 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 49 6e 74 65 67 65 | i>.........<li><a.id="toc-Intege |
| 3600 | 72 73 22 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 | rs".href="#Integers">Integers</a |
| 3620 | 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>< |
| 3640 | 61 20 69 64 3d 22 74 6f 63 2d 49 6e 74 65 67 65 72 2d 4c 69 74 65 72 61 6c 73 22 20 68 72 65 66 | a.id="toc-Integer-Literals".href |
| 3660 | 3d 22 23 49 6e 74 65 67 65 72 2d 4c 69 74 65 72 61 6c 73 22 3e 49 6e 74 65 67 65 72 20 4c 69 74 | ="#Integer-Literals">Integer.Lit |
| 3680 | 65 72 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 6c 69 3e 3c | erals</a></li>.............<li>< |
| 36a0 | 61 20 69 64 3d 22 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 | a.id="toc-Runtime-Integer-Values |
| 36c0 | 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 75 65 73 22 | ".href="#Runtime-Integer-Values" |
| 36e0 | 3e 52 75 6e 74 69 6d 65 20 49 6e 74 65 67 65 72 20 56 61 6c 75 65 73 3c 2f 61 3e 3c 2f 6c 69 3e | >Runtime.Integer.Values</a></li> |
| 3700 | 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> |
| 3720 | 3c 61 20 69 64 3d 22 74 6f 63 2d 46 6c 6f 61 74 73 22 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 | <a.id="toc-Floats".href="#Floats |
| 3740 | 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | ">Floats</a>.........<ul>....... |
| 3760 | 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 2d 4c 69 74 65 72 | ......<li><a.id="toc-Float-Liter |
| 3780 | 61 6c 73 22 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 2d 4c 69 74 65 72 61 6c 73 22 3e 46 6c 6f 61 | als".href="#Float-Literals">Floa |
| 37a0 | 74 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 20 20 20 20 | t.Literals</a></li>............. |
| 37c0 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 | <li><a.id="toc-Floating-Point-Op |
| 37e0 | 65 72 61 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 2d | erations".href="#Floating-Point- |
| 3800 | 4f 70 65 72 61 74 69 6f 6e 73 22 3e 46 6c 6f 61 74 69 6e 67 20 50 6f 69 6e 74 20 4f 70 65 72 61 | Operations">Floating.Point.Opera |
| 3820 | 74 69 6f 6e 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 | tions</a></li>.........</ul></li |
| 3840 | 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 65 72 61 74 6f | >.........<li><a.id="toc-Operato |
| 3860 | 72 73 22 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 | rs".href="#Operators">Operators< |
| 3880 | 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 |
| 38a0 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 61 62 6c 65 2d 6f 66 2d 4f 70 65 72 61 74 6f 72 73 22 20 | ><a.id="toc-Table-of-Operators". |
| 38c0 | 68 72 65 66 3d 22 23 54 61 62 6c 65 2d 6f 66 2d 4f 70 65 72 61 74 6f 72 73 22 3e 54 61 62 6c 65 | href="#Table-of-Operators">Table |
| 38e0 | 20 6f 66 20 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 | .of.Operators</a></li>.......... |
| 3900 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 50 72 65 63 65 64 65 6e 63 65 22 20 68 72 | ...<li><a.id="toc-Precedence".hr |
| 3920 | 65 66 3d 22 23 50 72 65 63 65 64 65 6e 63 65 22 3e 50 72 65 63 65 64 65 6e 63 65 3c 2f 61 3e 3c | ef="#Precedence">Precedence</a>< |
| 3940 | 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>......... |
| 3960 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 72 72 61 79 73 22 20 68 72 65 66 3d 22 23 41 72 | <li><a.id="toc-Arrays".href="#Ar |
| 3980 | 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | rays">Arrays</a>.........<ul>... |
| 39a0 | 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 74 69 64 69 | ..........<li><a.id="toc-Multidi |
| 39c0 | 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 74 69 64 69 | mensional-Arrays".href="#Multidi |
| 39e0 | 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 73 69 6f 6e | mensional-Arrays">Multidimension |
| 3a00 | 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 20 20 20 3c | al.Arrays</a></li>.............< |
| 3a20 | 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 6e 61 74 65 | li><a.id="toc-Sentinel-Terminate |
| 3a40 | 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 72 6d 69 6e | d-Arrays".href="#Sentinel-Termin |
| 3a60 | 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 61 74 65 64 | ated-Arrays">Sentinel-Terminated |
| 3a80 | 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 20 20 20 3c 6c 69 | .Arrays</a></li>.............<li |
| 3aa0 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 41 72 72 61 79 73 | ><a.id="toc-Destructuring-Arrays |
| 3ac0 | 22 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 41 72 72 61 79 73 22 3e 44 | ".href="#Destructuring-Arrays">D |
| 3ae0 | 65 73 74 72 75 63 74 75 72 69 6e 67 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | estructuring.Arrays</a></li>.... |
| 3b00 | 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 69 | .....</ul></li>.........<li><a.i |
| 3b20 | 64 3d 22 74 6f 63 2d 56 65 63 74 6f 72 73 22 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e | d="toc-Vectors".href="#Vectors"> |
| 3b40 | 56 65 63 74 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 20 20 | Vectors</a>.........<ul>........ |
| 3b60 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 65 73 74 72 75 63 74 75 72 69 6e | .....<li><a.id="toc-Destructurin |
| 3b80 | 67 2d 56 65 63 74 6f 72 73 22 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d | g-Vectors".href="#Destructuring- |
| 3ba0 | 56 65 63 74 6f 72 73 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 20 56 65 63 74 6f 72 73 3c 2f | Vectors">Destructuring.Vectors</ |
| 3bc0 | 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>...... |
| 3be0 | 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 20 68 72 65 66 | ...<li><a.id="toc-Pointers".href |
| 3c00 | 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 20 20 20 20 20 | ="#Pointers">Pointers</a>....... |
| 3c20 | 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 |
| 3c40 | 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 22 3e 76 6f 6c | c-volatile".href="#volatile">vol |
| 3c60 | 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 3c 6c 69 3e 3c | atile</a></li>.............<li>< |
| 3c80 | 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 23 41 6c 69 67 | a.id="toc-Alignment".href="#Alig |
| 3ca0 | 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 20 20 20 20 20 | nment">Alignment</a></li>....... |
| 3cc0 | 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 65 72 6f 22 20 | ......<li><a.id="toc-allowzero". |
| 3ce0 | 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 3c 2f 61 3e 3c | href="#allowzero">allowzero</a>< |
| 3d00 | 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- |
| 3d20 | 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 20 68 72 | Sentinel-Terminated-Pointers".hr |
| 3d40 | 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 69 6e 74 65 72 | ef="#Sentinel-Terminated-Pointer |
| 3d60 | 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 74 65 72 73 3c | s">Sentinel-Terminated.Pointers< |
| 3d80 | 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>..... |
| 3da0 | 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 68 72 65 66 3d | ....<li><a.id="toc-Slices".href= |
| 3dc0 | 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 20 20 3c 75 6c | "#Slices">Slices</a>.........<ul |
| 3de0 | 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 53 65 6e | >.............<li><a.id="toc-Sen |
| 3e00 | 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 65 66 3d 22 23 | tinel-Terminated-Slices".href="# |
| 3e20 | 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 74 | Sentinel-Terminated-Slices">Sent |
| 3e40 | 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 2f 6c 69 3e 0a | inel-Terminated.Slices</a></li>. |
| 3e60 | 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 3c | ........</ul></li>.........<li>< |
| 3e80 | 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 72 75 63 74 22 | a.id="toc-struct".href="#struct" |
| 3ea0 | 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 20 20 20 20 20 | >struct</a>.........<ul>........ |
| 3ec0 | 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 2d 46 69 65 6c | .....<li><a.id="toc-Default-Fiel |
| 3ee0 | 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 65 6c 64 2d 56 | d-Values".href="#Default-Field-V |
| 3f00 | 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 3c 2f 61 3e 0a | alues">Default.Field.Values</a>. |
| 3f20 | 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>................ |
| 3f40 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 61 75 6c 74 79 2d 44 65 66 61 75 6c 74 2d 46 | .<li><a.id="toc-Faulty-Default-F |
| 3f60 | 69 65 6c 64 2d 56 61 6c 75 65 73 22 20 68 72 65 66 3d 22 23 46 61 75 6c 74 79 2d 44 65 66 61 75 | ield-Values".href="#Faulty-Defau |
| 3f80 | 6c 74 2d 46 69 65 6c 64 2d 56 61 6c 75 65 73 22 3e 46 61 75 6c 74 79 20 44 65 66 61 75 6c 74 20 | lt-Field-Values">Faulty.Default. |
| 3fa0 | 46 69 65 6c 64 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 | Field.Values</a></li>........... |
| 3fc0 | 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 20 | ..</ul></li>.............<li><a. |
| 3fe0 | 69 64 3d 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 | id="toc-extern-struct".href="#ex |
| 4000 | 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 61 3e 3c 2f | tern-struct">extern.struct</a></ |
| 4020 | 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 70 | li>.............<li><a.id="toc-p |
| 4040 | 61 63 6b 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 | acked-struct".href="#packed-stru |
| 4060 | 63 74 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 | ct">packed.struct</a></li>...... |
| 4080 | 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 75 63 74 2d 4e 61 6d | .......<li><a.id="toc-Struct-Nam |
| 40a0 | 69 6e 67 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 | ing".href="#Struct-Naming">Struc |
| 40c0 | 74 20 4e 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 | t.Naming</a></li>.............<l |
| 40e0 | 69 3e 3c 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 | i><a.id="toc-Anonymous-Struct-Li |
| 4100 | 74 65 72 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 | terals".href="#Anonymous-Struct- |
| 4120 | 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 69 74 65 72 | Literals">Anonymous.Struct.Liter |
| 4140 | 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 6c 69 3e 3c 61 20 | als</a></li>.............<li><a. |
| 4160 | 69 64 3d 22 74 6f 63 2d 54 75 70 6c 65 73 22 20 68 72 65 66 3d 22 23 54 75 70 6c 65 73 22 3e 54 | id="toc-Tuples".href="#Tuples">T |
| 4180 | 75 70 6c 65 73 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 | uples</a>.............<ul>...... |
| 41a0 | 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 65 73 74 72 75 | ...........<li><a.id="toc-Destru |
| 41c0 | 63 74 75 72 69 6e 67 2d 54 75 70 6c 65 73 22 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 | cturing-Tuples".href="#Destructu |
| 41e0 | 72 69 6e 67 2d 54 75 70 6c 65 73 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 20 54 75 70 6c 65 | ring-Tuples">Destructuring.Tuple |
| 4200 | 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 3c 2f 6c 69 | s</a></li>.............</ul></li |
| 4220 | 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 |
| 4240 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 6e 75 6d 22 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 | ><a.id="toc-enum".href="#enum">e |
| 4260 | 6e 75 6d 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 | num</a>.........<ul>............ |
| 4280 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 78 74 65 72 6e 2d 65 6e 75 6d 22 20 68 72 65 | .<li><a.id="toc-extern-enum".hre |
| 42a0 | 66 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 | f="#extern-enum">extern.enum</a> |
| 42c0 | 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 |
| 42e0 | 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 20 68 72 65 66 3d 22 23 45 6e 75 6d 2d 4c 69 74 65 | -Enum-Literals".href="#Enum-Lite |
| 4300 | 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 20 20 | rals">Enum.Literals</a></li>.... |
| 4320 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4e 6f 6e 2d 65 78 68 61 | .........<li><a.id="toc-Non-exha |
| 4340 | 75 73 74 69 76 65 2d 65 6e 75 6d 22 20 68 72 65 66 3d 22 23 4e 6f 6e 2d 65 78 68 61 75 73 74 69 | ustive-enum".href="#Non-exhausti |
| 4360 | 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 6e 75 6d 3c 2f 61 3e | ve-enum">Non-exhaustive.enum</a> |
| 4380 | 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 20 20 | </li>.........</ul></li>........ |
| 43a0 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 75 6e 69 6f 6e 22 20 68 72 65 66 3d 22 23 75 6e | .<li><a.id="toc-union".href="#un |
| 43c0 | 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | ion">union</a>.........<ul>..... |
| 43e0 | 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 67 67 65 64 2d 75 6e | ........<li><a.id="toc-Tagged-un |
| 4400 | 69 6f 6e 22 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 | ion".href="#Tagged-union">Tagged |
| 4420 | 20 75 6e 69 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 | .union</a></li>.............<li> |
| 4440 | 3c 61 20 69 64 3d 22 74 6f 63 2d 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 20 68 72 65 66 3d 22 23 | <a.id="toc-extern-union".href="# |
| 4460 | 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 3e 3c 2f | extern-union">extern.union</a></ |
| 4480 | 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 70 | li>.............<li><a.id="toc-p |
| 44a0 | 61 63 6b 65 64 2d 75 6e 69 6f 6e 22 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 75 6e 69 6f 6e | acked-union".href="#packed-union |
| 44c0 | 22 3e 70 61 63 6b 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 | ">packed.union</a></li>......... |
| 44e0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 6e 6f 6e 79 6d 6f 75 73 2d 55 6e 69 | ....<li><a.id="toc-Anonymous-Uni |
| 4500 | 6f 6e 2d 4c 69 74 65 72 61 6c 73 22 20 68 72 65 66 3d 22 23 41 6e 6f 6e 79 6d 6f 75 73 2d 55 6e | on-Literals".href="#Anonymous-Un |
| 4520 | 69 6f 6e 2d 4c 69 74 65 72 61 6c 73 22 3e 41 6e 6f 6e 79 6d 6f 75 73 20 55 6e 69 6f 6e 20 4c 69 | ion-Literals">Anonymous.Union.Li |
| 4540 | 74 65 72 61 6c 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 | terals</a></li>.........</ul></l |
| 4560 | 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 6f 70 61 71 75 65 | i>.........<li><a.id="toc-opaque |
| 4580 | 22 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 2f 6c 69 3e | ".href="#opaque">opaque</a></li> |
| 45a0 | 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 6c 6f 63 6b 73 22 20 | .........<li><a.id="toc-Blocks". |
| 45c0 | 68 72 65 66 3d 22 23 42 6c 6f 63 6b 73 22 3e 42 6c 6f 63 6b 73 3c 2f 61 3e 0a 20 20 20 20 20 20 | href="#Blocks">Blocks</a>....... |
| 45e0 | 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 |
| 4600 | 63 2d 53 68 61 64 6f 77 69 6e 67 22 20 68 72 65 66 3d 22 23 53 68 61 64 6f 77 69 6e 67 22 3e 53 | c-Shadowing".href="#Shadowing">S |
| 4620 | 68 61 64 6f 77 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 | hadowing</a></li>.............<l |
| 4640 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 6d 70 74 79 2d 42 6c 6f 63 6b 73 22 20 68 72 65 66 3d | i><a.id="toc-Empty-Blocks".href= |
| 4660 | 22 23 45 6d 70 74 79 2d 42 6c 6f 63 6b 73 22 3e 45 6d 70 74 79 20 42 6c 6f 63 6b 73 3c 2f 61 3e | "#Empty-Blocks">Empty.Blocks</a> |
| 4680 | 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 20 20 | </li>.........</ul></li>........ |
| 46a0 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 77 69 74 63 68 22 20 68 72 65 66 3d 22 23 73 | .<li><a.id="toc-switch".href="#s |
| 46c0 | 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | witch">switch</a>.........<ul>.. |
| 46e0 | 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 45 78 68 61 75 73 | ...........<li><a.id="toc-Exhaus |
| 4700 | 74 69 76 65 2d 53 77 69 74 63 68 69 6e 67 22 20 68 72 65 66 3d 22 23 45 78 68 61 75 73 74 69 76 | tive-Switching".href="#Exhaustiv |
| 4720 | 65 2d 53 77 69 74 63 68 69 6e 67 22 3e 45 78 68 61 75 73 74 69 76 65 20 53 77 69 74 63 68 69 6e | e-Switching">Exhaustive.Switchin |
| 4740 | 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 |
| 4760 | 3d 22 74 6f 63 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 | ="toc-Switching-with-Enum-Litera |
| 4780 | 6c 73 22 20 68 72 65 66 3d 22 23 53 77 69 74 63 68 69 6e 67 2d 77 69 74 68 2d 45 6e 75 6d 2d 4c | ls".href="#Switching-with-Enum-L |
| 47a0 | 69 74 65 72 61 6c 73 22 3e 53 77 69 74 63 68 69 6e 67 20 77 69 74 68 20 45 6e 75 6d 20 4c 69 74 | iterals">Switching.with.Enum.Lit |
| 47c0 | 65 72 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 6c 69 3e 3c | erals</a></li>.............<li>< |
| 47e0 | 61 20 69 64 3d 22 74 6f 63 2d 4c 61 62 65 6c 65 64 2d 73 77 69 74 63 68 22 20 68 72 65 66 3d 22 | a.id="toc-Labeled-switch".href=" |
| 4800 | 23 4c 61 62 65 6c 65 64 2d 73 77 69 74 63 68 22 3e 4c 61 62 65 6c 65 64 20 73 77 69 74 63 68 3c | #Labeled-switch">Labeled.switch< |
| 4820 | 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=" |
| 4840 | 74 6f 63 2d 49 6e 6c 69 6e 65 2d 53 77 69 74 63 68 2d 50 72 6f 6e 67 73 22 20 68 72 65 66 3d 22 | toc-Inline-Switch-Prongs".href=" |
| 4860 | 23 49 6e 6c 69 6e 65 2d 53 77 69 74 63 68 2d 50 72 6f 6e 67 73 22 3e 49 6e 6c 69 6e 65 20 53 77 | #Inline-Switch-Prongs">Inline.Sw |
| 4880 | 69 74 63 68 20 50 72 6f 6e 67 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 | itch.Prongs</a></li>.........</u |
| 48a0 | 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 77 | l></li>.........<li><a.id="toc-w |
| 48c0 | 68 69 6c 65 22 20 68 72 65 66 3d 22 23 77 68 69 6c 65 22 3e 77 68 69 6c 65 3c 2f 61 3e 0a 20 20 | hile".href="#while">while</a>... |
| 48e0 | 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 |
| 4900 | 3d 22 74 6f 63 2d 4c 61 62 65 6c 65 64 2d 77 68 69 6c 65 22 20 68 72 65 66 3d 22 23 4c 61 62 65 | ="toc-Labeled-while".href="#Labe |
| 4920 | 6c 65 64 2d 77 68 69 6c 65 22 3e 4c 61 62 65 6c 65 64 20 77 68 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 | led-while">Labeled.while</a></li |
| 4940 | 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 77 68 69 | >.............<li><a.id="toc-whi |
| 4960 | 6c 65 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 20 68 72 65 66 3d 22 23 77 68 69 6c 65 2d | le-with-Optionals".href="#while- |
| 4980 | 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 77 68 69 6c 65 20 77 69 74 68 20 4f 70 74 69 6f | with-Optionals">while.with.Optio |
| 49a0 | 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 6c 69 3e 3c 61 | nals</a></li>.............<li><a |
| 49c0 | 20 69 64 3d 22 74 6f 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 | .id="toc-while-with-Error-Unions |
| 49e0 | 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 69 6f 6e 73 | ".href="#while-with-Error-Unions |
| 4a00 | 22 3e 77 68 69 6c 65 20 77 69 74 68 20 45 72 72 6f 72 20 55 6e 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c | ">while.with.Error.Unions</a></l |
| 4a20 | 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 69 6e | i>.............<li><a.id="toc-in |
| 4a40 | 6c 69 6e 65 2d 77 68 69 6c 65 22 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 77 68 69 6c 65 22 | line-while".href="#inline-while" |
| 4a60 | 3e 69 6e 6c 69 6e 65 20 77 68 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | >inline.while</a></li>.........< |
| 4a80 | 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 63 | /ul></li>.........<li><a.id="toc |
| 4aa0 | 2d 66 6f 72 22 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 0a 20 20 20 20 20 20 | -for".href="#for">for</a>....... |
| 4ac0 | 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 |
| 4ae0 | 63 2d 4c 61 62 65 6c 65 64 2d 66 6f 72 22 20 68 72 65 66 3d 22 23 4c 61 62 65 6c 65 64 2d 66 6f | c-Labeled-for".href="#Labeled-fo |
| 4b00 | 72 22 3e 4c 61 62 65 6c 65 64 20 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | r">Labeled.for</a></li>......... |
| 4b20 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 6e 6c 69 6e 65 2d 66 6f 72 22 20 68 | ....<li><a.id="toc-inline-for".h |
| 4b40 | 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> |
| 4b60 | 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 20 20 | </li>.........</ul></li>........ |
| 4b80 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 66 22 20 68 72 65 66 3d 22 23 69 66 22 3e 69 | .<li><a.id="toc-if".href="#if">i |
| 4ba0 | 66 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 | f</a>.........<ul>.............< |
| 4bc0 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 66 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 | li><a.id="toc-if-with-Optionals" |
| 4be0 | 20 68 72 65 66 3d 22 23 69 66 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 69 66 20 77 69 | .href="#if-with-Optionals">if.wi |
| 4c00 | 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 20 20 20 20 3c 2f | th.Optionals</a></li>.........</ |
| 4c20 | 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- |
| 4c40 | 64 65 66 65 72 22 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 | defer".href="#defer">defer</a></ |
| 4c60 | 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 75 6e 72 65 61 | li>.........<li><a.id="toc-unrea |
| 4c80 | 63 68 61 62 6c 65 22 20 68 72 65 66 3d 22 23 75 6e 72 65 61 63 68 61 62 6c 65 22 3e 75 6e 72 65 | chable".href="#unreachable">unre |
| 4ca0 | 61 63 68 61 62 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 | achable</a>.........<ul>........ |
| 4cc0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 42 61 73 69 63 73 22 20 68 72 65 66 | .....<li><a.id="toc-Basics".href |
| 4ce0 | 3d 22 23 42 61 73 69 63 73 22 3e 42 61 73 69 63 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | ="#Basics">Basics</a></li>...... |
| 4d00 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 74 2d 43 6f 6d 70 69 6c 65 | .......<li><a.id="toc-At-Compile |
| 4d20 | 2d 54 69 6d 65 22 20 68 72 65 66 3d 22 23 41 74 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 22 3e 41 | -Time".href="#At-Compile-Time">A |
| 4d40 | 74 20 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | t.Compile-Time</a></li>......... |
| 4d60 | 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 |
| 4d80 | 63 2d 6e 6f 72 65 74 75 72 6e 22 20 68 72 65 66 3d 22 23 6e 6f 72 65 74 75 72 6e 22 3e 6e 6f 72 | c-noreturn".href="#noreturn">nor |
| 4da0 | 65 74 75 72 6e 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 | eturn</a></li>.........<li><a.id |
| 4dc0 | 3d 22 74 6f 63 2d 46 75 6e 63 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e | ="toc-Functions".href="#Function |
| 4de0 | 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | s">Functions</a>.........<ul>... |
| 4e00 | 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 61 73 73 2d 62 79 | ..........<li><a.id="toc-Pass-by |
| 4e20 | 2d 76 61 6c 75 65 2d 50 61 72 61 6d 65 74 65 72 73 22 20 68 72 65 66 3d 22 23 50 61 73 73 2d 62 | -value-Parameters".href="#Pass-b |
| 4e40 | 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 2d 76 61 6c 75 | y-value-Parameters">Pass-by-valu |
| 4e60 | 65 20 50 61 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 | e.Parameters</a></li>........... |
| 4e80 | 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 50 61 72 61 6d 65 | ..<li><a.id="toc-Function-Parame |
| 4ea0 | 74 65 72 2d 54 79 70 65 2d 49 6e 66 65 72 65 6e 63 65 22 20 68 72 65 66 3d 22 23 46 75 6e 63 74 | ter-Type-Inference".href="#Funct |
| 4ec0 | 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 63 65 22 3e 46 75 | ion-Parameter-Type-Inference">Fu |
| 4ee0 | 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 72 65 6e 63 65 3c | nction.Parameter.Type.Inference< |
| 4f00 | 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=" |
| 4f20 | 74 6f 63 2d 69 6e 6c 69 6e 65 2d 66 6e 22 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 66 6e 22 | toc-inline-fn".href="#inline-fn" |
| 4f40 | 3e 69 6e 6c 69 6e 65 20 66 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | >inline.fn</a></li>............. |
| 4f60 | 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 6c 65 63 74 69 | <li><a.id="toc-Function-Reflecti |
| 4f80 | 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 69 6f 6e 22 3e | on".href="#Function-Reflection"> |
| 4fa0 | 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 3e 0a 20 20 20 | Function.Reflection</a></li>.... |
| 4fc0 | 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 69 | .....</ul></li>.........<li><a.i |
| 4fe0 | 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 73 22 3e 45 72 | d="toc-Errors".href="#Errors">Er |
| 5000 | 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 20 20 20 20 20 | rors</a>.........<ul>........... |
| 5020 | 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 54 79 70 65 22 | ..<li><a.id="toc-Error-Set-Type" |
| 5040 | 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 6f 72 20 53 65 | .href="#Error-Set-Type">Error.Se |
| 5060 | 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 0a 20 20 20 20 | t.Type</a>.............<ul>..... |
| 5080 | 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 68 65 2d 47 | ............<li><a.id="toc-The-G |
| 50a0 | 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 2d 47 6c 6f 62 | lobal-Error-Set".href="#The-Glob |
| 50c0 | 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 20 53 | al-Error-Set">The.Global.Error.S |
| 50e0 | 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 6c 3e 3c 2f 6c | et</a></li>.............</ul></l |
| 5100 | 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 45 72 | i>.............<li><a.id="toc-Er |
| 5120 | 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 72 2d 55 6e 69 | ror-Union-Type".href="#Error-Uni |
| 5140 | 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 0a 20 20 | on-Type">Error.Union.Type</a>... |
| 5160 | 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 20 3c | ..........<ul>.................< |
| 5180 | 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 23 63 61 74 63 | li><a.id="toc-catch".href="#catc |
| 51a0 | 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 20 20 20 20 20 | h">catch</a></li>............... |
| 51c0 | 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 22 23 74 72 79 | ..<li><a.id="toc-try".href="#try |
| 51e0 | 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 20 20 20 20 3c | ">try</a></li>.................< |
| 5200 | 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 66 3d 22 23 65 | li><a.id="toc-errdefer".href="#e |
| 5220 | 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 20 20 20 20 20 | rrdefer">errdefer</a></li>...... |
| 5240 | 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 65 72 67 69 6e | ...........<li><a.id="toc-Mergin |
| 5260 | 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 67 2d 45 72 72 | g-Error-Sets".href="#Merging-Err |
| 5280 | 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 3c 2f 61 3e 3c | or-Sets">Merging.Error.Sets</a>< |
| 52a0 | 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 64 3d 22 | /li>.................<li><a.id=" |
| 52c0 | 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 65 66 3d 22 23 | toc-Inferred-Error-Sets".href="# |
| 52e0 | 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 65 64 20 45 72 | Inferred-Error-Sets">Inferred.Er |
| 5300 | 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 20 20 20 3c 2f | ror.Sets</a></li>.............</ |
| 5320 | 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 20 69 64 3d 22 | ul></li>.............<li><a.id=" |
| 5340 | 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 65 66 3d 22 23 | toc-Error-Return-Traces".href="# |
| 5360 | 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 52 65 74 75 72 | Error-Return-Traces">Error.Retur |
| 5380 | 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 6c 3e 0a 20 20 | n.Traces</a>.............<ul>... |
| 53a0 | 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 49 6d 70 | ..............<li><a.id="toc-Imp |
| 53c0 | 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 23 49 6d 70 6c | lementation-Details".href="#Impl |
| 53e0 | 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 6e 74 61 74 69 | ementation-Details">Implementati |
| 5400 | 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 20 20 20 20 20 | on.Details</a></li>............. |
| 5420 | 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 69 3e 0a 20 20 | </ul></li>.........</ul></li>... |
| 5440 | 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 61 6c 73 22 20 | ......<li><a.id="toc-Optionals". |
| 5460 | 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 0a | href="#Optionals">Optionals</a>. |
| 5480 | 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. |
| 54a0 | 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 3d 22 23 4f 70 | id="toc-Optional-Type".href="#Op |
| 54c0 | 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 2f 61 3e 3c 2f | tional-Type">Optional.Type</a></ |
| 54e0 | 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 6e | li>.............<li><a.id="toc-n |
| 5500 | 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 2f 6c 69 3e 0a | ull".href="#null">null</a></li>. |
| 5520 | 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 4f 70 74 69 6f | ............<li><a.id="toc-Optio |
| 5540 | 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 61 6c 2d 50 6f | nal-Pointers".href="#Optional-Po |
| 5560 | 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 3e 3c 2f 6c | inters">Optional.Pointers</a></l |
| 5580 | 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 |
| 55a0 | 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 22 23 43 61 73 | i><a.id="toc-Casting".href="#Cas |
| 55c0 | 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 75 6c 3e 0a 20 | ting">Casting</a>.........<ul>.. |
| 55e0 | 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 |
| 5600 | 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 6f 6e 22 3e 54 | oercion".href="#Type-Coercion">T |
| 5620 | 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 20 20 3c 75 6c | ype.Coercion</a>.............<ul |
| 5640 | 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 63 | >.................<li><a.id="toc |
| 5660 | 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 6c 69 66 69 63 | -Type-Coercion-Stricter-Qualific |
| 5680 | 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 2d 53 74 72 69 | ation".href="#Type-Coercion-Stri |
| 56a0 | 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 65 72 63 69 6f | cter-Qualification">Type.Coercio |
| 56c0 | 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 61 3e 3c 2f 6c | n:.Stricter.Qualification</a></l |
| 56e0 | 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 |
| 5700 | 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 2d 46 6c 6f 61 | c-Type-Coercion-Integer-and-Floa |
| 5720 | 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 72 63 69 6f 6e | t-Widening".href="#Type-Coercion |
| 5740 | 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 54 79 70 | -Integer-and-Float-Widening">Typ |
| 5760 | 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 20 57 69 | e.Coercion:.Integer.and.Float.Wi |
| 5780 | 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 20 20 20 20 20 | dening</a></li>................. |
| 57a0 | 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 46 6c 6f | <li><a.id="toc-Type-Coercion-Flo |
| 57c0 | 61 74 2d 74 6f 2d 49 6e 74 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d | at-to-Int".href="#Type-Coercion- |
| 57e0 | 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 46 6c 6f | Float-to-Int">Type.Coercion:.Flo |
| 5800 | 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>.............. |
| 5820 | 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- |
| 5840 | 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 |
| 5860 | 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 |
| 5880 | 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 |
| 58a0 | 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> |
| 58c0 | 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- |
| 58e0 | 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="# |
| 5900 | 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 |
| 5920 | 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>...... |
| 5940 | 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 |
| 5960 | 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 |
| 5980 | 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 |
| 59a0 | 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>... |
| 59c0 | 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 |
| 59e0 | 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 |
| 5a00 | 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 |
| 5a20 | 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 |
| 5a40 | 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 |
| 5a60 | 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>< |
| 5a80 | 61 20 69 64 3d 22 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 55 6e 69 6f 6e 73 2d 61 | a.id="toc-Type-Coercion-Unions-a |
| 5aa0 | 6e 64 2d 45 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 55 | nd-Enums".href="#Type-Coercion-U |
| 5ac0 | 6e 69 6f 6e 73 2d 61 6e 64 2d 45 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:. |
| 5ae0 | 55 6e 69 6f 6e 73 20 61 6e 64 20 45 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>....... |
| 5b00 | 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 |
| 5b20 | 65 72 63 69 6f 6e 2d 75 6e 64 65 66 69 6e 65 64 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f | ercion-undefined".href="#Type-Co |
| 5b40 | 65 72 63 69 6f 6e 2d 75 6e 64 65 66 69 6e 65 64 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a | ercion-undefined">Type.Coercion: |
| 5b60 | 20 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .undefined</a></li>............. |
| 5b80 | 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 6e | ....<li><a.id="toc-Type-Coercion |
| 5ba0 | 2d 54 75 70 6c 65 73 2d 74 6f 2d 41 72 72 61 79 73 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 | -Tuples-to-Arrays".href="#Type-C |
| 5bc0 | 6f 65 72 63 69 6f 6e 2d 54 75 70 6c 65 73 2d 74 6f 2d 41 72 72 61 79 73 22 3e 54 79 70 65 20 43 | oercion-Tuples-to-Arrays">Type.C |
| 5be0 | 6f 65 72 63 69 6f 6e 3a 20 54 75 70 6c 65 73 20 74 6f 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c | oercion:.Tuples.to.Arrays</a></l |
| 5c00 | 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 20 | i>.............</ul></li>....... |
| 5c20 | 20 20 20 20 20 20 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 | ......<li><a.id="toc-Explicit-Ca |
| 5c40 | 73 74 73 22 20 68 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 | sts".href="#Explicit-Casts">Expl |
| 5c60 | 69 63 69 74 20 43 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 | icit.Casts</a></li>............. |
| 5c80 | 3c 6c 69 3e 3c 61 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 | <li><a.id="toc-Peer-Type-Resolut |
| 5ca0 | 69 6f 6e 22 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 | ion".href="#Peer-Type-Resolution |
| 5cc0 | 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 3c 2f 6c 69 3e 0a | ">Peer.Type.Resolution</a></li>. |
| 5ce0 | 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 3c | ........</ul></li>.........<li>< |
| 5d00 | 61 20 69 64 3d 22 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 | a.id="toc-Zero-Bit-Types".href=" |
| 5d20 | 23 5a 65 72 6f 2d 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 | #Zero-Bit-Types">Zero.Bit.Types< |
| 5d40 | 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 |
| 5d60 | 3e 3c 61 20 69 64 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 | ><a.id="toc-void".href="#void">v |
| 5d80 | 6f 69 64 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 | oid</a></li>.........</ul></li>. |
| 5da0 | 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 6c 74 2d 4c 6f | ........<li><a.id="toc-Result-Lo |
| 5dc0 | 63 61 74 69 6f 6e 2d 53 65 6d 61 6e 74 69 63 73 22 20 68 72 65 66 3d 22 23 52 65 73 75 6c 74 2d | cation-Semantics".href="#Result- |
| 5de0 | 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 74 20 4c 6f 63 61 74 | Location-Semantics">Result.Locat |
| 5e00 | 69 6f 6e 20 53 65 6d 61 6e 74 69 63 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | ion.Semantics</a>.........<ul>.. |
| 5e20 | 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 6c 74 | ...........<li><a.id="toc-Result |
| 5e40 | 2d 54 79 70 65 73 22 20 68 72 65 66 3d 22 23 52 65 73 75 6c 74 2d 54 79 70 65 73 22 3e 52 65 73 | -Types".href="#Result-Types">Res |
| 5e60 | 75 6c 74 20 54 79 70 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 | ult.Types</a></li>.............< |
| 5e80 | 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 73 22 20 | li><a.id="toc-Result-Locations". |
| 5ea0 | 68 72 65 66 3d 22 23 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 73 22 3e 52 65 73 75 6c 74 20 | href="#Result-Locations">Result. |
| 5ec0 | 4c 6f 63 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e | Locations</a></li>.........</ul> |
| 5ee0 | 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 75 73 69 | </li>.........<li><a.id="toc-usi |
| 5f00 | 6e 67 6e 61 6d 65 73 70 61 63 65 22 20 68 72 65 66 3d 22 23 75 73 69 6e 67 6e 61 6d 65 73 70 61 | ngnamespace".href="#usingnamespa |
| 5f20 | 63 65 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | ce">usingnamespace</a></li>..... |
| 5f40 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 6f 6d 70 74 69 6d 65 22 20 68 72 65 | ....<li><a.id="toc-comptime".hre |
| 5f60 | 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 0a 20 20 20 20 20 | f="#comptime">comptime</a>...... |
| 5f80 | 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 |
| 5fa0 | 6f 63 2d 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 | oc-Introducing-the-Compile-Time- |
| 5fc0 | 43 6f 6e 63 65 70 74 22 20 68 72 65 66 3d 22 23 49 6e 74 72 6f 64 75 63 69 6e 67 2d 74 68 65 2d | Concept".href="#Introducing-the- |
| 5fe0 | 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 64 75 63 69 6e | Compile-Time-Concept">Introducin |
| 6000 | 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 2f 61 3e 0a 20 | g.the.Compile-Time.Concept</a>.. |
| 6020 | 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 20 | ...........<ul>................. |
| 6040 | 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 50 61 72 61 | <li><a.id="toc-Compile-Time-Para |
| 6060 | 6d 65 74 65 72 73 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 | meters".href="#Compile-Time-Para |
| 6080 | 6d 65 74 65 72 73 22 3e 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 50 61 72 61 6d 65 74 65 72 73 3c | meters">Compile-Time.Parameters< |
| 60a0 | 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 20 | /a></li>.................<li><a. |
| 60c0 | 69 64 3d 22 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 20 | id="toc-Compile-Time-Variables". |
| 60e0 | 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 62 6c 65 73 22 3e 43 | href="#Compile-Time-Variables">C |
| 6100 | 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | ompile-Time.Variables</a></li>.. |
| 6120 | 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 43 6f | ...............<li><a.id="toc-Co |
| 6140 | 6d 70 69 6c 65 2d 54 69 6d 65 2d 45 78 70 72 65 73 73 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 43 | mpile-Time-Expressions".href="#C |
| 6160 | 6f 6d 70 69 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 | ompile-Time-Expressions">Compile |
| 6180 | 2d 54 69 6d 65 20 45 78 70 72 65 73 73 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | -Time.Expressions</a></li>...... |
| 61a0 | 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 3c 6c | .......</ul></li>.............<l |
| 61c0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 47 65 6e 65 72 69 63 2d 44 61 74 61 2d 53 74 72 75 63 74 | i><a.id="toc-Generic-Data-Struct |
| 61e0 | 75 72 65 73 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 75 63 74 | ures".href="#Generic-Data-Struct |
| 6200 | 75 72 65 73 22 3e 47 65 6e 65 72 69 63 20 44 61 74 61 20 53 74 72 75 63 74 75 72 65 73 3c 2f 61 | ures">Generic.Data.Structures</a |
| 6220 | 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 |
| 6240 | 63 2d 43 61 73 65 2d 53 74 75 64 79 2d 70 72 69 6e 74 2d 69 6e 2d 5a 69 67 22 20 68 72 65 66 3d | c-Case-Study-print-in-Zig".href= |
| 6260 | 22 23 43 61 73 65 2d 53 74 75 64 79 2d 70 72 69 6e 74 2d 69 6e 2d 5a 69 67 22 3e 43 61 73 65 20 | "#Case-Study-print-in-Zig">Case. |
| 6280 | 53 74 75 64 79 3a 20 70 72 69 6e 74 20 69 6e 20 5a 69 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | Study:.print.in.Zig</a></li>.... |
| 62a0 | 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 69 | .....</ul></li>.........<li><a.i |
| 62c0 | 64 3d 22 74 6f 63 2d 41 73 73 65 6d 62 6c 79 22 20 68 72 65 66 3d 22 23 41 73 73 65 6d 62 6c 79 | d="toc-Assembly".href="#Assembly |
| 62e0 | 22 3e 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | ">Assembly</a>.........<ul>..... |
| 6300 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4f 75 74 70 75 74 2d 43 6f | ........<li><a.id="toc-Output-Co |
| 6320 | 6e 73 74 72 61 69 6e 74 73 22 20 68 72 65 66 3d 22 23 4f 75 74 70 75 74 2d 43 6f 6e 73 74 72 61 | nstraints".href="#Output-Constra |
| 6340 | 69 6e 74 73 22 3e 4f 75 74 70 75 74 20 43 6f 6e 73 74 72 61 69 6e 74 73 3c 2f 61 3e 3c 2f 6c 69 | ints">Output.Constraints</a></li |
| 6360 | 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 49 6e 70 | >.............<li><a.id="toc-Inp |
| 6380 | 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 20 68 72 65 66 3d 22 23 49 6e 70 75 74 2d 43 6f 6e | ut-Constraints".href="#Input-Con |
| 63a0 | 73 74 72 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 3c | straints">Input.Constraints</a>< |
| 63c0 | 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- |
| 63e0 | 43 6c 6f 62 62 65 72 73 22 20 68 72 65 66 3d 22 23 43 6c 6f 62 62 65 72 73 22 3e 43 6c 6f 62 62 | Clobbers".href="#Clobbers">Clobb |
| 6400 | 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 3e 3c 61 20 | ers</a></li>.............<li><a. |
| 6420 | 69 64 3d 22 74 6f 63 2d 47 6c 6f 62 61 6c 2d 41 73 73 65 6d 62 6c 79 22 20 68 72 65 66 3d 22 23 | id="toc-Global-Assembly".href="# |
| 6440 | 47 6c 6f 62 61 6c 2d 41 73 73 65 6d 62 6c 79 22 3e 47 6c 6f 62 61 6c 20 41 73 73 65 6d 62 6c 79 | Global-Assembly">Global.Assembly |
| 6460 | 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>.... |
| 6480 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 74 6f 6d 69 63 73 22 20 68 72 65 | .....<li><a.id="toc-Atomics".hre |
| 64a0 | 66 3d 22 23 41 74 6f 6d 69 63 73 22 3e 41 74 6f 6d 69 63 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | f="#Atomics">Atomics</a></li>... |
| 64c0 | 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 46 75 6e 63 74 | ......<li><a.id="toc-Async-Funct |
| 64e0 | 69 6f 6e 73 22 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 41 73 | ions".href="#Async-Functions">As |
| 6500 | 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 20 3c | ync.Functions</a></li>.........< |
| 6520 | 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 63 74 69 6f 6e 73 22 | li><a.id="toc-Builtin-Functions" |
| 6540 | 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 6c 74 | .href="#Builtin-Functions">Built |
| 6560 | 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 3c 75 6c 20 73 74 79 | in.Functions</a>.........<ul.sty |
| 6580 | 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 20 20 20 20 3c 6c 69 | le="columns:.2">.............<li |
| 65a0 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 64 64 72 53 70 61 63 65 43 61 73 74 22 20 68 72 65 66 3d | ><a.id="toc-addrSpaceCast".href= |
| 65c0 | 22 23 61 64 64 72 53 70 61 63 65 43 61 73 74 22 3e 40 61 64 64 72 53 70 61 63 65 43 61 73 74 3c | "#addrSpaceCast">@addrSpaceCast< |
| 65e0 | 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=" |
| 6600 | 74 6f 63 2d 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 61 64 64 57 | toc-addWithOverflow".href="#addW |
| 6620 | 69 74 68 4f 76 65 72 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 | ithOverflow">@addWithOverflow</a |
| 6640 | 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 |
| 6660 | 63 2d 61 6c 69 67 6e 43 61 73 74 22 20 68 72 65 66 3d 22 23 61 6c 69 67 6e 43 61 73 74 22 3e 40 | c-alignCast".href="#alignCast">@ |
| 6680 | 61 6c 69 67 6e 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 | alignCast</a></li>.............< |
| 66a0 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 6c 69 67 6e 4f 66 22 20 68 72 65 66 3d 22 23 61 6c | li><a.id="toc-alignOf".href="#al |
| 66c0 | 69 67 6e 4f 66 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | ignOf">@alignOf</a></li>........ |
| 66e0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 73 22 20 68 72 65 66 3d 22 23 61 | .....<li><a.id="toc-as".href="#a |
| 6700 | 73 22 3e 40 61 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 | s">@as</a></li>.............<li> |
| 6720 | 3c 61 20 69 64 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 | <a.id="toc-atomicLoad".href="#at |
| 6740 | 6f 6d 69 63 4c 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 | omicLoad">@atomicLoad</a></li>.. |
| 6760 | 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 74 6f 6d 69 63 | ...........<li><a.id="toc-atomic |
| 6780 | 52 6d 77 22 20 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 | Rmw".href="#atomicRmw">@atomicRm |
| 67a0 | 77 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 | w</a></li>.............<li><a.id |
| 67c0 | 3d 22 74 6f 63 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 | ="toc-atomicStore".href="#atomic |
| 67e0 | 53 74 6f 72 65 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 | Store">@atomicStore</a></li>.... |
| 6800 | 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 43 61 73 74 22 | .........<li><a.id="toc-bitCast" |
| 6820 | 20 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 3c 2f 6c | .href="#bitCast">@bitCast</a></l |
| 6840 | 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 |
| 6860 | 74 4f 66 66 73 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 | tOffsetOf".href="#bitOffsetOf">@ |
| 6880 | 62 69 74 4f 66 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 | bitOffsetOf</a></li>............ |
| 68a0 | 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 22 20 68 72 65 66 3d | .<li><a.id="toc-bitSizeOf".href= |
| 68c0 | 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 61 3e 3c 2f 6c 69 3e | "#bitSizeOf">@bitSizeOf</a></li> |
| 68e0 | 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 72 61 6e | .............<li><a.id="toc-bran |
| 6900 | 63 68 48 69 6e 74 22 20 68 72 65 66 3d 22 23 62 72 61 6e 63 68 48 69 6e 74 22 3e 40 62 72 61 6e | chHint".href="#branchHint">@bran |
| 6920 | 63 68 48 69 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 | chHint</a></li>.............<li> |
| 6940 | 3c 61 20 69 64 3d 22 74 6f 63 2d 62 72 65 61 6b 70 6f 69 6e 74 22 20 68 72 65 66 3d 22 23 62 72 | <a.id="toc-breakpoint".href="#br |
| 6960 | 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 3c 2f 6c 69 3e 0a 20 | eakpoint">@breakpoint</a></li>.. |
| 6980 | 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 75 6c 41 64 64 | ...........<li><a.id="toc-mulAdd |
| 69a0 | 22 20 68 72 65 66 3d 22 23 6d 75 6c 41 64 64 22 3e 40 6d 75 6c 41 64 64 3c 2f 61 3e 3c 2f 6c 69 | ".href="#mulAdd">@mulAdd</a></li |
| 69c0 | 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 79 74 | >.............<li><a.id="toc-byt |
| 69e0 | 65 53 77 61 70 22 20 68 72 65 66 3d 22 23 62 79 74 65 53 77 61 70 22 3e 40 62 79 74 65 53 77 61 | eSwap".href="#byteSwap">@byteSwa |
| 6a00 | 70 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 | p</a></li>.............<li><a.id |
| 6a20 | 3d 22 74 6f 63 2d 62 69 74 52 65 76 65 72 73 65 22 20 68 72 65 66 3d 22 23 62 69 74 52 65 76 65 | ="toc-bitReverse".href="#bitReve |
| 6a40 | 72 73 65 22 3e 40 62 69 74 52 65 76 65 72 73 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | rse">@bitReverse</a></li>....... |
| 6a60 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6f 66 66 73 65 74 4f 66 22 20 68 | ......<li><a.id="toc-offsetOf".h |
| 6a80 | 72 65 66 3d 22 23 6f 66 66 73 65 74 4f 66 22 3e 40 6f 66 66 73 65 74 4f 66 3c 2f 61 3e 3c 2f 6c | ref="#offsetOf">@offsetOf</a></l |
| 6aa0 | 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 61 | i>.............<li><a.id="toc-ca |
| 6ac0 | 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 6c 69 3e 0a | ll".href="#call">@call</a></li>. |
| 6ae0 | 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 44 65 66 69 | ............<li><a.id="toc-cDefi |
| 6b00 | 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 3c 2f 61 3e | ne".href="#cDefine">@cDefine</a> |
| 6b20 | 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 |
| 6b40 | 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 49 6d 70 6f | -cImport".href="#cImport">@cImpo |
| 6b60 | 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 3c 61 20 69 | rt</a></li>.............<li><a.i |
| 6b80 | 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 6c 75 64 65 | d="toc-cInclude".href="#cInclude |
| 6ba0 | 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 20 20 20 20 | ">@cInclude</a></li>............ |
| 6bc0 | 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 63 6c 7a 22 | .<li><a.id="toc-clz".href="#clz" |
| 6be0 | 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 6c 69 3e 3c | >@clz</a></li>.............<li>< |
| 6c00 | 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 66 3d 22 23 | a.id="toc-cmpxchgStrong".href="# |
| 6c20 | 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 67 3c 2f 61 | cmpxchgStrong">@cmpxchgStrong</a |
| 6c40 | 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 |
| 6c60 | 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 67 57 65 61 | c-cmpxchgWeak".href="#cmpxchgWea |
| 6c80 | 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 20 20 20 20 | k">@cmpxchgWeak</a></li>........ |
| 6ca0 | 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 72 72 6f 72 | .....<li><a.id="toc-compileError |
| 6cc0 | 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 69 6c 65 45 | ".href="#compileError">@compileE |
| 6ce0 | 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 3e 3c 61 | rror</a></li>.............<li><a |
| 6d00 | 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 63 6f 6d 70 | .id="toc-compileLog".href="#comp |
| 6d20 | 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 0a 20 20 20 | ileLog">@compileLog</a></li>.... |
| 6d40 | 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 6e 73 74 43 61 73 | .........<li><a.id="toc-constCas |
| 6d60 | 74 22 20 68 72 65 66 3d 22 23 63 6f 6e 73 74 43 61 73 74 22 3e 40 63 6f 6e 73 74 43 61 73 74 3c | t".href="#constCast">@constCast< |
| 6d80 | 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=" |
| 6da0 | 74 6f 63 2d 63 74 7a 22 20 68 72 65 66 3d 22 23 63 74 7a 22 3e 40 63 74 7a 3c 2f 61 3e 3c 2f 6c | toc-ctz".href="#ctz">@ctz</a></l |
| 6dc0 | 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 55 | i>.............<li><a.id="toc-cU |
| 6de0 | 6e 64 65 66 22 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 | ndef".href="#cUndef">@cUndef</a> |
| 6e00 | 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 |
| 6e20 | 2d 63 56 61 41 72 67 22 20 68 72 65 66 3d 22 23 63 56 61 41 72 67 22 3e 40 63 56 61 41 72 67 3c | -cVaArg".href="#cVaArg">@cVaArg< |
| 6e40 | 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=" |
| 6e60 | 74 6f 63 2d 63 56 61 43 6f 70 79 22 20 68 72 65 66 3d 22 23 63 56 61 43 6f 70 79 22 3e 40 63 56 | toc-cVaCopy".href="#cVaCopy">@cV |
| 6e80 | 61 43 6f 70 79 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 | aCopy</a></li>.............<li>< |
| 6ea0 | 61 20 69 64 3d 22 74 6f 63 2d 63 56 61 45 6e 64 22 20 68 72 65 66 3d 22 23 63 56 61 45 6e 64 22 | a.id="toc-cVaEnd".href="#cVaEnd" |
| 6ec0 | 3e 40 63 56 61 45 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 | >@cVaEnd</a></li>.............<l |
| 6ee0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 56 61 53 74 61 72 74 22 20 68 72 65 66 3d 22 23 63 56 | i><a.id="toc-cVaStart".href="#cV |
| 6f00 | 61 53 74 61 72 74 22 3e 40 63 56 61 53 74 61 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | aStart">@cVaStart</a></li>...... |
| 6f20 | 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 74 22 20 | .......<li><a.id="toc-divExact". |
| 6f40 | 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 2f | href="#divExact">@divExact</a></ |
| 6f60 | 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 64 | li>.............<li><a.id="toc-d |
| 6f80 | 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 76 46 6c | ivFloor".href="#divFloor">@divFl |
| 6fa0 | 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 61 20 | oor</a></li>.............<li><a. |
| 6fc0 | 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 72 75 6e | id="toc-divTrunc".href="#divTrun |
| 6fe0 | 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 20 20 20 | c">@divTrunc</a></li>........... |
| 7000 | 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 72 65 66 | ..<li><a.id="toc-embedFile".href |
| 7020 | 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 6c 69 | ="#embedFile">@embedFile</a></li |
| 7040 | 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 6e 75 | >.............<li><a.id="toc-enu |
| 7060 | 6d 46 72 6f 6d 49 6e 74 22 20 68 72 65 66 3d 22 23 65 6e 75 6d 46 72 6f 6d 49 6e 74 22 3e 40 65 | mFromInt".href="#enumFromInt">@e |
| 7080 | 6e 75 6d 46 72 6f 6d 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 | numFromInt</a></li>............. |
| 70a0 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 72 72 6f 72 46 72 6f 6d 49 6e 74 22 20 68 72 65 | <li><a.id="toc-errorFromInt".hre |
| 70c0 | 66 3d 22 23 65 72 72 6f 72 46 72 6f 6d 49 6e 74 22 3e 40 65 72 72 6f 72 46 72 6f 6d 49 6e 74 3c | f="#errorFromInt">@errorFromInt< |
| 70e0 | 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=" |
| 7100 | 74 6f 63 2d 65 72 72 6f 72 4e 61 6d 65 22 20 68 72 65 66 3d 22 23 65 72 72 6f 72 4e 61 6d 65 22 | toc-errorName".href="#errorName" |
| 7120 | 3e 40 65 72 72 6f 72 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 | >@errorName</a></li>............ |
| 7140 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 | .<li><a.id="toc-errorReturnTrace |
| 7160 | 22 20 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 40 65 72 72 6f | ".href="#errorReturnTrace">@erro |
| 7180 | 72 52 65 74 75 72 6e 54 72 61 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | rReturnTrace</a></li>........... |
| 71a0 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 72 72 6f 72 43 61 73 74 22 20 68 72 65 66 | ..<li><a.id="toc-errorCast".href |
| 71c0 | 3d 22 23 65 72 72 6f 72 43 61 73 74 22 3e 40 65 72 72 6f 72 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 | ="#errorCast">@errorCast</a></li |
| 71e0 | 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 78 70 | >.............<li><a.id="toc-exp |
| 7200 | 6f 72 74 22 20 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 | ort".href="#export">@export</a>< |
| 7220 | 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- |
| 7240 | 65 78 74 65 72 6e 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 | extern".href="#extern">@extern</ |
| 7260 | 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 |
| 7280 | 6f 63 2d 66 69 65 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 | oc-field".href="#field">@field</ |
| 72a0 | 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 |
| 72c0 | 6f 63 2d 66 69 65 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 | oc-fieldParentPtr".href="#fieldP |
| 72e0 | 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 3c 2f 6c | arentPtr">@fieldParentPtr</a></l |
| 7300 | 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 69 | i>.............<li><a.id="toc-Fi |
| 7320 | 65 6c 64 54 79 70 65 22 20 68 72 65 66 3d 22 23 46 69 65 6c 64 54 79 70 65 22 3e 40 46 69 65 6c | eldType".href="#FieldType">@Fiel |
| 7340 | 64 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 6c 69 3e 3c | dType</a></li>.............<li>< |
| 7360 | 61 20 69 64 3d 22 74 6f 63 2d 66 6c 6f 61 74 43 61 73 74 22 20 68 72 65 66 3d 22 23 66 6c 6f 61 | a.id="toc-floatCast".href="#floa |
| 7380 | 74 43 61 73 74 22 3e 40 66 6c 6f 61 74 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | tCast">@floatCast</a></li>...... |
| 73a0 | 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 46 72 6f 6d 49 | .......<li><a.id="toc-floatFromI |
| 73c0 | 6e 74 22 20 68 72 65 66 3d 22 23 66 6c 6f 61 74 46 72 6f 6d 49 6e 74 22 3e 40 66 6c 6f 61 74 46 | nt".href="#floatFromInt">@floatF |
| 73e0 | 72 6f 6d 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 | romInt</a></li>.............<li> |
| 7400 | 3c 61 20 69 64 3d 22 74 6f 63 2d 66 72 61 6d 65 41 64 64 72 65 73 73 22 20 68 72 65 66 3d 22 23 | <a.id="toc-frameAddress".href="# |
| 7420 | 66 72 61 6d 65 41 64 64 72 65 73 73 22 3e 40 66 72 61 6d 65 41 64 64 72 65 73 73 3c 2f 61 3e 3c | frameAddress">@frameAddress</a>< |
| 7440 | 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- |
| 7460 | 68 61 73 44 65 63 6c 22 20 68 72 65 66 3d 22 23 68 61 73 44 65 63 6c 22 3e 40 68 61 73 44 65 63 | hasDecl".href="#hasDecl">@hasDec |
| 7480 | 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 |
| 74a0 | 3d 22 74 6f 63 2d 68 61 73 46 69 65 6c 64 22 20 68 72 65 66 3d 22 23 68 61 73 46 69 65 6c 64 22 | ="toc-hasField".href="#hasField" |
| 74c0 | 3e 40 68 61 73 46 69 65 6c 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | >@hasField</a></li>............. |
| 74e0 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 6d 70 6f 72 74 22 20 68 72 65 66 3d 22 23 69 6d | <li><a.id="toc-import".href="#im |
| 7500 | 70 6f 72 74 22 3e 40 69 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | port">@import</a></li>.......... |
| 7520 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 6e 43 6f 6d 70 74 69 6d 65 22 20 68 72 | ...<li><a.id="toc-inComptime".hr |
| 7540 | 65 66 3d 22 23 69 6e 43 6f 6d 70 74 69 6d 65 22 3e 40 69 6e 43 6f 6d 70 74 69 6d 65 3c 2f 61 3e | ef="#inComptime">@inComptime</a> |
| 7560 | 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 |
| 7580 | 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 69 6e 74 43 61 | -intCast".href="#intCast">@intCa |
| 75a0 | 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 |
| 75c0 | 64 3d 22 74 6f 63 2d 69 6e 74 46 72 6f 6d 42 6f 6f 6c 22 20 68 72 65 66 3d 22 23 69 6e 74 46 72 | d="toc-intFromBool".href="#intFr |
| 75e0 | 6f 6d 42 6f 6f 6c 22 3e 40 69 6e 74 46 72 6f 6d 42 6f 6f 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | omBool">@intFromBool</a></li>... |
| 7600 | 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 69 6e 74 46 72 6f 6d | ..........<li><a.id="toc-intFrom |
| 7620 | 45 6e 75 6d 22 20 68 72 65 66 3d 22 23 69 6e 74 46 72 6f 6d 45 6e 75 6d 22 3e 40 69 6e 74 46 72 | Enum".href="#intFromEnum">@intFr |
| 7640 | 6f 6d 45 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 | omEnum</a></li>.............<li> |
| 7660 | 3c 61 20 69 64 3d 22 74 6f 63 2d 69 6e 74 46 72 6f 6d 45 72 72 6f 72 22 20 68 72 65 66 3d 22 23 | <a.id="toc-intFromError".href="# |
| 7680 | 69 6e 74 46 72 6f 6d 45 72 72 6f 72 22 3e 40 69 6e 74 46 72 6f 6d 45 72 72 6f 72 3c 2f 61 3e 3c | intFromError">@intFromError</a>< |
| 76a0 | 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- |
| 76c0 | 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 22 20 68 72 65 66 3d 22 23 69 6e 74 46 72 6f 6d 46 6c 6f 61 | intFromFloat".href="#intFromFloa |
| 76e0 | 74 22 3e 40 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | t">@intFromFloat</a></li>....... |
| 7700 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 6e 74 46 72 6f 6d 50 74 72 22 | ......<li><a.id="toc-intFromPtr" |
| 7720 | 20 68 72 65 66 3d 22 23 69 6e 74 46 72 6f 6d 50 74 72 22 3e 40 69 6e 74 46 72 6f 6d 50 74 72 3c | .href="#intFromPtr">@intFromPtr< |
| 7740 | 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=" |
| 7760 | 74 6f 63 2d 6d 61 78 22 20 68 72 65 66 3d 22 23 6d 61 78 22 3e 40 6d 61 78 3c 2f 61 3e 3c 2f 6c | toc-max".href="#max">@max</a></l |
| 7780 | 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 65 | i>.............<li><a.id="toc-me |
| 77a0 | 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 3e | mcpy".href="#memcpy">@memcpy</a> |
| 77c0 | 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 |
| 77e0 | 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 3c | -memset".href="#memset">@memset< |
| 7800 | 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=" |
| 7820 | 74 6f 63 2d 6d 69 6e 22 20 68 72 65 66 3d 22 23 6d 69 6e 22 3e 40 6d 69 6e 3c 2f 61 3e 3c 2f 6c | toc-min".href="#min">@min</a></l |
| 7840 | 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 77 61 | i>.............<li><a.id="toc-wa |
| 7860 | 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 4d 65 6d 6f 72 79 53 | smMemorySize".href="#wasmMemoryS |
| 7880 | 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 2f 6c 69 3e 0a 20 20 | ize">@wasmMemorySize</a></li>... |
| 78a0 | 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 77 61 73 6d 4d 65 6d | ..........<li><a.id="toc-wasmMem |
| 78c0 | 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 79 47 72 6f 77 22 3e | oryGrow".href="#wasmMemoryGrow"> |
| 78e0 | 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 20 20 20 20 20 20 20 | @wasmMemoryGrow</a></li>........ |
| 7900 | 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 68 72 65 66 3d 22 23 | .....<li><a.id="toc-mod".href="# |
| 7920 | 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 20 20 20 20 20 20 3c | mod">@mod</a></li>.............< |
| 7940 | 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 66 6c 6f 77 22 20 68 | li><a.id="toc-mulWithOverflow".h |
| 7960 | 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 68 4f | ref="#mulWithOverflow">@mulWithO |
| 7980 | 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 3c 6c 69 | verflow</a></li>.............<li |
| 79a0 | 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 23 70 61 6e 69 63 22 | ><a.id="toc-panic".href="#panic" |
| 79c0 | 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 20 20 20 20 3c 6c 69 | >@panic</a></li>.............<li |
| 79e0 | 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 66 3d 22 23 70 6f 70 | ><a.id="toc-popCount".href="#pop |
| 7a00 | 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 0a 20 20 20 20 20 20 | Count">@popCount</a></li>....... |
| 7a20 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 70 72 65 66 65 74 63 68 22 20 68 | ......<li><a.id="toc-prefetch".h |
| 7a40 | 72 65 66 3d 22 23 70 72 65 66 65 74 63 68 22 3e 40 70 72 65 66 65 74 63 68 3c 2f 61 3e 3c 2f 6c | ref="#prefetch">@prefetch</a></l |
| 7a60 | 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 70 74 | i>.............<li><a.id="toc-pt |
| 7a80 | 72 43 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 | rCast".href="#ptrCast">@ptrCast< |
| 7aa0 | 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=" |
| 7ac0 | 74 6f 63 2d 70 74 72 46 72 6f 6d 49 6e 74 22 20 68 72 65 66 3d 22 23 70 74 72 46 72 6f 6d 49 6e | toc-ptrFromInt".href="#ptrFromIn |
| 7ae0 | 74 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | t">@ptrFromInt</a></li>......... |
| 7b00 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 72 65 6d 22 20 68 72 65 66 3d 22 23 72 | ....<li><a.id="toc-rem".href="#r |
| 7b20 | 65 6d 22 3e 40 72 65 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 | em">@rem</a></li>.............<l |
| 7b40 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 72 65 74 75 72 6e 41 64 64 72 65 73 73 22 20 68 72 65 66 | i><a.id="toc-returnAddress".href |
| 7b60 | 3d 22 23 72 65 74 75 72 6e 41 64 64 72 65 73 73 22 3e 40 72 65 74 75 72 6e 41 64 64 72 65 73 73 | ="#returnAddress">@returnAddress |
| 7b80 | 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= |
| 7ba0 | 22 74 6f 63 2d 73 65 6c 65 63 74 22 20 68 72 65 66 3d 22 23 73 65 6c 65 63 74 22 3e 40 73 65 6c | "toc-select".href="#select">@sel |
| 7bc0 | 65 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 | ect</a></li>.............<li><a. |
| 7be0 | 69 64 3d 22 74 6f 63 2d 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 22 20 68 72 65 66 | id="toc-setEvalBranchQuota".href |
| 7c00 | 3d 22 23 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 22 3e 40 73 65 74 45 76 61 6c 42 | ="#setEvalBranchQuota">@setEvalB |
| 7c20 | 72 61 6e 63 68 51 75 6f 74 61 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ranchQuota</a></li>............. |
| 7c40 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 65 74 46 6c 6f 61 74 4d 6f 64 65 22 20 68 72 65 | <li><a.id="toc-setFloatMode".hre |
| 7c60 | 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< |
| 7c80 | 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=" |
| 7ca0 | 74 6f 63 2d 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 22 20 68 72 65 66 3d 22 23 73 65 74 | toc-setRuntimeSafety".href="#set |
| 7cc0 | 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 65 74 79 | RuntimeSafety">@setRuntimeSafety |
| 7ce0 | 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= |
| 7d00 | 22 74 6f 63 2d 73 68 6c 45 78 61 63 74 22 20 68 72 65 66 3d 22 23 73 68 6c 45 78 61 63 74 22 3e | "toc-shlExact".href="#shlExact"> |
| 7d20 | 40 73 68 6c 45 78 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 | @shlExact</a></li>.............< |
| 7d40 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 20 68 | li><a.id="toc-shlWithOverflow".h |
| 7d60 | 72 65 66 3d 22 23 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f | ref="#shlWithOverflow">@shlWithO |
| 7d80 | 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 3c 6c 69 | verflow</a></li>.............<li |
| 7da0 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 68 72 45 78 61 63 74 22 20 68 72 65 66 3d 22 23 73 68 72 | ><a.id="toc-shrExact".href="#shr |
| 7dc0 | 45 78 61 63 74 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | Exact">@shrExact</a></li>....... |
| 7de0 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 68 75 66 66 6c 65 22 20 68 72 | ......<li><a.id="toc-shuffle".hr |
| 7e00 | 65 66 3d 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 | ef="#shuffle">@shuffle</a></li>. |
| 7e20 | 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 69 7a 65 4f | ............<li><a.id="toc-sizeO |
| 7e40 | 66 22 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 3c 2f 6c | f".href="#sizeOf">@sizeOf</a></l |
| 7e60 | 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 70 | i>.............<li><a.id="toc-sp |
| 7e80 | 6c 61 74 22 20 68 72 65 66 3d 22 23 73 70 6c 61 74 22 3e 40 73 70 6c 61 74 3c 2f 61 3e 3c 2f 6c | lat".href="#splat">@splat</a></l |
| 7ea0 | 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 72 65 | i>.............<li><a.id="toc-re |
| 7ec0 | 64 75 63 65 22 20 68 72 65 66 3d 22 23 72 65 64 75 63 65 22 3e 40 72 65 64 75 63 65 3c 2f 61 3e | duce".href="#reduce">@reduce</a> |
| 7ee0 | 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 |
| 7f00 | 2d 73 72 63 22 20 68 72 65 66 3d 22 23 73 72 63 22 3e 40 73 72 63 3c 2f 61 3e 3c 2f 6c 69 3e 0a | -src".href="#src">@src</a></li>. |
| 7f20 | 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 71 72 74 22 | ............<li><a.id="toc-sqrt" |
| 7f40 | 20 68 72 65 66 3d 22 23 73 71 72 74 22 3e 40 73 71 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | .href="#sqrt">@sqrt</a></li>.... |
| 7f60 | 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 69 6e 22 20 68 72 65 | .........<li><a.id="toc-sin".hre |
| 7f80 | 66 3d 22 23 73 69 6e 22 3e 40 73 69 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | f="#sin">@sin</a></li>.......... |
| 7fa0 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 6f 73 22 20 68 72 65 66 3d 22 23 63 6f | ...<li><a.id="toc-cos".href="#co |
| 7fc0 | 73 22 3e 40 63 6f 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 | s">@cos</a></li>.............<li |
| 7fe0 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 74 61 6e 22 20 68 72 65 66 3d 22 23 74 61 6e 22 3e 40 74 61 | ><a.id="toc-tan".href="#tan">@ta |
| 8000 | 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 64 | n</a></li>.............<li><a.id |
| 8020 | 3d 22 74 6f 63 2d 65 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 | ="toc-exp".href="#exp">@exp</a>< |
| 8040 | 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- |
| 8060 | 65 78 70 32 22 20 68 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 | exp2".href="#exp2">@exp2</a></li |
| 8080 | 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 6c 6f 67 | >.............<li><a.id="toc-log |
| 80a0 | 22 20 68 72 65 66 3d 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 | ".href="#log">@log</a></li>..... |
| 80c0 | 20 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 32 22 20 68 72 65 | ........<li><a.id="toc-log2".hre |
| 80e0 | 66 3d 22 23 6c 6f 67 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 | f="#log2">@log2</a></li>........ |
| 8100 | 20 20 20 20 20 3c 6c 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 | .....<li><a.id="toc-log10".href= |
| 8120 | 22 23 6c 6f 67 31 30 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 | "#log10">@log10</a></li>........ |
| 8140 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 62 73 22 20 68 72 65 66 3d 22 23 | .....<li><a.id="toc-abs".href="# |
| 8160 | 61 62 73 22 3e 40 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 | abs">@abs</a></li>.............< |
| 8180 | 6c 69 3e 3c 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 | li><a.id="toc-floor".href="#floo |
| 81a0 | 72 22 3e 40 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 | r">@floor</a></li>.............< |
| 81c0 | 6c 69 3e 3c 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 | li><a.id="toc-ceil".href="#ceil" |
| 81e0 | 3e 40 63 65 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 | >@ceil</a></li>.............<li> |
| 8200 | 3c 61 20 69 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 | <a.id="toc-trunc".href="#trunc"> |
| 8220 | 40 74 72 75 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 | @trunc</a></li>.............<li> |
| 8240 | 3c 61 20 69 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 | <a.id="toc-round".href="#round"> |
| 8260 | 40 72 6f 75 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 | @round</a></li>.............<li> |
| 8280 | 3c 61 20 69 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 | <a.id="toc-subWithOverflow".href |
| 82a0 | 3d 22 23 73 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 | ="#subWithOverflow">@subWithOver |
| 82c0 | 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 3c 6c 69 3e 3c 61 | flow</a></li>.............<li><a |
| 82e0 | 20 69 64 3d 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 | .id="toc-tagName".href="#tagName |
| 8300 | 22 3e 40 74 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 | ">@tagName</a></li>............. |
| 8320 | 3c 6c 69 3e 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 | <li><a.id="toc-This".href="#This |
| 8340 | 22 3e 40 54 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 | ">@This</a></li>.............<li |
| 8360 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 74 72 61 70 22 20 68 72 65 66 3d 22 23 74 72 61 70 22 3e 40 | ><a.id="toc-trap".href="#trap">@ |
| 8380 | 74 72 61 70 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 | trap</a></li>.............<li><a |
| 83a0 | 20 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 | .id="toc-truncate".href="#trunca |
| 83c0 | 74 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 | te">@truncate</a></li>.......... |
| 83e0 | 20 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 | ...<li><a.id="toc-Type".href="#T |
| 8400 | 79 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 | ype">@Type</a></li>............. |
| 8420 | 3c 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 | <li><a.id="toc-typeInfo".href="# |
| 8440 | 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 20 20 20 | typeInfo">@typeInfo</a></li>.... |
| 8460 | 20 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 | .........<li><a.id="toc-typeName |
| 8480 | 22 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 | ".href="#typeName">@typeName</a> |
| 84a0 | 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 |
| 84c0 | 2d 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 | -TypeOf".href="#TypeOf">@TypeOf< |
| 84e0 | 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=" |
| 8500 | 74 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 | toc-unionInit".href="#unionInit" |
| 8520 | 3e 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 20 20 20 | >@unionInit</a></li>............ |
| 8540 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 56 65 63 74 6f 72 22 20 68 72 65 66 3d 22 23 56 | .<li><a.id="toc-Vector".href="#V |
| 8560 | 65 63 74 6f 72 22 3e 40 56 65 63 74 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | ector">@Vector</a></li>......... |
| 8580 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 76 6f 6c 61 74 69 6c 65 43 61 73 74 22 | ....<li><a.id="toc-volatileCast" |
| 85a0 | 20 68 72 65 66 3d 22 23 76 6f 6c 61 74 69 6c 65 43 61 73 74 22 3e 40 76 6f 6c 61 74 69 6c 65 43 | .href="#volatileCast">@volatileC |
| 85c0 | 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 3e 3c 61 20 | ast</a></li>.............<li><a. |
| 85e0 | 69 64 3d 22 74 6f 63 2d 77 6f 72 6b 47 72 6f 75 70 49 64 22 20 68 72 65 66 3d 22 23 77 6f 72 6b | id="toc-workGroupId".href="#work |
| 8600 | 47 72 6f 75 70 49 64 22 3e 40 77 6f 72 6b 47 72 6f 75 70 49 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | GroupId">@workGroupId</a></li>.. |
| 8620 | 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 77 6f 72 6b 47 72 | ...........<li><a.id="toc-workGr |
| 8640 | 6f 75 70 53 69 7a 65 22 20 68 72 65 66 3d 22 23 77 6f 72 6b 47 72 6f 75 70 53 69 7a 65 22 3e 40 | oupSize".href="#workGroupSize">@ |
| 8660 | 77 6f 72 6b 47 72 6f 75 70 53 69 7a 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | workGroupSize</a></li>.......... |
| 8680 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 77 6f 72 6b 49 74 65 6d 49 64 22 20 68 72 | ...<li><a.id="toc-workItemId".hr |
| 86a0 | 65 66 3d 22 23 77 6f 72 6b 49 74 65 6d 49 64 22 3e 40 77 6f 72 6b 49 74 65 6d 49 64 3c 2f 61 3e | ef="#workItemId">@workItemId</a> |
| 86c0 | 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 20 20 | </li>.........</ul></li>........ |
| 86e0 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 42 75 69 6c 64 2d 4d 6f 64 65 22 20 68 72 65 66 | .<li><a.id="toc-Build-Mode".href |
| 8700 | 3d 22 23 42 75 69 6c 64 2d 4d 6f 64 65 22 3e 42 75 69 6c 64 20 4d 6f 64 65 3c 2f 61 3e 0a 20 20 | ="#Build-Mode">Build.Mode</a>... |
| 8720 | 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 |
| 8740 | 3d 22 74 6f 63 2d 44 65 62 75 67 22 20 68 72 65 66 3d 22 23 44 65 62 75 67 22 3e 44 65 62 75 67 | ="toc-Debug".href="#Debug">Debug |
| 8760 | 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= |
| 8780 | 22 74 6f 63 2d 52 65 6c 65 61 73 65 46 61 73 74 22 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 | "toc-ReleaseFast".href="#Release |
| 87a0 | 46 61 73 74 22 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | Fast">ReleaseFast</a></li>...... |
| 87c0 | 20 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 61 66 | .......<li><a.id="toc-ReleaseSaf |
| 87e0 | 65 22 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 | e".href="#ReleaseSafe">ReleaseSa |
| 8800 | 66 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 3c 61 20 69 | fe</a></li>.............<li><a.i |
| 8820 | 64 3d 22 74 6f 63 2d 52 65 6c 65 61 73 65 53 6d 61 6c 6c 22 20 68 72 65 66 3d 22 23 52 65 6c 65 | d="toc-ReleaseSmall".href="#Rele |
| 8840 | 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 3c 2f 6c 69 3e 0a | aseSmall">ReleaseSmall</a></li>. |
| 8860 | 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 3c | ........</ul></li>.........<li>< |
| 8880 | 61 20 69 64 3d 22 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 | a.id="toc-Single-Threaded-Builds |
| 88a0 | 22 20 68 72 65 66 3d 22 23 53 69 6e 67 6c 65 2d 54 68 72 65 61 64 65 64 2d 42 75 69 6c 64 73 22 | ".href="#Single-Threaded-Builds" |
| 88c0 | 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 3c 2f 6c 69 3e | >Single.Threaded.Builds</a></li> |
| 88e0 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6c 6c 65 67 61 6c 2d | .........<li><a.id="toc-Illegal- |
| 8900 | 42 65 68 61 76 69 6f 72 22 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f | Behavior".href="#Illegal-Behavio |
| 8920 | 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 | r">Illegal.Behavior</a>......... |
| 8940 | 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- |
| 8960 | 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 20 68 72 65 66 3d | Reaching-Unreachable-Code".href= |
| 8980 | 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 52 65 61 | "#Reaching-Unreachable-Code">Rea |
| 89a0 | 63 68 69 6e 67 20 55 6e 72 65 61 63 68 61 62 6c 65 20 43 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a | ching.Unreachable.Code</a></li>. |
| 89c0 | 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 49 6e 64 65 78 | ............<li><a.id="toc-Index |
| 89e0 | 2d 6f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 22 20 68 72 65 66 3d 22 23 49 6e 64 65 78 2d 6f 75 74 | -out-of-Bounds".href="#Index-out |
| 8a00 | 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 75 6e 64 73 3c | -of-Bounds">Index.out.of.Bounds< |
| 8a20 | 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=" |
| 8a40 | 74 6f 63 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 | toc-Cast-Negative-Number-to-Unsi |
| 8a60 | 67 6e 65 64 2d 49 6e 74 65 67 65 72 22 20 68 72 65 66 3d 22 23 43 61 73 74 2d 4e 65 67 61 74 69 | gned-Integer".href="#Cast-Negati |
| 8a80 | 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 22 3e 43 | ve-Number-to-Unsigned-Integer">C |
| 8aa0 | 61 73 74 20 4e 65 67 61 74 69 76 65 20 4e 75 6d 62 65 72 20 74 6f 20 55 6e 73 69 67 6e 65 64 20 | ast.Negative.Number.to.Unsigned. |
| 8ac0 | 49 6e 74 65 67 65 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 | Integer</a></li>.............<li |
| 8ae0 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 61 73 74 2d 54 72 75 6e 63 61 74 65 73 2d 44 61 74 61 22 | ><a.id="toc-Cast-Truncates-Data" |
| 8b00 | 20 68 72 65 66 3d 22 23 43 61 73 74 2d 54 72 75 6e 63 61 74 65 73 2d 44 61 74 61 22 3e 43 61 73 | .href="#Cast-Truncates-Data">Cas |
| 8b20 | 74 20 54 72 75 6e 63 61 74 65 73 20 44 61 74 61 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | t.Truncates.Data</a></li>....... |
| 8b40 | 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 2d 4f 76 65 | ......<li><a.id="toc-Integer-Ove |
| 8b60 | 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 2d 4f 76 65 72 66 6c 6f 77 22 3e | rflow".href="#Integer-Overflow"> |
| 8b80 | 49 6e 74 65 67 65 72 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | Integer.Overflow</a>............ |
| 8ba0 | 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 3d | .<ul>.................<li><a.id= |
| 8bc0 | 22 74 6f 63 2d 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 | "toc-Default-Operations".href="# |
| 8be0 | 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 44 65 66 61 75 6c 74 20 4f 70 65 72 | Default-Operations">Default.Oper |
| 8c00 | 61 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 20 20 20 20 | ations</a></li>................. |
| 8c20 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 2d | <li><a.id="toc-Standard-Library- |
| 8c40 | 4d 61 74 68 2d 46 75 6e 63 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 53 74 61 6e 64 61 72 64 2d | Math-Functions".href="#Standard- |
| 8c60 | 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 64 61 72 64 | Library-Math-Functions">Standard |
| 8c80 | 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 3c 2f 6c 69 3e | .Library.Math.Functions</a></li> |
| 8ca0 | 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- |
| 8cc0 | 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 20 68 72 65 66 | Builtin-Overflow-Functions".href |
| 8ce0 | 3d 22 23 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 42 | ="#Builtin-Overflow-Functions">B |
| 8d00 | 75 69 6c 74 69 6e 20 4f 76 65 72 66 6c 6f 77 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c | uiltin.Overflow.Functions</a></l |
| 8d20 | 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 |
| 8d40 | 63 2d 57 72 61 70 70 69 6e 67 2d 4f 70 65 72 61 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 57 72 | c-Wrapping-Operations".href="#Wr |
| 8d60 | 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 72 | apping-Operations">Wrapping.Oper |
| 8d80 | 61 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 | ations</a></li>.............</ul |
| 8da0 | 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 |
| 8dc0 | 63 2d 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 20 68 72 65 | c-Exact-Left-Shift-Overflow".hre |
| 8de0 | 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 3e 45 | f="#Exact-Left-Shift-Overflow">E |
| 8e00 | 78 61 63 74 20 4c 65 66 74 20 53 68 69 66 74 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 | xact.Left.Shift.Overflow</a></li |
| 8e20 | 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 45 78 61 | >.............<li><a.id="toc-Exa |
| 8e40 | 63 74 2d 52 69 67 68 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 | ct-Right-Shift-Overflow".href="# |
| 8e60 | 45 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 | Exact-Right-Shift-Overflow">Exac |
| 8e80 | 74 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 3c 2f 6c 69 3e 0a | t.Right.Shift.Overflow</a></li>. |
| 8ea0 | 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 69 76 69 73 | ............<li><a.id="toc-Divis |
| 8ec0 | 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 2d | ion-by-Zero".href="#Division-by- |
| 8ee0 | 5a 65 72 6f 22 3e 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a | Zero">Division.by.Zero</a></li>. |
| 8f00 | 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 6d 61 69 | ............<li><a.id="toc-Remai |
| 8f20 | 6e 64 65 72 2d 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 20 68 72 65 66 3d 22 23 52 65 | nder-Division-by-Zero".href="#Re |
| 8f40 | 6d 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 | mainder-Division-by-Zero">Remain |
| 8f60 | 64 65 72 20 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | der.Division.by.Zero</a></li>... |
| 8f80 | 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 45 78 61 63 74 2d 44 | ..........<li><a.id="toc-Exact-D |
| 8fa0 | 69 76 69 73 69 6f 6e 2d 52 65 6d 61 69 6e 64 65 72 22 20 68 72 65 66 3d 22 23 45 78 61 63 74 2d | ivision-Remainder".href="#Exact- |
| 8fc0 | 44 69 76 69 73 69 6f 6e 2d 52 65 6d 61 69 6e 64 65 72 22 3e 45 78 61 63 74 20 44 69 76 69 73 69 | Division-Remainder">Exact.Divisi |
| 8fe0 | 6f 6e 20 52 65 6d 61 69 6e 64 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | on.Remainder</a></li>........... |
| 9000 | 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 6f 2d 55 6e 77 72 | ..<li><a.id="toc-Attempt-to-Unwr |
| 9020 | 61 70 2d 4e 75 6c 6c 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 | ap-Null".href="#Attempt-to-Unwra |
| 9040 | 70 2d 4e 75 6c 6c 22 3e 41 74 74 65 6d 70 74 20 74 6f 20 55 6e 77 72 61 70 20 4e 75 6c 6c 3c 2f | p-Null">Attempt.to.Unwrap.Null</ |
| 9060 | 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 |
| 9080 | 6f 63 2d 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 45 72 72 6f 72 22 20 68 72 65 66 | oc-Attempt-to-Unwrap-Error".href |
| 90a0 | 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 22 3e 41 74 74 65 | ="#Attempt-to-Unwrap-Error">Atte |
| 90c0 | 6d 70 74 20 74 6f 20 55 6e 77 72 61 70 20 45 72 72 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | mpt.to.Unwrap.Error</a></li>.... |
| 90e0 | 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 76 61 6c 69 64 2d | .........<li><a.id="toc-Invalid- |
| 9100 | 45 72 72 6f 72 2d 43 6f 64 65 22 20 68 72 65 66 3d 22 23 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 | Error-Code".href="#Invalid-Error |
| 9120 | 2d 43 6f 64 65 22 3e 49 6e 76 61 6c 69 64 20 45 72 72 6f 72 20 43 6f 64 65 3c 2f 61 3e 3c 2f 6c | -Code">Invalid.Error.Code</a></l |
| 9140 | 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 49 6e | i>.............<li><a.id="toc-In |
| 9160 | 76 61 6c 69 64 2d 45 6e 75 6d 2d 43 61 73 74 22 20 68 72 65 66 3d 22 23 49 6e 76 61 6c 69 64 2d | valid-Enum-Cast".href="#Invalid- |
| 9180 | 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 61 73 74 3c 2f 61 3e | Enum-Cast">Invalid.Enum.Cast</a> |
| 91a0 | 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 |
| 91c0 | 2d 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 53 65 74 2d 43 61 73 74 22 20 68 72 65 66 3d 22 23 | -Invalid-Error-Set-Cast".href="# |
| 91e0 | 49 6e 76 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 | Invalid-Error-Set-Cast">Invalid. |
| 9200 | 45 72 72 6f 72 20 53 65 74 20 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | Error.Set.Cast</a></li>......... |
| 9220 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 | ....<li><a.id="toc-Incorrect-Poi |
| 9240 | 6e 74 65 72 2d 41 6c 69 67 6e 6d 65 6e 74 22 20 68 72 65 66 3d 22 23 49 6e 63 6f 72 72 65 63 74 | nter-Alignment".href="#Incorrect |
| 9260 | 2d 50 6f 69 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 | -Pointer-Alignment">Incorrect.Po |
| 9280 | 69 6e 74 65 72 20 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 | inter.Alignment</a></li>........ |
| 92a0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d | .....<li><a.id="toc-Wrong-Union- |
| 92c0 | 46 69 65 6c 64 2d 41 63 63 65 73 73 22 20 68 72 65 66 3d 22 23 57 72 6f 6e 67 2d 55 6e 69 6f 6e | Field-Access".href="#Wrong-Union |
| 92e0 | 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 |
| 9300 | 20 41 63 63 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 | .Access</a></li>.............<li |
| 9320 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 2d 46 6c 6f 61 74 2d | ><a.id="toc-Out-of-Bounds-Float- |
| 9340 | 74 6f 2d 49 6e 74 65 67 65 72 2d 43 61 73 74 22 20 68 72 65 66 3d 22 23 4f 75 74 2d 6f 66 2d 42 | to-Integer-Cast".href="#Out-of-B |
| 9360 | 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 4f 75 74 | ounds-Float-to-Integer-Cast">Out |
| 9380 | 20 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 | .of.Bounds.Float.to.Integer.Cast |
| 93a0 | 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= |
| 93c0 | 22 74 6f 63 2d 50 6f 69 6e 74 65 72 2d 43 61 73 74 2d 49 6e 76 61 6c 69 64 2d 4e 75 6c 6c 22 20 | "toc-Pointer-Cast-Invalid-Null". |
| 93e0 | 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 2d 4e 75 6c 6c | href="#Pointer-Cast-Invalid-Null |
| 9400 | 22 3e 50 6f 69 6e 74 65 72 20 43 61 73 74 20 49 6e 76 61 6c 69 64 20 4e 75 6c 6c 3c 2f 61 3e 3c | ">Pointer.Cast.Invalid.Null</a>< |
| 9420 | 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>......... |
| 9440 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4d 65 6d 6f 72 79 22 20 68 72 65 66 3d 22 23 4d 65 | <li><a.id="toc-Memory".href="#Me |
| 9460 | 6d 6f 72 79 22 3e 4d 65 6d 6f 72 79 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | mory">Memory</a>.........<ul>... |
| 9480 | 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 68 6f 6f 73 69 6e | ..........<li><a.id="toc-Choosin |
| 94a0 | 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 20 68 72 65 66 3d 22 23 43 68 6f 6f 73 69 6e 67 2d | g-an-Allocator".href="#Choosing- |
| 94c0 | 61 6e 2d 41 6c 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 | an-Allocator">Choosing.an.Alloca |
| 94e0 | 74 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 | tor</a></li>.............<li><a. |
| 9500 | 69 64 3d 22 74 6f 63 2d 57 68 65 72 65 2d 61 72 65 2d 74 68 65 2d 62 79 74 65 73 22 20 68 72 65 | id="toc-Where-are-the-bytes".hre |
| 9520 | 66 3d 22 23 57 68 65 72 65 2d 61 72 65 2d 74 68 65 2d 62 79 74 65 73 22 3e 57 68 65 72 65 20 61 | f="#Where-are-the-bytes">Where.a |
| 9540 | 72 65 20 74 68 65 20 62 79 74 65 73 3f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | re.the.bytes?</a></li>.......... |
| 9560 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 2d 61 | ...<li><a.id="toc-Implementing-a |
| 9580 | 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 20 68 72 65 66 3d 22 23 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 | n-Allocator".href="#Implementing |
| 95a0 | 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 3e 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 61 6e 20 41 | -an-Allocator">Implementing.an.A |
| 95c0 | 6c 6c 6f 63 61 74 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 | llocator</a></li>.............<l |
| 95e0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 48 65 61 70 2d 41 6c 6c 6f 63 61 74 69 6f 6e 2d 46 61 69 | i><a.id="toc-Heap-Allocation-Fai |
| 9600 | 6c 75 72 65 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 | lure".href="#Heap-Allocation-Fai |
| 9620 | 6c 75 72 65 22 3e 48 65 61 70 20 41 6c 6c 6f 63 61 74 69 6f 6e 20 46 61 69 6c 75 72 65 3c 2f 61 | lure">Heap.Allocation.Failure</a |
| 9640 | 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 |
| 9660 | 63 2d 52 65 63 75 72 73 69 6f 6e 22 20 68 72 65 66 3d 22 23 52 65 63 75 72 73 69 6f 6e 22 3e 52 | c-Recursion".href="#Recursion">R |
| 9680 | 65 63 75 72 73 69 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 | ecursion</a></li>.............<l |
| 96a0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4c 69 66 65 74 69 6d 65 2d 61 6e 64 2d 4f 77 6e 65 72 73 | i><a.id="toc-Lifetime-and-Owners |
| 96c0 | 68 69 70 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 | hip".href="#Lifetime-and-Ownersh |
| 96e0 | 69 70 22 3e 4c 69 66 65 74 69 6d 65 20 61 6e 64 20 4f 77 6e 65 72 73 68 69 70 3c 2f 61 3e 3c 2f | ip">Lifetime.and.Ownership</a></ |
| 9700 | 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 3c | li>.........</ul></li>.........< |
| 9720 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 | li><a.id="toc-Compile-Variables" |
| 9740 | 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 69 | .href="#Compile-Variables">Compi |
| 9760 | 6c 65 20 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 20 20 3c 6c | le.Variables</a></li>.........<l |
| 9780 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 6f 6d 70 69 6c 61 74 69 6f 6e 2d 4d 6f 64 65 6c 22 20 | i><a.id="toc-Compilation-Model". |
| 97a0 | 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 61 74 69 6f 6e 2d 4d 6f 64 65 6c 22 3e 43 6f 6d 70 69 6c | href="#Compilation-Model">Compil |
| 97c0 | 61 74 69 6f 6e 20 4d 6f 64 65 6c 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | ation.Model</a>.........<ul>.... |
| 97e0 | 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 6f 75 72 63 65 2d 46 | .........<li><a.id="toc-Source-F |
| 9800 | 69 6c 65 2d 53 74 72 75 63 74 73 22 20 68 72 65 66 3d 22 23 53 6f 75 72 63 65 2d 46 69 6c 65 2d | ile-Structs".href="#Source-File- |
| 9820 | 53 74 72 75 63 74 73 22 3e 53 6f 75 72 63 65 20 46 69 6c 65 20 53 74 72 75 63 74 73 3c 2f 61 3e | Structs">Source.File.Structs</a> |
| 9840 | 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 |
| 9860 | 2d 46 69 6c 65 2d 61 6e 64 2d 44 65 63 6c 61 72 61 74 69 6f 6e 2d 44 69 73 63 6f 76 65 72 79 22 | -File-and-Declaration-Discovery" |
| 9880 | 20 68 72 65 66 3d 22 23 46 69 6c 65 2d 61 6e 64 2d 44 65 63 6c 61 72 61 74 69 6f 6e 2d 44 69 73 | .href="#File-and-Declaration-Dis |
| 98a0 | 63 6f 76 65 72 79 22 3e 46 69 6c 65 20 61 6e 64 20 44 65 63 6c 61 72 61 74 69 6f 6e 20 44 69 73 | covery">File.and.Declaration.Dis |
| 98c0 | 63 6f 76 65 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 6c 69 3e | covery</a></li>.............<li> |
| 98e0 | 3c 61 20 69 64 3d 22 74 6f 63 2d 53 70 65 63 69 61 6c 2d 52 6f 6f 74 2d 44 65 63 6c 61 72 61 74 | <a.id="toc-Special-Root-Declarat |
| 9900 | 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 53 70 65 63 69 61 6c 2d 52 6f 6f 74 2d 44 65 63 6c 61 72 | ions".href="#Special-Root-Declar |
| 9920 | 61 74 69 6f 6e 73 22 3e 53 70 65 63 69 61 6c 20 52 6f 6f 74 20 44 65 63 6c 61 72 61 74 69 6f 6e | ations">Special.Root.Declaration |
| 9940 | 73 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 20 20 | s</a>.............<ul>.......... |
| 9960 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 6e 74 72 79 2d 50 6f 69 6e | .......<li><a.id="toc-Entry-Poin |
| 9980 | 74 22 20 68 72 65 66 3d 22 23 45 6e 74 72 79 2d 50 6f 69 6e 74 22 3e 45 6e 74 72 79 20 50 6f 69 | t".href="#Entry-Point">Entry.Poi |
| 99a0 | 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 20 20 20 3c 6c 69 3e | nt</a></li>.................<li> |
| 99c0 | 3c 61 20 69 64 3d 22 74 6f 63 2d 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 2d 4f 70 74 69 | <a.id="toc-Standard-Library-Opti |
| 99e0 | 6f 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 4f 70 74 | ons".href="#Standard-Library-Opt |
| 9a00 | 69 6f 6e 73 22 3e 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 4f 70 74 69 6f 6e 73 3c 2f | ions">Standard.Library.Options</ |
| 9a20 | 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 |
| 9a40 | 64 3d 22 74 6f 63 2d 50 61 6e 69 63 2d 48 61 6e 64 6c 65 72 22 20 68 72 65 66 3d 22 23 50 61 6e | d="toc-Panic-Handler".href="#Pan |
| 9a60 | 69 63 2d 48 61 6e 64 6c 65 72 22 3e 50 61 6e 69 63 20 48 61 6e 64 6c 65 72 3c 2f 61 3e 3c 2f 6c | ic-Handler">Panic.Handler</a></l |
| 9a80 | 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 20 | i>.............</ul></li>....... |
| 9aa0 | 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=" |
| 9ac0 | 74 6f 63 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 | toc-Zig-Build-System".href="#Zig |
| 9ae0 | 2d 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 | -Build-System">Zig.Build.System< |
| 9b00 | 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- |
| 9b20 | 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 3c 75 6c 3e 0a | C".href="#C">C</a>.........<ul>. |
| 9b40 | 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 54 79 70 | ............<li><a.id="toc-C-Typ |
| 9b60 | 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 2d 50 72 69 6d | e-Primitives".href="#C-Type-Prim |
| 9b80 | 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 61 3e 3c 2f 6c | itives">C.Type.Primitives</a></l |
| 9ba0 | 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 49 6d | i>.............<li><a.id="toc-Im |
| 9bc0 | 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 65 66 3d 22 23 | port-from-C-Header-File".href="# |
| 9be0 | 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 |
| 9c00 | 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 69 3e 0a 20 20 | t.from.C.Header.File</a></li>... |
| 9c20 | 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 54 72 61 6e 73 | ..........<li><a.id="toc-C-Trans |
| 9c40 | 6c 61 74 69 6f 6e 2d 43 4c 49 22 20 68 72 65 66 3d 22 23 43 2d 54 72 61 6e 73 6c 61 74 69 6f 6e | lation-CLI".href="#C-Translation |
| 9c60 | 2d 43 4c 49 22 3e 43 20 54 72 61 6e 73 6c 61 74 69 6f 6e 20 43 4c 49 3c 2f 61 3e 0a 20 20 20 20 | -CLI">C.Translation.CLI</a>..... |
| 9c80 | 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 20 3c 6c 69 | ........<ul>.................<li |
| 9ca0 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 2d 66 6c 61 67 73 22 20 | ><a.id="toc-Command-line-flags". |
| 9cc0 | 68 72 65 66 3d 22 23 43 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 2d 66 6c 61 67 73 22 3e 43 6f 6d 6d 61 | href="#Command-line-flags">Comma |
| 9ce0 | 6e 64 20 6c 69 6e 65 20 66 6c 61 67 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | nd.line.flags</a></li>.......... |
| 9d00 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 55 73 69 6e 67 2d 2d 74 61 72 | .......<li><a.id="toc-Using--tar |
| 9d20 | 67 65 74 2d 61 6e 64 2d 2d 63 66 6c 61 67 73 22 20 68 72 65 66 3d 22 23 55 73 69 6e 67 2d 2d 74 | get-and--cflags".href="#Using--t |
| 9d40 | 61 72 67 65 74 2d 61 6e 64 2d 2d 63 66 6c 61 67 73 22 3e 55 73 69 6e 67 20 2d 74 61 72 67 65 74 | arget-and--cflags">Using.-target |
| 9d60 | 20 61 6e 64 20 2d 63 66 6c 61 67 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | .and.-cflags</a></li>........... |
| 9d80 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 49 6d 70 6f 72 74 2d 76 73 2d | ......<li><a.id="toc-cImport-vs- |
| 9da0 | 74 72 61 6e 73 6c 61 74 65 2d 63 22 20 68 72 65 66 3d 22 23 63 49 6d 70 6f 72 74 2d 76 73 2d 74 | translate-c".href="#cImport-vs-t |
| 9dc0 | 72 61 6e 73 6c 61 74 65 2d 63 22 3e 40 63 49 6d 70 6f 72 74 20 76 73 20 74 72 61 6e 73 6c 61 74 | ranslate-c">@cImport.vs.translat |
| 9de0 | 65 2d 63 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 | e-c</a></li>.............</ul></ |
| 9e00 | 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 43 | li>.............<li><a.id="toc-C |
| 9e20 | 2d 54 72 61 6e 73 6c 61 74 69 6f 6e 2d 43 61 63 68 69 6e 67 22 20 68 72 65 66 3d 22 23 43 2d 54 | -Translation-Caching".href="#C-T |
| 9e40 | 72 61 6e 73 6c 61 74 69 6f 6e 2d 43 61 63 68 69 6e 67 22 3e 43 20 54 72 61 6e 73 6c 61 74 69 6f | ranslation-Caching">C.Translatio |
| 9e60 | 6e 20 43 61 63 68 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 | n.Caching</a></li>.............< |
| 9e80 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 72 61 6e 73 6c 61 74 69 6f 6e 2d 66 61 69 6c 75 72 | li><a.id="toc-Translation-failur |
| 9ea0 | 65 73 22 20 68 72 65 66 3d 22 23 54 72 61 6e 73 6c 61 74 69 6f 6e 2d 66 61 69 6c 75 72 65 73 22 | es".href="#Translation-failures" |
| 9ec0 | 3e 54 72 61 6e 73 6c 61 74 69 6f 6e 20 66 61 69 6c 75 72 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | >Translation.failures</a></li>.. |
| 9ee0 | 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 4d 61 63 72 | ...........<li><a.id="toc-C-Macr |
| 9f00 | 6f 73 22 20 68 72 65 66 3d 22 23 43 2d 4d 61 63 72 6f 73 22 3e 43 20 4d 61 63 72 6f 73 3c 2f 61 | os".href="#C-Macros">C.Macros</a |
| 9f20 | 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 |
| 9f40 | 63 2d 43 2d 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 | c-C-Pointers".href="#C-Pointers" |
| 9f60 | 3e 43 20 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 20 | >C.Pointers</a></li>............ |
| 9f80 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 2d 56 61 72 69 61 64 69 63 2d 46 75 6e 63 74 | .<li><a.id="toc-C-Variadic-Funct |
| 9fa0 | 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 43 2d 56 61 72 69 61 64 69 63 2d 46 75 6e 63 74 69 6f 6e | ions".href="#C-Variadic-Function |
| 9fc0 | 73 22 3e 43 20 56 61 72 69 61 64 69 63 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e | s">C.Variadic.Functions</a></li> |
| 9fe0 | 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 45 78 70 6f | .............<li><a.id="toc-Expo |
| a000 | 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 61 72 79 22 20 68 72 65 66 3d 22 23 45 78 70 6f 72 74 | rting-a-C-Library".href="#Export |
| a020 | 69 6e 67 2d 61 2d 43 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 | ing-a-C-Library">Exporting.a.C.L |
| a040 | 69 62 72 61 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 6c 69 3e | ibrary</a></li>.............<li> |
| a060 | 3c 61 20 69 64 3d 22 74 6f 63 2d 4d 69 78 69 6e 67 2d 4f 62 6a 65 63 74 2d 46 69 6c 65 73 22 20 | <a.id="toc-Mixing-Object-Files". |
| a080 | 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 4d 69 78 69 | href="#Mixing-Object-Files">Mixi |
| a0a0 | 6e 67 20 4f 62 6a 65 63 74 20 46 69 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | ng.Object.Files</a></li>........ |
| a0c0 | 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 |
| a0e0 | 6f 63 2d 57 65 62 41 73 73 65 6d 62 6c 79 22 20 68 72 65 66 3d 22 23 57 65 62 41 73 73 65 6d 62 | oc-WebAssembly".href="#WebAssemb |
| a100 | 6c 79 22 3e 57 65 62 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e | ly">WebAssembly</a>.........<ul> |
| a120 | 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 72 65 65 | .............<li><a.id="toc-Free |
| a140 | 73 74 61 6e 64 69 6e 67 22 20 68 72 65 66 3d 22 23 46 72 65 65 73 74 61 6e 64 69 6e 67 22 3e 46 | standing".href="#Freestanding">F |
| a160 | 72 65 65 73 74 61 6e 64 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | reestanding</a></li>............ |
| a180 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 57 41 53 49 22 20 68 72 65 66 3d 22 23 57 41 53 | .<li><a.id="toc-WASI".href="#WAS |
| a1a0 | 49 22 3e 57 41 53 49 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 | I">WASI</a></li>.........</ul></ |
| a1c0 | 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 54 61 72 67 65 | li>.........<li><a.id="toc-Targe |
| a1e0 | 74 73 22 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 2f 61 3e 3c | ts".href="#Targets">Targets</a>< |
| a200 | 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 53 74 79 6c | /li>.........<li><a.id="toc-Styl |
| a220 | 65 2d 47 75 69 64 65 22 20 68 72 65 66 3d 22 23 53 74 79 6c 65 2d 47 75 69 64 65 22 3e 53 74 79 | e-Guide".href="#Style-Guide">Sty |
| a240 | 6c 65 20 47 75 69 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 | le.Guide</a>.........<ul>....... |
| a260 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 76 6f 69 64 2d 52 65 64 75 6e | ......<li><a.id="toc-Avoid-Redun |
| a280 | 64 61 6e 63 79 2d 69 6e 2d 4e 61 6d 65 73 22 20 68 72 65 66 3d 22 23 41 76 6f 69 64 2d 52 65 64 | dancy-in-Names".href="#Avoid-Red |
| a2a0 | 75 6e 64 61 6e 63 79 2d 69 6e 2d 4e 61 6d 65 73 22 3e 41 76 6f 69 64 20 52 65 64 75 6e 64 61 6e | undancy-in-Names">Avoid.Redundan |
| a2c0 | 63 79 20 69 6e 20 4e 61 6d 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | cy.in.Names</a></li>............ |
| a2e0 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 76 6f 69 64 2d 52 65 64 75 6e 64 61 6e 74 2d | .<li><a.id="toc-Avoid-Redundant- |
| a300 | 4e 61 6d 65 73 2d 69 6e 2d 46 75 6c 6c 79 2d 51 75 61 6c 69 66 69 65 64 2d 4e 61 6d 65 73 70 61 | Names-in-Fully-Qualified-Namespa |
| a320 | 63 65 73 22 20 68 72 65 66 3d 22 23 41 76 6f 69 64 2d 52 65 64 75 6e 64 61 6e 74 2d 4e 61 6d 65 | ces".href="#Avoid-Redundant-Name |
| a340 | 73 2d 69 6e 2d 46 75 6c 6c 79 2d 51 75 61 6c 69 66 69 65 64 2d 4e 61 6d 65 73 70 61 63 65 73 22 | s-in-Fully-Qualified-Namespaces" |
| a360 | 3e 41 76 6f 69 64 20 52 65 64 75 6e 64 61 6e 74 20 4e 61 6d 65 73 20 69 6e 20 46 75 6c 6c 79 2d | >Avoid.Redundant.Names.in.Fully- |
| a380 | 51 75 61 6c 69 66 69 65 64 20 4e 61 6d 65 73 70 61 63 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | Qualified.Namespaces</a></li>... |
| a3a0 | 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 69 74 65 73 70 | ..........<li><a.id="toc-Whitesp |
| a3c0 | 61 63 65 22 20 68 72 65 66 3d 22 23 57 68 69 74 65 73 70 61 63 65 22 3e 57 68 69 74 65 73 70 61 | ace".href="#Whitespace">Whitespa |
| a3e0 | 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 6c 69 3e 3c 61 20 69 | ce</a></li>.............<li><a.i |
| a400 | 64 3d 22 74 6f 63 2d 4e 61 6d 65 73 22 20 68 72 65 66 3d 22 23 4e 61 6d 65 73 22 3e 4e 61 6d 65 | d="toc-Names".href="#Names">Name |
| a420 | 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 |
| a440 | 3d 22 74 6f 63 2d 45 78 61 6d 70 6c 65 73 22 20 68 72 65 66 3d 22 23 45 78 61 6d 70 6c 65 73 22 | ="toc-Examples".href="#Examples" |
| a460 | 3e 45 78 61 6d 70 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 | >Examples</a></li>.............< |
| a480 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 6f 63 2d 43 6f 6d 6d 65 6e 74 2d 47 75 69 64 61 6e | li><a.id="toc-Doc-Comment-Guidan |
| a4a0 | 63 65 22 20 68 72 65 66 3d 22 23 44 6f 63 2d 43 6f 6d 6d 65 6e 74 2d 47 75 69 64 61 6e 63 65 22 | ce".href="#Doc-Comment-Guidance" |
| a4c0 | 3e 44 6f 63 20 43 6f 6d 6d 65 6e 74 20 47 75 69 64 61 6e 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | >Doc.Comment.Guidance</a></li>.. |
| a4e0 | 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 |
| a500 | 20 69 64 3d 22 74 6f 63 2d 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 20 68 72 65 66 3d 22 | .id="toc-Source-Encoding".href=" |
| a520 | 23 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 69 6e | #Source-Encoding">Source.Encodin |
| a540 | 67 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 | g</a></li>.........<li><a.id="to |
| a560 | 63 2d 4b 65 79 77 6f 72 64 2d 52 65 66 65 72 65 6e 63 65 22 20 68 72 65 66 3d 22 23 4b 65 79 77 | c-Keyword-Reference".href="#Keyw |
| a580 | 6f 72 64 2d 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 | ord-Reference">Keyword.Reference |
| a5a0 | 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 |
| a5c0 | 2d 41 70 70 65 6e 64 69 78 22 20 68 72 65 66 3d 22 23 41 70 70 65 6e 64 69 78 22 3e 41 70 70 65 | -Appendix".href="#Appendix">Appe |
| a5e0 | 6e 64 69 78 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 | ndix</a>.........<ul>........... |
| a600 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 6f 6e 74 61 69 6e 65 72 73 22 20 68 72 65 | ..<li><a.id="toc-Containers".hre |
| a620 | 66 3d 22 23 43 6f 6e 74 61 69 6e 65 72 73 22 3e 43 6f 6e 74 61 69 6e 65 72 73 3c 2f 61 3e 3c 2f | f="#Containers">Containers</a></ |
| a640 | 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 47 | li>.............<li><a.id="toc-G |
| a660 | 72 61 6d 6d 61 72 22 20 68 72 65 66 3d 22 23 47 72 61 6d 6d 61 72 22 3e 47 72 61 6d 6d 61 72 3c | rammar".href="#Grammar">Grammar< |
| a680 | 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=" |
| a6a0 | 74 6f 63 2d 5a 65 6e 22 20 68 72 65 66 3d 22 23 5a 65 6e 22 3e 5a 65 6e 3c 2f 61 3e 3c 2f 6c 69 | toc-Zen".href="#Zen">Zen</a></li |
| a6c0 | 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 3c 2f 75 6c 3e 0a 0a | >.........</ul></li>.....</ul>.. |
| a6e0 | 20 20 20 20 20 20 20 20 3c 2f 6e 61 76 3e 0a 20 20 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 20 | ........</nav>.......</div>..... |
| a700 | 20 20 3c 64 69 76 20 69 64 3d 22 63 6f 6e 74 65 6e 74 73 2d 77 72 61 70 70 65 72 22 3e 3c 6d 61 | ..<div.id="contents-wrapper"><ma |
| a720 | 69 6e 20 69 64 3d 22 63 6f 6e 74 65 6e 74 73 22 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 | in.id="contents">.......<h2.id=" |
| a740 | 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 6f 63 2d 49 6e 74 72 | Introduction"><a.href="#toc-Intr |
| a760 | 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 3e 20 3c 61 20 63 6c | oduction">Introduction</a>.<a.cl |
| a780 | 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 74 69 6f 6e 22 3e c2 | ass="hdr".href="#Introduction">. |
| a7a0 | 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 3c 61 20 68 | .</a></h2>........<p>.......<a.h |
| a7c0 | 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 22 3e 5a 69 67 3c 2f 61 | ref="https://ziglang.org">Zig</a |
| a7e0 | 3e 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 72 61 6d 6d 69 | >.is.a.general-purpose.programmi |
| a800 | 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 6f 72 20 6d 61 | ng.language.and.toolchain.for.ma |
| a820 | 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 75 73 74 3c 2f | intaining.......<strong>robust</ |
| a840 | 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 74 72 6f 6e 67 | strong>,.<strong>optimal</strong |
| a860 | 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 72 6f 6e 67 3e | >,.and.<strong>reusable</strong> |
| a880 | 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 20 3c 64 6c 3e | .software........</p>.......<dl> |
| a8a0 | 0a 20 20 20 20 20 20 20 20 3c 64 74 3e 52 6f 62 75 73 74 3c 2f 64 74 3e 3c 64 64 3e 42 65 68 61 | .........<dt>Robust</dt><dd>Beha |
| a8c0 | 76 69 6f 72 20 69 73 20 63 6f 72 72 65 63 74 20 65 76 65 6e 20 66 6f 72 20 65 64 67 65 20 63 61 | vior.is.correct.even.for.edge.ca |
| a8e0 | 73 65 73 20 73 75 63 68 20 61 73 20 6f 75 74 20 6f 66 20 6d 65 6d 6f 72 79 2e 3c 2f 64 64 3e 0a | ses.such.as.out.of.memory.</dd>. |
| a900 | 20 20 20 20 20 20 20 20 3c 64 74 3e 4f 70 74 69 6d 61 6c 3c 2f 64 74 3e 3c 64 64 3e 57 72 69 74 | ........<dt>Optimal</dt><dd>Writ |
| a920 | 65 20 70 72 6f 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 | e.programs.the.best.way.they.can |
| a940 | 20 62 65 68 61 76 65 20 61 6e 64 20 70 65 72 66 6f 72 6d 2e 3c 2f 64 64 3e 0a 20 20 20 20 20 20 | .behave.and.perform.</dd>....... |
| a960 | 20 20 3c 64 74 3e 52 65 75 73 61 62 6c 65 3c 2f 64 74 3e 3c 64 64 3e 54 68 65 20 73 61 6d 65 20 | ..<dt>Reusable</dt><dd>The.same. |
| a980 | 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 6d 65 6e 74 73 20 | code.works.in.many.environments. |
| a9a0 | 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 20 20 20 20 20 63 | which.have.different...........c |
| a9c0 | 6f 6e 73 74 72 61 69 6e 74 73 2e 3c 2f 64 64 3e 0a 20 20 20 20 20 20 20 20 3c 64 74 3e 4d 61 69 | onstraints.</dd>.........<dt>Mai |
| a9e0 | 6e 74 61 69 6e 61 62 6c 65 3c 2f 64 74 3e 3c 64 64 3e 50 72 65 63 69 73 65 6c 79 20 63 6f 6d 6d | ntainable</dt><dd>Precisely.comm |
| aa00 | 75 6e 69 63 61 74 65 20 69 6e 74 65 6e 74 20 74 6f 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 61 | unicate.intent.to.the.compiler.a |
| aa20 | 6e 64 0a 20 20 20 20 20 20 20 20 20 20 6f 74 68 65 72 20 70 72 6f 67 72 61 6d 6d 65 72 73 2e 20 | nd...........other.programmers.. |
| aa40 | 54 68 65 20 6c 61 6e 67 75 61 67 65 20 69 6d 70 6f 73 65 73 20 61 20 6c 6f 77 20 6f 76 65 72 68 | The.language.imposes.a.low.overh |
| aa60 | 65 61 64 20 74 6f 20 72 65 61 64 69 6e 67 20 63 6f 64 65 20 61 6e 64 20 69 73 0a 20 20 20 20 20 | ead.to.reading.code.and.is...... |
| aa80 | 20 20 20 20 20 72 65 73 69 6c 69 65 6e 74 20 74 6f 20 63 68 61 6e 67 69 6e 67 20 72 65 71 75 69 | .....resilient.to.changing.requi |
| aaa0 | 72 65 6d 65 6e 74 73 20 61 6e 64 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 73 2e 3c 2f 64 64 3e 0a 20 | rements.and.environments.</dd>.. |
| aac0 | 20 20 20 20 20 3c 2f 64 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 66 74 65 6e | .....</dl>.......<p>.......Often |
| aae0 | 20 74 68 65 20 6d 6f 73 74 20 65 66 66 69 63 69 65 6e 74 20 77 61 79 20 74 6f 20 6c 65 61 72 6e | .the.most.efficient.way.to.learn |
| ab00 | 20 73 6f 6d 65 74 68 69 6e 67 20 6e 65 77 20 69 73 20 74 6f 20 73 65 65 20 65 78 61 6d 70 6c 65 | .something.new.is.to.see.example |
| ab20 | 73 2c 20 73 6f 0a 20 20 20 20 20 20 74 68 69 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 73 | s,.so.......this.documentation.s |
| ab40 | 68 6f 77 73 20 68 6f 77 20 74 6f 20 75 73 65 20 65 61 63 68 20 6f 66 20 5a 69 67 27 73 20 66 65 | hows.how.to.use.each.of.Zig's.fe |
| ab60 | 61 74 75 72 65 73 2e 20 49 74 20 69 73 0a 20 20 20 20 20 20 61 6c 6c 20 6f 6e 20 6f 6e 65 20 70 | atures..It.is.......all.on.one.p |
| ab80 | 61 67 65 20 73 6f 20 79 6f 75 20 63 61 6e 20 73 65 61 72 63 68 20 77 69 74 68 20 79 6f 75 72 20 | age.so.you.can.search.with.your. |
| aba0 | 62 72 6f 77 73 65 72 27 73 20 73 65 61 72 63 68 20 74 6f 6f 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 | browser's.search.tool........</p |
| abc0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 63 6f 64 65 20 73 61 6d 70 6c | >.......<p>.......The.code.sampl |
| abe0 | 65 73 20 69 6e 20 74 68 69 73 20 64 6f 63 75 6d 65 6e 74 20 61 72 65 20 63 6f 6d 70 69 6c 65 64 | es.in.this.document.are.compiled |
| ac00 | 20 61 6e 64 20 74 65 73 74 65 64 20 61 73 20 70 61 72 74 20 6f 66 20 74 68 65 20 6d 61 69 6e 20 | .and.tested.as.part.of.the.main. |
| ac20 | 74 65 73 74 20 73 75 69 74 65 20 6f 66 20 5a 69 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | test.suite.of.Zig........</p>... |
| ac40 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 48 54 4d 4c 20 64 6f 63 75 6d 65 6e 74 | ....<p>.......This.HTML.document |
| ac60 | 20 64 65 70 65 6e 64 73 20 6f 6e 20 6e 6f 20 65 78 74 65 72 6e 61 6c 20 66 69 6c 65 73 2c 20 73 | .depends.on.no.external.files,.s |
| ac80 | 6f 20 79 6f 75 20 63 61 6e 20 75 73 65 20 69 74 20 6f 66 66 6c 69 6e 65 2e 0a 20 20 20 20 20 20 | o.you.can.use.it.offline........ |
| aca0 | 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 5a 69 67 2d 53 | </p>...............<h2.id="Zig-S |
| acc0 | 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 5a | tandard-Library"><a.href="#toc-Z |
| ace0 | 69 67 2d 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 22 3e 5a 69 67 20 53 74 61 6e 64 61 72 | ig-Standard-Library">Zig.Standar |
| ad00 | 64 20 4c 69 62 72 61 72 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | d.Library</a>.<a.class="hdr".hre |
| ad20 | 66 3d 22 23 5a 69 67 2d 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 22 3e c2 a7 3c 2f 61 3e | f="#Zig-Standard-Library">..</a> |
| ad40 | 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 68 65 20 3c 61 20 | </h2>........<p>.........The.<a. |
| ad60 | 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 75 6d 65 | href="https://ziglang.org/docume |
| ad80 | 6e 74 61 74 69 6f 6e 2f 30 2e 31 34 2e 31 2f 73 74 64 2f 22 3e 5a 69 67 20 53 74 61 6e 64 61 72 | ntation/0.14.1/std/">Zig.Standar |
| ada0 | 64 20 4c 69 62 72 61 72 79 3c 2f 61 3e 20 68 61 73 20 69 74 73 20 6f 77 6e 20 64 6f 63 75 6d 65 | d.Library</a>.has.its.own.docume |
| adc0 | 6e 74 61 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 | ntation........</p>.......<p>... |
| ade0 | 20 20 20 20 20 20 5a 69 67 27 73 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 63 6f 6e | ......Zig's.Standard.Library.con |
| ae00 | 74 61 69 6e 73 20 63 6f 6d 6d 6f 6e 6c 79 20 75 73 65 64 20 61 6c 67 6f 72 69 74 68 6d 73 2c 20 | tains.commonly.used.algorithms,. |
| ae20 | 64 61 74 61 20 73 74 72 75 63 74 75 72 65 73 2c 20 61 6e 64 20 64 65 66 69 6e 69 74 69 6f 6e 73 | data.structures,.and.definitions |
| ae40 | 20 74 6f 20 68 65 6c 70 20 79 6f 75 20 62 75 69 6c 64 20 70 72 6f 67 72 61 6d 73 20 6f 72 20 6c | .to.help.you.build.programs.or.l |
| ae60 | 69 62 72 61 72 69 65 73 2e 0a 20 20 20 20 20 20 20 20 59 6f 75 20 77 69 6c 6c 20 73 65 65 20 6d | ibraries..........You.will.see.m |
| ae80 | 61 6e 79 20 65 78 61 6d 70 6c 65 73 20 6f 66 20 5a 69 67 27 73 20 53 74 61 6e 64 61 72 64 20 4c | any.examples.of.Zig's.Standard.L |
| aea0 | 69 62 72 61 72 79 20 75 73 65 64 20 69 6e 20 74 68 69 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f | ibrary.used.in.this.documentatio |
| aec0 | 6e 2e 20 54 6f 20 6c 65 61 72 6e 20 6d 6f 72 65 20 61 62 6f 75 74 20 74 68 65 20 5a 69 67 20 53 | n..To.learn.more.about.the.Zig.S |
| aee0 | 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 2c 0a 20 20 20 20 20 20 20 20 76 69 73 69 74 20 74 | tandard.Library,.........visit.t |
| af00 | 68 65 20 6c 69 6e 6b 20 61 62 6f 76 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | he.link.above........</p>....... |
| af20 | 3c 70 3e 0a 20 20 20 20 20 20 20 20 41 6c 74 65 72 6e 61 74 69 76 65 6c 79 2c 20 74 68 65 20 5a | <p>.........Alternatively,.the.Z |
| af40 | 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f | ig.Standard.Library.documentatio |
| af60 | 6e 20 69 73 20 70 72 6f 76 69 64 65 64 20 77 69 74 68 20 65 61 63 68 20 5a 69 67 20 64 69 73 74 | n.is.provided.with.each.Zig.dist |
| af80 | 72 69 62 75 74 69 6f 6e 2e 20 49 74 20 63 61 6e 20 62 65 20 72 65 6e 64 65 72 65 64 20 76 69 61 | ribution..It.can.be.rendered.via |
| afa0 | 20 61 20 6c 6f 63 61 6c 20 77 65 62 73 65 72 76 65 72 20 77 69 74 68 3a 0a 20 20 20 20 20 20 3c | .a.local.webserver.with:.......< |
| afc0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | /p>.......<figure><figcaption.cl |
| afe0 | 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f | ass="shell-cap">Shell</figcaptio |
| b000 | 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 7a 69 67 20 73 74 64 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 | n><pre><samp>zig.std.</samp></pr |
| b020 | 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 | e></figure>...............<h2.id |
| b040 | 3d 22 48 65 6c 6c 6f 2d 57 6f 72 6c 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 48 65 6c | ="Hello-World"><a.href="#toc-Hel |
| b060 | 6c 6f 2d 57 6f 72 6c 64 22 3e 48 65 6c 6c 6f 20 57 6f 72 6c 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 | lo-World">Hello.World</a>.<a.cla |
| b080 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 48 65 6c 6c 6f 2d 57 6f 72 6c 64 22 3e c2 a7 3c | ss="hdr".href="#Hello-World">..< |
| b0a0 | 2f 61 3e 3c 2f 68 32 3e 0a 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | /a></h2>.........<figure><figcap |
| b0c0 | 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 | tion.class="zig-cap"><cite.class |
| b0e0 | 3d 22 66 69 6c 65 22 3e 68 65 6c 6c 6f 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | ="file">hello.zig</cite></figcap |
| b100 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tion><pre><code><span.class="tok |
| b120 | 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 |
| b140 | 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> |
| b160 | 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 |
| b180 | 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 |
| b1a0 | 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 |
| b1c0 | 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 |
| b1e0 | 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 3d | -fn">main</span>().!<span.class= |
| b200 | 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 70 | "tok-type">void</span>.{.....<sp |
| b220 | 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 |
| b240 | 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 65 | tdout.=.std.io.getStdOut().write |
| b260 | 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 72 | r();.....<span.class="tok-kw">tr |
| b280 | 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 73 | y</span>.stdout.print(<span.clas |
| b2a0 | 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 26 | s="tok-str">"Hello,.{s}!\n& |
| b2c0 | 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 6b | quot;</span>,..{<span.class="tok |
| b2e0 | 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 29 | -str">"world"</span>}) |
| b300 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 | ;.}</code></pre></figure><figure |
| b320 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 | ><figcaption.class="shell-cap">S |
| b340 | 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b | hell</figcaption><pre><samp>$.<k |
| b360 | 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 68 65 6c 6c 6f 2e 7a 69 67 3c 2f 6b 62 64 3e | bd>zig.build-exe.hello.zig</kbd> |
| b380 | 0a 24 20 3c 6b 62 64 3e 2e 2f 68 65 6c 6c 6f 3c 2f 6b 62 64 3e 0a 48 65 6c 6c 6f 2c 20 77 6f 72 | .$.<kbd>./hello</kbd>.Hello,.wor |
| b3a0 | 6c 64 21 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 | ld!.</samp></pre></figure>...... |
| b3c0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 4d 6f 73 74 20 6f 66 20 74 68 65 20 74 69 6d 65 2c 20 69 74 | ..<p>.......Most.of.the.time,.it |
| b3e0 | 20 69 73 20 6d 6f 72 65 20 61 70 70 72 6f 70 72 69 61 74 65 20 74 6f 20 77 72 69 74 65 20 74 6f | .is.more.appropriate.to.write.to |
| b400 | 20 73 74 64 65 72 72 20 72 61 74 68 65 72 20 74 68 61 6e 20 73 74 64 6f 75 74 2c 20 61 6e 64 0a | .stderr.rather.than.stdout,.and. |
| b420 | 20 20 20 20 20 20 77 68 65 74 68 65 72 20 6f 72 20 6e 6f 74 20 74 68 65 20 6d 65 73 73 61 67 65 | ......whether.or.not.the.message |
| b440 | 20 69 73 20 73 75 63 63 65 73 73 66 75 6c 6c 79 20 77 72 69 74 74 65 6e 20 74 6f 20 74 68 65 20 | .is.successfully.written.to.the. |
| b460 | 73 74 72 65 61 6d 20 69 73 20 69 72 72 65 6c 65 76 61 6e 74 2e 0a 20 20 20 20 20 20 46 6f 72 20 | stream.is.irrelevant........For. |
| b480 | 74 68 69 73 20 63 6f 6d 6d 6f 6e 20 63 61 73 65 2c 20 74 68 65 72 65 20 69 73 20 61 20 73 69 6d | this.common.case,.there.is.a.sim |
| b4a0 | 70 6c 65 72 20 41 50 49 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 | pler.API:.......</p>.......<figu |
| b4c0 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c | re><figcaption.class="zig-cap">< |
| b4e0 | 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 68 65 6c 6c 6f 5f 61 67 61 69 6e 2e 7a 69 | cite.class="file">hello_again.zi |
| b500 | 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e | g</cite></figcaption><pre><code> |
| b520 | 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 |
| b540 | 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 |
| b560 | 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 |
| b580 | 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>);. |
| b5a0 | 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> |
| b5c0 | 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>. |
| b5e0 | 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> |
| b600 | 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</ |
| b620 | 73 70 61 6e 3e 20 7b 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 | span>.{.....std.debug.print(<spa |
| b640 | 6e 20 63 6c 61 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 | n.class="tok-str">"Hello,.w |
| b660 | 6f 72 6c 64 21 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 7d 3c 2f 63 | orld!\n"</span>,..{});.}</c |
| b680 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | ode></pre></figure><figure><figc |
| b6a0 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f | aption.class="shell-cap">Shell</ |
| b6c0 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 | figcaption><pre><samp>$.<kbd>zig |
| b6e0 | 20 62 75 69 6c 64 2d 65 78 65 20 68 65 6c 6c 6f 5f 61 67 61 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e | .build-exe.hello_again.zig</kbd> |
| b700 | 0a 24 20 3c 6b 62 64 3e 2e 2f 68 65 6c 6c 6f 5f 61 67 61 69 6e 3c 2f 6b 62 64 3e 0a 48 65 6c 6c | .$.<kbd>./hello_again</kbd>.Hell |
| b720 | 6f 2c 20 77 6f 72 6c 64 21 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | o,.world!.</samp></pre></figure> |
| b740 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 | ........<p>.......In.this.case,. |
| b760 | 74 68 65 20 3c 63 6f 64 65 3e 21 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 62 65 20 6f 6d 69 74 74 65 | the.<code>!</code>.may.be.omitte |
| b780 | 64 20 66 72 6f 6d 20 74 68 65 20 72 65 74 75 72 6e 0a 20 20 20 20 20 20 74 79 70 65 20 6f 66 20 | d.from.the.return.......type.of. |
| b7a0 | 3c 63 6f 64 65 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 20 62 65 63 61 75 73 65 20 6e 6f 20 65 72 72 | <code>main</code>.because.no.err |
| b7c0 | 6f 72 73 20 61 72 65 20 72 65 74 75 72 6e 65 64 20 66 72 6f 6d 20 74 68 65 20 66 75 6e 63 74 69 | ors.are.returned.from.the.functi |
| b7e0 | 6f 6e 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 | on........</p>.......<p>See.also |
| b800 | 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 61 6c 75 65 73 22 3e | :</p><ul>.<li><a.href="#Values"> |
| b820 | 56 61 6c 75 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 54 75 | Values</a></li>.<li><a.href="#Tu |
| b840 | 70 6c 65 73 22 3e 54 75 70 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 | ples">Tuples</a></li>.<li><a.hre |
| b860 | 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 0a 3c 6c 69 | f="#import">@import</a></li>.<li |
| b880 | 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 |
| b8a0 | 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 6e 74 72 79 2d 50 6f 69 6e 74 22 3e 45 6e | i>.<li><a.href="#Entry-Point">En |
| b8c0 | 74 72 79 20 50 6f 69 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 | try.Point</a></li>.<li><a.href=" |
| b8e0 | 23 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 69 6e | #Source-Encoding">Source.Encodin |
| b900 | 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 74 72 79 22 3e 74 72 | g</a></li>.<li><a.href="#try">tr |
| b920 | 79 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 | y</a></li>.</ul>...............< |
| b940 | 68 32 20 69 64 3d 22 43 6f 6d 6d 65 6e 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 | h2.id="Comments"><a.href="#toc-C |
| b960 | 6f 6d 6d 65 6e 74 73 22 3e 43 6f 6d 6d 65 6e 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | omments">Comments</a>.<a.class=" |
| b980 | 68 64 72 22 20 68 72 65 66 3d 22 23 43 6f 6d 6d 65 6e 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 | hdr".href="#Comments">..</a></h2 |
| b9a0 | 3e 0a 0a 20 20 20 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 | >........<p>.......Zig.supports. |
| b9c0 | 33 20 74 79 70 65 73 20 6f 66 20 63 6f 6d 6d 65 6e 74 73 2e 20 4e 6f 72 6d 61 6c 20 63 6f 6d 6d | 3.types.of.comments..Normal.comm |
| b9e0 | 65 6e 74 73 20 61 72 65 20 69 67 6e 6f 72 65 64 2c 20 62 75 74 20 64 6f 63 20 63 6f 6d 6d 65 6e | ents.are.ignored,.but.doc.commen |
| ba00 | 74 73 0a 20 20 20 20 20 20 61 6e 64 20 74 6f 70 2d 6c 65 76 65 6c 20 64 6f 63 20 63 6f 6d 6d 65 | ts.......and.top-level.doc.comme |
| ba20 | 6e 74 73 20 61 72 65 20 75 73 65 64 20 62 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 74 6f 20 | nts.are.used.by.the.compiler.to. |
| ba40 | 67 65 6e 65 72 61 74 65 20 74 68 65 20 70 61 63 6b 61 67 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 | generate.the.package.documentati |
| ba60 | 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 54 | on........</p>.......<p>.......T |
| ba80 | 68 65 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 69 73 20 73 74 | he.generated.documentation.is.st |
| baa0 | 69 6c 6c 20 65 78 70 65 72 69 6d 65 6e 74 61 6c 2c 20 61 6e 64 20 63 61 6e 20 62 65 20 70 72 6f | ill.experimental,.and.can.be.pro |
| bac0 | 64 75 63 65 64 20 77 69 74 68 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 | duced.with:.......</p>.......<fi |
| bae0 | 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 | gure><figcaption.class="shell-ca |
| bb00 | 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e | p">Shell</figcaption><pre><samp> |
| bb20 | 7a 69 67 20 74 65 73 74 20 2d 66 65 6d 69 74 2d 64 6f 63 73 20 6d 61 69 6e 2e 7a 69 67 0a 3c 2f | zig.test.-femit-docs.main.zig.</ |
| bb40 | 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 | samp></pre></figure>.......<figu |
| bb60 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c | re><figcaption.class="zig-cap">< |
| bb80 | 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 6f 6d 6d 65 6e 74 73 2e 7a 69 67 3c 2f | cite.class="file">comments.zig</ |
| bba0 | 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 | cite></figcaption><pre><code><sp |
| bbc0 | 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 |
| bbe0 | 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" |
| bc00 | 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 |
| bc20 | 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 |
| bc40 | 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" |
| bc60 | 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" |
| bc80 | 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"> |
| bca0 | 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 |
| bcc0 | 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 |
| bce0 | 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 74 73 20 69 6e 20 | ss="tok-comment">//.Comments.in. |
| bd00 | 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 6f 74 3b 20 61 6e | Zig.start.with."//".an |
| bd20 | 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 28 65 6e 64 20 6f | d.end.at.the.next.LF.byte.(end.o |
| bd40 | 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 63 6c 61 73 73 3d | f.line).</span>.....<span.class= |
| bd60 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 6c 69 6e 65 20 62 65 6c 6f 77 20 | "tok-comment">//.The.line.below. |
| bd80 | 69 73 20 61 20 63 6f 6d 6d 65 6e 74 20 61 6e 64 20 77 6f 6e 27 74 20 62 65 20 65 78 65 63 75 74 | is.a.comment.and.won't.be.execut |
| bda0 | 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 73 73 3d 22 74 6f 6b | ed.</span>......<span.class="tok |
| bdc0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 70 72 69 6e 74 28 26 71 75 6f 74 3b 48 65 6c 6c 6f 3f 26 71 | -comment">//print("Hello?&q |
| bde0 | 75 6f 74 3b 2c 20 2e 7b 7d 29 3b 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 | uot;,..{});</span>......print(<s |
| be00 | 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 48 65 6c 6c 6f 2c | pan.class="tok-str">"Hello, |
| be20 | 20 77 6f 72 6c 64 21 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 20 3c 73 | .world!\n"</span>,..{});.<s |
| be40 | 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 6f 74 68 | pan.class="tok-comment">//.anoth |
| be60 | 65 72 20 63 6f 6d 6d 65 6e 74 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | er.comment</span>.}</code></pre> |
| be80 | 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | </figure><figure><figcaption.cla |
| bea0 | 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e | ss="shell-cap">Shell</figcaption |
| bec0 | 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 | ><pre><samp>$.<kbd>zig.build-exe |
| bee0 | 20 63 6f 6d 6d 65 6e 74 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 63 6f 6d | .comments.zig</kbd>.$.<kbd>./com |
| bf00 | 6d 65 6e 74 73 3c 2f 6b 62 64 3e 0a 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 0a 3c 2f 73 61 6d 70 | ments</kbd>.Hello,.world!.</samp |
| bf20 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | ></pre></figure>........<p>..... |
| bf40 | 20 20 54 68 65 72 65 20 61 72 65 20 6e 6f 20 6d 75 6c 74 69 6c 69 6e 65 20 63 6f 6d 6d 65 6e 74 | ..There.are.no.multiline.comment |
| bf60 | 73 20 69 6e 20 5a 69 67 20 28 65 2e 67 2e 20 6c 69 6b 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | s.in.Zig.(e.g..like.<code.class= |
| bf80 | 22 63 22 3e 2f 2a 20 2a 2f 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 63 6f 6d 6d 65 6e 74 73 20 | "c">/*.*/</code>.......comments. |
| bfa0 | 69 6e 20 43 29 2e 20 20 54 68 69 73 20 61 6c 6c 6f 77 73 20 5a 69 67 20 74 6f 20 68 61 76 65 20 | in.C)...This.allows.Zig.to.have. |
| bfc0 | 74 68 65 20 70 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 | the.property.that.each.line..... |
| bfe0 | 20 20 6f 66 20 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 | ..of.code.can.be.tokenized.out.o |
| c000 | 66 20 63 6f 6e 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 33 20 | f.context........</p>.......<h3. |
| c020 | 69 64 3d 22 44 6f 63 2d 43 6f 6d 6d 65 6e 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | id="Doc-Comments"><a.href="#toc- |
| c040 | 44 6f 63 2d 43 6f 6d 6d 65 6e 74 73 22 3e 44 6f 63 20 43 6f 6d 6d 65 6e 74 73 3c 2f 61 3e 20 3c | Doc-Comments">Doc.Comments</a>.< |
| c060 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 6f 63 2d 43 6f 6d 6d 65 6e 74 | a.class="hdr".href="#Doc-Comment |
| c080 | 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 20 20 20 | s">..</a></h3>........<p>....... |
| c0a0 | 41 20 64 6f 63 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 | A.doc.comment.is.one.that.begins |
| c0c0 | 20 77 69 74 68 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 | .with.exactly.three.slashes.(i.e |
| c0e0 | 2e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | ........<code><span.class="tok-c |
| c100 | 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 20 62 75 74 20 6e 6f | omment">///</span></code>.but.no |
| c120 | 74 20 3c 63 6f 64 65 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 | t.<code><span.class="tok-comment |
| c140 | 22 3e 2f 2f 2f 2f 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 3b 0a 20 20 20 20 20 20 6d 75 6c | ">////</span></code>);.......mul |
| c160 | 74 69 70 6c 65 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 73 20 69 6e 20 61 20 72 6f 77 20 61 72 65 20 | tiple.doc.comments.in.a.row.are. |
| c180 | 6d 65 72 67 65 64 20 74 6f 67 65 74 68 65 72 20 74 6f 20 66 6f 72 6d 20 61 20 6d 75 6c 74 69 6c | merged.together.to.form.a.multil |
| c1a0 | 69 6e 65 0a 20 20 20 20 20 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 2e 20 20 54 68 65 20 64 6f 63 20 | ine.......doc.comment...The.doc. |
| c1c0 | 63 6f 6d 6d 65 6e 74 20 64 6f 63 75 6d 65 6e 74 73 20 77 68 61 74 65 76 65 72 20 69 6d 6d 65 64 | comment.documents.whatever.immed |
| c1e0 | 69 61 74 65 6c 79 20 66 6f 6c 6c 6f 77 73 20 69 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | iately.follows.it........</p>... |
| c200 | 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a | ....<figure><figcaption.class="z |
| c220 | 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 64 6f 63 5f 63 | ig-cap"><cite.class="file">doc_c |
| c240 | 6f 6d 6d 65 6e 74 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | omments.zig</cite></figcaption>< |
| c260 | 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | pre><code><span.class="tok-comme |
| c280 | 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 69 6e 67 20 | nt">///.A.structure.for.storing. |
| c2a0 | 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 20 70 72 65 | a.timestamp,.with.nanosecond.pre |
| c2c0 | 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 61 6e 20 63 | cision.(this.is.a</span>.<span.c |
| c2e0 | 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 6c 69 6e 65 | lass="tok-comment">///.multiline |
| c300 | 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 63 6c 61 73 | .doc.comment).</span>.<span.clas |
| c320 | 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 73 74 61 6d | s="tok-kw">const</span>.Timestam |
| c340 | 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 75 63 74 3c | p.=.<span.class="tok-kw">struct< |
| c360 | 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 6f | /span>.{.....<span.class="tok-co |
| c380 | 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 6f 6e 64 73 | mment">///.The.number.of.seconds |
| c3a0 | 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 73 6f 20 61 | .since.the.epoch.(this.is.also.a |
| c3c0 | 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 63 6f 6e 64 | .doc.comment).</span>.....second |
| c3e0 | 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 34 3c 2f 73 | s:.<span.class="tok-type">i64</s |
| c400 | 70 61 6e 3e 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 | pan>,.<span.class="tok-comment"> |
| c420 | 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 6e 74 20 70 72 | //.signed.so.we.can.represent.pr |
| c440 | 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 2f 73 70 61 6e | e-1970.(not.a.doc.comment)</span |
| c460 | 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"> |
| c480 | 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 64 73 20 70 61 | ///.The.number.of.nanoseconds.pa |
| c4a0 | 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 61 67 61 69 6e | st.the.second.(doc.comment.again |
| c4c0 | 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 63 6c 61 73 73 | ).</span>.....nanos:.<span.class |
| c4e0 | 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 70 | ="tok-type">u32</span>,......<sp |
| c500 | 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 52 65 74 75 72 | an.class="tok-comment">///.Retur |
| c520 | 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 72 65 73 65 6e | ns.a.`Timestamp`.struct.represen |
| c540 | 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 73 2c 20 74 68 | ting.the.Unix.epoch;.that.is,.th |
| c560 | 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 6f | e</span>.....<span.class="tok-co |
| c580 | 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 61 6e 20 31 20 | mment">///.moment.of.1970.Jan.1. |
| c5a0 | 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 20 63 6f 6d 6d | 00:00:00.UTC.(this.is.a.doc.comm |
| c5c0 | 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 63 6c 61 73 73 | ent.too).</span>.....<span.class |
| c5e0 | 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 |
| c600 | 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= |
| c620 | 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 20 54 69 6d 65 | "tok-fn">unixEpoch</span>().Time |
| c640 | 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 3d 22 74 6f 6b | stamp.{.........<span.class="tok |
| c660 | 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 70 7b 0a 20 20 | -kw">return</span>.Timestamp{... |
| c680 | 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 63 6c 61 73 73 | ...........seconds.=.<span.class |
| c6a0 | 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 20 | ="tok-number">0</span>,......... |
| c6c0 | 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 6f 6b 2d 6e 75 | .....nanos.=.<span.class="tok-nu |
| c6e0 | 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 20 20 20 20 7d | mber">0</span>,.........};.....} |
| c700 | 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 | .};</code></pre></figure>....... |
| c720 | 20 3c 70 3e 0a 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 | .<p>.......Doc.comments.are.only |
| c740 | 20 61 6c 6c 6f 77 65 64 20 69 6e 20 63 65 72 74 61 69 6e 20 70 6c 61 63 65 73 3b 20 69 74 20 69 | .allowed.in.certain.places;.it.i |
| c760 | 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 74 6f 0a 20 20 20 20 20 20 68 61 76 65 20 | s.a.compile.error.to.......have. |
| c780 | 61 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 20 69 6e 20 61 6e 20 75 6e 65 78 70 65 63 74 65 64 20 70 | a.doc.comment.in.an.unexpected.p |
| c7a0 | 6c 61 63 65 2c 20 73 75 63 68 20 61 73 20 69 6e 20 74 68 65 20 6d 69 64 64 6c 65 20 6f 66 20 61 | lace,.such.as.in.the.middle.of.a |
| c7c0 | 6e 20 65 78 70 72 65 73 73 69 6f 6e 2c 0a 20 20 20 20 20 20 6f 72 20 6a 75 73 74 20 62 65 66 6f | n.expression,.......or.just.befo |
| c7e0 | 72 65 20 61 20 6e 6f 6e 2d 64 6f 63 20 63 6f 6d 6d 65 6e 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | re.a.non-doc.comment........</p> |
| c800 | 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | .......<figure><figcaption.class |
| c820 | 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 69 6e | ="zig-cap"><cite.class="file">in |
| c840 | 76 61 6c 69 64 5f 64 6f 63 2d 63 6f 6d 6d 65 6e 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 | valid_doc-comment.zig</cite></fi |
| c860 | 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | gcaption><pre><code><span.class= |
| c880 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 64 6f 63 2d 63 6f 6d 6d 65 6e 74 3c 2f 73 | "tok-comment">///.doc-comment</s |
| c8a0 | 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">/ |
| c8c0 | 2f 21 20 74 6f 70 2d 6c 65 76 65 6c 20 64 6f 63 2d 63 6f 6d 6d 65 6e 74 3c 2f 73 70 61 6e 3e 0a | /!.top-level.doc-comment</span>. |
| c8e0 | 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 |
| c900 | 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 |
| c920 | 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 |
| c940 | 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 3c | k-str">"std"</span>);< |
| c960 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 | /code></pre></figure><figure><fi |
| c980 | 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c | gcaption.class="shell-cap">Shell |
| c9a0 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a | </figcaption><pre><samp>$.<kbd>z |
| c9c0 | 69 67 20 62 75 69 6c 64 2d 6f 62 6a 20 69 6e 76 61 6c 69 64 5f 64 6f 63 2d 63 6f 6d 6d 65 6e 74 | ig.build-obj.invalid_doc-comment |
| c9e0 | 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e | .zig</kbd>.<span.class="sgr-1m"> |
| ca00 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 69 | /home/andy/dev/zig/doc/langref/i |
| ca20 | 6e 76 61 6c 69 64 5f 64 6f 63 2d 63 6f 6d 6d 65 6e 74 2e 7a 69 67 3a 31 3a 31 36 3a 20 3c 2f 73 | nvalid_doc-comment.zig:1:16:.</s |
| ca40 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a | pan><span.class="sgr-31m">error: |
| ca60 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 65 78 70 | .</span><span.class="sgr-1m">exp |
| ca80 | 65 63 74 65 64 20 74 79 70 65 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 66 6f 75 6e 64 20 27 61 20 | ected.type.expression,.found.'a. |
| caa0 | 64 6f 63 75 6d 65 6e 74 20 63 6f 6d 6d 65 6e 74 27 0a 3c 2f 73 70 61 6e 3e 2f 2f 2f 20 64 6f 63 | document.comment'.</span>///.doc |
| cac0 | 2d 63 6f 6d 6d 65 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | -comment................<span.cl |
| cae0 | 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c | ass="sgr-32m">^.</span>.</samp>< |
| cb00 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 | /pre></figure>........<figure><f |
| cb20 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 | igcaption.class="zig-cap"><cite. |
| cb40 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 75 6e 61 74 74 61 63 68 65 64 5f 64 6f 63 2d 63 6f 6d 6d | class="file">unattached_doc-comm |
| cb60 | 65 6e 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | ent.zig</cite></figcaption><pre> |
| cb80 | 3c 63 6f 64 65 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 | <code><span.class="tok-kw">pub</ |
| cba0 | 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 |
| cbc0 | 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</ |
| cbe0 | 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 |
| cc00 | 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 22 74 6f 6b 2d | oid</span>.{}..<span.class="tok- |
| cc20 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 45 6e 64 20 6f 66 20 66 69 6c 65 3c 2f 73 70 61 6e 3e 3c | comment">///.End.of.file</span>< |
| cc40 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 | /code></pre></figure><figure><fi |
| cc60 | 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c | gcaption.class="shell-cap">Shell |
| cc80 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a | </figcaption><pre><samp>$.<kbd>z |
| cca0 | 69 67 20 62 75 69 6c 64 2d 6f 62 6a 20 75 6e 61 74 74 61 63 68 65 64 5f 64 6f 63 2d 63 6f 6d 6d | ig.build-obj.unattached_doc-comm |
| ccc0 | 65 6e 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 | ent.zig</kbd>.<span.class="sgr-1 |
| cce0 | 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 | m">/home/andy/dev/zig/doc/langre |
| cd00 | 66 2f 75 6e 61 74 74 61 63 68 65 64 5f 64 6f 63 2d 63 6f 6d 6d 65 6e 74 2e 7a 69 67 3a 33 3a 31 | f/unattached_doc-comment.zig:3:1 |
| cd20 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 | :.</span><span.class="sgr-31m">e |
| cd40 | 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 73 67 72 2d 31 6d | rror:.</span><span.class="sgr-1m |
| cd60 | 22 3e 75 6e 61 74 74 61 63 68 65 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 63 6f 6d 6d 65 | ">unattached.documentation.comme |
| cd80 | 6e 74 0a 3c 2f 73 70 61 6e 3e 2f 2f 2f 20 45 6e 64 20 6f 66 20 66 69 6c 65 0a 3c 73 70 61 6e 20 | nt.</span>///.End.of.file.<span. |
| cda0 | 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a | class="sgr-32m">^~~~~~~~~~~~~~~. |
| cdc0 | 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a | </span>.</samp></pre></figure>.. |
| cde0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 44 6f 63 20 63 6f 6d 6d 65 6e 74 73 20 63 61 6e | ......<p>.......Doc.comments.can |
| ce00 | 20 62 65 20 69 6e 74 65 72 6c 65 61 76 65 64 20 77 69 74 68 20 6e 6f 72 6d 61 6c 20 63 6f 6d 6d | .be.interleaved.with.normal.comm |
| ce20 | 65 6e 74 73 2e 20 43 75 72 72 65 6e 74 6c 79 2c 20 77 68 65 6e 20 70 72 6f 64 75 63 69 6e 67 0a | ents..Currently,.when.producing. |
| ce40 | 20 20 20 20 20 20 74 68 65 20 70 61 63 6b 61 67 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2c | ......the.package.documentation, |
| ce60 | 20 6e 6f 72 6d 61 6c 20 63 6f 6d 6d 65 6e 74 73 20 61 72 65 20 6d 65 72 67 65 64 20 77 69 74 68 | .normal.comments.are.merged.with |
| ce80 | 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | .doc.comments........</p>....... |
| cea0 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 6f 70 2d 4c 65 76 65 6c 2d 44 6f 63 2d 43 6f 6d | .......<h3.id="Top-Level-Doc-Com |
| cec0 | 6d 65 6e 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 6f 70 2d 4c 65 76 65 6c 2d 44 | ments"><a.href="#toc-Top-Level-D |
| cee0 | 6f 63 2d 43 6f 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 | oc-Comments">Top-Level.Doc.Comme |
| cf00 | 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 54 6f | nts</a>.<a.class="hdr".href="#To |
| cf20 | 70 2d 4c 65 76 65 6c 2d 44 6f 63 2d 43 6f 6d 6d 65 6e 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 | p-Level-Doc-Comments">..</a></h3 |
| cf40 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 74 6f 70 2d 6c 65 76 65 6c 20 64 | >........<p>.......A.top-level.d |
| cf60 | 6f 63 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 | oc.comment.is.one.that.begins.wi |
| cf80 | 74 68 20 74 77 6f 20 73 6c 61 73 68 65 73 20 61 6e 64 20 61 6e 20 65 78 63 6c 61 6d 61 74 69 6f | th.two.slashes.and.an.exclamatio |
| cfa0 | 6e 0a 20 20 20 20 20 20 70 6f 69 6e 74 3a 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | n.......point:.<code><span.class |
| cfc0 | 3d 22 74 6f 6b 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 | ="tok-comment">//!</span></code> |
| cfe0 | 3b 20 69 74 20 64 6f 63 75 6d 65 6e 74 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 6d 6f 64 75 6c | ;.it.documents.the.current.modul |
| d000 | 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 49 74 | e........</p>.......<p>.......It |
| d020 | 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 66 20 61 20 74 6f 70 2d 6c 65 76 | .is.a.compile.error.if.a.top-lev |
| d040 | 65 6c 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 20 69 73 20 6e 6f 74 20 70 6c 61 63 65 64 20 61 74 20 | el.doc.comment.is.not.placed.at. |
| d060 | 74 68 65 20 73 74 61 72 74 0a 20 20 20 20 20 20 6f 66 20 61 20 3c 61 20 68 72 65 66 3d 22 23 43 | the.start.......of.a.<a.href="#C |
| d080 | 6f 6e 74 61 69 6e 65 72 73 22 3e 63 6f 6e 74 61 69 6e 65 72 3c 2f 61 3e 2c 20 62 65 66 6f 72 65 | ontainers">container</a>,.before |
| d0a0 | 20 61 6e 79 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | .any.expressions........</p>.... |
| d0c0 | 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 | ...<figure><figcaption.class="zi |
| d0e0 | 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 6c 64 6f 63 5f | g-cap"><cite.class="file">tldoc_ |
| d100 | 63 6f 6d 6d 65 6e 74 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | comments.zig</cite></figcaption> |
| d120 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | <pre><code><span.class="tok-comm |
| d140 | 65 6e 74 22 3e 2f 2f 21 20 54 68 69 73 20 6d 6f 64 75 6c 65 20 70 72 6f 76 69 64 65 73 20 66 75 | ent">//!.This.module.provides.fu |
| d160 | 6e 63 74 69 6f 6e 73 20 66 6f 72 20 72 65 74 72 69 65 76 69 6e 67 20 74 68 65 20 63 75 72 72 65 | nctions.for.retrieving.the.curre |
| d180 | 6e 74 20 64 61 74 65 20 61 6e 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | nt.date.and</span>.<span.class=" |
| d1a0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 21 20 74 69 6d 65 20 77 69 74 68 20 76 61 72 79 69 | tok-comment">//!.time.with.varyi |
| d1c0 | 6e 67 20 64 65 67 72 65 65 73 20 6f 66 20 70 72 65 63 69 73 69 6f 6e 20 61 6e 64 20 61 63 63 75 | ng.degrees.of.precision.and.accu |
| d1e0 | 72 61 63 79 2e 20 49 74 20 64 6f 65 73 20 6e 6f 74 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | racy..It.does.not</span>.<span.c |
| d200 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 21 20 64 65 70 65 6e 64 20 6f 6e | lass="tok-comment">//!.depend.on |
| d220 | 20 6c 69 62 63 2c 20 62 75 74 20 77 69 6c 6c 20 75 73 65 20 66 75 6e 63 74 69 6f 6e 73 20 66 72 | .libc,.but.will.use.functions.fr |
| d240 | 6f 6d 20 69 74 20 69 66 20 61 76 61 69 6c 61 62 6c 65 2e 3c 2f 73 70 61 6e 3e 0a 0a 3c 73 70 61 | om.it.if.available.</span>..<spa |
| d260 | 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 20 | n.class="tok-kw">const</span>.S. |
| d280 | 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 |
| d2a0 | 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 |
| d2c0 | 65 6e 74 22 3e 2f 2f 21 20 54 6f 70 20 6c 65 76 65 6c 20 63 6f 6d 6d 65 6e 74 73 20 61 72 65 20 | ent">//!.Top.level.comments.are. |
| d2e0 | 61 6c 6c 6f 77 65 64 20 69 6e 73 69 64 65 20 61 20 63 6f 6e 74 61 69 6e 65 72 20 6f 74 68 65 72 | allowed.inside.a.container.other |
| d300 | 20 74 68 61 6e 20 61 20 6d 6f 64 75 6c 65 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | .than.a.module,</span>.....<span |
| d320 | 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 62 75 74 20 69 74 20 | .class="tok-comment">//!.but.it. |
| d340 | 69 73 20 6e 6f 74 20 76 65 72 79 20 75 73 65 66 75 6c 2e 20 20 43 75 72 72 65 6e 74 6c 79 2c 20 | is.not.very.useful...Currently,. |
| d360 | 77 68 65 6e 20 70 72 6f 64 75 63 69 6e 67 20 74 68 65 20 70 61 63 6b 61 67 65 3c 2f 73 70 61 6e | when.producing.the.package</span |
| d380 | 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"> |
| d3a0 | 2f 2f 21 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2c 20 74 68 65 73 65 20 63 6f 6d 6d 65 6e 74 | //!.documentation,.these.comment |
| d3c0 | 73 20 61 72 65 20 69 67 6e 6f 72 65 64 2e 3c 2f 73 70 61 6e 3e 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c | s.are.ignored.</span>.};</code>< |
| d3e0 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 | /pre></figure>.................. |
| d400 | 20 20 20 20 3c 68 32 20 69 64 3d 22 56 61 6c 75 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | ....<h2.id="Values"><a.href="#to |
| d420 | 63 2d 56 61 6c 75 65 73 22 3e 56 61 6c 75 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | c-Values">Values</a>.<a.class="h |
| d440 | 64 72 22 20 68 72 65 66 3d 22 23 56 61 6c 75 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a | dr".href="#Values">..</a></h2>.. |
| d460 | 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | ......<figure><figcaption.class= |
| d480 | 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 76 61 6c | "zig-cap"><cite.class="file">val |
| d4a0 | 75 65 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | ues.zig</cite></figcaption><pre> |
| d4c0 | 3c 63 6f 64 65 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 | <code><span.class="tok-comment"> |
| d4e0 | 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 |
| d500 | 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 |
| d520 | 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. |
| d540 | 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=" |
| d560 | 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 |
| d580 | 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 |
| d5a0 | 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">" |
| d5c0 | 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=" |
| d5e0 | 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 |
| d600 | 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 |
| d620 | 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;.. |
| d640 | 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>. |
| d660 | 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>.< |
| d680 | 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>( |
| d6a0 | 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 |
| d6c0 | 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 |
| d6e0 | 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 |
| d700 | 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 |
| d720 | 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 |
| d740 | 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 |
| d760 | 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= |
| d780 | 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 |
| d7a0 | 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.+ |
| d7c0 | 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 |
| d7e0 | 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- |
| d800 | 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 |
| d820 | 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>. |
| d840 | 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 |
| d860 | 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 |
| d880 | 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 |
| d8a0 | 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>;. |
| d8c0 | 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"> |
| d8e0 | 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 |
| d900 | 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});......< |
| d920 | 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 |
| d940 | 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 |
| d960 | 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 |
| d980 | 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 |
| d9a0 | 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. |
| d9c0 | 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. |
| d9e0 | 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>,.. |
| da00 | 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 |
| da20 | 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 |
| da40 | 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"> |
| da60 | 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 |
| da80 | 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>,.....} |
| daa0 | 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 |
| dac0 | 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 |
| dae0 | 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 |
| db00 | 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" |
| db20 | 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 |
| db40 | 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 |
| db60 | 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( |
| db80 | 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 |
| dba0 | 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 |
| dbc0 | 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 |
| dbe0 | 6f 70 74 69 6f 6e 61 6c 20 31 5c 6e 74 79 70 65 3a 20 7b 7d 5c 6e 76 61 6c 75 65 3a 20 7b 3f 73 | optional.1\ntype:.{}\nvalue:.{?s |
| dc00 | 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 |
| dc20 | 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 2f | an.class="tok-builtin">@TypeOf</ |
| dc40 | 73 70 61 6e 3e 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 29 2c 20 6f 70 74 69 6f 6e 61 6c 5f | span>(optional_value),.optional_ |
| dc60 | 76 61 6c 75 65 2c 0a 20 20 20 20 7d 29 3b 0a 0a 20 20 20 20 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c | value,.....});......optional_val |
| dc80 | 75 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 75 6f 74 | ue.=.<span.class="tok-str">" |
| dca0 | 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 61 73 73 65 72 74 28 6f 70 74 | ;hi"</span>;.....assert(opt |
| dcc0 | 69 6f 6e 61 6c 5f 76 61 6c 75 65 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ional_value.!=.<span.class="tok- |
| dce0 | 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 74 28 3c | null">null</span>);......print(< |
| dd00 | 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 6f 70 74 | span.class="tok-str">"\nopt |
| dd20 | 69 6f 6e 61 6c 20 32 5c 6e 74 79 70 65 3a 20 7b 7d 5c 6e 76 61 6c 75 65 3a 20 7b 3f 73 7d 5c 6e | ional.2\ntype:.{}\nvalue:.{?s}\n |
| dd40 | 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 61 6e 20 | "</span>,..{.........<span. |
| dd60 | 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 |
| dd80 | 6e 3e 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 29 2c 20 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c | n>(optional_value),.optional_val |
| dda0 | 75 65 2c 0a 20 20 20 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 | ue,.....});......<span.class="to |
| ddc0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 72 72 6f 72 20 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e | k-comment">//.error.union</span> |
| dde0 | 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 |
| de00 | 70 61 6e 3e 20 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 72 6f 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | pan>.number_or_error:.<span.clas |
| de20 | 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 3c 73 70 | s="tok-type">anyerror</span>!<sp |
| de40 | 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>.= |
| de60 | 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 61 | .<span.class="tok-kw">error</spa |
| de80 | 6e 3e 2e 41 72 67 4e 6f 74 46 6f 75 6e 64 3b 0a 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e | n>.ArgNotFound;......print(<span |
| dea0 | 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 65 72 72 6f 72 20 75 | .class="tok-str">"\nerror.u |
| dec0 | 6e 69 6f 6e 20 31 5c 6e 74 79 70 65 3a 20 7b 7d 5c 6e 76 61 6c 75 65 3a 20 7b 21 7d 5c 6e 26 71 | nion.1\ntype:.{}\nvalue:.{!}\n&q |
| dee0 | 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 61 6e 20 63 6c | uot;</span>,..{.........<span.cl |
| df00 | 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> |
| df20 | 28 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 72 6f 72 29 2c 0a 20 20 20 20 20 20 20 20 6e 75 6d 62 65 | (number_or_error),.........numbe |
| df40 | 72 5f 6f 72 5f 65 72 72 6f 72 2c 0a 20 20 20 20 7d 29 3b 0a 0a 20 20 20 20 6e 75 6d 62 65 72 5f | r_or_error,.....});......number_ |
| df60 | 6f 72 5f 65 72 72 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 | or_error.=.<span.class="tok-numb |
| df80 | 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 | er">1234</span>;......print(<spa |
| dfa0 | 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 65 72 72 6f 72 20 | n.class="tok-str">"\nerror. |
| dfc0 | 75 6e 69 6f 6e 20 32 5c 6e 74 79 70 65 3a 20 7b 7d 5c 6e 76 61 6c 75 65 3a 20 7b 21 7d 5c 6e 26 | union.2\ntype:.{}\nvalue:.{!}\n& |
| dfe0 | 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 61 6e 20 63 | quot;</span>,..{.........<span.c |
| e000 | 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 |
| e020 | 3e 28 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 72 6f 72 29 2c 20 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 | >(number_or_error),.number_or_er |
| e040 | 72 6f 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 2f 66 69 67 | ror,.....});.}</code></pre></fig |
| e060 | 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 | ure><figure><figcaption.class="s |
| e080 | 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | hell-cap">Shell</figcaption><pre |
| e0a0 | 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 76 61 6c 75 | ><samp>$.<kbd>zig.build-exe.valu |
| e0c0 | 65 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 76 61 6c 75 65 73 3c 2f 6b 62 | es.zig</kbd>.$.<kbd>./values</kb |
| e0e0 | 64 3e 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 | d>.1.+.1.=.2.7.0./.3.0.=.2.33333 |
| e100 | 33 33 65 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 6c 20 | 33e0.false.true.false..optional. |
| e120 | 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 6c 0a | 1.type:.?[]const.u8.value:.null. |
| e140 | 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 76 61 | .optional.2.type:.?[]const.u8.va |
| e160 | 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 6e 79 | lue:.hi..error.union.1.type:.any |
| e180 | 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 6f 75 | error!i32.value:.error.ArgNotFou |
| e1a0 | 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 6f 72 | nd..error.union.2.type:.anyerror |
| e1c0 | 21 69 33 32 0a 76 61 6c 75 65 3a 20 31 32 33 34 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f | !i32.value:.1234.</samp></pre></ |
| e1e0 | 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 50 72 69 6d 69 74 69 76 65 | figure>........<h3.id="Primitive |
| e200 | 2d 54 79 70 65 73 22 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 | -Types"><a.href="#toc-Primitive- |
| e220 | 54 79 70 65 73 22 3e 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 | Types">Primitive.Types</a>.<a.cl |
| e240 | 61 73 73 3d 22 68 64 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 | ass="hdr".href="#Primitive-Types |
| e260 | 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 63 6c 61 73 73 3d | ">..</a></h3>........<div.class= |
| e280 | 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 3e 0a 20 | "table-wrapper">.......<table>.. |
| e2a0 | 20 20 20 20 20 20 20 3c 63 61 70 74 69 6f 6e 3e 50 72 69 6d 69 74 69 76 65 20 54 79 70 65 73 3c | .......<caption>Primitive.Types< |
| e2c0 | 2f 63 61 70 74 69 6f 6e 3e 0a 20 20 20 20 20 20 20 20 3c 74 68 65 61 64 3e 0a 20 20 20 20 20 20 | /caption>.........<thead>....... |
| e2e0 | 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 68 20 73 63 6f 70 65 | ......<tr>.............<th.scope |
| e300 | 3d 22 63 6f 6c 22 3e 54 79 70 65 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 | ="col">Type</th>.............<th |
| e320 | 20 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 43 20 45 71 75 69 76 61 6c 65 6e 74 3c 2f 74 68 3e 0a 20 | .scope="col">C.Equivalent</th>.. |
| e340 | 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 44 65 73 63 72 | ...........<th.scope="col">Descr |
| e360 | 69 70 74 69 6f 6e 3c 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 | iption</th>.........</tr>....... |
| e380 | 20 20 3c 2f 74 68 65 61 64 3e 0a 20 20 20 20 20 20 20 20 3c 74 62 6f 64 79 3e 0a 20 20 20 20 20 | ..</thead>.........<tbody>...... |
| e3a0 | 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 | ...<tr>.............<th.scope="r |
| e3c0 | 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ow"><code><span.class="tok-type" |
| e3e0 | 3e 69 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 | >i8</span></code></th>.......... |
| e400 | 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 69 6e 74 38 5f 74 3c 2f 63 6f 64 | .<td><code.class="c">int8_t</cod |
| e420 | 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 38 2d 62 | e></td>...........<td>signed.8-b |
| e440 | 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 20 | it.integer</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 68 20 73 63 6f 70 65 | ......<tr>.............<th.scope |
| e480 | 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ="row"><code><span.class="tok-ty |
| e4a0 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 | pe">u8</span></code></th>....... |
| e4c0 | 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 38 5f 74 3c | ....<td><code.class="c">uint8_t< |
| e4e0 | 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 69 67 6e | /code></td>...........<td>unsign |
| e500 | 65 64 20 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 2f | ed.8-bit.integer</td>.........</ |
| e520 | 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 68 | tr>.........<tr>.............<th |
| e540 | 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .scope="row"><code><span.class=" |
| e560 | 74 6f 6b 2d 74 79 70 65 22 3e 69 31 36 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e | tok-type">i16</span></code></th> |
| e580 | 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 22 3e 69 | ...........<td><code.class="c">i |
| e5a0 | 6e 74 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 | nt16_t</code></td>...........<td |
| e5c0 | 3e 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 | >signed.16-bit.integer</td>..... |
| e5e0 | 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>.......... |
| e600 | 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ...<th.scope="row"><code><span.c |
| e620 | 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 3c 2f 63 6f 64 65 | lass="tok-type">u16</span></code |
| e640 | 3e 3c 2f 74 68 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 | ></th>...........<td><code.class |
| e660 | 3d 22 63 22 3e 75 69 6e 74 31 36 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | ="c">uint16_t</code></td>....... |
| e680 | 20 20 20 20 3c 74 64 3e 75 6e 73 69 67 6e 65 64 20 31 36 2d 62 69 74 20 69 6e 74 65 67 65 72 3c | ....<td>unsigned.16-bit.integer< |
| e6a0 | 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>. |
| e6c0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 | ............<th.scope="row"><cod |
| e6e0 | 65 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 70 | e><span.class="tok-type">i32</sp |
| e700 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 | an></code></th>...........<td><c |
| e720 | 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 69 6e 74 33 32 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 | ode.class="c">int32_t</code></td |
| e740 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 73 69 67 6e 65 64 20 33 32 2d 62 69 74 20 69 6e | >...........<td>signed.32-bit.in |
| e760 | 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>........ |
| e780 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 | .<tr>.............<th.scope="row |
| e7a0 | 22 3e 3c 63 6f 64 65 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 | "><code><span.class="tok-type">u |
| e7c0 | 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 | 32</span></code></th>........... |
| e7e0 | 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 69 6e 74 33 32 5f 74 3c 2f 63 6f | <td><code.class="c">uint32_t</co |
| e800 | 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 64 20 | de></td>...........<td>unsigned. |
| e820 | 33 32 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 | 32-bit.integer</td>.........</tr |
| e840 | 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 68 20 73 | >.........<tr>.............<th.s |
| e860 | 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | cope="row"><code><span.class="to |
| e880 | 6b 2d 74 79 70 65 22 3e 69 36 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 | k-type">i64</span></code></th>.. |
| e8a0 | 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 69 6e 74 | .........<td><code.class="c">int |
| e8c0 | 36 34 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 73 | 64_t</code></td>...........<td>s |
| e8e0 | 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>....... |
| e900 | 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>............ |
| e920 | 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | .<th.scope="row"><code><span.cla |
| e940 | 73 73 3d 22 74 6f 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 3c | ss="tok-type">u64</span></code>< |
| e960 | 2f 74 68 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 | /th>...........<td><code.class=" |
| e980 | 63 22 3e 75 69 6e 74 36 34 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | c">uint64_t</code></td>......... |
| e9a0 | 20 20 3c 74 64 3e 75 6e 73 69 67 6e 65 64 20 36 34 2d 62 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 | ..<td>unsigned.64-bit.integer</t |
| e9c0 | 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>... |
| e9e0 | 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e | ..........<th.scope="row"><code> |
| ea00 | 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 32 38 3c 2f 73 70 61 | <span.class="tok-type">i128</spa |
| ea20 | 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f | n></code></th>...........<td><co |
| ea40 | 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 5f 5f 69 6e 74 31 32 38 3c 2f 63 6f 64 65 3e 3c 2f 74 64 | de.class="c">__int128</code></td |
| ea60 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 73 69 67 6e 65 64 20 31 32 38 2d 62 69 74 20 69 | >...........<td>signed.128-bit.i |
| ea80 | 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 20 | nteger</td>.........</tr>....... |
| eaa0 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f | ..<tr>.............<th.scope="ro |
| eac0 | 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | w"><code><span.class="tok-type"> |
| eae0 | 75 31 32 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 | u128</span></code></th>......... |
| eb00 | 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 20 5f | ..<td><code.class="c">unsigned._ |
| eb20 | 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 20 20 20 3c 74 | _int128</code></td>...........<t |
| eb40 | 64 3e 75 6e 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 64 3e 0a | d>unsigned.128-bit.integer</td>. |
| eb60 | 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>...... |
| eb80 | 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 | .......<th.scope="row"><code><sp |
| eba0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 73 69 7a 65 3c 2f 73 70 61 6e 3e | an.class="tok-type">isize</span> |
| ebc0 | 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 | </code></th>...........<td><code |
| ebe0 | 20 63 6c 61 73 73 3d 22 63 22 3e 69 6e 74 70 74 72 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a | .class="c">intptr_t</code></td>. |
| ec00 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 73 69 67 6e 65 64 20 70 6f 69 6e 74 65 72 20 73 69 7a | ..........<td>signed.pointer.siz |
| ec20 | 65 64 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 20 | ed.integer</td>.........</tr>... |
| ec40 | 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 68 20 73 63 6f 70 65 | ......<tr>.............<th.scope |
| ec60 | 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ="row"><code><span.class="tok-ty |
| ec80 | 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 74 68 3e 0a 20 20 20 | pe">usize</span></code></th>.... |
| eca0 | 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 70 | .......<td><code.class="c">uintp |
| ecc0 | 74 72 5f 74 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 73 69 7a | tr_t</code>,.<code.class="c">siz |
| ece0 | 65 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 | e_t</code></td>...........<td>un |
| ed00 | 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 72 2e 20 41 6c | signed.pointer.sized.integer..Al |
| ed20 | 73 6f 20 73 65 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 | so.see.<a.href="https://github.c |
| ed40 | 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 35 31 38 35 22 3e 23 35 31 38 | om/ziglang/zig/issues/5185">#518 |
| ed60 | 35 3c 2f 61 3e 3c 2f 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 | 5</a></td>.........</tr>........ |
| ed80 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f | ..<tr>.............<th.scope="ro |
| eda0 | 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | w"><code><span.class="tok-type"> |
| edc0 | 63 5f 63 68 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 | c_char</span></code></th>....... |
| ede0 | 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 63 68 61 72 3c 2f 63 6f | ....<td><code.class="c">char</co |
| ee00 | 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 42 49 20 63 | de></td>...........<td>for.ABI.c |
| ee20 | 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 20 20 20 20 | ompatibility.with.C</td>........ |
| ee40 | 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 20 | .</tr>.........<tr>............. |
| ee60 | 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | <th.scope="row"><code><span.clas |
| ee80 | 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 6f 64 | s="tok-type">c_short</span></cod |
| eea0 | 65 3e 3c 2f 74 68 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 | e></th>...........<td><code.clas |
| eec0 | 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 20 20 | s="c">short</code></td>......... |
| eee0 | 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 74 68 | ..<td>for.ABI.compatibility.with |
| ef00 | 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 3c 74 | .C</td>.........</tr>.........<t |
| ef20 | 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c | r>.............<th.scope="row">< |
| ef40 | 63 6f 64 65 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 75 73 | code><span.class="tok-type">c_us |
| ef60 | 68 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 | hort</span></code></th>......... |
| ef80 | 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 20 73 | ..<td><code.class="c">unsigned.s |
| efa0 | 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 3e 66 | hort</code></td>...........<td>f |
| efc0 | 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 64 3e | or.ABI.compatibility.with.C</td> |
| efe0 | 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>..... |
| f000 | 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 | ........<th.scope="row"><code><s |
| f020 | 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 61 6e | pan.class="tok-type">c_int</span |
| f040 | 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 | ></code></th>...........<td><cod |
| f060 | 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 20 20 | e.class="c">int</code></td>..... |
| f080 | 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 79 20 | ......<td>for.ABI.compatibility. |
| f0a0 | 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 20 20 | with.C</td>.........</tr>....... |
| f0c0 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f | ..<tr>.............<th.scope="ro |
| f0e0 | 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | w"><code><span.class="tok-type"> |
| f100 | 63 5f 75 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 | c_uint</span></code></th>....... |
| f120 | 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 |
| f140 | 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 3e 66 | .int</code></td>...........<td>f |
| f160 | 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 64 3e | or.ABI.compatibility.with.C</td> |
| f180 | 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>..... |
| f1a0 | 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 | ........<th.scope="row"><code><s |
| f1c0 | 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 70 61 | pan.class="tok-type">c_long</spa |
| f1e0 | 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f | n></code></th>...........<td><co |
| f200 | 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 20 20 | de.class="c">long</code></td>... |
| f220 | 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 |
| f240 | 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>..... |
| f260 | 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 | ....<tr>.............<th.scope=" |
| f280 | 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | row"><code><span.class="tok-type |
| f2a0 | 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 68 3e 0a 20 20 20 | ">c_ulong</span></code></th>.... |
| f2c0 | 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 69 67 | .......<td><code.class="c">unsig |
| f2e0 | 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 20 3c | ned.long</code></td>...........< |
| f300 | 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 43 3c | td>for.ABI.compatibility.with.C< |
| f320 | 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>. |
| f340 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 | ............<th.scope="row"><cod |
| f360 | 65 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 67 6c | e><span.class="tok-type">c_longl |
| f380 | 6f 6e 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 | ong</span></code></th>.......... |
| f3a0 | 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 3c 2f | .<td><code.class="c">long.long</ |
| f3c0 | 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 42 49 | code></td>...........<td>for.ABI |
| f3e0 | 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 20 20 | .compatibility.with.C</td>...... |
| f400 | 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>........... |
| f420 | 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | ..<th.scope="row"><code><span.cl |
| f440 | 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 61 6e | ass="tok-type">c_ulonglong</span |
| f460 | 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 | ></code></th>...........<td><cod |
| f480 | 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 3c 2f | e.class="c">unsigned.long.long</ |
| f4a0 | 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 42 49 | code></td>...........<td>for.ABI |
| f4c0 | 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 20 20 | .compatibility.with.C</td>...... |
| f4e0 | 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>........... |
| f500 | 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | ..<th.scope="row"><code><span.cl |
| f520 | 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 70 61 | ass="tok-type">c_longdouble</spa |
| f540 | 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f | n></code></th>...........<td><co |
| f560 | 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 3e 3c | de.class="c">long.double</code>< |
| f580 | 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 70 61 | /td>...........<td>for.ABI.compa |
| f5a0 | 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 2f 74 | tibility.with.C</td>.........</t |
| f5c0 | 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 20 20 3c 74 68 | r>..........<tr>.............<th |
| f5e0 | 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .scope="row"><code><span.class=" |
| f600 | 74 6f 6b 2d 74 79 70 65 22 3e 66 31 36 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e | tok-type">f16</span></code></th> |
| f620 | 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 22 3e 5f | ...........<td><code.class="c">_ |
| f640 | 46 6c 6f 61 74 31 36 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 | Float16</code></td>...........<t |
| f660 | 64 3e 31 36 2d 62 69 74 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 28 31 30 2d 62 69 74 20 | d>16-bit.floating.point.(10-bit. |
| f680 | 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 36 | mantissa).IEEE-754-2008.binary16 |
| f6a0 | 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 3e | </td>.........</tr>.........<tr> |
| f6c0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f | .............<th.scope="row"><co |
| f6e0 | 64 65 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 33 32 3c 2f 73 | de><span.class="tok-type">f32</s |
| f700 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c | pan></code></th>...........<td>< |
| f720 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 66 6c 6f 61 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e | code.class="c">float</code></td> |
| f740 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 33 32 2d 62 69 74 20 66 6c 6f 61 74 69 6e 67 20 70 | ...........<td>32-bit.floating.p |
| f760 | 6f 69 6e 74 20 28 32 33 2d 62 69 74 20 6d 61 6e 74 69 73 73 61 29 20 49 45 45 45 2d 37 35 34 2d | oint.(23-bit.mantissa).IEEE-754- |
| f780 | 32 30 30 38 20 62 69 6e 61 72 79 33 32 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e | 2008.binary32</td>.........</tr> |
| f7a0 | 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 68 20 73 63 | .........<tr>.............<th.sc |
| f7c0 | 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ope="row"><code><span.class="tok |
| f7e0 | 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 | -type">f64</span></code></th>... |
| f800 | 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 64 6f 75 62 | ........<td><code.class="c">doub |
| f820 | 6c 65 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 36 34 2d | le</code></td>...........<td>64- |
| f840 | 62 69 74 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 28 35 32 2d 62 69 74 20 6d 61 6e 74 69 | bit.floating.point.(52-bit.manti |
| f860 | 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 36 34 3c 2f 74 64 3e | ssa).IEEE-754-2008.binary64</td> |
| f880 | 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>..... |
| f8a0 | 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 | ........<th.scope="row"><code><s |
| f8c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 38 30 3c 2f 73 70 61 6e 3e 3c | pan.class="tok-type">f80</span>< |
| f8e0 | 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 | /code></th>...........<td><code. |
| f900 | 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 3e 3c 2f 74 64 | class="c">long.double</code></td |
| f920 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 38 30 2d 62 69 74 20 66 6c 6f 61 74 69 6e 67 20 | >...........<td>80-bit.floating. |
| f940 | 70 6f 69 6e 74 20 28 36 34 2d 62 69 74 20 6d 61 6e 74 69 73 73 61 29 20 49 45 45 45 2d 37 35 34 | point.(64-bit.mantissa).IEEE-754 |
| f960 | 2d 32 30 30 38 20 38 30 2d 62 69 74 20 65 78 74 65 6e 64 65 64 20 70 72 65 63 69 73 69 6f 6e 3c | -2008.80-bit.extended.precision< |
| f980 | 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>. |
| f9a0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 | ............<th.scope="row"><cod |
| f9c0 | 65 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 | e><span.class="tok-type">f128</s |
| f9e0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 | pan></code></th>.............<td |
| fa00 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 5f 46 6c 6f 61 74 31 32 38 3c 2f 63 6f 64 65 | ><code.class="c">_Float128</code |
| fa20 | 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 31 32 38 2d 62 69 74 20 66 6c 6f | ></td>...........<td>128-bit.flo |
| fa40 | 61 74 69 6e 67 20 70 6f 69 6e 74 20 28 31 31 32 2d 62 69 74 20 6d 61 6e 74 69 73 73 61 29 20 49 | ating.point.(112-bit.mantissa).I |
| fa60 | 45 45 45 2d 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 31 32 38 3c 2f 74 64 3e 0a 20 20 20 20 | EEE-754-2008.binary128</td>..... |
| fa80 | 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>.......... |
| faa0 | 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ...<th.scope="row"><code><span.c |
| fac0 | 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 63 6f 64 | lass="tok-type">bool</span></cod |
| fae0 | 65 3e 3c 2f 74 68 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 | e></th>...........<td><code.clas |
| fb00 | 73 3d 22 63 22 3e 62 6f 6f 6c 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | s="c">bool</code></td>.......... |
| fb20 | 20 3c 74 64 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | .<td><code><span.class="tok-null |
| fb40 | 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 3e 3c 73 | ">true</span></code>.or.<code><s |
| fb60 | 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 |
| fb80 | 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 20 20 | ></code></td>.........</tr>..... |
| fba0 | 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 | ....<tr>.............<th.scope=" |
| fbc0 | 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | row"><code><span.class="tok-type |
| fbe0 | 22 3e 61 6e 79 6f 70 61 71 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 | ">anyopaque</span></code></th>.. |
| fc00 | 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 76 6f 69 | .........<td><code.class="c">voi |
| fc20 | 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 64 3e 55 73 65 64 | d</code></td>...........<td>Used |
| fc40 | 20 66 6f 72 20 74 79 70 65 2d 65 72 61 73 65 64 20 70 6f 69 6e 74 65 72 73 2e 3c 2f 74 64 3e 0a | .for.type-erased.pointers.</td>. |
| fc60 | 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>...... |
| fc80 | 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 | .......<th.scope="row"><code><sp |
| fca0 | 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 3c | an.class="tok-type">void</span>< |
| fcc0 | 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 28 6e 6f 6e 65 29 | /code></th>...........<td>(none) |
| fce0 | 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 41 6c 77 61 79 73 20 74 68 65 20 76 | </td>...........<td>Always.the.v |
| fd00 | 61 6c 75 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | alue.<code><span.class="tok-type |
| fd20 | 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 | ">void</span>{}</code></td>..... |
| fd40 | 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>.......... |
| fd60 | 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ...<th.scope="row"><code><span.c |
| fd80 | 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 3c | lass="tok-type">noreturn</span>< |
| fda0 | 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 28 6e 6f 6e 65 29 | /code></th>...........<td>(none) |
| fdc0 | 3c 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 | </td>...........<td>the.type.of. |
| fde0 | 3c 63 6f 64 65 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 | <code><span.class="tok-kw">break |
| fe00 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | </span></code>,.<code><span.clas |
| fe20 | 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 |
| fe40 | 3e 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 | >,.<code><span.class="tok-kw">re |
| fe60 | 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | turn</span></code>,.<code><span. |
| fe80 | 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 |
| fea0 | 3e 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ></code>,.and.<code><span.class= |
| fec0 | 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 63 6c 61 | "tok-kw">while</span>.(<span.cla |
| fee0 | 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 3c 2f 63 | ss="tok-null">true</span>).{}</c |
| ff00 | 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 20 20 20 20 20 20 | ode></td>.........</tr>......... |
| ff20 | 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 | <tr>.............<th.scope="row" |
| ff40 | 3e 3c 63 6f 64 65 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 | ><code><span.class="tok-type">ty |
| ff60 | 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 | pe</span></code></th>........... |
| ff80 | 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 64 3e 74 68 | <td>(none)</td>...........<td>th |
| ffa0 | 65 20 74 79 70 65 20 6f 66 20 74 79 70 65 73 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 | e.type.of.types</td>.........</t |
| ffc0 | 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 68 20 | r>.........<tr>.............<th. |
| ffe0 | 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | scope="row"><code><span.class="t |
| 10000 | 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>< |
| 10020 | 2f 74 68 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 | /th>...........<td>(none)</td>.. |
| 10040 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 61 6e 20 65 72 72 6f 72 20 63 6f 64 65 3c 2f 74 64 3e 0a | .........<td>an.error.code</td>. |
| 10060 | 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>...... |
| 10080 | 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 | .......<th.scope="row"><code><sp |
| 100a0 | 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 74 | an.class="tok-type">comptime_int |
| 100c0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | </span></code></th>...........<t |
| 100e0 | 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 64 3e 4f 6e 6c 79 | d>(none)</td>...........<td>Only |
| 10100 | 20 61 6c 6c 6f 77 65 64 20 66 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 | .allowed.for.<a.href="#comptime" |
| 10120 | 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2d 6b 6e 6f 77 6e 20 76 61 6c 75 65 73 2e 20 54 68 65 20 | >comptime</a>-known.values..The. |
| 10140 | 74 79 70 65 20 6f 66 20 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 73 2e 3c 2f 74 64 3e 0a 20 | type.of.integer.literals.</td>.. |
| 10160 | 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>....... |
| 10180 | 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 | ......<th.scope="row"><code><spa |
| 101a0 | 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 66 6c 6f 61 | n.class="tok-type">comptime_floa |
| 101c0 | 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | t</span></code></th>...........< |
| 101e0 | 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 64 3e 4f 6e 6c | td>(none)</td>...........<td>Onl |
| 10200 | 79 20 61 6c 6c 6f 77 65 64 20 66 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 | y.allowed.for.<a.href="#comptime |
| 10220 | 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2d 6b 6e 6f 77 6e 20 76 61 6c 75 65 73 2e 20 54 68 65 | ">comptime</a>-known.values..The |
| 10240 | 20 74 79 70 65 20 6f 66 20 66 6c 6f 61 74 20 6c 69 74 65 72 61 6c 73 2e 3c 2f 74 64 3e 0a 20 20 | .type.of.float.literals.</td>... |
| 10260 | 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 62 6f 64 79 3e 0a 20 20 20 | ......</tr>.........</tbody>.... |
| 10280 | 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 20 20 3c | ...</table>.......</div>.......< |
| 102a0 | 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 69 6e 74 65 | p>.......In.addition.to.the.inte |
| 102c0 | 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 69 74 2d 77 | ger.types.above,.arbitrary.bit-w |
| 102e0 | 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 63 65 64 20 | idth.integers.can.be.referenced. |
| 10300 | 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 20 6f 66 20 | by.using.......an.identifier.of. |
| 10320 | 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 6f 64 65 3e | <code>i</code>.or.<code>u</code> |
| 10340 | 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 6d 70 6c 65 | .followed.by.digits..For.example |
| 10360 | 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 3e 3c 73 70 | ,.the.identifier.......<code><sp |
| 10380 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 37 3c 2f 73 70 61 6e 3e 3c 2f 63 | an.class="tok-type">i7</span></c |
| 103a0 | 6f 64 65 3e 20 72 65 66 65 72 73 20 74 6f 20 61 20 73 69 67 6e 65 64 20 37 2d 62 69 74 20 69 6e | ode>.refers.to.a.signed.7-bit.in |
| 103c0 | 74 65 67 65 72 2e 20 54 68 65 20 6d 61 78 69 6d 75 6d 20 61 6c 6c 6f 77 65 64 20 62 69 74 2d 77 | teger..The.maximum.allowed.bit-w |
| 103e0 | 69 64 74 68 20 6f 66 20 61 6e 0a 20 20 20 20 20 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 69 73 | idth.of.an.......integer.type.is |
| 10400 | 20 3c 63 6f 64 65 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 | .<code><span.class="tok-number"> |
| 10420 | 36 35 35 33 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 | 65535</span></code>........</p>. |
| 10440 | 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>< |
| 10460 | 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>< |
| 10480 | 2f 6c 69 3e 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 | /li>.<li><a.href="#Floats">Float |
| 104a0 | 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 76 6f 69 64 22 3e 76 | s</a></li>.<li><a.href="#void">v |
| 104c0 | 6f 69 64 3c 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 | oid</a></li>.<li><a.href="#Error |
| 104e0 | 73 22 3e 45 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 | s">Errors</a></li>.<li><a.href=" |
| 10500 | 23 54 79 70 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 | #Type">@Type</a></li>.</ul>..... |
| 10520 | 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 50 72 69 6d 69 74 69 76 65 2d 56 61 6c 75 | ..........<h3.id="Primitive-Valu |
| 10540 | 65 73 22 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 56 61 6c 75 | es"><a.href="#toc-Primitive-Valu |
| 10560 | 65 73 22 3e 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 | es">Primitive.Values</a>.<a.clas |
| 10580 | 73 3d 22 68 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 | s="hdr".href="#Primitive-Values" |
| 105a0 | 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 63 6c 61 73 73 3d 22 | >..</a></h3>........<div.class=" |
| 105c0 | 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 3e 0a 20 20 | table-wrapper">.......<table>... |
| 105e0 | 20 20 20 20 20 20 3c 63 61 70 74 69 6f 6e 3e 50 72 69 6d 69 74 69 76 65 20 56 61 6c 75 65 73 3c | ......<caption>Primitive.Values< |
| 10600 | 2f 63 61 70 74 69 6f 6e 3e 0a 20 20 20 20 20 20 20 20 3c 74 68 65 61 64 3e 0a 20 20 20 20 20 20 | /caption>.........<thead>....... |
| 10620 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 | ..<tr>...........<th.scope="col" |
| 10640 | 3e 4e 61 6d 65 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 | >Name</th>...........<th.scope=" |
| 10660 | 63 6f 6c 22 3e 44 65 73 63 72 69 70 74 69 6f 6e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 3c 2f | col">Description</th>.........</ |
| 10680 | 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 68 65 61 64 3e 0a 20 20 20 20 20 20 20 20 3c 74 62 | tr>.........</thead>.........<tb |
| 106a0 | 6f 64 79 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 | ody>.........<tr>.............<t |
| 106c0 | 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | h.scope="row"><code><span.class= |
| 106e0 | 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 20 61 6e | "tok-null">true</span></code>.an |
| 10700 | 64 20 3c 63 6f 64 65 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 | d.<code><span.class="tok-null">f |
| 10720 | 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 | alse</span></code></th>......... |
| 10740 | 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ....<td><code><span.class="tok-t |
| 10760 | 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 61 6c 75 65 73 3c 2f | ype">bool</span></code>.values</ |
| 10780 | 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>.. |
| 107a0 | 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 | ...........<th.scope="row"><code |
| 107c0 | 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 |
| 107e0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | an></code></th>.............<td> |
| 10800 | 75 73 65 64 20 74 6f 20 73 65 74 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 20 74 6f 20 | used.to.set.an.optional.type.to. |
| 10820 | 3c 63 6f 64 65 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 | <code><span.class="tok-null">nul |
| 10840 | 6c 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 3c 2f 74 | l</span></code></td>.........</t |
| 10860 | 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 68 20 | r>.........<tr>.............<th. |
| 10880 | 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | scope="row"><code><span.class="t |
| 108a0 | 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> |
| 108c0 | 3c 2f 74 68 3e 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 | </th>...........<td>used.to.leav |
| 108e0 | 65 20 61 20 76 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 | e.a.value.unspecified</td>...... |
| 10900 | 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 62 6f 64 79 3e 0a 20 20 20 20 20 20 | ...</tr>.........</tbody>....... |
| 10920 | 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 20 20 3c 70 3e 53 | </table>.......</div>.......<p>S |
| 10940 | 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 4f | ee.also:</p><ul>.<li><a.href="#O |
| 10960 | 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 69 | ptionals">Optionals</a></li>.<li |
| 10980 | 3e 3c 61 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 | ><a.href="#undefined">undefined< |
| 109a0 | 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 33 | /a></li>.</ul>...............<h3 |
| 109c0 | 20 69 64 3d 22 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 | .id="String-Literals-and-Unicode |
| 109e0 | 2d 43 6f 64 65 2d 50 6f 69 6e 74 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 | -Code-Point-Literals"><a.href="# |
| 10a00 | 74 6f 63 2d 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 | toc-String-Literals-and-Unicode- |
| 10a20 | 43 6f 64 65 2d 50 6f 69 6e 74 2d 4c 69 74 65 72 61 6c 73 22 3e 53 74 72 69 6e 67 20 4c 69 74 65 | Code-Point-Literals">String.Lite |
| 10a40 | 72 61 6c 73 20 61 6e 64 20 55 6e 69 63 6f 64 65 20 43 6f 64 65 20 50 6f 69 6e 74 20 4c 69 74 65 | rals.and.Unicode.Code.Point.Lite |
| 10a60 | 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 22 23 53 | rals</a>.<a.class="hdr".href="#S |
| 10a80 | 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 2d | tring-Literals-and-Unicode-Code- |
| 10aa0 | 50 6f 69 6e 74 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 | Point-Literals">..</a></h3>..... |
| 10ac0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 61 72 65 | ...<p>.......String.literals.are |
| 10ae0 | 20 63 6f 6e 73 74 61 6e 74 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 3c 61 20 68 72 65 66 3d 22 23 | .constant.single-item.<a.href="# |
| 10b00 | 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 74 6f 20 6e 75 6c 6c 2d 74 | Pointers">Pointers</a>.to.null-t |
| 10b20 | 65 72 6d 69 6e 61 74 65 64 20 62 79 74 65 20 61 72 72 61 79 73 2e 0a 20 20 20 20 20 20 54 68 65 | erminated.byte.arrays........The |
| 10b40 | 20 74 79 70 65 20 6f 66 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 65 6e 63 6f 64 65 73 | .type.of.string.literals.encodes |
| 10b60 | 20 62 6f 74 68 20 74 68 65 20 6c 65 6e 67 74 68 2c 20 61 6e 64 20 74 68 65 20 66 61 63 74 20 74 | .both.the.length,.and.the.fact.t |
| 10b80 | 68 61 74 20 74 68 65 79 20 61 72 65 20 6e 75 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 2c 0a 20 20 | hat.they.are.null-terminated,... |
| 10ba0 | 20 20 20 20 61 6e 64 20 74 68 75 73 20 74 68 65 79 20 63 61 6e 20 62 65 20 3c 61 20 68 72 65 66 | ....and.thus.they.can.be.<a.href |
| 10bc0 | 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 20 74 6f | ="#Type-Coercion">coerced</a>.to |
| 10be0 | 20 62 6f 74 68 20 3c 61 20 68 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e 53 6c 69 63 65 73 3c 2f | .both.<a.href="#Slices">Slices</ |
| 10c00 | 61 3e 20 61 6e 64 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d | a>.and.......<a.href="#Sentinel- |
| 10c20 | 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 3e 4e 75 6c 6c 2d 54 65 72 6d 69 6e | Terminated-Pointers">Null-Termin |
| 10c40 | 61 74 65 64 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 44 65 72 65 66 65 72 | ated.Pointers</a>........Derefer |
| 10c60 | 65 6e 63 69 6e 67 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 63 6f 6e 76 65 72 74 73 20 | encing.string.literals.converts. |
| 10c80 | 74 68 65 6d 20 74 6f 20 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 | them.to.<a.href="#Arrays">Arrays |
| 10ca0 | 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 20 20 | </a>........</p>.......<p>...... |
| 10cc0 | 20 42 65 63 61 75 73 65 20 5a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 65 20 69 73 20 3c 61 20 68 | .Because.Zig.source.code.is.<a.h |
| 10ce0 | 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 65 6e 63 | ref="#Source-Encoding">UTF-8.enc |
| 10d00 | 6f 64 65 64 3c 2f 61 3e 2c 20 61 6e 79 0a 20 20 20 20 20 20 6e 6f 6e 2d 41 53 43 49 49 20 62 79 | oded</a>,.any.......non-ASCII.by |
| 10d20 | 74 65 73 20 61 70 70 65 61 72 69 6e 67 20 77 69 74 68 69 6e 20 61 20 73 74 72 69 6e 67 20 6c 69 | tes.appearing.within.a.string.li |
| 10d40 | 74 65 72 61 6c 20 69 6e 20 73 6f 75 72 63 65 20 63 6f 64 65 20 63 61 72 72 79 0a 20 20 20 20 20 | teral.in.source.code.carry...... |
| 10d60 | 20 74 68 65 69 72 20 55 54 46 2d 38 20 6d 65 61 6e 69 6e 67 20 69 6e 74 6f 20 74 68 65 20 63 6f | .their.UTF-8.meaning.into.the.co |
| 10d80 | 6e 74 65 6e 74 20 6f 66 20 74 68 65 20 73 74 72 69 6e 67 20 69 6e 20 74 68 65 20 5a 69 67 20 70 | ntent.of.the.string.in.the.Zig.p |
| 10da0 | 72 6f 67 72 61 6d 3b 0a 20 20 20 20 20 20 74 68 65 20 62 79 74 65 73 20 61 72 65 20 6e 6f 74 20 | rogram;.......the.bytes.are.not. |
| 10dc0 | 6d 6f 64 69 66 69 65 64 20 62 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 2e 20 49 74 20 69 73 20 | modified.by.the.compiler..It.is. |
| 10de0 | 70 6f 73 73 69 62 6c 65 20 74 6f 20 65 6d 62 65 64 0a 20 20 20 20 20 20 6e 6f 6e 2d 55 54 46 2d | possible.to.embed.......non-UTF- |
| 10e00 | 38 20 62 79 74 65 73 20 69 6e 74 6f 20 61 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 75 73 | 8.bytes.into.a.string.literal.us |
| 10e20 | 69 6e 67 20 3c 63 6f 64 65 3e 5c 78 4e 4e 3c 2f 63 6f 64 65 3e 20 6e 6f 74 61 74 69 6f 6e 2e 0a | ing.<code>\xNN</code>.notation.. |
| 10e40 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 49 6e 64 65 78 69 6e 67 20 69 6e 74 | ......</p>.......<p>Indexing.int |
| 10e60 | 6f 20 61 20 73 74 72 69 6e 67 20 63 6f 6e 74 61 69 6e 69 6e 67 20 6e 6f 6e 2d 41 53 43 49 49 20 | o.a.string.containing.non-ASCII. |
| 10e80 | 62 79 74 65 73 20 72 65 74 75 72 6e 73 20 69 6e 64 69 76 69 64 75 61 6c 0a 20 20 20 20 20 20 62 | bytes.returns.individual.......b |
| 10ea0 | 79 74 65 73 2c 20 77 68 65 74 68 65 72 20 76 61 6c 69 64 20 55 54 46 2d 38 20 6f 72 20 6e 6f 74 | ytes,.whether.valid.UTF-8.or.not |
| 10ec0 | 2e 3c 2f 70 3e 0a 20 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 | .</p>.......<p>.......Unicode.co |
| 10ee0 | 64 65 20 70 6f 69 6e 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 | de.point.literals.have.type.<cod |
| 10f00 | 65 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 6d | e><span.class="tok-type">comptim |
| 10f20 | 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 6d 65 20 61 73 | e_int</span></code>,.the.same.as |
| 10f40 | 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 74 65 72 61 6c | .......<a.href="#Integer-Literal |
| 10f60 | 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 6c 20 3c 61 20 | s">Integer.Literals</a>..All.<a. |
| 10f80 | 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 63 61 70 65 20 | href="#Escape-Sequences">Escape. |
| 10fa0 | 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 62 6f 74 68 20 | Sequences</a>.are.valid.in.both. |
| 10fc0 | 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 6e 69 63 6f 64 | string.literals.......and.Unicod |
| 10fe0 | 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 20 20 3c 2f 70 | e.code.point.literals........</p |
| 11000 | 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 | >.......<figure><figcaption.clas |
| 11020 | 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 | s="zig-cap"><cite.class="file">s |
| 11040 | 74 72 69 6e 67 5f 6c 69 74 65 72 61 6c 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | tring_literals.zig</cite></figca |
| 11060 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ption><pre><code><span.class="to |
| 11080 | 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 73 70 61 6e | k-kw">const</span>.print.=.<span |
| 110a0 | 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 |
| 110c0 | 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">" |
| 110e0 | 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 74 3b 0a 3c | std"</span>).debug.print;.< |
| 11100 | 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> |
| 11120 | 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 6c 74 69 6e 22 | .mem.=.<span.class="tok-builtin" |
| 11140 | 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 |
| 11160 | 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 6d 65 | -str">"std"</span>).me |
| 11180 | 6d 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 | m;.<span.class="tok-comment">//. |
| 111a0 | 77 69 6c 6c 20 62 65 20 75 73 65 64 20 74 6f 20 63 6f 6d 70 61 72 65 20 62 79 74 65 73 3c 2f 73 | will.be.used.to.compare.bytes</s |
| 111c0 | 70 61 6e 3e 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 | pan>..<span.class="tok-kw">pub</ |
| 111e0 | 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 |
| 11200 | 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</ |
| 11220 | 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 |
| 11240 | 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 |
| 11260 | 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 20 3c 73 70 61 6e | k-kw">const</span>.bytes.=.<span |
| 11280 | 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 |
| 112a0 | 74 3b 3c 2f 73 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 | t;</span>;.....print(<span.class |
| 112c0 | 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 |
| 112e0 | 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 6e 22 3e | n>,..{<span.class="tok-builtin"> |
| 11300 | 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 62 79 74 65 73 29 7d 29 3b 20 3c 73 70 61 6e 20 63 | @TypeOf</span>(bytes)});.<span.c |
| 11320 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2a 63 6f 6e 73 74 20 5b 35 3a | lass="tok-comment">//.*const.[5: |
| 11340 | 30 5d 75 38 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 | 0]u8</span>.....print(<span.clas |
| 11360 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 64 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 | s="tok-str">"{d}\n"</s |
| 11380 | 70 61 6e 3e 2c 20 2e 7b 62 79 74 65 73 2e 6c 65 6e 7d 29 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | pan>,..{bytes.len});.<span.class |
| 113a0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 35 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 | ="tok-comment">//.5</span>.....p |
| 113c0 | 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">" |
| 113e0 | 3b 7b 63 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 62 79 74 65 73 5b 3c 73 70 | ;{c}\n"</span>,..{bytes[<sp |
| 11400 | 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 7d | an.class="tok-number">1</span>]} |
| 11420 | 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">//. |
| 11440 | 27 65 27 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 | 'e'</span>.....print(<span.class |
| 11460 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 64 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 | ="tok-str">"{d}\n"</sp |
| 11480 | 61 6e 3e 2c 20 2e 7b 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 | an>,..{bytes[<span.class="tok-nu |
| 114a0 | 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 7d 29 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | mber">5</span>]});.<span.class=" |
| 114c0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 30 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 72 69 | tok-comment">//.0</span>.....pri |
| 114e0 | 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 7b | nt(<span.class="tok-str">"{ |
| 11500 | 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 20 63 6c 61 73 73 3d | }\n"</span>,..{<span.class= |
| 11520 | 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 63 6c | "tok-str">'e'</span>.==.<span.cl |
| 11540 | 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 7d 29 3b 20 3c | ass="tok-str">'\x65'</span>});.< |
| 11560 | 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 72 75 65 | span.class="tok-comment">//.true |
| 11580 | 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 3d 22 74 | </span>.....print(<span.class="t |
| 115a0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 64 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | ok-str">"{d}\n"</span> |
| 115c0 | 2c 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5c 75 7b 31 66 | ,..{<span.class="tok-str">'\u{1f |
| 115e0 | 34 61 39 7d 27 3c 2f 73 70 61 6e 3e 7d 29 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 4a9}'</span>});.<span.class="tok |
| 11600 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 31 32 38 31 36 39 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 | -comment">//.128169</span>.....p |
| 11620 | 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">" |
| 11640 | 3b 7b 64 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 20 63 6c 61 | ;{d}\n"</span>,..{<span.cla |
| 11660 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 f0 9f 92 af 27 3c 2f 73 70 61 6e 3e 7d 29 3b 20 3c 73 | ss="tok-str">'....'</span>});.<s |
| 11680 | 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 31 32 38 31 37 | pan.class="tok-comment">//.12817 |
| 116a0 | 35 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 3d 22 | 5</span>.....print(<span.class=" |
| 116c0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 75 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | tok-str">"{u}\n"</span |
| 116e0 | 3e 2c 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 e2 9a a1 27 | >,..{<span.class="tok-str">'...' |
| 11700 | 3c 2f 73 70 61 6e 3e 7d 29 3b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | </span>});.....print(<span.class |
| 11720 | 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 |
| 11740 | 6e 3e 2c 20 2e 7b 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 | n>,..{mem.eql(<span.class="tok-t |
| 11760 | 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 |
| 11780 | 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>,. |
| 117a0 | 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 |
| 117c0 | 35 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 7d 29 3b 20 3c 73 70 61 6e 20 63 6c 61 73 | 5llo"</span>)});.<span.clas |
| 117e0 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 72 75 65 3c 2f 73 70 61 6e 3e 0a 20 | s="tok-comment">//.true</span>.. |
| 11800 | 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 26 | ...print(<span.class="tok-str">& |
| 11820 | 71 75 6f 74 3b 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6d 65 6d 2e 65 71 | quot;{}\n"</span>,..{mem.eq |
| 11840 | 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 |
| 11860 | 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">" |
| 11880 | f0 9f 92 af 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 | ...."</span>,.<span.class=" |
| 118a0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 78 66 30 5c 78 39 66 5c 78 39 32 5c 78 61 66 26 | tok-str">"\xf0\x9f\x92\xaf& |
| 118c0 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 7d 29 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | quot;</span>)});.<span.class="to |
| 118e0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 6c 73 6f 20 74 72 75 65 3c 2f 73 70 61 6e 3e 0a 20 | k-comment">//.also.true</span>.. |
| 11900 | 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 |
| 11920 | 70 61 6e 3e 20 69 6e 76 61 6c 69 64 5f 75 74 66 38 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pan>.invalid_utf8.=.<span.class= |
| 11940 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 78 66 66 5c 78 66 65 26 71 75 6f 74 3b 3c 2f | "tok-str">"\xff\xfe"</ |
| 11960 | 73 70 61 6e 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 | span>;.<span.class="tok-comment" |
| 11980 | 3e 2f 2f 20 6e 6f 6e 2d 55 54 46 2d 38 20 73 74 72 69 6e 67 73 20 61 72 65 20 70 6f 73 73 69 62 | >//.non-UTF-8.strings.are.possib |
| 119a0 | 6c 65 20 77 69 74 68 20 5c 78 4e 4e 20 6e 6f 74 61 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 | le.with.\xNN.notation.</span>... |
| 119c0 | 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 |
| 119e0 | 75 6f 74 3b 30 78 7b 78 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 69 6e 76 61 | uot;0x{x}\n"</span>,..{inva |
| 11a00 | 6c 69 64 5f 75 74 66 38 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | lid_utf8[<span.class="tok-number |
| 11a20 | 22 3e 31 3c 2f 73 70 61 6e 3e 5d 7d 29 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">1</span>]});.<span.class="tok- |
| 11a40 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6e 64 65 78 69 6e 67 20 74 68 65 6d 20 72 65 74 75 72 6e | comment">//.indexing.them.return |
| 11a60 | 73 20 69 6e 64 69 76 69 64 75 61 6c 20 62 79 74 65 73 2e 2e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | s.individual.bytes...</span>.... |
| 11a80 | 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 |
| 11aa0 | 6f 74 3b 30 78 7b 78 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 | ot;0x{x}\n"</span>,..{<span |
| 11ac0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b f0 9f 92 af 26 71 75 6f 74 | .class="tok-str">"...." |
| 11ae0 | 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 75 6d 62 65 72 | ;</span>[<span.class="tok-number |
| 11b00 | 22 3e 31 3c 2f 73 70 61 6e 3e 5d 7d 29 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">1</span>]});.<span.class="tok- |
| 11b20 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2e 2e 2e 61 73 20 64 6f 65 73 20 69 6e 64 65 78 69 6e 67 20 | comment">//....as.does.indexing. |
| 11b40 | 70 61 72 74 2d 77 61 79 20 74 68 72 6f 75 67 68 20 6e 6f 6e 2d 41 53 43 49 49 20 63 68 61 72 61 | part-way.through.non-ASCII.chara |
| 11b60 | 63 74 65 72 73 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | cters</span>.}</code></pre></fig |
| 11b80 | 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 | ure><figure><figcaption.class="s |
| 11ba0 | 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | hell-cap">Shell</figcaption><pre |
| 11bc0 | 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 73 74 72 69 | ><samp>$.<kbd>zig.build-exe.stri |
| 11be0 | 6e 67 5f 6c 69 74 65 72 61 6c 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 73 | ng_literals.zig</kbd>.$.<kbd>./s |
| 11c00 | 74 72 69 6e 67 5f 6c 69 74 65 72 61 6c 73 3c 2f 6b 62 64 3e 0a 2a 63 6f 6e 73 74 20 5b 35 3a 30 | tring_literals</kbd>.*const.[5:0 |
| 11c20 | 5d 75 38 0a 35 0a 65 0a 30 0a 74 72 75 65 0a 31 32 38 31 36 39 0a 31 32 38 31 37 35 0a e2 9a a1 | ]u8.5.e.0.true.128169.128175.... |
| 11c40 | 0a 74 72 75 65 0a 74 72 75 65 0a 30 78 66 65 0a 30 78 39 66 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 | .true.true.0xfe.0x9f.</samp></pr |
| 11c60 | 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c | e></figure>........<p>See.also:< |
| 11c80 | 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 | /p><ul>.<li><a.href="#Arrays">Ar |
| 11ca0 | 72 61 79 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 6f 75 72 | rays</a></li>.<li><a.href="#Sour |
| 11cc0 | 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 69 6e 67 3c 2f 61 3e | ce-Encoding">Source.Encoding</a> |
| 11ce0 | 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 45 73 63 61 70 | </li>.</ul>........<h4.id="Escap |
| 11d00 | 65 2d 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 | e-Sequences"><a.href="#toc-Escap |
| 11d20 | 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 73 3c 2f 61 | e-Sequences">Escape.Sequences</a |
| 11d40 | 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 73 63 61 70 65 2d 53 | >.<a.class="hdr".href="#Escape-S |
| 11d60 | 65 71 75 65 6e 63 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 64 69 | equences">..</a></h4>........<di |
| 11d80 | 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">.......< |
| 11da0 | 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 20 20 3c 63 61 70 74 69 6f 6e 3e 45 73 63 61 70 65 20 53 | table>.........<caption>Escape.S |
| 11dc0 | 65 71 75 65 6e 63 65 73 3c 2f 63 61 70 74 69 6f 6e 3e 0a 20 20 20 20 20 20 20 20 3c 74 68 65 61 | equences</caption>.........<thea |
| 11de0 | 64 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 20 73 63 | d>.........<tr>...........<th.sc |
| 11e00 | 6f 70 65 3d 22 63 6f 6c 22 3e 45 73 63 61 70 65 20 53 65 71 75 65 6e 63 65 3c 2f 74 68 3e 0a 20 | ope="col">Escape.Sequence</th>.. |
| 11e20 | 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 4e 61 6d 65 3c 2f 74 | .........<th.scope="col">Name</t |
| 11e40 | 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 2f 74 68 65 61 64 | h>.........</tr>.........</thead |
| 11e60 | 3e 0a 20 20 20 20 20 20 20 20 3c 74 62 6f 64 79 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 | >.........<tbody>.........<tr>.. |
| 11e80 | 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 | ...........<th.scope="row"><code |
| 11ea0 | 3e 5c 6e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4e 65 | >\n</code></th>...........<td>Ne |
| 11ec0 | 77 6c 69 6e 65 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 | wline</td>.........</tr>........ |
| 11ee0 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 | .<tr>.............<th.scope="row |
| 11f00 | 22 3e 3c 63 6f 64 65 3e 5c 72 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 | "><code>\r</code></th>.......... |
| 11f20 | 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 20 | .<td>Carriage.Return</td>....... |
| 11f40 | 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>............ |
| 11f60 | 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 5c 74 3c 2f 63 6f 64 65 3e | .<th.scope="row"><code>\t</code> |
| 11f80 | 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 54 61 62 3c 2f 74 64 3e 0a 20 20 20 | </th>...........<td>Tab</td>.... |
| 11fa0 | 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>......... |
| 11fc0 | 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 5c 5c 3c 2f 63 6f | ....<th.scope="row"><code>\\</co |
| 11fe0 | 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 42 61 63 6b 73 6c 61 73 68 | de></th>...........<td>Backslash |
| 12000 | 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 3e | </td>.........</tr>.........<tr> |
| 12020 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f | .............<th.scope="row"><co |
| 12040 | 64 65 3e 5c 27 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | de>\'</code></th>...........<td> |
| 12060 | 53 69 6e 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 | Single.Quote</td>.........</tr>. |
| 12080 | 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 68 20 73 63 6f | ........<tr>.............<th.sco |
| 120a0 | 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 5c 22 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 | pe="row"><code>\"</code></th>... |
| 120c0 | 20 20 20 20 20 20 20 20 3c 74 64 3e 44 6f 75 62 6c 65 20 51 75 6f 74 65 3c 2f 74 64 3e 0a 20 20 | ........<td>Double.Quote</td>... |
| 120e0 | 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>........ |
| 12100 | 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 5c 78 4e 4e 3c | .....<th.scope="row"><code>\xNN< |
| 12120 | 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 68 65 78 61 64 65 | /code></th>...........<td>hexade |
| 12140 | 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 69 67 69 74 73 | cimal.8-bit.byte.value.(2.digits |
| 12160 | 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 20 20 3c 74 72 | )</td>.........</tr>.........<tr |
| 12180 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 | >.............<th.scope="row"><c |
| 121a0 | 6f 64 65 3e 5c 75 7b 4e 4e 4e 4e 4e 4e 7d 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 | ode>\u{NNNNNN}</code></th>...... |
| 121c0 | 20 20 20 20 20 3c 74 64 3e 68 65 78 61 64 65 63 69 6d 61 6c 20 55 6e 69 63 6f 64 65 20 73 63 61 | .....<td>hexadecimal.Unicode.sca |
| 121e0 | 6c 61 72 20 76 61 6c 75 65 20 55 54 46 2d 38 20 65 6e 63 6f 64 65 64 20 28 31 20 6f 72 20 6d 6f | lar.value.UTF-8.encoded.(1.or.mo |
| 12200 | 72 65 20 64 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 | re.digits)</td>.........</tr>... |
| 12220 | 20 20 20 20 20 20 3c 2f 74 62 6f 64 79 3e 0a 20 20 20 20 20 20 3c 2f 74 61 62 6c 65 3e 0a 20 20 | ......</tbody>.......</table>... |
| 12240 | 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 68 61 74 20 74 68 | ....</div>.......<p>Note.that.th |
| 12260 | 65 20 6d 61 78 69 6d 75 6d 20 76 61 6c 69 64 20 55 6e 69 63 6f 64 65 20 73 63 61 6c 61 72 20 76 | e.maximum.valid.Unicode.scalar.v |
| 12280 | 61 6c 75 65 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | alue.is.<code><span.class="tok-n |
| 122a0 | 75 6d 62 65 72 22 3e 30 78 31 30 66 66 66 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 3c 2f | umber">0x10ffff</span></code>.</ |
| 122c0 | 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 4d 75 6c 74 69 6c 69 6e | p>..............<h4.id="Multilin |
| 122e0 | 65 2d 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | e-String-Literals"><a.href="#toc |
| 12300 | 2d 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 4d 75 6c 74 | -Multiline-String-Literals">Mult |
| 12320 | 69 6c 69 6e 65 20 53 74 72 69 6e 67 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 | iline.String.Literals</a>.<a.cla |
| 12340 | 73 73 3d 22 68 64 72 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 | ss="hdr".href="#Multiline-String |
| 12360 | 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 | -Literals">..</a></h4>........<p |
| 12380 | 3e 0a 20 20 20 20 20 20 4d 75 6c 74 69 6c 69 6e 65 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c | >.......Multiline.string.literal |
| 123a0 | 73 20 68 61 76 65 20 6e 6f 20 65 73 63 61 70 65 73 20 61 6e 64 20 63 61 6e 20 73 70 61 6e 20 61 | s.have.no.escapes.and.can.span.a |
| 123c0 | 63 72 6f 73 73 20 6d 75 6c 74 69 70 6c 65 20 6c 69 6e 65 73 2e 0a 20 20 20 20 20 20 54 6f 20 73 | cross.multiple.lines........To.s |
| 123e0 | 74 61 72 74 20 61 20 6d 75 6c 74 69 6c 69 6e 65 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 2c | tart.a.multiline.string.literal, |
| 12400 | 20 75 73 65 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .use.the.<code><span.class="tok- |
| 12420 | 73 74 72 22 3e 5c 5c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 6b 65 6e 2e 20 4a 75 73 | str">\\</span></code>.token..Jus |
| 12440 | 74 20 6c 69 6b 65 20 61 20 63 6f 6d 6d 65 6e 74 2c 0a 20 20 20 20 20 20 74 68 65 20 73 74 72 69 | t.like.a.comment,.......the.stri |
| 12460 | 6e 67 20 6c 69 74 65 72 61 6c 20 67 6f 65 73 20 75 6e 74 69 6c 20 74 68 65 20 65 6e 64 20 6f 66 | ng.literal.goes.until.the.end.of |
| 12480 | 20 74 68 65 20 6c 69 6e 65 2e 20 54 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 6c 69 6e 65 20 69 | .the.line..The.end.of.the.line.i |
| 124a0 | 73 0a 20 20 20 20 20 20 6e 6f 74 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 74 68 65 20 73 74 72 69 | s.......not.included.in.the.stri |
| 124c0 | 6e 67 20 6c 69 74 65 72 61 6c 2e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 69 66 20 74 68 | ng.literal........However,.if.th |
| 124e0 | 65 20 6e 65 78 74 20 6c 69 6e 65 20 62 65 67 69 6e 73 20 77 69 74 68 20 3c 63 6f 64 65 3e 3c 73 | e.next.line.begins.with.<code><s |
| 12500 | 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 3c 2f 63 | pan.class="tok-str">\\</span></c |
| 12520 | 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 65 64 20 | ode>.then.a.newline.is.appended. |
| 12540 | 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 63 6f 6e | and.......the.string.literal.con |
| 12560 | 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 66 69 67 75 72 65 | tinues........</p>.......<figure |
| 12580 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 | ><figcaption.class="zig-cap"><ci |
| 125a0 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6d 75 6c 74 69 6c 69 6e 65 5f 73 74 72 69 6e 67 | te.class="file">multiline_string |
| 125c0 | 5f 6c 69 74 65 72 61 6c 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e | _literals.zig</cite></figcaption |
| 125e0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ><pre><code><span.class="tok-kw" |
| 12600 | 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 5f 69 6e 5f 63 20 3d | >const</span>.hello_world_in_c.= |
| 12620 | 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 23 69 6e | .....<span.class="tok-str">\\#in |
| 12640 | 63 6c 75 64 65 20 26 6c 74 3b 73 74 64 69 6f 2e 68 26 67 74 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 | clude.<stdio.h></span>.... |
| 12660 | 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 3c 2f 73 70 61 6e 3e | .<span.class="tok-str">\\</span> |
| 12680 | 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 69 6e 74 | .....<span.class="tok-str">\\int |
| 126a0 | 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 67 76 29 20 7b 3c 2f | .main(int.argc,.char.**argv).{</ |
| 126c0 | 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 74 72 22 3e | span>.....<span.class="tok-str"> |
| 126e0 | 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 77 6f 72 6c 64 5c 6e | \\....printf("hello.world\n |
| 12700 | 26 71 75 6f 74 3b 29 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 | ");</span>.....<span.class= |
| 12720 | 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 3c 2f 73 70 61 6e 3e | "tok-str">\\....return.0;</span> |
| 12740 | 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 7d 3c 2f | .....<span.class="tok-str">\\}</ |
| 12760 | 73 70 61 6e 3e 0a 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 | span>.;</code></pre></figure>... |
| 12780 | 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 |
| 127a0 | 20 68 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 | .href="#embedFile">@embedFile</a |
| 127c0 | 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 20 20 20 20 | ></li>.</ul>.................... |
| 127e0 | 20 20 3c 68 33 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 | ..<h3.id="Assignment"><a.href="# |
| 12800 | 74 6f 63 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 | toc-Assignment">Assignment</a>.< |
| 12820 | 61 20 63 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 | a.class="hdr".href="#Assignment" |
| 12840 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 55 73 65 20 74 68 65 20 3c | >..</a></h3>........<p>Use.the.< |
| 12860 | 63 6f 64 65 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 | code><span.class="tok-kw">const< |
| 12880 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 74 6f 20 61 73 73 69 67 6e 20 | /span></code>.keyword.to.assign. |
| 128a0 | 61 20 76 61 6c 75 65 20 74 6f 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 3a 3c 2f 70 3e 0a 20 20 | a.value.to.an.identifier:</p>... |
| 128c0 | 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a | ....<figure><figcaption.class="z |
| 128e0 | 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 6f 6e 73 74 | ig-cap"><cite.class="file">const |
| 12900 | 61 6e 74 5f 69 64 65 6e 74 69 66 69 65 72 5f 63 61 6e 6e 6f 74 5f 63 68 61 6e 67 65 2e 7a 69 67 | ant_identifier_cannot_change.zig |
| 12920 | 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | </cite></figcaption><pre><code>< |
| 12940 | 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> |
| 12960 | 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 32 | .x.=.<span.class="tok-number">12 |
| 12980 | 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 22 | 34</span>;..<span.class="tok-kw" |
| 129a0 | 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"> |
| 129c0 | 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 79 | foo</span>().<span.class="tok-ty |
| 129e0 | 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 73 | pe">void</span>.{.....<span.clas |
| 12a00 | 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 66 | s="tok-comment">//.It.works.at.f |
| 12a20 | 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 63 | ile.scope.as.well.as.inside.func |
| 12a40 | 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 74 | tions.</span>.....<span.class="t |
| 12a60 | 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 6c | ok-kw">const</span>.y.=.<span.cl |
| 12a80 | 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 20 | ass="tok-number">5678</span>;... |
| 12aa0 | 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">//. |
| 12ac0 | 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 6e | Once.assigned,.an.identifier.can |
| 12ae0 | 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 20 | not.be.changed.</span>.....y.+=. |
| 12b00 | 3c 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 |
| 12b20 | 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</ |
| 12b40 | 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 |
| 12b60 | 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</ |
| 12b80 | 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 |
| 12ba0 | 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 29 3b 0a 7d 3c 2f 63 6f 64 65 3e | oid</span>.{.....foo();.}</code> |
| 12bc0 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | </pre></figure><figure><figcapti |
| 12be0 | 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 | on.class="shell-cap">Shell</figc |
| 12c00 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 | aption><pre><samp>$.<kbd>zig.bui |
| 12c20 | 6c 64 2d 65 78 65 20 63 6f 6e 73 74 61 6e 74 5f 69 64 65 6e 74 69 66 69 65 72 5f 63 61 6e 6e 6f | ld-exe.constant_identifier_canno |
| 12c40 | 74 5f 63 68 61 6e 67 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | t_change.zig</kbd>.<span.class=" |
| 12c60 | 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c | sgr-1m">/home/andy/dev/zig/doc/l |
| 12c80 | 61 6e 67 72 65 66 2f 63 6f 6e 73 74 61 6e 74 5f 69 64 65 6e 74 69 66 69 65 72 5f 63 61 6e 6e 6f | angref/constant_identifier_canno |
| 12ca0 | 74 5f 63 68 61 6e 67 65 2e 7a 69 67 3a 38 3a 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | t_change.zig:8:7:.</span><span.c |
| 12cc0 | 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | lass="sgr-31m">error:.</span><sp |
| 12ce0 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 63 61 6e 6e 6f 74 20 61 73 73 69 67 6e 20 | an.class="sgr-1m">cannot.assign. |
| 12d00 | 74 6f 20 63 6f 6e 73 74 61 6e 74 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 79 20 2b 3d 20 31 3b 0a 20 | to.constant.</span>....y.+=.1;.. |
| 12d20 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 7e 7e 5e 7e 7e 7e 0a | ...<span.class="sgr-32m">~~^~~~. |
| 12d40 | 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 72 65 66 65 | </span><span.class="sgr-2m">refe |
| 12d60 | 72 65 6e 63 65 64 20 62 79 3a 0a 20 20 20 20 6d 61 69 6e 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f | renced.by:.....main:./home/andy/ |
| 12d80 | 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 63 6f 6e 73 74 61 6e 74 5f 69 64 65 | dev/zig/doc/langref/constant_ide |
| 12da0 | 6e 74 69 66 69 65 72 5f 63 61 6e 6e 6f 74 5f 63 68 61 6e 67 65 2e 7a 69 67 3a 31 32 3a 38 0a 20 | ntifier_cannot_change.zig:12:8.. |
| 12dc0 | 20 20 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 3a 20 2f 68 6f 6d 65 2f 61 | ...posixCallMainAndExit:./home/a |
| 12de0 | 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 35 | ndy/dev/zig/lib/std/start.zig:65 |
| 12e00 | 31 3a 32 32 0a 20 20 20 20 34 20 72 65 66 65 72 65 6e 63 65 28 73 29 20 68 69 64 64 65 6e 3b 20 | 1:22.....4.reference(s).hidden;. |
| 12e20 | 75 73 65 20 27 2d 66 72 65 66 65 72 65 6e 63 65 2d 74 72 61 63 65 3d 36 27 20 74 6f 20 73 65 65 | use.'-freference-trace=6'.to.see |
| 12e40 | 20 61 6c 6c 20 72 65 66 65 72 65 6e 63 65 73 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c | .all.references.</span>.</samp>< |
| 12e60 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 3c | /pre></figure>........<p><code>< |
| 12e80 | 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> |
| 12ea0 | 3c 2f 63 6f 64 65 3e 20 61 70 70 6c 69 65 73 20 74 6f 20 61 6c 6c 20 6f 66 20 74 68 65 20 62 79 | </code>.applies.to.all.of.the.by |
| 12ec0 | 74 65 73 20 74 68 61 74 20 74 68 65 20 69 64 65 6e 74 69 66 69 65 72 20 69 6d 6d 65 64 69 61 74 | tes.that.the.identifier.immediat |
| 12ee0 | 65 6c 79 20 61 64 64 72 65 73 73 65 73 2e 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 | ely.addresses..<a.href="#Pointer |
| 12f00 | 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 68 61 76 65 20 74 68 65 69 72 20 6f 77 6e 20 63 | s">Pointers</a>.have.their.own.c |
| 12f20 | 6f 6e 73 74 2d 6e 65 73 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 49 66 20 79 6f 75 20 6e | onst-ness.</p>.......<p>If.you.n |
| 12f40 | 65 65 64 20 61 20 76 61 72 69 61 62 6c 65 20 74 68 61 74 20 79 6f 75 20 63 61 6e 20 6d 6f 64 69 | eed.a.variable.that.you.can.modi |
| 12f60 | 66 79 2c 20 75 73 65 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | fy,.use.the.<code><span.class="t |
| 12f80 | 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 6b 65 79 77 6f 72 64 | ok-kw">var</span></code>.keyword |
| 12fa0 | 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | :</p>.......<figure><figcaption. |
| 12fc0 | 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c | class="zig-cap"><cite.class="fil |
| 12fe0 | 65 22 3e 6d 75 74 61 62 6c 65 5f 76 61 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | e">mutable_var.zig</cite></figca |
| 13000 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ption><pre><code><span.class="to |
| 13020 | 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 73 70 61 6e | k-kw">const</span>.print.=.<span |
| 13040 | 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 |
| 13060 | 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">" |
| 13080 | 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 74 3b 0a 0a | std"</span>).debug.print;.. |
| 130a0 | 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>. |
| 130c0 | 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>.< |
| 130e0 | 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>( |
| 13100 | 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 |
| 13120 | 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"> |
| 13140 | 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 |
| 13160 | 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 |
| 13180 | 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 20 20 20 20 79 20 2b | ok-number">5678</span>;......y.+ |
| 131a0 | 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 |
| 131c0 | 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 |
| 131e0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 64 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b | -str">"{d}"</span>,..{ |
| 13200 | 79 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 | y});.}</code></pre></figure><fig |
| 13220 | 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 | ure><figcaption.class="shell-cap |
| 13240 | 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 | ">Shell</figcaption><pre><samp>$ |
| 13260 | 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 6d 75 74 61 62 6c 65 5f 76 61 72 2e | .<kbd>zig.build-exe.mutable_var. |
| 13280 | 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 6d 75 74 61 62 6c 65 5f 76 61 72 3c 2f | zig</kbd>.$.<kbd>./mutable_var</ |
| 132a0 | 6b 62 64 3e 0a 35 36 37 39 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | kbd>.5679.</samp></pre></figure> |
| 132c0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 56 61 72 69 61 62 6c 65 73 20 6d 75 73 74 20 62 65 20 69 6e 69 | ........<p>Variables.must.be.ini |
| 132e0 | 74 69 61 6c 69 7a 65 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 | tialized:</p>.......<figure><fig |
| 13300 | 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c | caption.class="zig-cap"><cite.cl |
| 13320 | 61 73 73 3d 22 66 69 6c 65 22 3e 76 61 72 5f 6d 75 73 74 5f 62 65 5f 69 6e 69 74 69 61 6c 69 7a | ass="file">var_must_be_initializ |
| 13340 | 65 64 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c | ed.zig</cite></figcaption><pre>< |
| 13360 | 63 6f 64 65 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 | code><span.class="tok-kw">pub</s |
| 13380 | 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 |
| 133a0 | 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 |
| 133c0 | 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 |
| 133e0 | 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 |
| 13400 | 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 22 | -kw">var</span>.x:.<span.class=" |
| 13420 | 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 20 3d 20 3c | tok-type">i32</span>;......x.=.< |
| 13440 | 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> |
| 13460 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 | ;.}</code></pre></figure><figure |
| 13480 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 | ><figcaption.class="shell-cap">S |
| 134a0 | 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b | hell</figcaption><pre><samp>$.<k |
| 134c0 | 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 76 61 72 5f 6d 75 73 74 5f 62 65 5f 69 6e 69 | bd>zig.build-exe.var_must_be_ini |
| 134e0 | 74 69 61 6c 69 7a 65 64 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | tialized.zig</kbd>.<span.class=" |
| 13500 | 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c | sgr-1m">/home/andy/dev/zig/doc/l |
| 13520 | 61 6e 67 72 65 66 2f 76 61 72 5f 6d 75 73 74 5f 62 65 5f 69 6e 69 74 69 61 6c 69 7a 65 64 2e 7a | angref/var_must_be_initialized.z |
| 13540 | 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 3d 22 73 67 72 | ig:2:15:.</span><span.class="sgr |
| 13560 | 2d 33 31 6d 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 | -31m">error:.</span><span.class= |
| 13580 | 22 73 67 72 2d 31 6d 22 3e 65 78 70 65 63 74 65 64 20 27 3d 27 2c 20 66 6f 75 6e 64 20 27 3b 27 | "sgr-1m">expected.'=',.found.';' |
| 135a0 | 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 76 61 72 20 78 3a 20 69 33 32 3b 0a 20 20 20 20 20 20 20 20 | .</span>....var.x:.i32;......... |
| 135c0 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 0a 3c 2f | ......<span.class="sgr-32m">^.</ |
| 135e0 | 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 | span>.</samp></pre></figure>.... |
| 13600 | 20 20 20 20 3c 68 34 20 69 64 3d 22 75 6e 64 65 66 69 6e 65 64 22 3e 3c 61 20 68 72 65 66 3d 22 | ....<h4.id="undefined"><a.href=" |
| 13620 | 23 74 6f 63 2d 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 20 3c 61 | #toc-undefined">undefined</a>.<a |
| 13640 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e c2 | .class="hdr".href="#undefined">. |
| 13660 | a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 55 73 65 20 3c 63 6f 64 65 3e 3c | .</a></h4>........<p>Use.<code>< |
| 13680 | 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< |
| 136a0 | 2f 73 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 | /span></code>.to.leave.variables |
| 136c0 | 20 75 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 66 69 67 75 72 | .uninitialized:</p>.......<figur |
| 136e0 | 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 | e><figcaption.class="zig-cap"><c |
| 13700 | 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 61 73 73 69 67 6e 5f 75 6e 64 65 66 69 6e 65 | ite.class="file">assign_undefine |
| 13720 | 64 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 | d.zig</cite></figcaption><pre><c |
| 13740 | 6f 64 65 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 | ode><span.class="tok-kw">const</ |
| 13760 | 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 62 | span>.print.=.<span.class="tok-b |
| 13780 | 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 |
| 137a0 | 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 |
| 137c0 | 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 22 | an>).debug.print;..<span.class=" |
| 137e0 | 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=" |
| 13800 | 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 |
| 13820 | 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 |
| 13840 | 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 |
| 13860 | 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: |
| 13880 | 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 |
| 138a0 | 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 |
| 138c0 | 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 63 6c 61 73 | fined</span>;.....x.=.<span.clas |
| 138e0 | 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 70 72 69 | s="tok-number">1</span>;.....pri |
| 13900 | 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 7b | nt(<span.class="tok-str">"{ |
| 13920 | 64 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 78 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e | d}"</span>,..{x});.}</code> |
| 13940 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | </pre></figure><figure><figcapti |
| 13960 | 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 | on.class="shell-cap">Shell</figc |
| 13980 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 | aption><pre><samp>$.<kbd>zig.bui |
| 139a0 | 6c 64 2d 65 78 65 20 61 73 73 69 67 6e 5f 75 6e 64 65 66 69 6e 65 64 2e 7a 69 67 3c 2f 6b 62 64 | ld-exe.assign_undefined.zig</kbd |
| 139c0 | 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 61 73 73 69 67 6e 5f 75 6e 64 65 66 69 6e 65 64 3c 2f 6b 62 64 | >.$.<kbd>./assign_undefined</kbd |
| 139e0 | 3e 0a 31 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 | >.1.</samp></pre></figure>...... |
| 13a00 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ..<p>.......<code><span.class="t |
| 13a20 | 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> |
| 13a40 | 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 22 | .can.be.<a.href="#Type-Coercion" |
| 13a60 | 3e 63 6f 65 72 63 65 64 3c 2f 61 3e 20 74 6f 20 61 6e 79 20 74 79 70 65 2e 0a 20 20 20 20 20 20 | >coerced</a>.to.any.type........ |
| 13a80 | 20 20 20 20 4f 6e 63 65 20 74 68 69 73 20 68 61 70 70 65 6e 73 2c 20 69 74 20 69 73 20 6e 6f 20 | ....Once.this.happens,.it.is.no. |
| 13aa0 | 6c 6f 6e 67 65 72 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 64 65 74 65 63 74 20 74 68 61 74 20 74 | longer.possible.to.detect.that.t |
| 13ac0 | 68 65 20 76 61 6c 75 65 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | he.value.is.<code><span.class="t |
| 13ae0 | 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> |
| 13b00 | 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | ................<code><span.clas |
| 13b20 | 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 3c 2f 63 | s="tok-null">undefined</span></c |
| 13b40 | 6f 64 65 3e 20 6d 65 61 6e 73 20 74 68 65 20 76 61 6c 75 65 20 63 6f 75 6c 64 20 62 65 20 61 6e | ode>.means.the.value.could.be.an |
| 13b60 | 79 74 68 69 6e 67 2c 20 65 76 65 6e 20 73 6f 6d 65 74 68 69 6e 67 20 74 68 61 74 20 69 73 20 6e | ything,.even.something.that.is.n |
| 13b80 | 6f 6e 73 65 6e 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 63 63 6f 72 64 | onsense...................accord |
| 13ba0 | 69 6e 67 20 74 6f 20 74 68 65 20 74 79 70 65 2e 20 54 72 61 6e 73 6c 61 74 65 64 20 69 6e 74 6f | ing.to.the.type..Translated.into |
| 13bc0 | 20 45 6e 67 6c 69 73 68 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .English,.<code><span.class="tok |
| 13be0 | 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 20 6d | -null">undefined</span></code>.m |
| 13c00 | 65 61 6e 73 20 22 4e 6f 74 20 61 20 6d 65 61 6e 69 6e 67 66 75 6c 0a 20 20 20 20 20 20 76 61 6c | eans."Not.a.meaningful.......val |
| 13c20 | 75 65 2e 20 55 73 69 6e 67 20 74 68 69 73 20 76 61 6c 75 65 20 77 6f 75 6c 64 20 62 65 20 61 20 | ue..Using.this.value.would.be.a. |
| 13c40 | 62 75 67 2e 20 54 68 65 20 76 61 6c 75 65 20 77 69 6c 6c 20 62 65 20 75 6e 75 73 65 64 2c 20 6f | bug..The.value.will.be.unused,.o |
| 13c60 | 72 20 6f 76 65 72 77 72 69 74 74 65 6e 20 62 65 66 6f 72 65 20 62 65 69 6e 67 20 75 73 65 64 2e | r.overwritten.before.being.used. |
| 13c80 | 22 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 6e 20 | ".......</p>.......<p>.......In. |
| 13ca0 | 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 6d 6f 64 65 2c | <a.href="#Debug">Debug</a>.mode, |
| 13cc0 | 20 5a 69 67 20 77 72 69 74 65 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .Zig.writes.<code><span.class="t |
| 13ce0 | 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 3e 20 62 79 | ok-number">0xaa</span></code>.by |
| 13d00 | 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 73 20 69 73 | tes.to.undefined.memory..This.is |
| 13d20 | 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 61 6e 64 20 | .to.catch.......bugs.early,.and. |
| 13d40 | 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 6e 65 64 20 | to.help.detect.use.of.undefined. |
| 13d60 | 6d 65 6d 6f 72 79 20 69 6e 20 61 20 64 65 62 75 67 67 65 72 2e 20 48 6f 77 65 76 65 72 2c 20 74 | memory.in.a.debugger..However,.t |
| 13d80 | 68 69 73 20 62 65 68 61 76 69 6f 72 20 69 73 20 6f 6e 6c 79 20 61 6e 0a 20 20 20 20 20 20 69 6d | his.behavior.is.only.an.......im |
| 13da0 | 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 66 65 61 74 75 72 65 2c 20 6e 6f 74 20 61 20 6c 61 6e 67 | plementation.feature,.not.a.lang |
| 13dc0 | 75 61 67 65 20 73 65 6d 61 6e 74 69 63 2c 20 73 6f 20 69 74 20 69 73 20 6e 6f 74 20 67 75 61 72 | uage.semantic,.so.it.is.not.guar |
| 13de0 | 61 6e 74 65 65 64 20 74 6f 20 62 65 20 6f 62 73 65 72 76 61 62 6c 65 20 74 6f 20 63 6f 64 65 2e | anteed.to.be.observable.to.code. |
| 13e00 | 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 34 20 69 64 | .......</p>...............<h4.id |
| 13e20 | 3d 22 44 65 73 74 72 75 63 74 75 72 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 | ="Destructuring"><a.href="#toc-D |
| 13e40 | 65 73 74 72 75 63 74 75 72 69 6e 67 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 3c 2f 61 3e 20 | estructuring">Destructuring</a>. |
| 13e60 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 | <a.class="hdr".href="#Destructur |
| 13e80 | 69 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | ing">..</a></h4>........<p>..... |
| 13ea0 | 20 20 20 20 41 20 64 65 73 74 72 75 63 74 75 72 69 6e 67 20 61 73 73 69 67 6e 6d 65 6e 74 20 63 | ....A.destructuring.assignment.c |
| 13ec0 | 61 6e 20 73 65 70 61 72 61 74 65 20 65 6c 65 6d 65 6e 74 73 20 6f 66 20 69 6e 64 65 78 61 62 6c | an.separate.elements.of.indexabl |
| 13ee0 | 65 20 61 67 67 72 65 67 61 74 65 20 74 79 70 65 73 0a 20 20 20 20 20 20 20 20 28 3c 61 20 68 72 | e.aggregate.types.........(<a.hr |
| 13f00 | 65 66 3d 22 23 54 75 70 6c 65 73 22 3e 54 75 70 6c 65 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 | ef="#Tuples">Tuples</a>,.<a.href |
| 13f20 | 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 | ="#Arrays">Arrays</a>,.<a.href=" |
| 13f40 | 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 29 3a 0a 20 20 20 20 20 20 3c 2f | #Vectors">Vectors</a>):.......</ |
| 13f60 | 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | p>.......<figure><figcaption.cla |
| 13f80 | 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | ss="zig-cap"><cite.class="file"> |
| 13fa0 | 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f 74 6f 5f 65 78 69 73 74 69 6e 67 2e 7a 69 67 3c 2f 63 | destructuring_to_existing.zig</c |
| 13fc0 | 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 | ite></figcaption><pre><code><spa |
| 13fe0 | 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 72 | n.class="tok-kw">const</span>.pr |
| 14000 | 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 3e | int.=.<span.class="tok-builtin"> |
| 14020 | 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- |
| 14040 | 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 62 | str">"std"</span>).deb |
| 14060 | 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 3e | ug.print;..<span.class="tok-kw"> |
| 14080 | 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"> |
| 140a0 | 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 |
| 140c0 | 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 |
| 140e0 | 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 73 | pe">void</span>.{.....<span.clas |
| 14100 | 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 |
| 14120 | 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 |
| 14140 | 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 |
| 14160 | 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 76 | pan>;.....<span.class="tok-kw">v |
| 14180 | 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 79 | ar</span>.y:.<span.class="tok-ty |
| 141a0 | 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 6f | pe">u32</span>.=.<span.class="to |
| 141c0 | 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 20 3c 73 | k-null">undefined</span>;.....<s |
| 141e0 | 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: |
| 14200 | 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 |
| 14220 | 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 |
| 14240 | 66 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 | fined</span>;......<span.class=" |
| 14260 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 75 70 6c 65 20 3d 20 2e 7b 20 | tok-kw">const</span>.tuple.=..{. |
| 14280 | 3c 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 |
| 142a0 | 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 73 | >,.<span.class="tok-number">2</s |
| 142c0 | 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 |
| 142e0 | 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 78 2c 20 79 2c 20 7a 20 3d 20 74 75 70 6c 65 3b | </span>.};......x,.y,.z.=.tuple; |
| 14300 | 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 2d 73 74 72 | ......print(<span.class="tok-str |
| 14320 | 22 3e 26 71 75 6f 74 3b 74 75 70 6c 65 3a 20 78 20 3d 20 7b 7d 2c 20 79 20 3d 20 7b 7d 2c 20 7a | ">"tuple:.x.=.{},.y.=.{},.z |
| 14340 | 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 78 2c 20 79 2c 20 7a 7d | .=.{}\n"</span>,..{x,.y,.z} |
| 14360 | 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 6f 6e | );......<span.class="tok-kw">con |
| 14380 | 73 74 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 61 73 73 | st</span>.array.=.[_]<span.class |
| 143a0 | 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 6c | ="tok-type">u32</span>{.<span.cl |
| 143c0 | 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 61 6e | ass="tok-number">4</span>,.<span |
| 143e0 | 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 3c 73 | .class="tok-number">5</span>,.<s |
| 14400 | 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 3e 20 | pan.class="tok-number">6</span>. |
| 14420 | 7d 3b 0a 0a 20 20 20 20 78 2c 20 79 2c 20 7a 20 3d 20 61 72 72 61 79 3b 0a 0a 20 20 20 20 70 72 | };......x,.y,.z.=.array;......pr |
| 14440 | 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">" |
| 14460 | 61 72 72 61 79 3a 20 78 20 3d 20 7b 7d 2c 20 79 20 3d 20 7b 7d 2c 20 7a 20 3d 20 7b 7d 5c 6e 26 | array:.x.=.{},.y.=.{},.z.=.{}\n& |
| 14480 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 78 2c 20 79 2c 20 7a 7d 29 3b 0a 0a 20 20 20 20 | quot;</span>,..{x,.y,.z});...... |
| 144a0 | 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 |
| 144c0 | 3e 20 76 65 63 74 6f 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | >.vector:.<span.class="tok-built |
| 144e0 | 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | in">@Vector</span>(<span.class=" |
| 14500 | 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 |
| 14520 | 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 3d 20 2e 7b 20 3c 73 | s="tok-type">u32</span>).=..{.<s |
| 14540 | 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 70 61 6e 3e 2c | pan.class="tok-number">7</span>, |
| 14560 | 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 61 | .<span.class="tok-number">8</spa |
| 14580 | 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 39 3c 2f | n>,.<span.class="tok-number">9</ |
| 145a0 | 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 78 2c 20 79 2c 20 7a 20 3d 20 76 65 63 74 6f 72 3b 0a | span>.};......x,.y,.z.=.vector;. |
| 145c0 | 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" |
| 145e0 | 3e 26 71 75 6f 74 3b 76 65 63 74 6f 72 3a 20 78 20 3d 20 7b 7d 2c 20 79 20 3d 20 7b 7d 2c 20 7a | >"vector:.x.=.{},.y.=.{},.z |
| 14600 | 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 78 2c 20 79 2c 20 7a 7d | .=.{}\n"</span>,..{x,.y,.z} |
| 14620 | 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 | );.}</code></pre></figure><figur |
| 14640 | 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e | e><figcaption.class="shell-cap"> |
| 14660 | 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c | Shell</figcaption><pre><samp>$.< |
| 14680 | 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f | kbd>zig.build-exe.destructuring_ |
| 146a0 | 74 6f 5f 65 78 69 73 74 69 6e 67 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 64 | to_existing.zig</kbd>.$.<kbd>./d |
| 146c0 | 65 73 74 72 75 63 74 75 72 69 6e 67 5f 74 6f 5f 65 78 69 73 74 69 6e 67 3c 2f 6b 62 64 3e 0a 74 | estructuring_to_existing</kbd>.t |
| 146e0 | 75 70 6c 65 3a 20 78 20 3d 20 31 2c 20 79 20 3d 20 32 2c 20 7a 20 3d 20 33 0a 61 72 72 61 79 3a | uple:.x.=.1,.y.=.2,.z.=.3.array: |
| 14700 | 20 78 20 3d 20 34 2c 20 79 20 3d 20 35 2c 20 7a 20 3d 20 36 0a 76 65 63 74 6f 72 3a 20 78 20 3d | .x.=.4,.y.=.5,.z.=.6.vector:.x.= |
| 14720 | 20 37 2c 20 79 20 3d 20 38 2c 20 7a 20 3d 20 39 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f | .7,.y.=.8,.z.=.9.</samp></pre></ |
| 14740 | 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 41 20 64 65 73 | figure>........<p>.........A.des |
| 14760 | 74 72 75 63 74 75 72 69 6e 67 20 65 78 70 72 65 73 73 69 6f 6e 20 6d 61 79 20 6f 6e 6c 79 20 61 | tructuring.expression.may.only.a |
| 14780 | 70 70 65 61 72 20 77 69 74 68 69 6e 20 61 20 62 6c 6f 63 6b 20 28 69 2e 65 2e 20 6e 6f 74 20 61 | ppear.within.a.block.(i.e..not.a |
| 147a0 | 74 20 63 6f 6e 74 61 69 6e 65 72 20 73 63 6f 70 65 29 2e 0a 20 20 20 20 20 20 20 20 54 68 65 20 | t.container.scope)..........The. |
| 147c0 | 6c 65 66 74 20 68 61 6e 64 20 73 69 64 65 20 6f 66 20 74 68 65 20 61 73 73 69 67 6e 6d 65 6e 74 | left.hand.side.of.the.assignment |
| 147e0 | 20 6d 75 73 74 20 63 6f 6e 73 69 73 74 20 6f 66 20 61 20 63 6f 6d 6d 61 20 73 65 70 61 72 61 74 | .must.consist.of.a.comma.separat |
| 14800 | 65 64 20 6c 69 73 74 2c 0a 20 20 20 20 20 20 20 20 65 61 63 68 20 65 6c 65 6d 65 6e 74 20 6f 66 | ed.list,.........each.element.of |
| 14820 | 20 77 68 69 63 68 20 6d 61 79 20 62 65 20 65 69 74 68 65 72 20 61 6e 20 6c 76 61 6c 75 65 20 28 | .which.may.be.either.an.lvalue.( |
| 14840 | 66 6f 72 20 69 6e 73 74 61 6e 63 65 2c 20 61 6e 20 65 78 69 73 74 69 6e 67 20 60 76 61 72 60 29 | for.instance,.an.existing.`var`) |
| 14860 | 20 6f 72 20 61 20 76 61 72 69 61 62 6c 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 3a 0a 20 20 20 20 | .or.a.variable.declaration:..... |
| 14880 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e | ..</p>.......<figure><figcaption |
| 148a0 | 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 | .class="zig-cap"><cite.class="fi |
| 148c0 | 6c 65 22 3e 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f 6d 69 78 65 64 2e 7a 69 67 3c 2f 63 69 74 | le">destructuring_mixed.zig</cit |
| 148e0 | 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | e></figcaption><pre><code><span. |
| 14900 | 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 72 69 6e | class="tok-kw">const</span>.prin |
| 14920 | 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 |
| 14940 | 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 |
| 14960 | 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 |
| 14980 | 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 3e 70 75 | .print;..<span.class="tok-kw">pu |
| 149a0 | 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 |
| 149c0 | 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 |
| 149e0 | 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 |
| 14a00 | 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= |
| 14a20 | 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 |
| 14a40 | 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 |
| 14a60 | 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 61 | .class="tok-null">undefined</spa |
| 14a80 | 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 63 6f | n>;......<span.class="tok-kw">co |
| 14aa0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 75 70 6c 65 20 3d 20 2e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 | nst</span>.tuple.=..{.<span.clas |
| 14ac0 | 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 |
| 14ae0 | 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 |
| 14b00 | 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 20 7d 3b | n.class="tok-number">3</span>.}; |
| 14b20 | 0a 0a 20 20 20 20 78 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 | ......x,.<span.class="tok-kw">va |
| 14b40 | 72 3c 2f 73 70 61 6e 3e 20 79 20 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | r</span>.y.:.<span.class="tok-ty |
| 14b60 | 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 |
| 14b80 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 7a 20 3d 20 74 75 70 6c 65 3b 0a 0a 20 20 | -kw">const</span>.z.=.tuple;.... |
| 14ba0 | 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 |
| 14bc0 | 75 6f 74 3b 78 20 3d 20 7b 7d 2c 20 79 20 3d 20 7b 7d 2c 20 7a 20 3d 20 7b 7d 5c 6e 26 71 75 6f | uot;x.=.{},.y.=.{},.z.=.{}\n&quo |
| 14be0 | 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 78 2c 20 79 2c 20 7a 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 | t;</span>,..{x,.y,.z});......<sp |
| 14c00 | 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 79 20 69 73 20 6d | an.class="tok-comment">//.y.is.m |
| 14c20 | 75 74 61 62 6c 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | utable</span>.....y.=.<span.clas |
| 14c40 | 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 3b 0a 0a 20 20 20 20 | s="tok-number">100</span>;...... |
| 14c60 | 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 59 6f 75 | <span.class="tok-comment">//.You |
| 14c80 | 20 63 61 6e 20 75 73 65 20 5f 20 74 6f 20 74 68 72 6f 77 20 61 77 61 79 20 75 6e 77 61 6e 74 65 | .can.use._.to.throw.away.unwante |
| 14ca0 | 64 20 76 61 6c 75 65 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 2c 20 78 2c 20 5f 20 3d 20 74 | d.values.</span>....._,.x,._.=.t |
| 14cc0 | 75 70 6c 65 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 | uple;......print(<span.class="to |
| 14ce0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 78 20 3d 20 7b 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | k-str">"x.=.{}"</span> |
| 14d00 | 2c 20 2e 7b 78 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | ,..{x});.}</code></pre></figure> |
| 14d20 | 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | <figure><figcaption.class="shell |
| 14d40 | 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 | -cap">Shell</figcaption><pre><sa |
| 14d60 | 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 64 65 73 74 72 75 63 74 | mp>$.<kbd>zig.build-exe.destruct |
| 14d80 | 75 72 69 6e 67 5f 6d 69 78 65 64 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 64 | uring_mixed.zig</kbd>.$.<kbd>./d |
| 14da0 | 65 73 74 72 75 63 74 75 72 69 6e 67 5f 6d 69 78 65 64 3c 2f 6b 62 64 3e 0a 78 20 3d 20 31 2c 20 | estructuring_mixed</kbd>.x.=.1,. |
| 14dc0 | 79 20 3d 20 32 2c 20 7a 20 3d 20 33 0a 78 20 3d 20 32 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e | y.=.2,.z.=.3.x.=.2.</samp></pre> |
| 14de0 | 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 41 20 64 | </figure>........<p>.........A.d |
| 14e00 | 65 73 74 72 75 63 74 75 72 65 20 6d 61 79 20 62 65 20 70 72 65 66 69 78 65 64 20 77 69 74 68 20 | estructure.may.be.prefixed.with. |
| 14e20 | 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | the.<code><span.class="tok-kw">c |
| 14e40 | 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 64 2c 20 69 | omptime</span></code>.keyword,.i |
| 14e60 | 6e 20 77 68 69 63 68 20 63 61 73 65 20 74 68 65 20 65 6e 74 69 72 65 0a 20 20 20 20 20 20 20 20 | n.which.case.the.entire......... |
| 14e80 | 64 65 73 74 72 75 63 74 75 72 65 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 65 76 61 6c 75 61 | destructure.expression.is.evalua |
| 14ea0 | 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 63 6f 6d 70 74 | ted.at.<a.href="#comptime">compt |
| 14ec0 | 69 6d 65 3c 2f 61 3e 2e 20 41 6c 6c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ime</a>..All.<code><span.class=" |
| 14ee0 | 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 73 20 64 65 63 6c 61 | tok-kw">var</span></code>s.decla |
| 14f00 | 72 65 64 20 77 6f 75 6c 64 0a 20 20 20 20 20 20 20 20 62 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | red.would.........be.<code><span |
| 14f20 | 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>. |
| 14f40 | 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 3c | <span.class="tok-kw">var</span>< |
| 14f60 | 2f 63 6f 64 65 3e 73 20 61 6e 64 20 61 6c 6c 20 65 78 70 72 65 73 73 69 6f 6e 73 20 28 62 6f 74 | /code>s.and.all.expressions.(bot |
| 14f80 | 68 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 73 20 61 6e 64 20 74 68 65 20 61 73 73 69 67 | h.result.locations.and.the.assig |
| 14fa0 | 6e 65 65 0a 20 20 20 20 20 20 20 20 65 78 70 72 65 73 73 69 6f 6e 29 20 61 72 65 20 65 76 61 6c | nee.........expression).are.eval |
| 14fc0 | 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 63 6f 6d | uated.at.<a.href="#comptime">com |
| 14fe0 | 70 74 69 6d 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | ptime</a>........</p>........<p> |
| 15000 | 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="# |
| 15020 | 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 54 75 70 6c 65 73 22 3e 44 65 73 74 72 75 63 74 75 72 | Destructuring-Tuples">Destructur |
| 15040 | 69 6e 67 20 54 75 70 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 | ing.Tuples</a></li>.<li><a.href= |
| 15060 | 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 41 72 72 61 79 73 22 3e 44 65 73 74 72 75 63 74 | "#Destructuring-Arrays">Destruct |
| 15080 | 75 72 69 6e 67 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 | uring.Arrays</a></li>.<li><a.hre |
| 150a0 | 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 56 65 63 74 6f 72 73 22 3e 44 65 73 74 72 | f="#Destructuring-Vectors">Destr |
| 150c0 | 75 63 74 75 72 69 6e 67 20 56 65 63 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a | ucturing.Vectors</a></li>.</ul>. |
| 150e0 | 0a 20 20 20 20 20 20 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 | ............................<h2. |
| 15100 | 69 64 3d 22 5a 69 67 2d 54 65 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 5a 69 67 2d | id="Zig-Test"><a.href="#toc-Zig- |
| 15120 | 54 65 73 74 22 3e 5a 69 67 20 54 65 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | Test">Zig.Test</a>.<a.class="hdr |
| 15140 | 22 20 68 72 65 66 3d 22 23 5a 69 67 2d 54 65 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a | ".href="#Zig-Test">..</a></h2>.. |
| 15160 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 43 6f 64 65 20 77 72 69 74 74 65 6e 20 77 | ......<p>.........Code.written.w |
| 15180 | 69 74 68 69 6e 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | ithin.one.or.more.<code><span.cl |
| 151a0 | 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 6f 64 65 3e 20 | ass="tok-kw">test</span></code>. |
| 151c0 | 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 65 6e 73 75 | declarations.can.be.used.to.ensu |
| 151e0 | 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 6f 6e 73 3a 0a | re.behavior.meets.expectations:. |
| 15200 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | ......</p>.......<figure><figcap |
| 15220 | 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 | tion.class="zig-cap"><cite.class |
| 15240 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 69 6e 67 5f 69 6e 74 72 6f 64 75 63 74 69 6f 6e 2e 7a 69 67 | ="file">testing_introduction.zig |
| 15260 | 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | </cite></figcaption><pre><code>< |
| 15280 | 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> |
| 152a0 | 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" |
| 152c0 | 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 |
| 152e0 | 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 0a | -str">"std"</span>);.. |
| 15300 | 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> |
| 15320 | 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 78 70 | .<span.class="tok-str">"exp |
| 15340 | 65 63 74 20 61 64 64 4f 6e 65 20 61 64 64 73 20 6f 6e 65 20 74 6f 20 34 31 26 71 75 6f 74 3b 3c | ect.addOne.adds.one.to.41"< |
| 15360 | 2f 73 70 61 6e 3e 20 7b 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 |
| 15380 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 | omment">//.The.Standard.Library. |
| 153a0 | 63 6f 6e 74 61 69 6e 73 20 75 73 65 66 75 6c 20 66 75 6e 63 74 69 6f 6e 73 20 74 6f 20 68 65 6c | contains.useful.functions.to.hel |
| 153c0 | 70 20 63 72 65 61 74 65 20 74 65 73 74 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | p.create.tests.</span>.....<span |
| 153e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 60 65 78 70 65 63 74 60 | .class="tok-comment">//.`expect` |
| 15400 | 20 69 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 76 65 72 69 66 69 65 73 20 69 74 73 | .is.a.function.that.verifies.its |
| 15420 | 20 61 72 67 75 6d 65 6e 74 20 69 73 20 74 72 75 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | .argument.is.true.</span>.....<s |
| 15440 | 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 74 20 77 69 | pan.class="tok-comment">//.It.wi |
| 15460 | 6c 6c 20 72 65 74 75 72 6e 20 61 6e 20 65 72 72 6f 72 20 69 66 20 69 74 73 20 61 72 67 75 6d 65 | ll.return.an.error.if.its.argume |
| 15480 | 6e 74 20 69 73 20 66 61 6c 73 65 20 74 6f 20 69 6e 64 69 63 61 74 65 20 61 20 66 61 69 6c 75 72 | nt.is.false.to.indicate.a.failur |
| 154a0 | 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 63 | e.</span>.....<span.class="tok-c |
| 154c0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 60 74 72 79 60 20 69 73 20 75 73 65 64 20 74 6f 20 72 65 74 75 | omment">//.`try`.is.used.to.retu |
| 154e0 | 72 6e 20 61 6e 20 65 72 72 6f 72 20 74 6f 20 74 68 65 20 74 65 73 74 20 72 75 6e 6e 65 72 20 74 | rn.an.error.to.the.test.runner.t |
| 15500 | 6f 20 6e 6f 74 69 66 79 20 69 74 20 74 68 61 74 20 74 68 65 20 74 65 73 74 20 66 61 69 6c 65 64 | o.notify.it.that.the.test.failed |
| 15520 | 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 |
| 15540 | 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 65 63 74 28 | ">try</span>.std.testing.expect( |
| 15560 | 61 64 64 4f 6e 65 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 | addOne(<span.class="tok-number"> |
| 15580 | 34 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 | 41</span>).==.<span.class="tok-n |
| 155a0 | 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | umber">42</span>);.}..<span.clas |
| 155c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 61 64 64 4f 6e 65 20 7b 0a | s="tok-kw">test</span>.addOne.{. |
| 155e0 | 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">// |
| 15600 | 20 41 20 74 65 73 74 20 6e 61 6d 65 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 77 72 69 74 74 65 6e | .A.test.name.can.also.be.written |
| 15620 | 20 75 73 69 6e 67 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | .using.an.identifier.</span>.... |
| 15640 | 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 68 | .<span.class="tok-comment">//.Th |
| 15660 | 69 73 20 69 73 20 61 20 64 6f 63 74 65 73 74 2c 20 61 6e 64 20 73 65 72 76 65 73 20 61 73 20 64 | is.is.a.doctest,.and.serves.as.d |
| 15680 | 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 60 61 64 64 4f 6e 65 60 2e 3c 2f 73 70 61 6e | ocumentation.for.`addOne`.</span |
| 156a0 | 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 79 3c 2f | >.....<span.class="tok-kw">try</ |
| 156c0 | 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 61 64 64 4f 6e 65 28 | span>.std.testing.expect(addOne( |
| 156e0 | 3c 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 31 3c 2f 73 70 61 | <span.class="tok-number">41</spa |
| 15700 | 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 72 22 3e | n>).==.<span.class="tok-number"> |
| 15720 | 34 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 | 42</span>);.}..<span.class="tok- |
| 15740 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 54 68 65 20 66 75 6e 63 74 69 6f 6e 20 60 61 64 64 4f 6e | comment">///.The.function.`addOn |
| 15760 | 65 60 20 61 64 64 73 20 6f 6e 65 20 74 6f 20 74 68 65 20 6e 75 6d 62 65 72 20 67 69 76 65 6e 20 | e`.adds.one.to.the.number.given. |
| 15780 | 61 73 20 69 74 73 20 61 72 67 75 6d 65 6e 74 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | as.its.argument.</span>.<span.cl |
| 157a0 | 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 |
| 157c0 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 4f 6e 65 3c 2f 73 70 61 6e 3e 28 6e 75 6d 62 65 72 | ss="tok-fn">addOne</span>(number |
| 157e0 | 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 |
| 15800 | 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< |
| 15820 | 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 |
| 15840 | 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 2b 20 3c 73 70 61 6e 20 63 | ">return</span>.number.+.<span.c |
| 15860 | 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 2f 63 | lass="tok-number">1</span>;.}</c |
| 15880 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | ode></pre></figure><figure><figc |
| 158a0 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f | aption.class="shell-cap">Shell</ |
| 158c0 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 | figcaption><pre><samp>$.<kbd>zig |
| 158e0 | 20 74 65 73 74 20 74 65 73 74 69 6e 67 5f 69 6e 74 72 6f 64 75 63 74 69 6f 6e 2e 7a 69 67 3c 2f | .test.testing_introduction.zig</ |
| 15900 | 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 69 6e 67 5f 69 6e 74 72 6f 64 75 63 74 69 6f 6e 2e 74 65 | kbd>.1/2.testing_introduction.te |
| 15920 | 73 74 2e 65 78 70 65 63 74 20 61 64 64 4f 6e 65 20 61 64 64 73 20 6f 6e 65 20 74 6f 20 34 31 2e | st.expect.addOne.adds.one.to.41. |
| 15940 | 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 69 6e 67 5f 69 6e 74 72 6f 64 75 63 74 69 6f 6e 2e 64 65 | ..OK.2/2.testing_introduction.de |
| 15960 | 63 6c 74 65 73 74 2e 61 64 64 4f 6e 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 | cltest.addOne...OK.All.2.tests.p |
| 15980 | 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 | assed..</samp></pre></figure>... |
| 159a0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 | .....<p>.........The.<code.class |
| 159c0 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 69 6e 67 5f 69 6e 74 72 6f 64 75 63 74 69 6f 6e 2e 7a 69 67 | ="file">testing_introduction.zig |
| 159e0 | 3c 2f 63 6f 64 65 3e 20 63 6f 64 65 20 73 61 6d 70 6c 65 20 74 65 73 74 73 20 74 68 65 20 3c 61 | </code>.code.sample.tests.the.<a |
| 15a00 | 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 73 22 3e 66 75 6e 63 74 69 6f 6e 3c 2f 61 3e 0a | .href="#Functions">function</a>. |
| 15a20 | 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 61 64 64 4f 6e 65 3c 2f 63 6f 64 65 3e 20 74 6f 20 65 | ........<code>addOne</code>.to.e |
| 15a40 | 6e 73 75 72 65 20 74 68 61 74 20 69 74 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 3e 3c 73 70 61 | nsure.that.it.returns.<code><spa |
| 15a60 | 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 3c 2f | n.class="tok-number">42</span></ |
| 15a80 | 63 6f 64 65 3e 20 67 69 76 65 6e 20 74 68 65 20 69 6e 70 75 74 0a 20 20 20 20 20 20 20 20 3c 63 | code>.given.the.input.........<c |
| 15aa0 | 6f 64 65 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 34 31 3c | ode><span.class="tok-number">41< |
| 15ac0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 46 72 6f 6d 20 74 68 69 73 20 74 65 73 74 27 73 20 | /span></code>..From.this.test's. |
| 15ae0 | 70 65 72 73 70 65 63 74 69 76 65 2c 20 74 68 65 20 3c 63 6f 64 65 3e 61 64 64 4f 6e 65 3c 2f 63 | perspective,.the.<code>addOne</c |
| 15b00 | 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 69 73 0a 20 20 20 20 20 20 20 20 73 61 69 64 20 74 6f | ode>.function.is.........said.to |
| 15b20 | 20 62 65 20 3c 65 6d 3e 63 6f 64 65 20 75 6e 64 65 72 20 74 65 73 74 3c 2f 65 6d 3e 2e 0a 20 20 | .be.<em>code.under.test</em>.... |
| 15b40 | 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 3c 6b 62 64 3e | ....</p>.......<p>.........<kbd> |
| 15b60 | 7a 69 67 20 74 65 73 74 3c 2f 6b 62 64 3e 20 69 73 20 61 20 74 6f 6f 6c 20 74 68 61 74 20 63 72 | zig.test</kbd>.is.a.tool.that.cr |
| 15b80 | 65 61 74 65 73 20 61 6e 64 20 72 75 6e 73 20 61 20 74 65 73 74 20 62 75 69 6c 64 2e 20 42 79 20 | eates.and.runs.a.test.build..By. |
| 15ba0 | 64 65 66 61 75 6c 74 2c 20 69 74 20 62 75 69 6c 64 73 20 61 6e 64 20 72 75 6e 73 20 61 6e 0a 20 | default,.it.builds.and.runs.an.. |
| 15bc0 | 20 20 20 20 20 20 20 65 78 65 63 75 74 61 62 6c 65 20 70 72 6f 67 72 61 6d 20 75 73 69 6e 67 20 | .......executable.program.using. |
| 15be0 | 74 68 65 20 3c 65 6d 3e 64 65 66 61 75 6c 74 20 74 65 73 74 20 72 75 6e 6e 65 72 3c 2f 65 6d 3e | the.<em>default.test.runner</em> |
| 15c00 | 20 70 72 6f 76 69 64 65 64 20 62 79 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 53 | .provided.by.the.<a.href="#Zig-S |
| 15c20 | 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 22 3e 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 | tandard-Library">Zig.Standard.Li |
| 15c40 | 62 72 61 72 79 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 61 73 20 69 74 73 20 6d 61 69 6e 20 65 6e | brary</a>.........as.its.main.en |
| 15c60 | 74 72 79 20 70 6f 69 6e 74 2e 20 44 75 72 69 6e 67 20 74 68 65 20 62 75 69 6c 64 2c 20 3c 63 6f | try.point..During.the.build,.<co |
| 15c80 | 64 65 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 | de><span.class="tok-kw">test</sp |
| 15ca0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 66 6f 75 6e 64 20 77 68 | an></code>.declarations.found.wh |
| 15cc0 | 69 6c 65 0a 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 46 69 6c 65 2d 61 6e 64 2d 44 | ile.........<a.href="#File-and-D |
| 15ce0 | 65 63 6c 61 72 61 74 69 6f 6e 2d 44 69 73 63 6f 76 65 72 79 22 3e 72 65 73 6f 6c 76 69 6e 67 3c | eclaration-Discovery">resolving< |
| 15d00 | 2f 61 3e 20 74 68 65 20 67 69 76 65 6e 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 20 61 72 | /a>.the.given.Zig.source.file.ar |
| 15d20 | 65 20 69 6e 63 6c 75 64 65 64 20 66 6f 72 20 74 68 65 20 64 65 66 61 75 6c 74 20 74 65 73 74 20 | e.included.for.the.default.test. |
| 15d40 | 72 75 6e 6e 65 72 0a 20 20 20 20 20 20 20 20 74 6f 20 72 75 6e 20 61 6e 64 20 72 65 70 6f 72 74 | runner.........to.run.and.report |
| 15d60 | 20 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 61 73 69 64 65 3e 0a 20 20 | .on........</p>.......<aside>... |
| 15d80 | 20 20 20 20 20 20 54 68 69 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 64 69 73 63 75 73 73 | ......This.documentation.discuss |
| 15da0 | 65 73 20 74 68 65 20 66 65 61 74 75 72 65 73 20 6f 66 20 74 68 65 20 64 65 66 61 75 6c 74 20 74 | es.the.features.of.the.default.t |
| 15dc0 | 65 73 74 20 72 75 6e 6e 65 72 20 61 73 20 70 72 6f 76 69 64 65 64 20 62 79 20 74 68 65 20 5a 69 | est.runner.as.provided.by.the.Zi |
| 15de0 | 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 2e 0a 20 20 20 20 20 20 20 20 49 74 73 20 | g.Standard.Library..........Its. |
| 15e00 | 73 6f 75 72 63 65 20 63 6f 64 65 20 69 73 20 6c 6f 63 61 74 65 64 20 69 6e 20 3c 63 6f 64 65 20 | source.code.is.located.in.<code. |
| 15e20 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 | class="file">lib/compiler/test_r |
| 15e40 | 75 6e 6e 65 72 2e 7a 69 67 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 61 73 69 64 65 3e | unner.zig</code>........</aside> |
| 15e60 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 68 65 20 73 68 65 6c 6c 20 6f 75 74 | .......<p>.........The.shell.out |
| 15e80 | 70 75 74 20 73 68 6f 77 6e 20 61 62 6f 76 65 20 64 69 73 70 6c 61 79 73 20 74 77 6f 20 6c 69 6e | put.shown.above.displays.two.lin |
| 15ea0 | 65 73 20 61 66 74 65 72 20 74 68 65 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 3c 2f 6b 62 64 3e | es.after.the.<kbd>zig.test</kbd> |
| 15ec0 | 20 63 6f 6d 6d 61 6e 64 2e 20 54 68 65 73 65 20 6c 69 6e 65 73 20 61 72 65 0a 20 20 20 20 20 20 | .command..These.lines.are....... |
| 15ee0 | 20 20 70 72 69 6e 74 65 64 20 74 6f 20 73 74 61 6e 64 61 72 64 20 65 72 72 6f 72 20 62 79 20 74 | ..printed.to.standard.error.by.t |
| 15f00 | 68 65 20 64 65 66 61 75 6c 74 20 74 65 73 74 20 72 75 6e 6e 65 72 3a 0a 20 20 20 20 20 20 3c 2f | he.default.test.runner:.......</ |
| 15f20 | 70 3e 0a 20 20 20 20 20 20 3c 64 6c 3e 0a 20 20 20 20 20 20 20 20 3c 64 74 3e 3c 73 61 6d 70 3e | p>.......<dl>.........<dt><samp> |
| 15f40 | 31 2f 32 20 74 65 73 74 69 6e 67 5f 69 6e 74 72 6f 64 75 63 74 69 6f 6e 2e 74 65 73 74 2e 65 78 | 1/2.testing_introduction.test.ex |
| 15f60 | 70 65 63 74 20 61 64 64 4f 6e 65 20 61 64 64 73 20 6f 6e 65 20 74 6f 20 34 31 2e 2e 2e 3c 2f 73 | pect.addOne.adds.one.to.41...</s |
| 15f80 | 61 6d 70 3e 3c 2f 64 74 3e 0a 20 20 20 20 20 20 20 20 3c 64 64 3e 4c 69 6e 65 73 20 6c 69 6b 65 | amp></dt>.........<dd>Lines.like |
| 15fa0 | 20 74 68 69 73 20 69 6e 64 69 63 61 74 65 20 77 68 69 63 68 20 74 65 73 74 2c 20 6f 75 74 20 6f | .this.indicate.which.test,.out.o |
| 15fc0 | 66 20 74 68 65 20 74 6f 74 61 6c 20 6e 75 6d 62 65 72 20 6f 66 20 74 65 73 74 73 2c 20 69 73 20 | f.the.total.number.of.tests,.is. |
| 15fe0 | 62 65 69 6e 67 20 72 75 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 63 61 73 | being.run............In.this.cas |
| 16000 | 65 2c 20 3c 73 61 6d 70 3e 31 2f 32 3c 2f 73 61 6d 70 3e 20 69 6e 64 69 63 61 74 65 73 20 74 68 | e,.<samp>1/2</samp>.indicates.th |
| 16020 | 61 74 20 74 68 65 20 66 69 72 73 74 20 74 65 73 74 2c 20 6f 75 74 20 6f 66 20 61 20 74 6f 74 61 | at.the.first.test,.out.of.a.tota |
| 16040 | 6c 20 6f 66 20 74 77 6f 20 74 65 73 74 73 2c 0a 20 20 20 20 20 20 20 20 20 20 69 73 20 62 65 69 | l.of.two.tests,...........is.bei |
| 16060 | 6e 67 20 72 75 6e 2e 20 4e 6f 74 65 20 74 68 61 74 2c 20 77 68 65 6e 20 74 68 65 20 74 65 73 74 | ng.run..Note.that,.when.the.test |
| 16080 | 20 72 75 6e 6e 65 72 20 70 72 6f 67 72 61 6d 27 73 20 73 74 61 6e 64 61 72 64 20 65 72 72 6f 72 | .runner.program's.standard.error |
| 160a0 | 20 69 73 20 6f 75 74 70 75 74 0a 20 20 20 20 20 20 20 20 20 20 74 6f 20 74 68 65 20 74 65 72 6d | .is.output...........to.the.term |
| 160c0 | 69 6e 61 6c 2c 20 74 68 65 73 65 20 6c 69 6e 65 73 20 61 72 65 20 63 6c 65 61 72 65 64 20 77 68 | inal,.these.lines.are.cleared.wh |
| 160e0 | 65 6e 20 61 20 74 65 73 74 20 73 75 63 63 65 65 64 73 2e 0a 20 20 20 20 20 20 20 20 3c 2f 64 64 | en.a.test.succeeds..........</dd |
| 16100 | 3e 0a 20 20 20 20 20 20 20 20 3c 64 74 3e 3c 73 61 6d 70 3e 32 2f 32 20 74 65 73 74 69 6e 67 5f | >.........<dt><samp>2/2.testing_ |
| 16120 | 69 6e 74 72 6f 64 75 63 74 69 6f 6e 2e 64 65 63 6c 74 65 73 74 2e 61 64 64 4f 6e 65 2e 2e 2e 3c | introduction.decltest.addOne...< |
| 16140 | 2f 73 61 6d 70 3e 3c 2f 64 74 3e 0a 20 20 20 20 20 20 20 20 3c 64 64 3e 57 68 65 6e 20 74 68 65 | /samp></dt>.........<dd>When.the |
| 16160 | 20 74 65 73 74 20 6e 61 6d 65 20 69 73 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 2c 20 74 68 65 | .test.name.is.an.identifier,.the |
| 16180 | 20 64 65 66 61 75 6c 74 20 74 65 73 74 20 72 75 6e 6e 65 72 20 75 73 65 73 20 74 68 65 20 74 65 | .default.test.runner.uses.the.te |
| 161a0 | 78 74 0a 20 20 20 20 20 20 20 20 20 20 64 65 63 6c 74 65 73 74 20 69 6e 73 74 65 61 64 20 6f 66 | xt...........decltest.instead.of |
| 161c0 | 20 74 65 73 74 2e 0a 20 20 20 20 20 20 20 20 3c 2f 64 64 3e 0a 20 20 20 20 20 20 20 20 3c 64 74 | .test..........</dd>.........<dt |
| 161e0 | 3e 3c 73 61 6d 70 3e 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 3c 2f 73 61 6d 70 | ><samp>All.2.tests.passed.</samp |
| 16200 | 3e 3c 2f 64 74 3e 0a 20 20 20 20 20 20 20 20 3c 64 64 3e 54 68 69 73 20 6c 69 6e 65 20 69 6e 64 | ></dt>.........<dd>This.line.ind |
| 16220 | 69 63 61 74 65 73 20 74 68 65 20 74 6f 74 61 6c 20 6e 75 6d 62 65 72 20 6f 66 20 74 65 73 74 73 | icates.the.total.number.of.tests |
| 16240 | 20 74 68 61 74 20 68 61 76 65 20 70 61 73 73 65 64 2e 3c 2f 64 64 3e 0a 20 20 20 20 20 20 3c 2f | .that.have.passed.</dd>.......</ |
| 16260 | 64 6c 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 65 73 74 2d 44 65 63 6c 61 72 61 74 69 | dl>.......<h3.id="Test-Declarati |
| 16280 | 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 65 73 74 2d 44 65 63 6c 61 72 61 74 | ons"><a.href="#toc-Test-Declarat |
| 162a0 | 69 6f 6e 73 22 3e 54 65 73 74 20 44 65 63 6c 61 72 61 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 | ions">Test.Declarations</a>.<a.c |
| 162c0 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 65 73 74 2d 44 65 63 6c 61 72 61 74 69 | lass="hdr".href="#Test-Declarati |
| 162e0 | 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 20 20 20 20 | ons">..</a></h3>........<p>..... |
| 16300 | 20 20 20 20 54 65 73 74 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 63 6f 6e 74 61 69 6e 20 74 68 | ....Test.declarations.contain.th |
| 16320 | 65 20 3c 61 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 6b | e.<a.href="#Keyword-Reference">k |
| 16340 | 65 79 77 6f 72 64 3c 2f 61 3e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | eyword</a>.<code><span.class="to |
| 16360 | 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 66 6f 6c 6c 6f 77 | k-kw">test</span></code>,.follow |
| 16380 | 65 64 20 62 79 20 61 6e 0a 20 20 20 20 20 20 20 20 6f 70 74 69 6f 6e 61 6c 20 6e 61 6d 65 20 77 | ed.by.an.........optional.name.w |
| 163a0 | 72 69 74 74 65 6e 20 61 73 20 61 20 3c 61 20 68 72 65 66 3d 22 23 53 74 72 69 6e 67 2d 4c 69 74 | ritten.as.a.<a.href="#String-Lit |
| 163c0 | 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 |
| 163e0 | 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 20 6f 72 20 61 6e 0a | erals">string.literal</a>.or.an. |
| 16400 | 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 49 64 65 6e 74 69 66 69 65 72 73 22 3e 69 | ........<a.href="#Identifiers">i |
| 16420 | 64 65 6e 74 69 66 69 65 72 3c 2f 61 3e 2c 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 20 3c 61 20 | dentifier</a>,.followed.by.a.<a. |
| 16440 | 68 72 65 66 3d 22 23 42 6c 6f 63 6b 73 22 3e 62 6c 6f 63 6b 3c 2f 61 3e 20 63 6f 6e 74 61 69 6e | href="#Blocks">block</a>.contain |
| 16460 | 69 6e 67 20 61 6e 79 20 76 61 6c 69 64 20 5a 69 67 20 63 6f 64 65 20 74 68 61 74 0a 20 20 20 20 | ing.any.valid.Zig.code.that..... |
| 16480 | 20 20 20 20 69 73 20 61 6c 6c 6f 77 65 64 20 69 6e 20 61 20 3c 61 20 68 72 65 66 3d 22 23 46 75 | ....is.allowed.in.a.<a.href="#Fu |
| 164a0 | 6e 63 74 69 6f 6e 73 22 3e 66 75 6e 63 74 69 6f 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | nctions">function</a>........</p |
| 164c0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 4e 6f 6e 2d 6e 61 6d 65 64 20 74 65 73 74 20 62 6c 6f 63 6b 73 | >.......<p>Non-named.test.blocks |
| 164e0 | 20 61 6c 77 61 79 73 20 72 75 6e 20 64 75 72 69 6e 67 20 74 65 73 74 20 62 75 69 6c 64 73 20 61 | .always.run.during.test.builds.a |
| 16500 | 6e 64 20 61 72 65 20 65 78 65 6d 70 74 20 66 72 6f 6d 0a 20 20 20 20 20 20 20 20 3c 61 20 68 72 | nd.are.exempt.from.........<a.hr |
| 16520 | 65 66 3d 22 23 53 6b 69 70 2d 54 65 73 74 73 22 3e 53 6b 69 70 20 54 65 73 74 73 3c 2f 61 3e 2e | ef="#Skip-Tests">Skip.Tests</a>. |
| 16540 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 65 73 74 20 64 65 63 6c | </p>.......<p>.........Test.decl |
| 16560 | 61 72 61 74 69 6f 6e 73 20 61 72 65 20 73 69 6d 69 6c 61 72 20 74 6f 20 3c 61 20 68 72 65 66 3d | arations.are.similar.to.<a.href= |
| 16580 | 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 3a 20 74 68 65 79 | "#Functions">Functions</a>:.they |
| 165a0 | 20 68 61 76 65 20 61 20 72 65 74 75 72 6e 20 74 79 70 65 20 61 6e 64 20 61 20 62 6c 6f 63 6b 20 | .have.a.return.type.and.a.block. |
| 165c0 | 6f 66 20 63 6f 64 65 2e 20 54 68 65 20 69 6d 70 6c 69 63 69 74 0a 20 20 20 20 20 20 20 20 72 65 | of.code..The.implicit.........re |
| 165e0 | 74 75 72 6e 20 74 79 70 65 20 6f 66 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | turn.type.of.<code><span.class=" |
| 16600 | 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 74 68 | tok-kw">test</span></code>.is.th |
| 16620 | 65 20 3c 61 20 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 | e.<a.href="#Error-Union-Type">Er |
| 16640 | 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ror.Union.Type</a>.<code><span.c |
| 16660 | 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>! |
| 16680 | 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 |
| 166a0 | 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 61 6e 64 20 69 74 20 63 61 6e 6e 6f 74 | n></code>,.........and.it.cannot |
| 166c0 | 20 62 65 20 63 68 61 6e 67 65 64 2e 20 57 68 65 6e 20 61 20 5a 69 67 20 73 6f 75 72 63 65 20 66 | .be.changed..When.a.Zig.source.f |
| 166e0 | 69 6c 65 20 69 73 20 6e 6f 74 20 62 75 69 6c 74 20 75 73 69 6e 67 20 74 68 65 20 3c 6b 62 64 3e | ile.is.not.built.using.the.<kbd> |
| 16700 | 7a 69 67 20 74 65 73 74 3c 2f 6b 62 64 3e 20 74 6f 6f 6c 2c 20 74 68 65 20 74 65 73 74 0a 20 20 | zig.test</kbd>.tool,.the.test... |
| 16720 | 20 20 20 20 20 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 61 72 65 20 6f 6d 69 74 74 65 64 20 66 | ......declarations.are.omitted.f |
| 16740 | 72 6f 6d 20 74 68 65 20 62 75 69 6c 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | rom.the.build........</p>....... |
| 16760 | 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 65 73 74 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 63 61 | <p>.........Test.declarations.ca |
| 16780 | 6e 20 62 65 20 77 72 69 74 74 65 6e 20 69 6e 20 74 68 65 20 73 61 6d 65 20 66 69 6c 65 2c 20 77 | n.be.written.in.the.same.file,.w |
| 167a0 | 68 65 72 65 20 63 6f 64 65 20 75 6e 64 65 72 20 74 65 73 74 20 69 73 20 77 72 69 74 74 65 6e 2c | here.code.under.test.is.written, |
| 167c0 | 20 6f 72 20 69 6e 20 61 20 73 65 70 61 72 61 74 65 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c | .or.in.a.separate.Zig.source.fil |
| 167e0 | 65 2e 0a 20 20 20 20 20 20 20 20 53 69 6e 63 65 20 74 65 73 74 20 64 65 63 6c 61 72 61 74 69 6f | e..........Since.test.declaratio |
| 16800 | 6e 73 20 61 72 65 20 74 6f 70 2d 6c 65 76 65 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2c 20 74 | ns.are.top-level.declarations,.t |
| 16820 | 68 65 79 20 61 72 65 20 6f 72 64 65 72 2d 69 6e 64 65 70 65 6e 64 65 6e 74 20 61 6e 64 20 63 61 | hey.are.order-independent.and.ca |
| 16840 | 6e 0a 20 20 20 20 20 20 20 20 62 65 20 77 72 69 74 74 65 6e 20 62 65 66 6f 72 65 20 6f 72 20 61 | n.........be.written.before.or.a |
| 16860 | 66 74 65 72 20 74 68 65 20 63 6f 64 65 20 75 6e 64 65 72 20 74 65 73 74 2e 0a 20 20 20 20 20 20 | fter.the.code.under.test........ |
| 16880 | 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>. |
| 168a0 | 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 |
| 168c0 | 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 |
| 168e0 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 47 72 61 6d 6d 61 72 22 3e 47 72 61 6d 6d 61 72 | >.<li><a.href="#Grammar">Grammar |
| 16900 | 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 34 20 69 64 3d 22 44 | </a></li>.</ul>........<h4.id="D |
| 16920 | 6f 63 74 65 73 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 6f 63 74 65 73 74 73 22 | octests"><a.href="#toc-Doctests" |
| 16940 | 3e 44 6f 63 74 65 73 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 | >Doctests</a>.<a.class="hdr".hre |
| 16960 | 66 3d 22 23 44 6f 63 74 65 73 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 | f="#Doctests">..</a></h4>....... |
| 16980 | 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 65 73 74 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 6e | .<p>.........Test.declarations.n |
| 169a0 | 61 6d 65 64 20 75 73 69 6e 67 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 20 61 72 65 20 3c 65 6d | amed.using.an.identifier.are.<em |
| 169c0 | 3e 64 6f 63 74 65 73 74 73 3c 2f 65 6d 3e 2e 20 54 68 65 20 69 64 65 6e 74 69 66 69 65 72 20 6d | >doctests</em>..The.identifier.m |
| 169e0 | 75 73 74 20 72 65 66 65 72 20 74 6f 20 61 6e 6f 74 68 65 72 20 64 65 63 6c 61 72 61 74 69 6f 6e | ust.refer.to.another.declaration |
| 16a00 | 20 69 6e 0a 20 20 20 20 20 20 20 20 73 63 6f 70 65 2e 20 41 20 64 6f 63 74 65 73 74 2c 20 6c 69 | .in.........scope..A.doctest,.li |
| 16a20 | 6b 65 20 61 20 3c 61 20 68 72 65 66 3d 22 23 44 6f 63 2d 43 6f 6d 6d 65 6e 74 73 22 3e 64 6f 63 | ke.a.<a.href="#Doc-Comments">doc |
| 16a40 | 20 63 6f 6d 6d 65 6e 74 3c 2f 61 3e 2c 20 73 65 72 76 65 73 20 61 73 20 64 6f 63 75 6d 65 6e 74 | .comment</a>,.serves.as.document |
| 16a60 | 61 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 61 73 73 6f 63 69 61 74 65 64 20 64 65 63 6c 61 72 61 | ation.for.the.associated.declara |
| 16a80 | 74 69 6f 6e 2c 20 61 6e 64 0a 20 20 20 20 20 20 20 20 77 69 6c 6c 20 61 70 70 65 61 72 20 69 6e | tion,.and.........will.appear.in |
| 16aa0 | 20 74 68 65 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 66 6f 72 | .the.generated.documentation.for |
| 16ac0 | 20 74 68 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | .the.declaration........</p>.... |
| 16ae0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 41 6e 20 65 66 66 65 63 74 69 76 65 20 64 6f 63 74 | ...<p>.........An.effective.doct |
| 16b00 | 65 73 74 20 73 68 6f 75 6c 64 20 62 65 20 73 65 6c 66 2d 63 6f 6e 74 61 69 6e 65 64 20 61 6e 64 | est.should.be.self-contained.and |
| 16b20 | 20 66 6f 63 75 73 65 64 20 6f 6e 20 74 68 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 62 65 69 6e | .focused.on.the.declaration.bein |
| 16b40 | 67 20 74 65 73 74 65 64 2c 20 61 6e 73 77 65 72 69 6e 67 20 71 75 65 73 74 69 6f 6e 73 20 61 20 | g.tested,.answering.questions.a. |
| 16b60 | 6e 65 77 0a 20 20 20 20 20 20 20 20 75 73 65 72 20 6d 69 67 68 74 20 68 61 76 65 20 61 62 6f 75 | new.........user.might.have.abou |
| 16b80 | 74 20 69 74 73 20 69 6e 74 65 72 66 61 63 65 20 6f 72 20 69 6e 74 65 6e 64 65 64 20 75 73 61 67 | t.its.interface.or.intended.usag |
| 16ba0 | 65 2c 20 77 68 69 6c 65 20 61 76 6f 69 64 69 6e 67 20 75 6e 6e 65 63 65 73 73 61 72 79 20 6f 72 | e,.while.avoiding.unnecessary.or |
| 16bc0 | 20 63 6f 6e 66 75 73 69 6e 67 20 64 65 74 61 69 6c 73 2e 20 41 20 64 6f 63 74 65 73 74 20 69 73 | .confusing.details..A.doctest.is |
| 16be0 | 20 6e 6f 74 0a 20 20 20 20 20 20 20 20 61 20 73 75 62 73 74 69 74 75 74 65 20 66 6f 72 20 61 20 | .not.........a.substitute.for.a. |
| 16c00 | 64 6f 63 20 63 6f 6d 6d 65 6e 74 2c 20 62 75 74 20 72 61 74 68 65 72 20 61 20 73 75 70 70 6c 65 | doc.comment,.but.rather.a.supple |
| 16c20 | 6d 65 6e 74 20 61 6e 64 20 63 6f 6d 70 61 6e 69 6f 6e 20 70 72 6f 76 69 64 69 6e 67 20 61 20 74 | ment.and.companion.providing.a.t |
| 16c40 | 65 73 74 61 62 6c 65 2c 20 63 6f 64 65 2d 64 72 69 76 65 6e 20 65 78 61 6d 70 6c 65 2c 20 76 65 | estable,.code-driven.example,.ve |
| 16c60 | 72 69 66 69 65 64 0a 20 20 20 20 20 20 20 20 62 79 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 3c | rified.........by.<kbd>zig.test< |
| 16c80 | 2f 6b 62 64 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 0a | /kbd>........</p>............... |
| 16ca0 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 65 73 74 2d 46 61 69 6c 75 72 65 22 3e 3c 61 20 68 | ......<h3.id="Test-Failure"><a.h |
| 16cc0 | 72 65 66 3d 22 23 74 6f 63 2d 54 65 73 74 2d 46 61 69 6c 75 72 65 22 3e 54 65 73 74 20 46 61 69 | ref="#toc-Test-Failure">Test.Fai |
| 16ce0 | 6c 75 72 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 54 | lure</a>.<a.class="hdr".href="#T |
| 16d00 | 65 73 74 2d 46 61 69 6c 75 72 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | est-Failure">..</a></h3>........ |
| 16d20 | 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 68 65 20 64 65 66 61 75 6c 74 20 74 65 73 74 20 72 75 6e | <p>.........The.default.test.run |
| 16d40 | 6e 65 72 20 63 68 65 63 6b 73 20 66 6f 72 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f | ner.checks.for.an.<a.href="#Erro |
| 16d60 | 72 73 22 3e 65 72 72 6f 72 3c 2f 61 3e 20 72 65 74 75 72 6e 65 64 20 66 72 6f 6d 20 61 20 74 65 | rs">error</a>.returned.from.a.te |
| 16d80 | 73 74 2e 0a 20 20 20 20 20 20 20 20 57 68 65 6e 20 61 20 74 65 73 74 20 72 65 74 75 72 6e 73 20 | st..........When.a.test.returns. |
| 16da0 | 61 6e 20 65 72 72 6f 72 2c 20 74 68 65 20 74 65 73 74 20 69 73 20 63 6f 6e 73 69 64 65 72 65 64 | an.error,.the.test.is.considered |
| 16dc0 | 20 61 20 66 61 69 6c 75 72 65 20 61 6e 64 20 69 74 73 20 3c 61 20 68 72 65 66 3d 22 23 45 72 72 | .a.failure.and.its.<a.href="#Err |
| 16de0 | 6f 72 2d 52 65 74 75 72 6e 2d 54 72 61 63 65 73 22 3e 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 | or-Return-Traces">error.return.t |
| 16e00 | 72 61 63 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 69 73 20 6f 75 74 70 75 74 20 74 6f 20 73 74 | race</a>.........is.output.to.st |
| 16e20 | 61 6e 64 61 72 64 20 65 72 72 6f 72 2e 20 54 68 65 20 74 6f 74 61 6c 20 6e 75 6d 62 65 72 20 6f | andard.error..The.total.number.o |
| 16e40 | 66 20 66 61 69 6c 75 72 65 73 20 77 69 6c 6c 20 62 65 20 72 65 70 6f 72 74 65 64 20 61 66 74 65 | f.failures.will.be.reported.afte |
| 16e60 | 72 20 61 6c 6c 20 74 65 73 74 73 20 68 61 76 65 20 72 75 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | r.all.tests.have.run........</p> |
| 16e80 | 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | .......<figure><figcaption.class |
| 16ea0 | 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 | ="zig-cap"><cite.class="file">te |
| 16ec0 | 73 74 69 6e 67 5f 66 61 69 6c 75 72 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | sting_failure.zig</cite></figcap |
| 16ee0 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tion><pre><code><span.class="tok |
| 16f00 | 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 |
| 16f20 | 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> |
| 16f40 | 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 |
| 16f60 | 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 |
| 16f80 | 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 |
| 16fa0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 78 70 65 63 74 20 74 68 69 73 20 74 6f 20 66 61 69 | ok-str">"expect.this.to.fai |
| 16fc0 | 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 |
| 16fe0 | 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 |
| 17000 | 2e 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 66 | .expect(<span.class="tok-null">f |
| 17020 | 61 6c 73 65 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 | alse</span>);.}..<span.class="to |
| 17040 | 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 |
| 17060 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 78 70 65 63 74 20 74 68 69 73 20 74 6f 20 73 75 63 | ok-str">"expect.this.to.suc |
| 17080 | 63 65 65 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 | ceed"</span>.{.....<span.cl |
| 170a0 | 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 74 65 73 74 | ass="tok-kw">try</span>.std.test |
| 170c0 | 69 6e 67 2e 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 | ing.expect(<span.class="tok-null |
| 170e0 | 22 3e 74 72 75 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 3c 2f | ">true</span>);.}</code></pre></ |
| 17100 | 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | figure><figure><figcaption.class |
| 17120 | 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | ="shell-cap">Shell</figcaption>< |
| 17140 | 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 69 6e | pre><samp>$.<kbd>zig.test.testin |
| 17160 | 67 5f 66 61 69 6c 75 72 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 69 6e 67 5f | g_failure.zig</kbd>.1/2.testing_ |
| 17180 | 66 61 69 6c 75 72 65 2e 74 65 73 74 2e 65 78 70 65 63 74 20 74 68 69 73 20 74 6f 20 66 61 69 6c | failure.test.expect.this.to.fail |
| 171a0 | 2e 2e 2e 46 41 49 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 3c | ...FAIL.(TestUnexpectedResult).< |
| 171c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | span.class="sgr-1m">/home/andy/d |
| 171e0 | 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 74 65 73 74 69 6e 67 2e 7a 69 67 3a 35 38 30 3a 31 | ev/zig/lib/std/testing.zig:580:1 |
| 17200 | 34 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 | 4</span>:.<span.class="sgr-2m">0 |
| 17220 | 78 31 30 34 38 39 30 66 20 69 6e 20 65 78 70 65 63 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | x104890f.in.expect.(test)</span> |
| 17240 | 0a 20 20 20 20 69 66 20 28 21 6f 6b 29 20 72 65 74 75 72 6e 20 65 72 72 6f 72 2e 54 65 73 74 55 | .....if.(!ok).return.error.TestU |
| 17260 | 6e 65 78 70 65 63 74 65 64 52 65 73 75 6c 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 | nexpectedResult;..............<s |
| 17280 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | pan.class="sgr-32m">^</span>.<sp |
| 172a0 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 | an.class="sgr-1m">/home/andy/dev |
| 172c0 | 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 69 6e 67 5f 66 61 69 6c 75 72 65 | /zig/doc/langref/testing_failure |
| 172e0 | 2e 7a 69 67 3a 34 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | .zig:4:5</span>:.<span.class="sg |
| 17300 | 72 2d 32 6d 22 3e 30 78 31 30 34 38 39 61 35 20 69 6e 20 74 65 73 74 2e 65 78 70 65 63 74 20 74 | r-2m">0x10489a5.in.test.expect.t |
| 17320 | 68 69 73 20 74 6f 20 66 61 69 6c 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 74 72 | his.to.fail.(test)</span>.....tr |
| 17340 | 79 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 28 66 61 6c 73 65 29 3b 0a 20 20 20 | y.std.testing.expect(false);.... |
| 17360 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a | .<span.class="sgr-32m">^</span>. |
| 17380 | 32 2f 32 20 74 65 73 74 69 6e 67 5f 66 61 69 6c 75 72 65 2e 74 65 73 74 2e 65 78 70 65 63 74 20 | 2/2.testing_failure.test.expect. |
| 173a0 | 74 68 69 73 20 74 6f 20 73 75 63 63 65 65 64 2e 2e 2e 4f 4b 0a 31 20 70 61 73 73 65 64 3b 20 30 | this.to.succeed...OK.1.passed;.0 |
| 173c0 | 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 74 68 65 20 66 | .skipped;.1.failed..error:.the.f |
| 173e0 | 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 64 20 77 69 74 | ollowing.test.command.failed.wit |
| 17400 | 68 20 65 78 69 74 20 63 6f 64 65 20 31 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | h.exit.code.1:./home/andy/dev/zi |
| 17420 | 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 33 37 62 32 34 37 33 32 34 34 66 33 61 33 30 34 36 | g/.zig-cache/o/37b2473244f3a3046 |
| 17440 | 35 32 35 66 36 66 37 62 31 62 33 36 65 31 61 2f 74 65 73 74 20 2d 2d 73 65 65 64 3d 30 78 64 31 | 525f6f7b1b36e1a/test.--seed=0xd1 |
| 17460 | 61 38 63 61 34 35 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 | a8ca45.</samp></pre></figure>... |
| 17480 | 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 53 6b 69 70 2d 54 65 73 74 73 22 3e | ............<h3.id="Skip-Tests"> |
| 174a0 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 6b 69 70 2d 54 65 73 74 73 22 3e 53 6b 69 70 20 54 | <a.href="#toc-Skip-Tests">Skip.T |
| 174c0 | 65 73 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 53 | ests</a>.<a.class="hdr".href="#S |
| 174e0 | 6b 69 70 2d 54 65 73 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 | kip-Tests">..</a></h3>........<p |
| 17500 | 3e 0a 20 20 20 20 20 20 20 20 4f 6e 65 20 77 61 79 20 74 6f 20 73 6b 69 70 20 74 65 73 74 73 20 | >.........One.way.to.skip.tests. |
| 17520 | 69 73 20 74 6f 20 66 69 6c 74 65 72 20 74 68 65 6d 20 6f 75 74 20 62 79 20 75 73 69 6e 67 20 74 | is.to.filter.them.out.by.using.t |
| 17540 | 68 65 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 3c 2f 6b 62 64 3e 20 63 6f 6d 6d 61 6e 64 20 6c | he.<kbd>zig.test</kbd>.command.l |
| 17560 | 69 6e 65 20 70 61 72 61 6d 65 74 65 72 0a 20 20 20 20 20 20 20 20 3c 6b 62 64 3e 2d 2d 74 65 73 | ine.parameter.........<kbd>--tes |
| 17580 | 74 2d 66 69 6c 74 65 72 20 5b 74 65 78 74 5d 3c 2f 6b 62 64 3e 2e 20 54 68 69 73 20 6d 61 6b 65 | t-filter.[text]</kbd>..This.make |
| 175a0 | 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 |
| 175c0 | 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 0a 20 20 20 20 | sts.whose.name.contains.the..... |
| 175e0 | 20 20 20 20 73 75 70 70 6c 69 65 64 20 66 69 6c 74 65 72 20 74 65 78 74 2e 20 4e 6f 74 65 20 74 | ....supplied.filter.text..Note.t |
| 17600 | 68 61 74 20 6e 6f 6e 2d 6e 61 6d 65 64 20 74 65 73 74 73 20 61 72 65 20 72 75 6e 20 65 76 65 6e | hat.non-named.tests.are.run.even |
| 17620 | 20 77 68 65 6e 20 75 73 69 6e 67 20 74 68 65 20 3c 6b 62 64 3e 2d 2d 74 65 73 74 2d 66 69 6c 74 | .when.using.the.<kbd>--test-filt |
| 17640 | 65 72 20 5b 74 65 78 74 5d 3c 2f 6b 62 64 3e 0a 20 20 20 20 20 20 20 20 63 6f 6d 6d 61 6e 64 20 | er.[text]</kbd>.........command. |
| 17660 | 6c 69 6e 65 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 20 20 20 | line.parameter........</p>...... |
| 17680 | 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 6f 20 70 72 6f 67 72 61 6d 6d 61 74 69 63 61 6c 6c 79 | .<p>.........To.programmatically |
| 176a0 | 20 73 6b 69 70 20 61 20 74 65 73 74 2c 20 6d 61 6b 65 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | .skip.a.test,.make.a.<code><span |
| 176c0 | 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 6f 64 | .class="tok-kw">test</span></cod |
| 176e0 | 65 3e 20 72 65 74 75 72 6e 20 74 68 65 20 65 72 72 6f 72 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 | e>.return.the.error.........<cod |
| 17700 | 65 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 | e><span.class="tok-kw">error</sp |
| 17720 | 61 6e 3e 2e 53 6b 69 70 5a 69 67 54 65 73 74 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 74 68 65 20 64 | an>.SkipZigTest</code>.and.the.d |
| 17740 | 65 66 61 75 6c 74 20 74 65 73 74 20 72 75 6e 6e 65 72 20 77 69 6c 6c 20 63 6f 6e 73 69 64 65 72 | efault.test.runner.will.consider |
| 17760 | 20 74 68 65 20 74 65 73 74 20 61 73 20 62 65 69 6e 67 20 73 6b 69 70 70 65 64 2e 0a 20 20 20 20 | .the.test.as.being.skipped...... |
| 17780 | 20 20 20 20 54 68 65 20 74 6f 74 61 6c 20 6e 75 6d 62 65 72 20 6f 66 20 73 6b 69 70 70 65 64 20 | ....The.total.number.of.skipped. |
| 177a0 | 74 65 73 74 73 20 77 69 6c 6c 20 62 65 20 72 65 70 6f 72 74 65 64 20 61 66 74 65 72 20 61 6c 6c | tests.will.be.reported.after.all |
| 177c0 | 20 74 65 73 74 73 20 68 61 76 65 20 72 75 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | .tests.have.run........</p>..... |
| 177e0 | 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 | ..<figure><figcaption.class="zig |
| 17800 | 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 69 6e 67 | -cap"><cite.class="file">testing |
| 17820 | 5f 73 6b 69 70 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 | _skip.zig</cite></figcaption><pr |
| 17840 | 65 3e 3c 63 6f 64 65 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 | e><code><span.class="tok-kw">tes |
| 17860 | 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">& |
| 17880 | 71 75 6f 74 3b 74 68 69 73 20 77 69 6c 6c 20 62 65 20 73 6b 69 70 70 65 64 26 71 75 6f 74 3b 3c | quot;this.will.be.skipped"< |
| 178a0 | 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 |
| 178c0 | 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 |
| 178e0 | 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 7d | -kw">error</span>.SkipZigTest;.} |
| 17900 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 | </code></pre></figure><figure><f |
| 17920 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c | igcaption.class="shell-cap">Shel |
| 17940 | 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e | l</figcaption><pre><samp>$.<kbd> |
| 17960 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 69 6e 67 5f 73 6b 69 70 2e 7a 69 67 3c 2f 6b 62 64 3e 0a | zig.test.testing_skip.zig</kbd>. |
| 17980 | 31 2f 31 20 74 65 73 74 69 6e 67 5f 73 6b 69 70 2e 74 65 73 74 2e 74 68 69 73 20 77 69 6c 6c 20 | 1/1.testing_skip.test.this.will. |
| 179a0 | 62 65 20 73 6b 69 70 70 65 64 2e 2e 2e 53 4b 49 50 0a 30 20 70 61 73 73 65 64 3b 20 31 20 73 6b | be.skipped...SKIP.0.passed;.1.sk |
| 179c0 | 69 70 70 65 64 3b 20 30 20 66 61 69 6c 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f | ipped;.0.failed..</samp></pre></ |
| 179e0 | 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 52 | figure>................<h3.id="R |
| 17a00 | 65 70 6f 72 74 2d 4d 65 6d 6f 72 79 2d 4c 65 61 6b 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | eport-Memory-Leaks"><a.href="#to |
| 17a20 | 63 2d 52 65 70 6f 72 74 2d 4d 65 6d 6f 72 79 2d 4c 65 61 6b 73 22 3e 52 65 70 6f 72 74 20 4d 65 | c-Report-Memory-Leaks">Report.Me |
| 17a40 | 6d 6f 72 79 20 4c 65 61 6b 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | mory.Leaks</a>.<a.class="hdr".hr |
| 17a60 | 65 66 3d 22 23 52 65 70 6f 72 74 2d 4d 65 6d 6f 72 79 2d 4c 65 61 6b 73 22 3e c2 a7 3c 2f 61 3e | ef="#Report-Memory-Leaks">..</a> |
| 17a80 | 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 57 68 65 6e 20 63 6f | </h3>........<p>.........When.co |
| 17aa0 | 64 65 20 61 6c 6c 6f 63 61 74 65 73 20 3c 61 20 68 72 65 66 3d 22 23 4d 65 6d 6f 72 79 22 3e 4d | de.allocates.<a.href="#Memory">M |
| 17ac0 | 65 6d 6f 72 79 3c 2f 61 3e 20 75 73 69 6e 67 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 5a 69 | emory</a>.using.the.<a.href="#Zi |
| 17ae0 | 67 2d 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 22 3e 5a 69 67 20 53 74 61 6e 64 61 72 64 | g-Standard-Library">Zig.Standard |
| 17b00 | 20 4c 69 62 72 61 72 79 3c 2f 61 3e 27 73 20 74 65 73 74 69 6e 67 20 61 6c 6c 6f 63 61 74 6f 72 | .Library</a>'s.testing.allocator |
| 17b20 | 2c 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 2e 74 65 73 74 69 6e 67 2e 61 6c 6c 6f | ,.........<code>std.testing.allo |
| 17b40 | 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 20 64 65 66 61 75 6c 74 20 74 65 73 74 20 72 | cator</code>,.the.default.test.r |
| 17b60 | 75 6e 6e 65 72 20 77 69 6c 6c 20 72 65 70 6f 72 74 20 61 6e 79 20 6c 65 61 6b 73 20 74 68 61 74 | unner.will.report.any.leaks.that |
| 17b80 | 20 61 72 65 0a 20 20 20 20 20 20 20 20 66 6f 75 6e 64 20 66 72 6f 6d 20 75 73 69 6e 67 20 74 68 | .are.........found.from.using.th |
| 17ba0 | 65 20 74 65 73 74 69 6e 67 20 61 6c 6c 6f 63 61 74 6f 72 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | e.testing.allocator:.......</p>. |
| 17bc0 | 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | ......<figure><figcaption.class= |
| 17be0 | 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | "zig-cap"><cite.class="file">tes |
| 17c00 | 74 69 6e 67 5f 64 65 74 65 63 74 5f 6c 65 61 6b 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | ting_detect_leak.zig</cite></fig |
| 17c20 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | caption><pre><code><span.class=" |
| 17c40 | 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 |
| 17c60 | 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 |
| 17c80 | 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">" |
| 17ca0 | 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 3d | std"</span>);..<span.class= |
| 17cc0 | 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 |
| 17ce0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 65 74 65 63 74 20 6c 65 61 6b 26 71 75 6f | ="tok-str">"detect.leak&quo |
| 17d00 | 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 |
| 17d20 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6c 69 73 74 20 3d 20 73 74 64 2e 41 72 72 61 79 | -kw">var</span>.list.=.std.Array |
| 17d40 | 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 75 32 31 3c | List(<span.class="tok-type">u21< |
| 17d60 | 2f 73 70 61 6e 3e 29 2e 69 6e 69 74 28 73 74 64 2e 74 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 61 74 | /span>).init(std.testing.allocat |
| 17d80 | 6f 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 63 6f 6d 6d 65 6e | or);.....<span.class="tok-commen |
| 17da0 | 74 22 3e 2f 2f 20 6d 69 73 73 69 6e 67 20 60 64 65 66 65 72 20 6c 69 73 74 2e 64 65 69 6e 69 74 | t">//.missing.`defer.list.deinit |
| 17dc0 | 28 29 3b 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 22 74 6f 6b | ();`</span>.....<span.class="tok |
| 17de0 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 6c 69 73 74 2e 61 70 70 65 6e 64 28 3c 73 70 61 | -kw">try</span>.list.append(<spa |
| 17e00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 e2 98 94 27 3c 2f 73 70 61 6e 3e 29 3b | n.class="tok-str">'...'</span>); |
| 17e20 | 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 2f | ......<span.class="tok-kw">try</ |
| 17e40 | 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 6c 69 73 74 2e 69 74 | span>.std.testing.expect(list.it |
| 17e60 | 65 6d 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 6e 75 6d 62 | ems.len.==.<span.class="tok-numb |
| 17e80 | 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 2f 66 | er">1</span>);.}</code></pre></f |
| 17ea0 | 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | igure><figure><figcaption.class= |
| 17ec0 | 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | "shell-cap">Shell</figcaption><p |
| 17ee0 | 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 69 6e 67 | re><samp>$.<kbd>zig.test.testing |
| 17f00 | 5f 64 65 74 65 63 74 5f 6c 65 61 6b 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 69 | _detect_leak.zig</kbd>.1/1.testi |
| 17f20 | 6e 67 5f 64 65 74 65 63 74 5f 6c 65 61 6b 2e 74 65 73 74 2e 64 65 74 65 63 74 20 6c 65 61 6b 2e | ng_detect_leak.test.detect.leak. |
| 17f40 | 2e 2e 4f 4b 0a 5b 67 70 61 5d 20 28 65 72 72 29 3a 20 6d 65 6d 6f 72 79 20 61 64 64 72 65 73 73 | ..OK.[gpa].(err):.memory.address |
| 17f60 | 20 30 78 37 66 66 35 39 66 65 65 30 30 30 30 20 6c 65 61 6b 65 64 3a 0a 3c 73 70 61 6e 20 63 6c | .0x7ff59fee0000.leaked:.<span.cl |
| 17f80 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | ass="sgr-1m">/home/andy/dev/zig/ |
| 17fa0 | 6c 69 62 2f 73 74 64 2f 61 72 72 61 79 5f 6c 69 73 74 2e 7a 69 67 3a 34 37 34 3a 36 37 3c 2f 73 | lib/std/array_list.zig:474:67</s |
| 17fc0 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 36 | pan>:.<span.class="sgr-2m">0x106 |
| 17fe0 | 39 36 62 32 20 69 6e 20 65 6e 73 75 72 65 54 6f 74 61 6c 43 61 70 61 63 69 74 79 50 72 65 63 69 | 96b2.in.ensureTotalCapacityPreci |
| 18000 | 73 65 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 20 20 20 | se.(test)</span>................ |
| 18020 | 20 63 6f 6e 73 74 20 6e 65 77 5f 6d 65 6d 6f 72 79 20 3d 20 74 72 79 20 73 65 6c 66 2e 61 6c 6c | .const.new_memory.=.try.self.all |
| 18040 | 6f 63 61 74 6f 72 2e 61 6c 69 67 6e 65 64 41 6c 6c 6f 63 28 54 2c 20 61 6c 69 67 6e 6d 65 6e 74 | ocator.alignedAlloc(T,.alignment |
| 18060 | 2c 20 6e 65 77 5f 63 61 70 61 63 69 74 79 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ,.new_capacity);................ |
| 18080 | 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 | ................................ |
| 180a0 | 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=" |
| 180c0 | 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | sgr-32m">^</span>.<span.class="s |
| 180e0 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 | gr-1m">/home/andy/dev/zig/lib/st |
| 18100 | 64 2f 61 72 72 61 79 5f 6c 69 73 74 2e 7a 69 67 3a 34 35 30 3a 35 31 3c 2f 73 70 61 6e 3e 3a 20 | d/array_list.zig:450:51</span>:. |
| 18120 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 65 62 39 30 20 69 | <span.class="sgr-2m">0x104eb90.i |
| 18140 | 6e 20 65 6e 73 75 72 65 54 6f 74 61 6c 43 61 70 61 63 69 74 79 20 28 74 65 73 74 29 3c 2f 73 70 | n.ensureTotalCapacity.(test)</sp |
| 18160 | 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 73 65 6c 66 2e 65 6e 73 75 | an>.............return.self.ensu |
| 18180 | 72 65 54 6f 74 61 6c 43 61 70 61 63 69 74 79 50 72 65 63 69 73 65 28 62 65 74 74 65 72 5f 63 61 | reTotalCapacityPrecise(better_ca |
| 181a0 | 70 61 63 69 74 79 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 | pacity);........................ |
| 181c0 | 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 |
| 181e0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | .class="sgr-32m">^</span>.<span. |
| 18200 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | class="sgr-1m">/home/andy/dev/zi |
| 18220 | 67 2f 6c 69 62 2f 73 74 64 2f 61 72 72 61 79 5f 6c 69 73 74 2e 7a 69 67 3a 35 30 30 3a 34 31 3c | g/lib/std/array_list.zig:500:41< |
| 18240 | 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 | /span>:.<span.class="sgr-2m">0x1 |
| 18260 | 30 34 63 65 62 66 20 69 6e 20 61 64 64 4f 6e 65 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 | 04cebf.in.addOne.(test)</span>.. |
| 18280 | 20 20 20 20 20 20 20 20 20 20 20 74 72 79 20 73 65 6c 66 2e 65 6e 73 75 72 65 54 6f 74 61 6c 43 | ...........try.self.ensureTotalC |
| 182a0 | 61 70 61 63 69 74 79 28 6e 65 77 6c 65 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | apacity(newlen);................ |
| 182c0 | 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 |
| 182e0 | 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | lass="sgr-32m">^</span>.<span.cl |
| 18300 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | ass="sgr-1m">/home/andy/dev/zig/ |
| 18320 | 6c 69 62 2f 73 74 64 2f 61 72 72 61 79 5f 6c 69 73 74 2e 7a 69 67 3a 32 36 31 3a 34 39 3c 2f 73 | lib/std/array_list.zig:261:49</s |
| 18340 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 | pan>:.<span.class="sgr-2m">0x104 |
| 18360 | 61 39 64 64 20 69 6e 20 61 70 70 65 6e 64 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | a9dd.in.append.(test)</span>.... |
| 18380 | 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 6e 65 77 5f 69 74 65 6d 5f 70 74 72 20 3d 20 74 72 | .........const.new_item_ptr.=.tr |
| 183a0 | 79 20 73 65 6c 66 2e 61 64 64 4f 6e 65 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | y.self.addOne();................ |
| 183c0 | 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 | ................................ |
| 183e0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a | .<span.class="sgr-32m">^</span>. |
| 18400 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | <span.class="sgr-1m">/home/andy/ |
| 18420 | 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 69 6e 67 5f 64 65 74 65 | dev/zig/doc/langref/testing_dete |
| 18440 | 63 74 5f 6c 65 61 6b 2e 7a 69 67 3a 36 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | ct_leak.zig:6:20</span>:.<span.c |
| 18460 | 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 38 63 37 35 20 69 6e 20 74 65 73 74 2e | lass="sgr-2m">0x1048c75.in.test. |
| 18480 | 64 65 74 65 63 74 20 6c 65 61 6b 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 74 72 | detect.leak.(test)</span>.....tr |
| 184a0 | 79 20 6c 69 73 74 2e 61 70 70 65 6e 64 28 27 e2 98 94 27 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | y.list.append('...');........... |
| 184c0 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e | .........<span.class="sgr-32m">^ |
| 184e0 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f | </span>.<span.class="sgr-1m">/ho |
| 18500 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 | me/andy/dev/zig/lib/compiler/tes |
| 18520 | 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 32 31 34 3a 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | t_runner.zig:214:25</span>:.<spa |
| 18540 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 66 37 66 32 35 20 69 6e 20 6d 61 | n.class="sgr-2m">0x10f7f25.in.ma |
| 18560 | 69 6e 54 65 72 6d 69 6e 61 6c 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 | inTerminal.(test)</span>........ |
| 18580 | 20 69 66 20 28 74 65 73 74 5f 66 6e 2e 66 75 6e 63 28 29 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 | .if.(test_fn.func()).|_|.{...... |
| 185a0 | 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=" |
| 185c0 | 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | sgr-32m">^</span>.<span.class="s |
| 185e0 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f | gr-1m">/home/andy/dev/zig/lib/co |
| 18600 | 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 36 32 3a 32 38 3c 2f 73 70 | mpiler/test_runner.zig:62:28</sp |
| 18620 | 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 66 31 | an>:.<span.class="sgr-2m">0x10f1 |
| 18640 | 66 36 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 20 20 | f6d.in.main.(test)</span>....... |
| 18660 | 20 20 72 65 74 75 72 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 28 29 3b 0a 20 20 20 20 20 20 20 | ..return.mainTerminal();........ |
| 18680 | 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= |
| 186a0 | 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | "sgr-32m">^</span>.<span.class=" |
| 186c0 | 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 | sgr-1m">/home/andy/dev/zig/lib/s |
| 186e0 | 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 35 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | td/start.zig:651:22</span>:.<spa |
| 18700 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 66 31 33 65 32 20 69 6e 20 70 6f | n.class="sgr-2m">0x10f13e2.in.po |
| 18720 | 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 61 6e 3e | sixCallMainAndExit.(test)</span> |
| 18740 | 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();....... |
| 18760 | 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 73 67 72 2d | ...............<span.class="sgr- |
| 18780 | 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 | 32m">^</span>.<span.class="sgr-1 |
| 187a0 | 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 | m">/home/andy/dev/zig/lib/std/st |
| 187c0 | 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | art.zig:271:5</span>:.<span.clas |
| 187e0 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 66 30 66 62 64 20 69 6e 20 5f 73 74 61 72 74 20 28 | s="sgr-2m">0x10f0fbd.in._start.( |
| 18800 | 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 69 6c 65 20 28 73 | test)</span>.....asm.volatile.(s |
| 18820 | 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | witch.(native_arch).{.....<span. |
| 18840 | 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 0a 41 6c 6c 20 31 20 | class="sgr-32m">^</span>..All.1. |
| 18860 | 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 31 20 65 72 72 6f 72 73 20 77 65 72 65 20 6c 6f 67 67 | tests.passed..1.errors.were.logg |
| 18880 | 65 64 2e 0a 31 20 74 65 73 74 73 20 6c 65 61 6b 65 64 20 6d 65 6d 6f 72 79 2e 0a 65 72 72 6f 72 | ed..1.tests.leaked.memory..error |
| 188a0 | 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 66 61 69 | :.the.following.test.command.fai |
| 188c0 | 6c 65 64 20 77 69 74 68 20 65 78 69 74 20 63 6f 64 65 20 31 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 | led.with.exit.code.1:./home/andy |
| 188e0 | 2f 64 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 63 65 34 39 66 39 64 36 62 34 | /dev/zig/.zig-cache/o/ce49f9d6b4 |
| 18900 | 34 65 62 30 64 37 39 31 37 38 61 36 63 36 62 64 36 66 32 62 34 37 2f 74 65 73 74 20 2d 2d 73 65 | 4eb0d79178a6c6bd6f2b47/test.--se |
| 18920 | 65 64 3d 30 78 35 30 37 64 34 35 39 37 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | ed=0x507d4597.</samp></pre></fig |
| 18940 | 75 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 75 6c 3e | ure>........<p>See.also:</p><ul> |
| 18960 | 0a 3c 6c 69 3e 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 | .<li><a.href="#defer">defer</a>< |
| 18980 | 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4d 65 6d 6f 72 79 22 3e 4d 65 6d 6f 72 | /li>.<li><a.href="#Memory">Memor |
| 189a0 | 79 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 | y</a></li>.</ul>...............< |
| 189c0 | 68 33 20 69 64 3d 22 44 65 74 65 63 74 69 6e 67 2d 54 65 73 74 2d 42 75 69 6c 64 22 3e 3c 61 20 | h3.id="Detecting-Test-Build"><a. |
| 189e0 | 68 72 65 66 3d 22 23 74 6f 63 2d 44 65 74 65 63 74 69 6e 67 2d 54 65 73 74 2d 42 75 69 6c 64 22 | href="#toc-Detecting-Test-Build" |
| 18a00 | 3e 44 65 74 65 63 74 69 6e 67 20 54 65 73 74 20 42 75 69 6c 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 | >Detecting.Test.Build</a>.<a.cla |
| 18a20 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 65 74 65 63 74 69 6e 67 2d 54 65 73 74 2d 42 | ss="hdr".href="#Detecting-Test-B |
| 18a40 | 75 69 6c 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 0a 20 20 20 | uild">..</a></h3>........<p>.... |
| 18a60 | 20 20 20 20 20 55 73 65 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 56 | .....Use.the.<a.href="#Compile-V |
| 18a80 | 61 72 69 61 62 6c 65 73 22 3e 63 6f 6d 70 69 6c 65 20 76 61 72 69 61 62 6c 65 3c 2f 61 3e 20 3c | ariables">compile.variable</a>.< |
| 18aa0 | 63 6f 64 65 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 | code><span.class="tok-builtin">@ |
| 18ac0 | 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 |
| 18ae0 | 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 2e | tr">"builtin"</span>). |
| 18b00 | 69 73 5f 74 65 73 74 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 74 6f 20 64 65 74 65 63 74 | is_test</code>.........to.detect |
| 18b20 | 20 61 20 74 65 73 74 20 62 75 69 6c 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | .a.test.build:.......</p>....... |
| 18b40 | 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 | <figure><figcaption.class="zig-c |
| 18b60 | 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 69 6e 67 5f 64 | ap"><cite.class="file">testing_d |
| 18b80 | 65 74 65 63 74 5f 74 65 73 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | etect_test.zig</cite></figcaptio |
| 18ba0 | 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n><pre><code><span.class="tok-kw |
| 18bc0 | 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 |
| 18be0 | 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 |
| 18c00 | 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 |
| 18c20 | 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 |
| 18c40 | 22 3e 63 6f 6e 73 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 | ">const</span>.builtin.=.<span.c |
| 18c60 | 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 |
| 18c80 | 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 62 75 | >(<span.class="tok-str">"bu |
| 18ca0 | 69 6c 74 69 6e 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 | iltin"</span>);.<span.class |
| 18cc0 | 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.=. |
| 18ce0 | 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 |
| 18d00 | 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 |
| 18d20 | 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 2e 69 73 5f 74 65 73 | s="tok-str">"builtin.is_tes |
| 18d40 | 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 73 73 | t"</span>.{.....<span.class |
| 18d60 | 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 73 41 54 | ="tok-kw">try</span>.expect(isAT |
| 18d80 | 65 73 74 28 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 | est());.}..<span.class="tok-kw"> |
| 18da0 | 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 69 | fn</span>.<span.class="tok-fn">i |
| 18dc0 | 73 41 54 65 73 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 | sATest</span>().<span.class="tok |
| 18de0 | 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 20 63 | -type">bool</span>.{.....<span.c |
| 18e00 | 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 75 69 6c | lass="tok-kw">return</span>.buil |
| 18e20 | 74 69 6e 2e 69 73 5f 74 65 73 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | tin.is_test;.}</code></pre></fig |
| 18e40 | 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 | ure><figure><figcaption.class="s |
| 18e60 | 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | hell-cap">Shell</figcaption><pre |
| 18e80 | 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 69 6e 67 5f 64 | ><samp>$.<kbd>zig.test.testing_d |
| 18ea0 | 65 74 65 63 74 5f 74 65 73 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 69 6e 67 | etect_test.zig</kbd>.1/1.testing |
| 18ec0 | 5f 64 65 74 65 63 74 5f 74 65 73 74 2e 74 65 73 74 2e 62 75 69 6c 74 69 6e 2e 69 73 5f 74 65 73 | _detect_test.test.builtin.is_tes |
| 18ee0 | 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d | t...OK.All.1.tests.passed..</sam |
| 18f00 | 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | p></pre></figure>............... |
| 18f20 | 3c 68 33 20 69 64 3d 22 54 65 73 74 2d 4f 75 74 70 75 74 2d 61 6e 64 2d 4c 6f 67 67 69 6e 67 22 | <h3.id="Test-Output-and-Logging" |
| 18f40 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 65 73 74 2d 4f 75 74 70 75 74 2d 61 6e 64 2d 4c | ><a.href="#toc-Test-Output-and-L |
| 18f60 | 6f 67 67 69 6e 67 22 3e 54 65 73 74 20 4f 75 74 70 75 74 20 61 6e 64 20 4c 6f 67 67 69 6e 67 3c | ogging">Test.Output.and.Logging< |
| 18f80 | 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 65 73 74 2d 4f | /a>.<a.class="hdr".href="#Test-O |
| 18fa0 | 75 74 70 75 74 2d 61 6e 64 2d 4c 6f 67 67 69 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a | utput-and-Logging">..</a></h3>.. |
| 18fc0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 68 65 20 64 65 66 61 75 6c 74 20 74 65 | ......<p>.........The.default.te |
| 18fe0 | 73 74 20 72 75 6e 6e 65 72 20 61 6e 64 20 74 68 65 20 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c | st.runner.and.the.Zig.Standard.L |
| 19000 | 69 62 72 61 72 79 27 73 20 74 65 73 74 69 6e 67 20 6e 61 6d 65 73 70 61 63 65 20 6f 75 74 70 75 | ibrary's.testing.namespace.outpu |
| 19020 | 74 20 6d 65 73 73 61 67 65 73 20 74 6f 20 73 74 61 6e 64 61 72 64 20 65 72 72 6f 72 2e 0a 20 20 | t.messages.to.standard.error.... |
| 19040 | 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 54 68 | ....</p>..............<h3.id="Th |
| 19060 | 65 2d 54 65 73 74 69 6e 67 2d 4e 61 6d 65 73 70 61 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | e-Testing-Namespace"><a.href="#t |
| 19080 | 6f 63 2d 54 68 65 2d 54 65 73 74 69 6e 67 2d 4e 61 6d 65 73 70 61 63 65 22 3e 54 68 65 20 54 65 | oc-The-Testing-Namespace">The.Te |
| 190a0 | 73 74 69 6e 67 20 4e 61 6d 65 73 70 61 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | sting.Namespace</a>.<a.class="hd |
| 190c0 | 72 22 20 68 72 65 66 3d 22 23 54 68 65 2d 54 65 73 74 69 6e 67 2d 4e 61 6d 65 73 70 61 63 65 22 | r".href="#The-Testing-Namespace" |
| 190e0 | 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 20 20 | >..</a></h3>........<p>......... |
| 19100 | 54 68 65 20 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 27 73 20 3c 63 6f 64 65 | The.Zig.Standard.Library's.<code |
| 19120 | 3e 74 65 73 74 69 6e 67 3c 2f 63 6f 64 65 3e 20 6e 61 6d 65 73 70 61 63 65 20 63 6f 6e 74 61 69 | >testing</code>.namespace.contai |
| 19140 | 6e 73 20 75 73 65 66 75 6c 20 66 75 6e 63 74 69 6f 6e 73 20 74 6f 20 68 65 6c 70 0a 20 20 20 20 | ns.useful.functions.to.help..... |
| 19160 | 20 20 20 20 79 6f 75 20 63 72 65 61 74 65 20 74 65 73 74 73 2e 20 49 6e 20 61 64 64 69 74 69 6f | ....you.create.tests..In.additio |
| 19180 | 6e 20 74 6f 20 74 68 65 20 3c 63 6f 64 65 3e 65 78 70 65 63 74 3c 2f 63 6f 64 65 3e 20 66 75 6e | n.to.the.<code>expect</code>.fun |
| 191a0 | 63 74 69 6f 6e 2c 20 74 68 69 73 20 64 6f 63 75 6d 65 6e 74 20 75 73 65 73 20 61 20 63 6f 75 70 | ction,.this.document.uses.a.coup |
| 191c0 | 6c 65 20 6f 66 20 6d 6f 72 65 20 66 75 6e 63 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 61 73 20 | le.of.more.functions.........as. |
| 191e0 | 65 78 65 6d 70 6c 69 66 69 65 64 20 68 65 72 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | exemplified.here:.......</p>.... |
| 19200 | 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 | ...<figure><figcaption.class="zi |
| 19220 | 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 69 6e | g-cap"><cite.class="file">testin |
| 19240 | 67 5f 6e 61 6d 65 73 70 61 63 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | g_namespace.zig</cite></figcapti |
| 19260 | 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | on><pre><code><span.class="tok-k |
| 19280 | 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 |
| 192a0 | 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>(< |
| 192c0 | 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 |
| 192e0 | 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- |
| 19300 | 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 |
| 19320 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 78 70 65 63 74 45 71 75 61 6c 20 64 65 6d 6f 26 71 75 6f | -str">"expectEqual.demo&quo |
| 19340 | 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 |
| 19360 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 65 64 3a 20 3c 73 70 61 | -kw">const</span>.expected:.<spa |
| 19380 | 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>.=. |
| 193a0 | 3c 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 61 | <span.class="tok-number">42</spa |
| 193c0 | 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 |
| 193e0 | 73 74 3c 2f 73 70 61 6e 3e 20 61 63 74 75 61 6c 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | st</span>.actual.=.<span.class=" |
| 19400 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 | tok-number">42</span>;......<spa |
| 19420 | 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 66 69 72 | n.class="tok-comment">//.The.fir |
| 19440 | 73 74 20 61 72 67 75 6d 65 6e 74 20 74 6f 20 60 65 78 70 65 63 74 45 71 75 61 6c 60 20 69 73 20 | st.argument.to.`expectEqual`.is. |
| 19460 | 74 68 65 20 6b 6e 6f 77 6e 2c 20 65 78 70 65 63 74 65 64 2c 20 72 65 73 75 6c 74 2e 3c 2f 73 70 | the.known,.expected,.result.</sp |
| 19480 | 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 |
| 194a0 | 22 3e 2f 2f 20 54 68 65 20 73 65 63 6f 6e 64 20 61 72 67 75 6d 65 6e 74 20 69 73 20 74 68 65 20 | ">//.The.second.argument.is.the. |
| 194c0 | 72 65 73 75 6c 74 20 6f 66 20 73 6f 6d 65 20 65 78 70 72 65 73 73 69 6f 6e 2e 3c 2f 73 70 61 6e | result.of.some.expression.</span |
| 194e0 | 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"> |
| 19500 | 2f 2f 20 54 68 65 20 61 63 74 75 61 6c 27 73 20 74 79 70 65 20 69 73 20 63 61 73 74 65 64 20 74 | //.The.actual's.type.is.casted.t |
| 19520 | 6f 20 74 68 65 20 74 79 70 65 20 6f 66 20 65 78 70 65 63 74 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 | o.the.type.of.expected.</span>.. |
| 19540 | 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 |
| 19560 | 6e 3e 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 45 71 75 61 6c 28 65 78 70 65 63 | n>.std.testing.expectEqual(expec |
| 19580 | 74 65 64 2c 20 61 63 74 75 61 6c 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ted,.actual);.}..<span.class="to |
| 195a0 | 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 |
| 195c0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 78 70 65 63 74 45 72 72 6f 72 20 64 65 6d 6f 26 71 | ok-str">"expectError.demo&q |
| 195e0 | 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 |
| 19600 | 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 65 64 5f 65 72 72 | ok-kw">const</span>.expected_err |
| 19620 | 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 72 72 6f 72 3c | or.=.<span.class="tok-kw">error< |
| 19640 | 2f 73 70 61 6e 3e 2e 44 65 6d 6f 45 72 72 6f 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | /span>.DemoError;.....<span.clas |
| 19660 | 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 63 74 75 61 6c 5f 65 | s="tok-kw">const</span>.actual_e |
| 19680 | 72 72 6f 72 5f 75 6e 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | rror_union:.<span.class="tok-typ |
| 196a0 | 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=" |
| 196c0 | 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c | tok-type">void</span>.=.<span.cl |
| 196e0 | 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 44 65 6d 6f 45 72 | ass="tok-kw">error</span>.DemoEr |
| 19700 | 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 63 6f 6d 6d 65 | ror;......<span.class="tok-comme |
| 19720 | 6e 74 22 3e 2f 2f 20 60 65 78 70 65 63 74 45 72 72 6f 72 60 20 77 69 6c 6c 20 66 61 69 6c 20 77 | nt">//.`expectError`.will.fail.w |
| 19740 | 68 65 6e 20 74 68 65 20 61 63 74 75 61 6c 20 65 72 72 6f 72 20 69 73 20 64 69 66 66 65 72 65 6e | hen.the.actual.error.is.differen |
| 19760 | 74 20 74 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 | t.than</span>.....<span.class="t |
| 19780 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 65 78 70 65 63 74 65 64 20 65 72 72 6f | ok-comment">//.the.expected.erro |
| 197a0 | 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 6b 2d 6b | r.</span>.....<span.class="tok-k |
| 197c0 | 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 65 63 74 | w">try</span>.std.testing.expect |
| 197e0 | 45 72 72 6f 72 28 65 78 70 65 63 74 65 64 5f 65 72 72 6f 72 2c 20 61 63 74 75 61 6c 5f 65 72 72 | Error(expected_error,.actual_err |
| 19800 | 6f 72 5f 75 6e 69 6f 6e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | or_union);.}</code></pre></figur |
| 19820 | 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 | e><figure><figcaption.class="she |
| 19840 | 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c | ll-cap">Shell</figcaption><pre>< |
| 19860 | 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 69 6e 67 5f 6e 61 6d | samp>$.<kbd>zig.test.testing_nam |
| 19880 | 65 73 70 61 63 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 69 6e 67 5f 6e 61 6d | espace.zig</kbd>.1/2.testing_nam |
| 198a0 | 65 73 70 61 63 65 2e 74 65 73 74 2e 65 78 70 65 63 74 45 71 75 61 6c 20 64 65 6d 6f 2e 2e 2e 4f | espace.test.expectEqual.demo...O |
| 198c0 | 4b 0a 32 2f 32 20 74 65 73 74 69 6e 67 5f 6e 61 6d 65 73 70 61 63 65 2e 74 65 73 74 2e 65 78 70 | K.2/2.testing_namespace.test.exp |
| 198e0 | 65 63 74 45 72 72 6f 72 20 64 65 6d 6f 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 | ectError.demo...OK.All.2.tests.p |
| 19900 | 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 | assed..</samp></pre></figure>... |
| 19920 | 20 20 20 20 20 3c 70 3e 54 68 65 20 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 | .....<p>The.Zig.Standard.Library |
| 19940 | 20 61 6c 73 6f 20 63 6f 6e 74 61 69 6e 73 20 66 75 6e 63 74 69 6f 6e 73 20 74 6f 20 63 6f 6d 70 | .also.contains.functions.to.comp |
| 19960 | 61 72 65 20 3c 61 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 | are.<a.href="#Slices">Slices</a> |
| 19980 | 2c 20 73 74 72 69 6e 67 73 2c 20 61 6e 64 20 6d 6f 72 65 2e 20 53 65 65 20 74 68 65 20 72 65 73 | ,.strings,.and.more..See.the.res |
| 199a0 | 74 20 6f 66 20 74 68 65 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 2e 74 65 73 74 69 | t.of.the.........<code>std.testi |
| 199c0 | 6e 67 3c 2f 63 6f 64 65 3e 20 6e 61 6d 65 73 70 61 63 65 20 69 6e 20 74 68 65 20 3c 61 20 68 72 | ng</code>.namespace.in.the.<a.hr |
| 199e0 | 65 66 3d 22 23 5a 69 67 2d 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 22 3e 5a 69 67 20 53 | ef="#Zig-Standard-Library">Zig.S |
| 19a00 | 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 3c 2f 61 3e 20 66 6f 72 20 6d 6f 72 65 20 61 76 61 | tandard.Library</a>.for.more.ava |
| 19a20 | 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 0a 20 20 20 | ilable.functions.</p>........... |
| 19a40 | 20 20 20 3c 68 33 20 69 64 3d 22 54 65 73 74 2d 54 6f 6f 6c 2d 44 6f 63 75 6d 65 6e 74 61 74 69 | ...<h3.id="Test-Tool-Documentati |
| 19a60 | 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 65 73 74 2d 54 6f 6f 6c 2d 44 6f 63 75 | on"><a.href="#toc-Test-Tool-Docu |
| 19a80 | 6d 65 6e 74 61 74 69 6f 6e 22 3e 54 65 73 74 20 54 6f 6f 6c 20 44 6f 63 75 6d 65 6e 74 61 74 69 | mentation">Test.Tool.Documentati |
| 19aa0 | 6f 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 54 65 73 | on</a>.<a.class="hdr".href="#Tes |
| 19ac0 | 74 2d 54 6f 6f 6c 2d 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 | t-Tool-Documentation">..</a></h3 |
| 19ae0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 3c 6b 62 64 3e 7a 69 67 20 74 65 | >........<p>.........<kbd>zig.te |
| 19b00 | 73 74 3c 2f 6b 62 64 3e 20 68 61 73 20 61 20 66 65 77 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 | st</kbd>.has.a.few.command.line. |
| 19b20 | 70 61 72 61 6d 65 74 65 72 73 20 77 68 69 63 68 20 61 66 66 65 63 74 20 74 68 65 20 63 6f 6d 70 | parameters.which.affect.the.comp |
| 19b40 | 69 6c 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 53 65 65 20 3c 6b 62 64 3e 7a 69 67 20 74 65 | ilation..........See.<kbd>zig.te |
| 19b60 | 73 74 20 2d 2d 68 65 6c 70 3c 2f 6b 62 64 3e 20 66 6f 72 20 61 20 66 75 6c 6c 20 6c 69 73 74 2e | st.--help</kbd>.for.a.full.list. |
| 19b80 | 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 0a 20 20 20 20 20 | .......</p>..................... |
| 19ba0 | 20 3c 68 32 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 | .<h2.id="Variables"><a.href="#to |
| 19bc0 | 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 |
| 19be0 | 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">..</ |
| 19c00 | 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 76 61 72 69 61 | a></h2>........<p>.......A.varia |
| 19c20 | 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 |
| 19c40 | 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 |
| 19c60 | 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 6c 6c | >.......<p>.......It.is.generall |
| 19c80 | 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 3e 3c 73 70 61 6e 20 | y.preferable.to.use.<code><span. |
| 19ca0 | 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 6f 64 | class="tok-kw">const</span></cod |
| 19cc0 | 65 3e 20 72 61 74 68 65 72 20 74 68 61 6e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | e>.rather.than.......<code><span |
| 19ce0 | 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 65 | .class="tok-kw">var</span></code |
| 19d00 | 3e 20 77 68 65 6e 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 | >.when.declaring.a.variable..Thi |
| 19d20 | 73 20 63 61 75 73 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 | s.causes.less.work.for.both..... |
| 19d40 | 20 20 68 75 6d 61 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 | ..humans.and.computers.to.do.whe |
| 19d60 | 6e 20 72 65 61 64 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 | n.reading.code,.and.creates.more |
| 19d80 | 20 6f 70 74 69 6d 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 | .optimization.opportunities..... |
| 19da0 | 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 3c 63 6f 64 | ...</p>.......<p>.......The.<cod |
| 19dc0 | 65 3e 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 3c 2f 73 | e><span.class="tok-kw">extern</s |
| 19de0 | 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=" |
| 19e00 | 23 65 78 74 65 72 6e 22 3e 40 65 78 74 65 72 6e 3c 2f 61 3e 20 62 75 69 6c 74 69 6e 20 66 75 6e | #extern">@extern</a>.builtin.fun |
| 19e20 | 63 74 69 6f 6e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 6c 69 6e 6b 20 61 67 61 69 6e 73 | ction.can.be.used.to.link.agains |
| 19e40 | 74 20 61 20 76 61 72 69 61 62 6c 65 20 74 68 61 74 20 69 73 20 65 78 70 6f 72 74 65 64 0a 20 20 | t.a.variable.that.is.exported... |
| 19e60 | 20 20 20 20 66 72 6f 6d 20 61 6e 6f 74 68 65 72 20 6f 62 6a 65 63 74 2e 20 54 68 65 20 3c 63 6f | ....from.another.object..The.<co |
| 19e80 | 64 65 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 | de><span.class="tok-kw">export</ |
| 19ea0 | 73 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 | span></code>.keyword.or.<a.href= |
| 19ec0 | 22 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 | "#export">@export</a>.builtin.fu |
| 19ee0 | 6e 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 | nction.......can.be.used.to.make |
| 19f00 | 20 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 | .a.variable.available.to.other.o |
| 19f20 | 62 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 | bjects.at.link.time..In.both.cas |
| 19f40 | 65 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 | es,.......the.type.of.the.variab |
| 19f60 | 6c 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 | le.must.be.C.ABI.compatible..... |
| 19f80 | 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 |
| 19fa0 | 6c 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 | l>.<li><a.href="#Exporting-a-C-L |
| 19fc0 | 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 2f 61 | ibrary">Exporting.a.C.Library</a |
| 19fe0 | 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 64 65 | ></li>.</ul>.........<h3.id="Ide |
| 1a000 | 6e 74 69 66 69 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 64 65 6e 74 69 66 69 | ntifiers"><a.href="#toc-Identifi |
| 1a020 | 65 72 73 22 3e 49 64 65 6e 74 69 66 69 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | ers">Identifiers</a>.<a.class="h |
| 1a040 | 64 72 22 20 68 72 65 66 3d 22 23 49 64 65 6e 74 69 66 69 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f | dr".href="#Identifiers">..</a></ |
| 1a060 | 68 33 3e 0a 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 20 69 64 | h3>........<p>.......Variable.id |
| 1a080 | 65 6e 74 69 66 69 65 72 73 20 61 72 65 20 6e 65 76 65 72 20 61 6c 6c 6f 77 65 64 20 74 6f 20 73 | entifiers.are.never.allowed.to.s |
| 1a0a0 | 68 61 64 6f 77 20 69 64 65 6e 74 69 66 69 65 72 73 20 66 72 6f 6d 20 61 6e 20 6f 75 74 65 72 20 | hadow.identifiers.from.an.outer. |
| 1a0c0 | 73 63 6f 70 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 | scope........</p>.......<p>..... |
| 1a0e0 | 20 20 49 64 65 6e 74 69 66 69 65 72 73 20 6d 75 73 74 20 73 74 61 72 74 20 77 69 74 68 20 61 6e | ..Identifiers.must.start.with.an |
| 1a100 | 20 61 6c 70 68 61 62 65 74 69 63 20 63 68 61 72 61 63 74 65 72 20 6f 72 20 75 6e 64 65 72 73 63 | .alphabetic.character.or.undersc |
| 1a120 | 6f 72 65 20 61 6e 64 20 6d 61 79 20 62 65 20 66 6f 6c 6c 6f 77 65 64 0a 20 20 20 20 20 20 62 79 | ore.and.may.be.followed.......by |
| 1a140 | 20 61 6e 79 20 6e 75 6d 62 65 72 20 6f 66 20 61 6c 70 68 61 6e 75 6d 65 72 69 63 20 63 68 61 72 | .any.number.of.alphanumeric.char |
| 1a160 | 61 63 74 65 72 73 20 6f 72 20 75 6e 64 65 72 73 63 6f 72 65 73 2e 0a 20 20 20 20 20 20 54 68 65 | acters.or.underscores........The |
| 1a180 | 79 20 6d 75 73 74 20 6e 6f 74 20 6f 76 65 72 6c 61 70 20 77 69 74 68 20 61 6e 79 20 6b 65 79 77 | y.must.not.overlap.with.any.keyw |
| 1a1a0 | 6f 72 64 73 2e 20 53 65 65 20 3c 61 20 68 72 65 66 3d 22 23 4b 65 79 77 6f 72 64 2d 52 65 66 65 | ords..See.<a.href="#Keyword-Refe |
| 1a1c0 | 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 2e 0a 20 20 | rence">Keyword.Reference</a>.... |
| 1a1e0 | 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 61 20 6e 61 | ....</p>.......<p>.......If.a.na |
| 1a200 | 6d 65 20 74 68 61 74 20 64 6f 65 73 20 6e 6f 74 20 66 69 74 20 74 68 65 73 65 20 72 65 71 75 69 | me.that.does.not.fit.these.requi |
| 1a220 | 72 65 6d 65 6e 74 73 20 69 73 20 6e 65 65 64 65 64 2c 20 73 75 63 68 20 61 73 20 66 6f 72 20 6c | rements.is.needed,.such.as.for.l |
| 1a240 | 69 6e 6b 69 6e 67 20 77 69 74 68 20 65 78 74 65 72 6e 61 6c 20 6c 69 62 72 61 72 69 65 73 2c 20 | inking.with.external.libraries,. |
| 1a260 | 74 68 65 20 3c 63 6f 64 65 3e 40 26 71 75 6f 74 3b 26 71 75 6f 74 3b 3c 2f 63 6f 64 65 3e 20 73 | the.<code>@""</code>.s |
| 1a280 | 79 6e 74 61 78 20 6d 61 79 20 62 65 20 75 73 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | yntax.may.be.used........</p>... |
| 1a2a0 | 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a | ....<figure><figcaption.class="z |
| 1a2c0 | 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 69 64 65 6e 74 | ig-cap"><cite.class="file">ident |
| 1a2e0 | 69 66 69 65 72 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | ifiers.zig</cite></figcaption><p |
| 1a300 | 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | re><code><span.class="tok-kw">co |
| 1a320 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 40 26 71 75 6f 74 3b 69 64 65 6e 74 69 66 69 65 72 20 77 69 74 | nst</span>.@"identifier.wit |
| 1a340 | 68 20 73 70 61 63 65 73 20 69 6e 20 69 74 26 71 75 6f 74 3b 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | h.spaces.in.it".=.<span.cla |
| 1a360 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 66 66 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 | ss="tok-number">0xff</span>;.<sp |
| 1a380 | 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 40 | an.class="tok-kw">const</span>.@ |
| 1a3a0 | 26 71 75 6f 74 3b 31 53 6d 61 6c 6c 53 74 65 70 34 4d 61 6e 26 71 75 6f 74 3b 20 3d 20 3c 73 70 | "1SmallStep4Man".=.<sp |
| 1a3c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 31 32 33 35 38 3c 2f 73 70 | an.class="tok-number">112358</sp |
| 1a3e0 | 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 6e 73 74 | an>;..<span.class="tok-kw">const |
| 1a400 | 3c 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 | </span>.c.=.<span.class="tok-bui |
| 1a420 | 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 |
| 1a440 | 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 |
| 1a460 | 3e 29 2e 63 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 | >).c;.<span.class="tok-kw">pub</ |
| 1a480 | 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 78 74 65 72 | span>.<span.class="tok-kw">exter |
| 1a4a0 | 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 73 74 72 22 3e 26 | n</span>.<span.class="tok-str">& |
| 1a4c0 | 71 75 6f 74 3b 63 26 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 | quot;c"</span>.<span.class= |
| 1a4e0 | 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=" |
| 1a500 | 74 6f 6b 2d 66 6e 22 3e 40 26 71 75 6f 74 3b 65 72 72 6f 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | tok-fn">@"error"</span |
| 1a520 | 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< |
| 1a540 | 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 75 62 | /span>;.<span.class="tok-kw">pub |
| 1a560 | 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 78 74 | </span>.<span.class="tok-kw">ext |
| 1a580 | 65 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 73 74 72 22 | ern</span>.<span.class="tok-str" |
| 1a5a0 | 3e 26 71 75 6f 74 3b 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | >"c"</span>.<span.clas |
| 1a5c0 | 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 |
| 1a5e0 | 3d 22 74 6f 6b 2d 66 6e 22 3e 40 26 71 75 6f 74 3b 66 73 74 61 74 24 49 4e 4f 44 45 36 34 26 71 | ="tok-fn">@"fstat$INODE64&q |
| 1a600 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 28 66 64 3a 20 63 2e 66 64 5f 74 2c 20 62 75 66 3a 20 2a 63 2e | uot;</span>(fd:.c.fd_t,.buf:.*c. |
| 1a620 | 53 74 61 74 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 | Stat).<span.class="tok-type">c_i |
| 1a640 | 6e 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 | nt</span>;..<span.class="tok-kw" |
| 1a660 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 6f 6c 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | >const</span>.Color.=.<span.clas |
| 1a680 | 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 72 65 64 | s="tok-kw">enum</span>.{.....red |
| 1a6a0 | 2c 0a 20 20 20 20 40 26 71 75 6f 74 3b 72 65 61 6c 6c 79 20 72 65 64 26 71 75 6f 74 3b 2c 0a 7d | ,.....@"really.red",.} |
| 1a6c0 | 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 |
| 1a6e0 | 61 6e 3e 20 63 6f 6c 6f 72 3a 20 43 6f 6c 6f 72 20 3d 20 2e 40 26 71 75 6f 74 3b 72 65 61 6c 6c | an>.color:.Color.=..@"reall |
| 1a700 | 79 20 72 65 64 26 71 75 6f 74 3b 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | y.red";</code></pre></figur |
| 1a720 | 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 6f 6e 74 61 69 | e>................<h3.id="Contai |
| 1a740 | 6e 65 72 2d 4c 65 76 65 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | ner-Level-Variables"><a.href="#t |
| 1a760 | 6f 63 2d 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 | oc-Container-Level-Variables">Co |
| 1a780 | 6e 74 61 69 6e 65 72 20 4c 65 76 65 6c 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 | ntainer.Level.Variables</a>.<a.c |
| 1a7a0 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 6f 6e 74 61 69 6e 65 72 2d 4c 65 76 65 | lass="hdr".href="#Container-Leve |
| 1a7c0 | 6c 2d 56 61 72 69 61 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 | l-Variables">..</a></h3>........ |
| 1a7e0 | 3c 70 3e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 43 6f 6e 74 61 69 6e 65 72 73 22 3e | <p>.......<a.href="#Containers"> |
| 1a800 | 43 6f 6e 74 61 69 6e 65 72 3c 2f 61 3e 20 6c 65 76 65 6c 20 76 61 72 69 61 62 6c 65 73 20 68 61 | Container</a>.level.variables.ha |
| 1a820 | 76 65 20 73 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 | ve.static.lifetime.and.are.order |
| 1a840 | 2d 69 6e 64 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 | -independent.and.lazily.analyzed |
| 1a860 | 2e 0a 20 20 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 | ........The.initialization.value |
| 1a880 | 20 6f 66 20 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 | .of.container.level.variables.is |
| 1a8a0 | 20 69 6d 70 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 | .implicitly.......<a.href="#comp |
| 1a8c0 | 74 69 6d 65 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 | time">comptime</a>..If.a.contain |
| 1a8e0 | 65 72 20 6c 65 76 65 6c 20 76 61 72 69 61 62 6c 65 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | er.level.variable.is.<code><span |
| 1a900 | 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 6f | .class="tok-kw">const</span></co |
| 1a920 | 64 65 3e 20 74 68 65 6e 20 69 74 73 20 76 61 6c 75 65 20 69 73 0a 20 20 20 20 20 20 3c 63 6f 64 | de>.then.its.value.is.......<cod |
| 1a940 | 65 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 | e><span.class="tok-kw">comptime< |
| 1a960 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2d 6b 6e 6f 77 6e 2c 20 6f 74 68 65 72 77 69 73 65 20 69 | /span></code>-known,.otherwise.i |
| 1a980 | 74 20 69 73 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | t.is.runtime-known........</p>.. |
| 1a9a0 | 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 | .....<figure><figcaption.class=" |
| 1a9c0 | 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 | zig-cap"><cite.class="file">test |
| 1a9e0 | 5f 63 6f 6e 74 61 69 6e 65 72 5f 6c 65 76 65 6c 5f 76 61 72 69 61 62 6c 65 73 2e 7a 69 67 3c 2f | _container_level_variables.zig</ |
| 1aa00 | 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 | cite></figcaption><pre><code><sp |
| 1aa20 | 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 20 | an.class="tok-kw">var</span>.y:. |
| 1aa40 | 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 |
| 1aa60 | 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 62 65 72 22 | >.=.add(<span.class="tok-number" |
| 1aa80 | 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 22 74 6f 6b | >10</span>,.x);.<span.class="tok |
| 1aaa0 | 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 6c 61 73 73 | -kw">const</span>.x:.<span.class |
| 1aac0 | 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 28 3c 73 70 | ="tok-type">i32</span>.=.add(<sp |
| 1aae0 | 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 3e 2c | an.class="tok-number">12</span>, |
| 1ab00 | 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 3c 2f 73 70 | .<span.class="tok-number">34</sp |
| 1ab20 | 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 65 73 74 | an>);..<span.class="tok-kw">test |
| 1ab40 | 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 |
| 1ab60 | 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 73 26 71 75 | uot;container.level.variables&qu |
| 1ab80 | 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 |
| 1aba0 | 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 20 3c 73 70 | k-kw">try</span>.expect(x.==.<sp |
| 1abc0 | 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 61 6e 3e 29 | an.class="tok-number">46</span>) |
| 1abe0 | 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</ |
| 1ac00 | 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 73 3d 22 74 | span>.expect(y.==.<span.class="t |
| 1ac20 | 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 70 61 6e 20 | ok-number">56</span>);.}..<span. |
| 1ac40 | 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 |
| 1ac60 | 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 3c 73 70 61 | lass="tok-fn">add</span>(a:.<spa |
| 1ac80 | 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 62 | n.class="tok-type">i32</span>,.b |
| 1aca0 | 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 |
| 1acc0 | 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< |
| 1ace0 | 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 |
| 1ad00 | 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 70 61 6e 20 | ">return</span>.a.+.b;.}..<span. |
| 1ad20 | 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. |
| 1ad40 | 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 |
| 1ad60 | 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" |
| 1ad80 | 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. |
| 1ada0 | 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 |
| 1adc0 | 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 64 65 3e 3c | ct.=.std.testing.expect;</code>< |
| 1ade0 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | /pre></figure><figure><figcaptio |
| 1ae00 | 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 | n.class="shell-cap">Shell</figca |
| 1ae20 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 | ption><pre><samp>$.<kbd>zig.test |
| 1ae40 | 20 74 65 73 74 5f 63 6f 6e 74 61 69 6e 65 72 5f 6c 65 76 65 6c 5f 76 61 72 69 61 62 6c 65 73 2e | .test_container_level_variables. |
| 1ae60 | 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 63 6f 6e 74 61 69 6e 65 72 5f 6c 65 76 | zig</kbd>.1/1.test_container_lev |
| 1ae80 | 65 6c 5f 76 61 72 69 61 62 6c 65 73 2e 74 65 73 74 2e 63 6f 6e 74 61 69 6e 65 72 20 6c 65 76 65 | el_variables.test.container.leve |
| 1aea0 | 6c 20 76 61 72 69 61 62 6c 65 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 | l.variables...OK.All.1.tests.pas |
| 1aec0 | 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 | sed..</samp></pre></figure>..... |
| 1aee0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 74 61 69 6e 65 72 20 6c 65 76 65 6c 20 76 61 72 | ...<p>.......Container.level.var |
| 1af00 | 69 61 62 6c 65 73 20 6d 61 79 20 62 65 20 64 65 63 6c 61 72 65 64 20 69 6e 73 69 64 65 20 61 20 | iables.may.be.declared.inside.a. |
| 1af20 | 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 61 3e 2c 20 3c 61 | <a.href="#struct">struct</a>,.<a |
| 1af40 | 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 | .href="#union">union</a>,.<a.hre |
| 1af60 | 66 3d 22 23 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 | f="#enum">enum</a>,.or.<a.href=" |
| 1af80 | 23 6f 70 61 71 75 65 22 3e 6f 70 61 71 75 65 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | #opaque">opaque</a>:.......</p>. |
| 1afa0 | 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | ......<figure><figcaption.class= |
| 1afc0 | 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | "zig-cap"><cite.class="file">tes |
| 1afe0 | 74 5f 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 | t_namespaced_container_level_var |
| 1b000 | 69 61 62 6c 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 | iable.zig</cite></figcaption><pr |
| 1b020 | 65 3e 3c 63 6f 64 65 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 | e><code><span.class="tok-kw">con |
| 1b040 | 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 |
| 1b060 | 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 |
| 1b080 | 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"</ |
| 1b0a0 | 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 |
| 1b0c0 | 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 |
| 1b0e0 | 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 |
| 1b100 | 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">& |
| 1b120 | 71 75 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 | quot;namespaced.container.level. |
| 1b140 | 76 61 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 | variable"</span>.{.....<spa |
| 1b160 | 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 |
| 1b180 | 63 74 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 | ct(foo().==.<span.class="tok-num |
| 1b1a0 | 62 65 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 | ber">1235</span>);.....<span.cla |
| 1b1c0 | 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 6f | ss="tok-kw">try</span>.expect(fo |
| 1b1e0 | 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 72 22 3e | o().==.<span.class="tok-number"> |
| 1b200 | 31 32 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 | 1236</span>);.}..<span.class="to |
| 1b220 | 6b 2d 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 | k-kw">const</span>.S.=.<span.cla |
| 1b240 | 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>.{..... |
| 1b260 | 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>. |
| 1b280 | 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 2f 73 | x:.<span.class="tok-type">i32</s |
| 1b2a0 | 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"> |
| 1b2c0 | 31 32 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 | 1234</span>;.};..<span.class="to |
| 1b2e0 | 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 |
| 1b300 | 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 22 74 | -fn">foo</span>().<span.class="t |
| 1b320 | 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 53 2e 78 20 2b 3d | ok-type">i32</span>.{.....S.x.+= |
| 1b340 | 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 |
| 1b360 | 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 65 74 | n>;.....<span.class="tok-kw">ret |
| 1b380 | 75 72 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 2f | urn</span>.S.x;.}</code></pre></ |
| 1b3a0 | 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | figure><figure><figcaption.class |
| 1b3c0 | 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | ="shell-cap">Shell</figcaption>< |
| 1b3e0 | 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 6e | pre><samp>$.<kbd>zig.test.test_n |
| 1b400 | 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 62 | amespaced_container_level_variab |
| 1b420 | 6c 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 6e 61 6d 65 73 70 61 63 65 64 | le.zig</kbd>.1/1.test_namespaced |
| 1b440 | 5f 63 6f 6e 74 61 69 6e 65 72 5f 6c 65 76 65 6c 5f 76 61 72 69 61 62 6c 65 2e 74 65 73 74 2e 6e | _container_level_variable.test.n |
| 1b460 | 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 72 69 61 62 | amespaced.container.level.variab |
| 1b480 | 6c 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 | le...OK.All.1.tests.passed..</sa |
| 1b4a0 | 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 | mp></pre></figure>.............. |
| 1b4c0 | 20 20 3c 68 33 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 | ..<h3.id="Static-Local-Variables |
| 1b4e0 | 22 3e 3c 61 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 | "><a.href="#toc-Static-Local-Var |
| 1b500 | 69 61 62 6c 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 | iables">Static.Local.Variables</ |
| 1b520 | 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 61 74 69 63 2d | a>.<a.class="hdr".href="#Static- |
| 1b540 | 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | Local-Variables">..</a></h3>.... |
| 1b560 | 20 20 20 20 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 | ....<p>.........It.is.also.possi |
| 1b580 | 62 6c 65 20 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 | ble.to.have.local.variables.with |
| 1b5a0 | 20 73 74 61 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 | .static.lifetime.by.using.contai |
| 1b5c0 | 6e 65 72 73 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 | ners.inside.functions........</p |
| 1b5e0 | 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 | >.......<figure><figcaption.clas |
| 1b600 | 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | s="zig-cap"><cite.class="file">t |
| 1b620 | 65 73 74 5f 73 74 61 74 69 63 5f 6c 6f 63 61 6c 5f 76 61 72 69 61 62 6c 65 2e 7a 69 67 3c 2f 63 | est_static_local_variable.zig</c |
| 1b640 | 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 | ite></figcaption><pre><code><spa |
| 1b660 | 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 |
| 1b680 | 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 |
| 1b6a0 | 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 |
| 1b6c0 | 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 |
| 1b6e0 | 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 |
| 1b700 | 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 |
| 1b720 | 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 |
| 1b740 | 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 61 74 69 63 20 | an.class="tok-str">"static. |
| 1b760 | 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | local.variable"</span>.{... |
| 1b780 | 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 |
| 1b7a0 | 3e 20 65 78 70 65 63 74 28 66 6f 6f 28 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >.expect(foo().==.<span.class="t |
| 1b7c0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 35 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 | ok-number">1235</span>);.....<sp |
| 1b7e0 | 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 |
| 1b800 | 65 63 74 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 | ect(foo().==.<span.class="tok-nu |
| 1b820 | 6d 62 65 72 22 3e 31 32 33 36 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | mber">1236</span>);.}..<span.cla |
| 1b840 | 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 |
| 1b860 | 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 6e 20 63 6c | s="tok-fn">foo</span>().<span.cl |
| 1b880 | 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 20 | ass="tok-type">i32</span>.{..... |
| 1b8a0 | 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 |
| 1b8c0 | 3e 20 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 | >.S.=.<span.class="tok-kw">struc |
| 1b8e0 | 74 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 | t</span>.{.........<span.class=" |
| 1b900 | 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 |
| 1b920 | 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. |
| 1b940 | 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>;. |
| 1b960 | 20 20 20 20 7d 3b 0a 20 20 20 20 53 2e 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ....};.....S.x.+=.<span.class="t |
| 1b980 | 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 20 63 | ok-number">1</span>;.....<span.c |
| 1b9a0 | 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 53 2e 78 3b | lass="tok-kw">return</span>.S.x; |
| 1b9c0 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e | .}</code></pre></figure><figure> |
| 1b9e0 | 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 | <figcaption.class="shell-cap">Sh |
| 1ba00 | 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 | ell</figcaption><pre><samp>$.<kb |
| 1ba20 | 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 73 74 61 74 69 63 5f 6c 6f 63 61 6c 5f 76 61 72 | d>zig.test.test_static_local_var |
| 1ba40 | 69 61 62 6c 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 74 61 74 69 63 5f | iable.zig</kbd>.1/1.test_static_ |
| 1ba60 | 6c 6f 63 61 6c 5f 76 61 72 69 61 62 6c 65 2e 74 65 73 74 2e 73 74 61 74 69 63 20 6c 6f 63 61 6c | local_variable.test.static.local |
| 1ba80 | 20 76 61 72 69 61 62 6c 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 | .variable...OK.All.1.tests.passe |
| 1baa0 | 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 | d..</samp></pre></figure>....... |
| 1bac0 | 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 68 72 65 61 64 2d 4c 6f 63 61 6c 2d 56 61 | .........<h3.id="Thread-Local-Va |
| 1bae0 | 72 69 61 62 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 68 72 65 61 64 2d 4c 6f | riables"><a.href="#toc-Thread-Lo |
| 1bb00 | 63 61 6c 2d 56 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 | cal-Variables">Thread.Local.Vari |
| 1bb20 | 61 62 6c 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 | ables</a>.<a.class="hdr".href="# |
| 1bb40 | 54 68 72 65 61 64 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f | Thread-Local-Variables">..</a></ |
| 1bb60 | 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 20 76 61 72 69 61 62 6c 65 20 6d 61 79 20 62 65 20 | h3>........<p>A.variable.may.be. |
| 1bb80 | 73 70 65 63 69 66 69 65 64 20 74 6f 20 62 65 20 61 20 74 68 72 65 61 64 2d 6c 6f 63 61 6c 20 76 | specified.to.be.a.thread-local.v |
| 1bba0 | 61 72 69 61 62 6c 65 20 75 73 69 6e 67 20 74 68 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 | ariable.using.the.......<code><s |
| 1bbc0 | 70 61 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 | pan.class="tok-kw">threadlocal</ |
| 1bbe0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 2c 0a 20 20 20 20 20 20 77 68 69 63 | span></code>.keyword,.......whic |
| 1bc00 | 68 20 6d 61 6b 65 73 20 65 61 63 68 20 74 68 72 65 61 64 20 77 6f 72 6b 20 77 69 74 68 20 61 20 | h.makes.each.thread.work.with.a. |
| 1bc20 | 73 65 70 61 72 61 74 65 20 69 6e 73 74 61 6e 63 65 20 6f 66 20 74 68 65 20 76 61 72 69 61 62 6c | separate.instance.of.the.variabl |
| 1bc40 | 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e | e:</p>.......<figure><figcaption |
| 1bc60 | 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 | .class="zig-cap"><cite.class="fi |
| 1bc80 | 6c 65 22 3e 74 65 73 74 5f 74 68 72 65 61 64 5f 6c 6f 63 61 6c 5f 76 61 72 69 61 62 6c 65 73 2e | le">test_thread_local_variables. |
| 1bca0 | 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 | zig</cite></figcaption><pre><cod |
| 1bcc0 | 65 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 | e><span.class="tok-kw">const</sp |
| 1bce0 | 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 |
| 1bd00 | 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=" |
| 1bd20 | 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>) |
| 1bd40 | 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 |
| 1bd60 | 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;.. |
| 1bd80 | 3c 73 70 61 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 | <span.class="tok-kw">threadlocal |
| 1bda0 | 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 61 72 | </span>.<span.class="tok-kw">var |
| 1bdc0 | 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 |
| 1bde0 | 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- |
| 1be00 | 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | number">1234</span>;..<span.clas |
| 1be20 | 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 |
| 1be40 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 72 65 61 64 20 6c 6f 63 61 6c 20 | ss="tok-str">"thread.local. |
| 1be60 | 73 74 6f 72 61 67 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 | storage"</span>.{.....<span |
| 1be80 | 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 68 72 | .class="tok-kw">const</span>.thr |
| 1bea0 | 65 61 64 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 74 72 79 3c | ead1.=.<span.class="tok-kw">try< |
| 1bec0 | 2f 73 70 61 6e 3e 20 73 74 64 2e 54 68 72 65 61 64 2e 73 70 61 77 6e 28 2e 7b 7d 2c 20 74 65 73 | /span>.std.Thread.spawn(.{},.tes |
| 1bee0 | 74 54 6c 73 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 | tTls,..{});.....<span.class="tok |
| 1bf00 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 68 72 65 61 64 32 20 3d 20 3c 73 70 61 | -kw">const</span>.thread2.=.<spa |
| 1bf20 | 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. |
| 1bf40 | 54 68 72 65 61 64 2e 73 70 61 77 6e 28 2e 7b 7d 2c 20 74 65 73 74 54 6c 73 2c 20 2e 7b 7d 29 3b | Thread.spawn(.{},.testTls,..{}); |
| 1bf60 | 0a 20 20 20 20 74 65 73 74 54 6c 73 28 29 3b 0a 20 20 20 20 74 68 72 65 61 64 31 2e 6a 6f 69 6e | .....testTls();.....thread1.join |
| 1bf80 | 28 29 3b 0a 20 20 20 20 74 68 72 65 61 64 32 2e 6a 6f 69 6e 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e | ();.....thread2.join();.}..<span |
| 1bfa0 | 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. |
| 1bfc0 | 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 3e 28 29 20 | class="tok-fn">testTls</span>(). |
| 1bfe0 | 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 |
| 1c000 | 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | n>.{.....assert(x.==.<span.class |
| 1c020 | 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>);..... |
| 1c040 | 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< |
| 1c060 | 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 61 73 73 65 72 74 28 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | /span>;.....assert(x.==.<span.cl |
| 1c080 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 35 3c 2f 73 70 61 6e 3e 29 3b 0a 7d | ass="tok-number">1235</span>);.} |
| 1c0a0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 | </code></pre></figure><figure><f |
| 1c0c0 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c | igcaption.class="shell-cap">Shel |
| 1c0e0 | 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e | l</figcaption><pre><samp>$.<kbd> |
| 1c100 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 74 68 72 65 61 64 5f 6c 6f 63 61 6c 5f 76 61 72 69 61 | zig.test.test_thread_local_varia |
| 1c120 | 62 6c 65 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 74 68 72 65 61 64 5f 6c | bles.zig</kbd>.1/1.test_thread_l |
| 1c140 | 6f 63 61 6c 5f 76 61 72 69 61 62 6c 65 73 2e 74 65 73 74 2e 74 68 72 65 61 64 20 6c 6f 63 61 6c | ocal_variables.test.thread.local |
| 1c160 | 20 73 74 6f 72 61 67 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 | .storage...OK.All.1.tests.passed |
| 1c180 | 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 | ..</samp></pre></figure>........ |
| 1c1a0 | 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 69 6e 67 6c 65 2d 54 | <p>.......For.<a.href="#Single-T |
| 1c1c0 | 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 72 65 61 64 65 64 20 | hreaded-Builds">Single.Threaded. |
| 1c1e0 | 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 63 61 6c 20 76 61 72 | Builds</a>,.all.thread.local.var |
| 1c200 | 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 75 6c 61 72 20 3c 61 | iables.are.treated.as.regular.<a |
| 1c220 | 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 |
| 1c240 | 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 6c 65 73 3c 2f 61 3e | s">Container.Level.Variables</a> |
| 1c260 | 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 72 | ........</p>.......<p>.......Thr |
| 1c280 | 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 6f 74 20 62 65 20 3c | ead.local.variables.may.not.be.< |
| 1c2a0 | 63 6f 64 65 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 | code><span.class="tok-kw">const< |
| 1c2c0 | 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>....... |
| 1c2e0 | 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 | ........<h3.id="Local-Variables" |
| 1c300 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e | ><a.href="#toc-Local-Variables"> |
| 1c320 | 4c 6f 63 61 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 | Local.Variables</a>.<a.class="hd |
| 1c340 | 72 22 20 68 72 65 66 3d 22 23 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e c2 a7 3c 2f 61 | r".href="#Local-Variables">..</a |
| 1c360 | 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4c 6f 63 61 6c 20 76 61 | ></h3>........<p>.......Local.va |
| 1c380 | 72 69 61 62 6c 65 73 20 6f 63 63 75 72 20 69 6e 73 69 64 65 20 3c 61 20 68 72 65 66 3d 22 23 46 | riables.occur.inside.<a.href="#F |
| 1c3a0 | 75 6e 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 | unctions">Functions</a>,.<a.href |
| 1c3c0 | 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 20 62 6c 6f 63 6b 73 | ="#comptime">comptime</a>.blocks |
| 1c3e0 | 2c 20 61 6e 64 20 3c 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 | ,.and.<a.href="#cImport">@cImpor |
| 1c400 | 74 3c 2f 61 3e 20 62 6c 6f 63 6b 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | t</a>.blocks........</p>.......< |
| 1c420 | 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 61 20 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 20 69 | p>.......When.a.local.variable.i |
| 1c440 | 73 20 3c 63 6f 64 65 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.<code><span.class="tok-kw">con |
| 1c460 | 73 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 | st</span></code>,.it.means.that. |
| 1c480 | 61 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 | after.initialization,.the.variab |
| 1c4a0 | 6c 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 | le's.......value.will.not.change |
| 1c4c0 | 2e 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 | ..If.the.initialization.value.of |
| 1c4e0 | 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | .a.<code><span.class="tok-kw">co |
| 1c500 | 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 61 72 69 61 62 6c 65 20 69 73 0a 20 20 | nst</span></code>.variable.is... |
| 1c520 | 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 65 | ....<a.href="#comptime">comptime |
| 1c540 | 3c 2f 61 3e 2d 6b 6e 6f 77 6e 2c 20 74 68 65 6e 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 69 73 | </a>-known,.then.the.variable.is |
| 1c560 | 20 61 6c 73 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .also.<code><span.class="tok-kw" |
| 1c580 | 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2d 6b 6e 6f 77 6e 2e 0a 20 | >comptime</span></code>-known... |
| 1c5a0 | 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 20 6c 6f 63 61 | .....</p>.......<p>.......A.loca |
| 1c5c0 | 6c 20 76 61 72 69 61 62 6c 65 20 6d 61 79 20 62 65 20 71 75 61 6c 69 66 69 65 64 20 77 69 74 68 | l.variable.may.be.qualified.with |
| 1c5e0 | 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .the.<code><span.class="tok-kw"> |
| 1c600 | 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 64 2e 20 | comptime</span></code>.keyword.. |
| 1c620 | 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 65 27 73 | This.causes.......the.variable's |
| 1c640 | 20 76 61 6c 75 65 20 74 6f 20 62 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .value.to.be.<code><span.class=" |
| 1c660 | 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 3e 2d 6b | tok-kw">comptime</span></code>-k |
| 1c680 | 6e 6f 77 6e 2c 20 61 6e 64 20 61 6c 6c 20 6c 6f 61 64 73 20 61 6e 64 20 73 74 6f 72 65 73 20 6f | nown,.and.all.loads.and.stores.o |
| 1c6a0 | 66 20 74 68 65 0a 20 20 20 20 20 20 76 61 72 69 61 62 6c 65 20 74 6f 20 68 61 70 70 65 6e 20 64 | f.the.......variable.to.happen.d |
| 1c6c0 | 75 72 69 6e 67 20 73 65 6d 61 6e 74 69 63 20 61 6e 61 6c 79 73 69 73 20 6f 66 20 74 68 65 20 70 | uring.semantic.analysis.of.the.p |
| 1c6e0 | 72 6f 67 72 61 6d 2c 20 72 61 74 68 65 72 20 74 68 61 6e 20 61 74 20 72 75 6e 74 69 6d 65 2e 0a | rogram,.rather.than.at.runtime.. |
| 1c700 | 20 20 20 20 20 20 41 6c 6c 20 76 61 72 69 61 62 6c 65 73 20 64 65 63 6c 61 72 65 64 20 69 6e 20 | ......All.variables.declared.in. |
| 1c720 | 61 20 3c 63 6f 64 65 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 | a.<code><span.class="tok-kw">com |
| 1c740 | 70 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 20 61 | ptime</span></code>.expression.a |
| 1c760 | 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 3e 3c 73 70 61 6e 20 | re.implicitly.......<code><span. |
| 1c780 | 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></ |
| 1c7a0 | 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 70 3e 0a 20 20 20 20 | code>.variables........</p>..... |
| 1c7c0 | 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 | ..<figure><figcaption.class="zig |
| 1c7e0 | 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f | -cap"><cite.class="file">test_co |
| 1c800 | 6d 70 74 69 6d 65 5f 76 61 72 69 61 62 6c 65 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | mptime_variables.zig</cite></fig |
| 1c820 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | caption><pre><code><span.class=" |
| 1c840 | 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 |
| 1c860 | 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 |
| 1c880 | 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">" |
| 1c8a0 | 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=" |
| 1c8c0 | 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 |
| 1c8e0 | 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 22 | d.testing.expect;..<span.class=" |
| 1c900 | 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= |
| 1c920 | 22 74 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 72 73 26 71 75 | "tok-str">"comptime.vars&qu |
| 1c940 | 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 |
| 1c960 | 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= |
| 1c980 | 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 6c | "tok-type">i32</span>.=.<span.cl |
| 1c9a0 | 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>;.....< |
| 1c9c0 | 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 |
| 1c9e0 | 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 61 72 3c 2f 73 70 | an>.<span.class="tok-kw">var</sp |
| 1ca00 | 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 69 33 | an>.y:.<span.class="tok-type">i3 |
| 1ca20 | 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 |
| 1ca40 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c | er">1</span>;......x.+=.<span.cl |
| 1ca60 | 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 79 | ass="tok-number">1</span>;.....y |
| 1ca80 | 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</ |
| 1caa0 | 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 22 | span>;......<span.class="tok-kw" |
| 1cac0 | 3e 74 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 | >try</span>.expect(x.==.<span.cl |
| 1cae0 | 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 0a 20 20 20 20 | ass="tok-number">2</span>);..... |
| 1cb00 | 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>. |
| 1cb20 | 65 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 | expect(y.==.<span.class="tok-num |
| 1cb40 | 62 65 72 22 3e 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 | ber">2</span>);......<span.class |
| 1cb60 | 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 79 20 21 3d 20 3c 73 70 61 6e 20 | ="tok-kw">if</span>.(y.!=.<span. |
| 1cb80 | 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 20 7b 0a 20 | class="tok-number">2</span>).{.. |
| 1cba0 | 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" |
| 1cbc0 | 3e 2f 2f 20 54 68 69 73 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 6e 65 76 65 72 20 74 72 69 | >//.This.compile.error.never.tri |
| 1cbe0 | 67 67 65 72 73 20 62 65 63 61 75 73 65 20 79 20 69 73 20 61 20 63 6f 6d 70 74 69 6d 65 20 76 61 | ggers.because.y.is.a.comptime.va |
| 1cc00 | 72 69 61 62 6c 65 2c 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 | riable,</span>.........<span.cla |
| 1cc20 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 6e 64 20 73 6f 20 60 79 20 21 3d | ss="tok-comment">//.and.so.`y.!= |
| 1cc40 | 20 32 60 20 69 73 20 61 20 63 6f 6d 70 74 69 6d 65 20 76 61 6c 75 65 2c 20 61 6e 64 20 74 68 69 | .2`.is.a.comptime.value,.and.thi |
| 1cc60 | 73 20 69 66 20 69 73 20 73 74 61 74 69 63 61 6c 6c 79 20 65 76 61 6c 75 61 74 65 64 2e 3c 2f 73 | s.if.is.statically.evaluated.</s |
| 1cc80 | 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 62 75 | pan>.........<span.class="tok-bu |
| 1cca0 | 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 70 61 | iltin">@compileError</span>(<spa |
| 1ccc0 | 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 72 6f 6e 67 20 79 20 | n.class="tok-str">"wrong.y. |
| 1cce0 | 76 61 6c 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f | value"</span>);.....}.}</co |
| 1cd00 | 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | de></pre></figure><figure><figca |
| 1cd20 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 | ption.class="shell-cap">Shell</f |
| 1cd40 | 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 | igcaption><pre><samp>$.<kbd>zig. |
| 1cd60 | 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 76 61 72 69 61 62 6c 65 73 2e 7a 69 67 | test.test_comptime_variables.zig |
| 1cd80 | 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 76 61 72 69 61 62 6c | </kbd>.1/1.test_comptime_variabl |
| 1cda0 | 65 73 2e 74 65 73 74 2e 63 6f 6d 70 74 69 6d 65 20 76 61 72 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 | es.test.comptime.vars...OK.All.1 |
| 1cdc0 | 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | .tests.passed..</samp></pre></fi |
| 1cde0 | 67 75 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 32 20 | gure>.......................<h2. |
| 1ce00 | 69 64 3d 22 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 | id="Integers"><a.href="#toc-Inte |
| 1ce20 | 67 65 72 73 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 | gers">Integers</a>.<a.class="hdr |
| 1ce40 | 22 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a | ".href="#Integers">..</a></h2>.. |
| 1ce60 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 6e 74 65 67 65 72 2d 4c 69 74 65 72 61 6c 73 22 3e | ......<h3.id="Integer-Literals"> |
| 1ce80 | 3c 61 20 68 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 | <a.href="#toc-Integer-Literals"> |
| 1cea0 | 49 6e 74 65 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 | Integer.Literals</a>.<a.class="h |
| 1cec0 | 64 72 22 20 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 | dr".href="#Integer-Literals">..< |
| 1cee0 | 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | /a></h3>........<figure><figcapt |
| 1cf00 | 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d | ion.class="zig-cap"><cite.class= |
| 1cf20 | 22 66 69 6c 65 22 3e 69 6e 74 65 67 65 72 5f 6c 69 74 65 72 61 6c 73 2e 7a 69 67 3c 2f 63 69 74 | "file">integer_literals.zig</cit |
| 1cf40 | 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | e></figcaption><pre><code><span. |
| 1cf60 | 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 65 63 69 | class="tok-kw">const</span>.deci |
| 1cf80 | 6d 61 6c 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 | mal_int.=.<span.class="tok-numbe |
| 1cfa0 | 72 22 3e 39 38 32 32 32 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">98222</span>;.<span.class="to |
| 1cfc0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 65 78 5f 69 6e 74 20 3d 20 3c 73 70 | k-kw">const</span>.hex_int.=.<sp |
| 1cfe0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 66 66 3c 2f 73 70 61 6e | an.class="tok-number">0xff</span |
| 1d000 | 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 |
| 1d020 | 70 61 6e 3e 20 61 6e 6f 74 68 65 72 5f 68 65 78 5f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | pan>.another_hex_int.=.<span.cla |
| 1d040 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 46 46 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 | ss="tok-number">0xFF</span>;.<sp |
| 1d060 | 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 |
| 1d080 | 63 74 61 6c 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 | ctal_int.=.<span.class="tok-numb |
| 1d0a0 | 65 72 22 3e 30 6f 37 35 35 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | er">0o755</span>;.<span.class="t |
| 1d0c0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 69 6e 61 72 79 5f 69 6e 74 20 3d | ok-kw">const</span>.binary_int.= |
| 1d0e0 | 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 31 31 31 | .<span.class="tok-number">0b1111 |
| 1d100 | 30 30 30 30 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 63 | 0000</span>;..<span.class="tok-c |
| 1d120 | 6f 6d 6d 65 6e 74 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 | omment">//.underscores.may.be.pl |
| 1d140 | 61 63 65 64 20 62 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 | aced.between.two.digits.as.a.vis |
| 1d160 | 75 61 6c 20 73 65 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 | ual.separator</span>.<span.class |
| 1d180 | 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 65 5f 62 69 6c 6c 69 | ="tok-kw">const</span>.one_billi |
| 1d1a0 | 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 62 65 72 22 3e 31 5f | on.=.<span.class="tok-number">1_ |
| 1d1c0 | 30 30 30 5f 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 | 000_000_000</span>;.<span.class= |
| 1d1e0 | 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 61 72 79 5f 6d 61 73 | "tok-kw">const</span>.binary_mas |
| 1d200 | 6b 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 62 31 | k.=.<span.class="tok-number">0b1 |
| 1d220 | 5f 31 31 31 31 5f 31 31 31 31 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | _1111_1111</span>;.<span.class=" |
| 1d240 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 65 72 6d 69 73 73 69 6f 6e 73 | tok-kw">const</span>.permissions |
| 1d260 | 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 6f 37 5f | .=.<span.class="tok-number">0o7_ |
| 1d280 | 35 5f 35 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 | 5_5</span>;.<span.class="tok-kw" |
| 1d2a0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 69 67 5f 61 64 64 72 65 73 73 20 3d 20 3c 73 70 61 | >const</span>.big_address.=.<spa |
| 1d2c0 | 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 38 30 5f 30 30 30 30 | n.class="tok-number">0xFF80_0000 |
| 1d2e0 | 5f 30 30 30 30 5f 30 30 30 30 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | _0000_0000</span>;</code></pre>< |
| 1d300 | 2f 66 69 67 75 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 52 | /figure>...............<h3.id="R |
| 1d320 | 75 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 | untime-Integer-Values"><a.href=" |
| 1d340 | 23 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 | #toc-Runtime-Integer-Values">Run |
| 1d360 | 74 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 | time.Integer.Values</a>.<a.class |
| 1d380 | 3d 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 | ="hdr".href="#Runtime-Integer-Va |
| 1d3a0 | 6c 75 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 | lues">..</a></h3>........<p>.... |
| 1d3c0 | 20 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 | ...Integer.literals.have.no.size |
| 1d3e0 | 20 6c 69 6d 69 74 61 74 69 6f 6e 2c 20 61 6e 64 20 69 66 20 61 6e 79 20 49 6c 6c 65 67 61 6c 20 | .limitation,.and.if.any.Illegal. |
| 1d400 | 42 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 69 | Behavior.occurs,.......the.compi |
| 1d420 | 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 20 | ler.catches.it........</p>...... |
| 1d440 | 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 65 | .<p>.......However,.once.an.inte |
| 1d460 | 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 20 | ger.value.is.no.longer.known.at. |
| 1d480 | 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 20 | compile-time,.it.must.have.a.... |
| 1d4a0 | 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 65 | ...known.size,.and.is.vulnerable |
| 1d4c0 | 20 74 6f 20 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 49 6c 6c | .to.safety-checked.<a.href="#Ill |
| 1d4e0 | 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c | egal-Behavior">Illegal.Behavior< |
| 1d500 | 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 | /a>........</p>.......<figure><f |
| 1d520 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 | igcaption.class="zig-cap"><cite. |
| 1d540 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 76 73 5f 63 6f 6d 70 74 69 6d 65 | class="file">runtime_vs_comptime |
| 1d560 | 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f | .zig</cite></figcaption><pre><co |
| 1d580 | 64 65 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 | de><span.class="tok-kw">fn</span |
| 1d5a0 | 3e 20 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 | >.<span.class="tok-fn">divide</s |
| 1d5c0 | 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 69 | pan>(a:.<span.class="tok-type">i |
| 1d5e0 | 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 74 | 32</span>,.b:.<span.class="tok-t |
| 1d600 | 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 |
| 1d620 | 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 6e 20 63 | k-type">i32</span>.{.....<span.c |
| 1d640 | 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 61 20 2f 20 | lass="tok-kw">return</span>.a./. |
| 1d660 | 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 | b;.}</code></pre></figure>...... |
| 1d680 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 2c 20 76 61 | ..<p>.......In.this.function,.va |
| 1d6a0 | 6c 75 65 73 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 62 3c | lues.<code>a</code>.and.<code>b< |
| 1d6c0 | 2f 63 6f 64 65 3e 20 61 72 65 20 6b 6e 6f 77 6e 20 6f 6e 6c 79 20 61 74 20 72 75 6e 74 69 6d 65 | /code>.are.known.only.at.runtime |
| 1d6e0 | 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 68 75 73 20 74 68 69 73 20 64 69 76 69 73 69 6f 6e 20 6f | ,.......and.thus.this.division.o |
| 1d700 | 70 65 72 61 74 69 6f 6e 20 69 73 20 76 75 6c 6e 65 72 61 62 6c 65 20 74 6f 20 62 6f 74 68 20 3c | peration.is.vulnerable.to.both.< |
| 1d720 | 61 20 68 72 65 66 3d 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 | a.href="#Integer-Overflow">Integ |
| 1d740 | 65 72 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 61 6e 64 0a 20 20 20 20 20 20 3c 61 20 68 72 65 | er.Overflow</a>.and.......<a.hre |
| 1d760 | 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 20 62 | f="#Division-by-Zero">Division.b |
| 1d780 | 79 20 5a 65 72 6f 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 | y.Zero</a>........</p>.......<p> |
| 1d7a0 | 0a 20 20 20 20 20 20 4f 70 65 72 61 74 6f 72 73 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 3e 2b | .......Operators.such.as.<code>+ |
| 1d7c0 | 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 2d 3c 2f 63 6f 64 65 3e 20 63 61 75 73 65 | </code>.and.<code>-</code>.cause |
| 1d7e0 | 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c | .<a.href="#Illegal-Behavior">Ill |
| 1d800 | 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 20 6f 6e 0a 20 20 20 20 20 20 69 6e 74 65 67 | egal.Behavior</a>.on.......integ |
| 1d820 | 65 72 20 6f 76 65 72 66 6c 6f 77 2e 20 41 6c 74 65 72 6e 61 74 69 76 65 20 6f 70 65 72 61 74 6f | er.overflow..Alternative.operato |
| 1d840 | 72 73 20 61 72 65 20 70 72 6f 76 69 64 65 64 20 66 6f 72 20 77 72 61 70 70 69 6e 67 20 61 6e 64 | rs.are.provided.for.wrapping.and |
| 1d860 | 20 73 61 74 75 72 61 74 69 6e 67 20 61 72 69 74 68 6d 65 74 69 63 20 6f 6e 20 61 6c 6c 20 74 61 | .saturating.arithmetic.on.all.ta |
| 1d880 | 72 67 65 74 73 2e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 2b 25 3c 2f 63 6f 64 65 3e 20 61 6e 64 | rgets........<code>+%</code>.and |
| 1d8a0 | 20 3c 63 6f 64 65 3e 2d 25 3c 2f 63 6f 64 65 3e 20 70 65 72 66 6f 72 6d 20 77 72 61 70 70 69 6e | .<code>-%</code>.perform.wrappin |
| 1d8c0 | 67 20 61 72 69 74 68 6d 65 74 69 63 0a 20 20 20 20 20 20 77 68 69 6c 65 20 3c 63 6f 64 65 3e 2b | g.arithmetic.......while.<code>+ |
| 1d8e0 | 7c 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 2d 7c 3c 2f 63 6f 64 65 3e 20 70 65 72 | |</code>.and.<code>-|</code>.per |
| 1d900 | 66 6f 72 6d 20 73 61 74 75 72 61 74 69 6e 67 20 61 72 69 74 68 6d 65 74 69 63 2e 0a 20 20 20 20 | form.saturating.arithmetic...... |
| 1d920 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 73 75 70 70 6f | ..</p>.......<p>.......Zig.suppo |
| 1d940 | 72 74 73 20 61 72 62 69 74 72 61 72 79 20 62 69 74 2d 77 69 64 74 68 20 69 6e 74 65 67 65 72 73 | rts.arbitrary.bit-width.integers |
| 1d960 | 2c 20 72 65 66 65 72 65 6e 63 65 64 20 62 79 20 75 73 69 6e 67 0a 20 20 20 20 20 20 61 6e 20 69 | ,.referenced.by.using.......an.i |
| 1d980 | 64 65 6e 74 69 66 69 65 72 20 6f 66 20 3c 63 6f 64 65 3e 69 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c | dentifier.of.<code>i</code>.or.< |
| 1d9a0 | 63 6f 64 65 3e 75 3c 2f 63 6f 64 65 3e 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 64 69 67 69 74 73 | code>u</code>.followed.by.digits |
| 1d9c0 | 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 69 64 65 6e 74 69 66 69 65 72 0a 20 20 | ..For.example,.the.identifier... |
| 1d9e0 | 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ....<code><span.class="tok-type" |
| 1da00 | 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 20 73 69 | >i7</span></code>.refers.to.a.si |
| 1da20 | 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 75 6d 20 | gned.7-bit.integer..The.maximum. |
| 1da40 | 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 20 69 6e | allowed.bit-width.of.an.......in |
| 1da60 | 74 65 67 65 72 20 74 79 70 65 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | teger.type.is.<code><span.class= |
| 1da80 | 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 3c 2f 63 6f 64 65 3e | "tok-number">65535</span></code> |
| 1daa0 | 2e 20 46 6f 72 20 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 74 79 70 65 73 2c 20 5a 69 67 20 | ..For.signed.integer.types,.Zig. |
| 1dac0 | 75 73 65 73 20 61 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 65 6e | uses.a.......<a.href="https://en |
| 1dae0 | 2e 77 69 6b 69 70 65 64 69 61 2e 6f 72 67 2f 77 69 6b 69 2f 54 77 6f 27 73 5f 63 6f 6d 70 6c 65 | .wikipedia.org/wiki/Two's_comple |
| 1db00 | 6d 65 6e 74 22 3e 74 77 6f 27 73 20 63 6f 6d 70 6c 65 6d 65 6e 74 3c 2f 61 3e 20 72 65 70 72 65 | ment">two's.complement</a>.repre |
| 1db20 | 73 65 6e 74 61 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 53 | sentation........</p>.......<p>S |
| 1db40 | 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 |
| 1db60 | 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 |
| 1db80 | 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>.......... |
| 1dba0 | 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 73 22 3e 3c 61 20 68 | ............<h2.id="Floats"><a.h |
| 1dbc0 | 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. |
| 1dbe0 | 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 |
| 1dc00 | 3e 3c 2f 68 32 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 | ></h2>........<p>Zig.has.the.fol |
| 1dc20 | 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> |
| 1dc40 | 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 3e | .......<ul>...........<li><code> |
| 1dc60 | 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 61 6e | <span.class="tok-type">f16</span |
| 1dc80 | 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 79 31 | ></code>.-.IEEE-754-2008.binary1 |
| 1dca0 | 36 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 3e 3c 73 70 61 6e | 6</li>...........<li><code><span |
| 1dcc0 | 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 3c 2f 63 6f | .class="tok-type">f32</span></co |
| 1dce0 | 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 79 33 32 3c 2f 6c 69 | de>.-.IEEE-754-2008.binary32</li |
| 1dd00 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | >...........<li><code><span.clas |
| 1dd20 | 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 65 3e 20 2d | s="tok-type">f64</span></code>.- |
| 1dd40 | 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 0a 20 20 20 | .IEEE-754-2008.binary64</li>.... |
| 1dd60 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .......<li><code><span.class="to |
| 1dd80 | 6b 2d 74 79 70 65 22 3e 66 38 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 49 45 45 45 | k-type">f80</span></code>.-.IEEE |
| 1dda0 | 2d 37 35 34 2d 32 30 30 38 20 38 30 2d 62 69 74 20 65 78 74 65 6e 64 65 64 20 70 72 65 63 69 73 | -754-2008.80-bit.extended.precis |
| 1ddc0 | 69 6f 6e 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 3e 3c 73 70 | ion</li>...........<li><code><sp |
| 1dde0 | 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 61 6e 3e 3c | an.class="tok-type">f128</span>< |
| 1de00 | 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 79 31 32 38 | /code>.-.IEEE-754-2008.binary128 |
| 1de20 | 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 3e 3c 73 70 61 6e 20 | </li>...........<li><code><span. |
| 1de40 | 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 |
| 1de60 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 6d 61 74 63 68 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 | pan></code>.-.matches.<code.clas |
| 1de80 | 73 3d 22 63 22 3e 6c 6f 6e 67 20 64 6f 75 62 6c 65 3c 2f 63 6f 64 65 3e 20 66 6f 72 20 74 68 65 | s="c">long.double</code>.for.the |
| 1dea0 | 20 74 61 72 67 65 74 20 43 20 41 42 49 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 | .target.C.ABI</li>.......</ul>.. |
| 1dec0 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 46 6c 6f 61 74 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 | .....<h3.id="Float-Literals"><a. |
| 1dee0 | 68 72 65 66 3d 22 23 74 6f 63 2d 46 6c 6f 61 74 2d 4c 69 74 65 72 61 6c 73 22 3e 46 6c 6f 61 74 | href="#toc-Float-Literals">Float |
| 1df00 | 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 68 72 65 | .Literals</a>.<a.class="hdr".hre |
| 1df20 | 66 3d 22 23 46 6c 6f 61 74 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | f="#Float-Literals">..</a></h3>. |
| 1df40 | 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 61 6c 73 20 | .......<p>.......Float.literals. |
| 1df60 | 68 61 76 65 20 74 79 70 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | have.type.<code><span.class="tok |
| 1df80 | 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 6f | -type">comptime_float</span></co |
| 1dfa0 | 64 65 3e 20 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 | de>.which.is.guaranteed.to.have. |
| 1dfc0 | 20 20 20 20 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 | ......the.same.precision.and.ope |
| 1dfe0 | 72 61 74 69 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 | rations.of.the.largest.other.flo |
| 1e000 | 61 74 69 6e 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 | ating.point.type,.which.is...... |
| 1e020 | 20 3c 63 6f 64 65 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 | .<code><span.class="tok-type">f1 |
| 1e040 | 32 38 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 | 28</span></code>........</p>.... |
| 1e060 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6c 6f 61 74 20 6c 69 74 65 72 61 6c 73 20 3c 61 20 68 | ...<p>.......Float.literals.<a.h |
| 1e080 | 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 3c 2f 61 3e 20 | ref="#Type-Coercion">coerce</a>. |
| 1e0a0 | 74 6f 20 61 6e 79 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 74 79 70 65 2c 0a 20 20 20 20 | to.any.floating.point.type,..... |
| 1e0c0 | 20 20 61 6e 64 20 74 6f 20 61 6e 79 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 | ..and.to.any.<a.href="#Integers" |
| 1e0e0 | 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 20 74 79 70 65 20 77 68 65 6e 20 74 68 65 72 65 20 69 73 20 | >integer</a>.type.when.there.is. |
| 1e100 | 6e 6f 20 66 72 61 63 74 69 6f 6e 61 6c 20 63 6f 6d 70 6f 6e 65 6e 74 2e 0a 20 20 20 20 20 20 3c | no.fractional.component........< |
| 1e120 | 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | /p>.......<figure><figcaption.cl |
| 1e140 | 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ass="zig-cap"><cite.class="file" |
| 1e160 | 3e 66 6c 6f 61 74 5f 6c 69 74 65 72 61 6c 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 | >float_literals.zig</cite></figc |
| 1e180 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | aption><pre><code><span.class="t |
| 1e1a0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 6c 6f 61 74 69 6e 67 5f 70 6f 69 | ok-kw">const</span>.floating_poi |
| 1e1c0 | 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 32 | nt.=.<span.class="tok-number">12 |
| 1e1e0 | 33 2e 30 45 2b 37 37 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 | 3.0E+77</span>;.<span.class="tok |
| 1e200 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6e 6f 74 68 65 72 5f 66 6c 6f 61 74 20 | -kw">const</span>.another_float. |
| 1e220 | 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 2e 30 | =.<span.class="tok-number">123.0 |
| 1e240 | 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 6f | </span>;.<span.class="tok-kw">co |
| 1e260 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 65 74 5f 61 6e 6f 74 68 65 72 20 3d 20 3c 73 70 61 6e 20 63 | nst</span>.yet_another.=.<span.c |
| 1e280 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 2e 30 65 2b 37 37 3c 2f 73 70 61 | lass="tok-number">123.0e+77</spa |
| 1e2a0 | 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 6e 73 74 3c | n>;..<span.class="tok-kw">const< |
| 1e2c0 | 2f 73 70 61 6e 3e 20 68 65 78 5f 66 6c 6f 61 74 69 6e 67 5f 70 6f 69 6e 74 20 3d 20 3c 73 70 61 | /span>.hex_floating_point.=.<spa |
| 1e2e0 | 6e 20 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 70 2d 35 | n.class="tok-number">0x103.70p-5 |
| 1e300 | 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 6f | </span>;.<span.class="tok-kw">co |
| 1e320 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6e 6f 74 68 65 72 5f 68 65 78 5f 66 6c 6f 61 74 20 3d 20 3c | nst</span>.another_hex_float.=.< |
| 1e340 | 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 30 33 2e 37 30 | span.class="tok-number">0x103.70 |
| 1e360 | 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 6f | </span>;.<span.class="tok-kw">co |
| 1e380 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 65 74 5f 61 6e 6f 74 68 65 72 5f 68 65 78 5f 66 6c 6f 61 74 | nst</span>.yet_another_hex_float |
| 1e3a0 | 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 31 30 | .=.<span.class="tok-number">0x10 |
| 1e3c0 | 33 2e 37 30 50 2d 35 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 | 3.70P-5</span>;..<span.class="to |
| 1e3e0 | 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 6d 61 79 20 62 65 | k-comment">//.underscores.may.be |
| 1e400 | 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 20 61 73 20 61 20 | .placed.between.two.digits.as.a. |
| 1e420 | 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 70 61 6e 20 63 6c | visual.separator</span>.<span.cl |
| 1e440 | 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 67 68 74 73 | ass="tok-kw">const</span>.lights |
| 1e460 | 70 65 65 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 | peed.=.<span.class="tok-number"> |
| 1e480 | 32 39 39 5f 37 39 32 5f 34 35 38 2e 30 30 30 5f 30 30 30 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 | 299_792_458.000_000</span>;.<spa |
| 1e4a0 | 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 61 | n.class="tok-kw">const</span>.na |
| 1e4c0 | 6e 6f 73 65 63 6f 6e 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 | nosecond.=.<span.class="tok-numb |
| 1e4e0 | 65 72 22 3e 30 2e 30 30 30 5f 30 30 30 5f 30 30 31 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 | er">0.000_000_001</span>;.<span. |
| 1e500 | 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 6f 72 65 | class="tok-kw">const</span>.more |
| 1e520 | 5f 68 65 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 | _hex.=.<span.class="tok-number"> |
| 1e540 | 30 78 31 32 33 34 5f 35 36 37 38 2e 39 41 42 43 5f 43 44 45 46 70 2d 31 30 3c 2f 73 70 61 6e 3e | 0x1234_5678.9ABC_CDEFp-10</span> |
| 1e560 | 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c | ;</code></pre></figure>........< |
| 1e580 | 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 69 73 20 6e 6f 20 73 79 6e 74 61 78 20 66 6f 72 20 | p>.......There.is.no.syntax.for. |
| 1e5a0 | 4e 61 4e 2c 20 69 6e 66 69 6e 69 74 79 2c 20 6f 72 20 6e 65 67 61 74 69 76 65 20 69 6e 66 69 6e | NaN,.infinity,.or.negative.infin |
| 1e5c0 | 69 74 79 2e 20 46 6f 72 20 74 68 65 73 65 20 73 70 65 63 69 61 6c 20 76 61 6c 75 65 73 2c 0a 20 | ity..For.these.special.values,.. |
| 1e5e0 | 20 20 20 20 20 6f 6e 65 20 6d 75 73 74 20 75 73 65 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c | .....one.must.use.the.standard.l |
| 1e600 | 69 62 72 61 72 79 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 | ibrary:.......</p>.......<figure |
| 1e620 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 | ><figcaption.class="zig-cap"><ci |
| 1e640 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 66 6c 6f 61 74 5f 73 70 65 63 69 61 6c 5f 76 61 | te.class="file">float_special_va |
| 1e660 | 6c 75 65 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | lues.zig</cite></figcaption><pre |
| 1e680 | 3e 3c 63 6f 64 65 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 | ><code><span.class="tok-kw">cons |
| 1e6a0 | 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- |
| 1e6c0 | 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 |
| 1e6e0 | 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 |
| 1e700 | 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 63 6f 6e | pan>);..<span.class="tok-kw">con |
| 1e720 | 73 74 3c 2f 73 70 61 6e 3e 20 69 6e 66 20 3d 20 73 74 64 2e 6d 61 74 68 2e 69 6e 66 28 3c 73 70 | st</span>.inf.=.std.math.inf(<sp |
| 1e740 | 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 29 3b | an.class="tok-type">f32</span>); |
| 1e760 | 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 |
| 1e780 | 6e 3e 20 6e 65 67 61 74 69 76 65 5f 69 6e 66 20 3d 20 2d 73 74 64 2e 6d 61 74 68 2e 69 6e 66 28 | n>.negative_inf.=.-std.math.inf( |
| 1e7a0 | 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 73 70 61 6e | <span.class="tok-type">f64</span |
| 1e7c0 | 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</ |
| 1e7e0 | 73 70 61 6e 3e 20 6e 61 6e 20 3d 20 73 74 64 2e 6d 61 74 68 2e 6e 61 6e 28 3c 73 70 61 6e 20 63 | span>.nan.=.std.math.nan(<span.c |
| 1e800 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 31 32 38 3c 2f 73 70 61 6e 3e 29 3b 3c 2f 63 | lass="tok-type">f128</span>);</c |
| 1e820 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 | ode></pre></figure>............. |
| 1e840 | 20 20 3c 68 33 20 69 64 3d 22 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 | ..<h3.id="Floating-Point-Operati |
| 1e860 | 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e | ons"><a.href="#toc-Floating-Poin |
| 1e880 | 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 46 6c 6f 61 74 69 6e 67 20 50 6f 69 6e 74 20 4f 70 65 | t-Operations">Floating.Point.Ope |
| 1e8a0 | 72 61 74 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 66 3d | rations</a>.<a.class="hdr".href= |
| 1e8c0 | 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 73 22 3e c2 a7 3c | "#Floating-Point-Operations">..< |
| 1e8e0 | 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 42 79 20 64 65 66 61 75 6c 74 20 66 6c | /a></h3>........<p>By.default.fl |
| 1e900 | 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 75 73 65 20 3c 63 6f 64 | oating.point.operations.use.<cod |
| 1e920 | 65 3e 53 74 72 69 63 74 3c 2f 63 6f 64 65 3e 20 6d 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 20 20 | e>Strict</code>.mode,........... |
| 1e940 | 62 75 74 20 79 6f 75 20 63 61 6e 20 73 77 69 74 63 68 20 74 6f 20 3c 63 6f 64 65 3e 4f 70 74 69 | but.you.can.switch.to.<code>Opti |
| 1e960 | 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 6c 6f 63 6b | mized</code>.mode.on.a.per-block |
| 1e980 | 20 62 61 73 69 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | .basis:</p>.......<figure><figca |
| 1e9a0 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 | ption.class="zig-cap"><cite.clas |
| 1e9c0 | 73 3d 22 66 69 6c 65 22 3e 66 6c 6f 61 74 5f 6d 6f 64 65 5f 6f 62 6a 2e 7a 69 67 3c 2f 63 69 74 | s="file">float_mode_obj.zig</cit |
| 1e9e0 | 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | e></figcaption><pre><code><span. |
| 1ea00 | 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. |
| 1ea20 | 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 |
| 1ea40 | 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" |
| 1ea60 | 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. |
| 1ea80 | 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 67 20 | class="tok-kw">const</span>.big. |
| 1eaa0 | 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 3c | =.<span.class="tok-builtin">@as< |
| 1eac0 | 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 66 36 | /span>(<span.class="tok-type">f6 |
| 1eae0 | 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 62 65 | 4</span>,.<span.class="tok-numbe |
| 1eb00 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 26 6c 74 3b 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | r">1</span>.<<.<span.class |
| 1eb20 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 30 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e | ="tok-number">40</span>);..<span |
| 1eb40 | 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 20 3c 73 | .class="tok-kw">export</span>.<s |
| 1eb60 | 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 |
| 1eb80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 5f 73 74 72 69 63 74 3c 2f 73 70 | an.class="tok-fn">foo_strict</sp |
| 1eba0 | 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 |
| 1ebc0 | 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" |
| 1ebe0 | 3e 66 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 | >f64</span>.{.....<span.class="t |
| 1ec00 | 6f 6b 2d 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 | ok-kw">return</span>.x.+.big.-.b |
| 1ec20 | 69 67 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 65 78 70 6f | ig;.}..<span.class="tok-kw">expo |
| 1ec40 | 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 |
| 1ec60 | 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 |
| 1ec80 | 6f 5f 6f 70 74 69 6d 69 7a 65 64 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | o_optimized</span>(x:.<span.clas |
| 1eca0 | 73 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 | s="tok-type">f64</span>).<span.c |
| 1ecc0 | 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 7b 0a 20 20 20 | lass="tok-type">f64</span>.{.... |
| 1ece0 | 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 46 | .<span.class="tok-builtin">@setF |
| 1ed00 | 6c 6f 61 74 4d 6f 64 65 3c 2f 73 70 61 6e 3e 28 2e 6f 70 74 69 6d 69 7a 65 64 29 3b 0a 20 20 20 | loatMode</span>(.optimized);.... |
| 1ed20 | 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 |
| 1ed40 | 61 6e 3e 20 78 20 2b 20 62 69 67 20 2d 20 62 69 67 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | an>.x.+.big.-.big;.}</code></pre |
| 1ed60 | 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | ></figure><figure><figcaption.cl |
| 1ed80 | 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f | ass="shell-cap">Shell</figcaptio |
| 1eda0 | 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 6f 62 | n><pre><samp>$.<kbd>zig.build-ob |
| 1edc0 | 6a 20 66 6c 6f 61 74 5f 6d 6f 64 65 5f 6f 62 6a 2e 7a 69 67 20 2d 4f 20 52 65 6c 65 61 73 65 46 | j.float_mode_obj.zig.-O.ReleaseF |
| 1ede0 | 61 73 74 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | ast</kbd>.</samp></pre></figure> |
| 1ee00 | 0a 0a 20 20 20 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 | ........<p>For.this.test.we.have |
| 1ee20 | 20 74 6f 20 73 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 | .to.separate.code.into.two.objec |
| 1ee40 | 74 20 66 69 6c 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 | t.files.-.......otherwise.the.op |
| 1ee60 | 74 69 6d 69 7a 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 | timizer.figures.out.all.the.valu |
| 1ee80 | 65 73 20 61 74 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 | es.at.compile-time,.......which. |
| 1eea0 | 6f 70 65 72 61 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 | operates.in.strict.mode.</p>.... |
| 1eec0 | 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 | ...<figure><figcaption.class="zi |
| 1eee0 | 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 66 6c 6f 61 74 5f | g-cap"><cite.class="file">float_ |
| 1ef00 | 6d 6f 64 65 5f 65 78 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | mode_exe.zig</cite></figcaption> |
| 1ef20 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | <pre><code><span.class="tok-kw"> |
| 1ef40 | 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 |
| 1ef60 | 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 |
| 1ef80 | 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 |
| 1efa0 | 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. |
| 1efc0 | 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 70 | class="tok-kw">extern</span>.<sp |
| 1efe0 | 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 |
| 1f000 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 5f 73 74 72 69 63 74 3c 2f 73 70 61 | n.class="tok-fn">foo_strict</spa |
| 1f020 | 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 34 | n>(x:.<span.class="tok-type">f64 |
| 1f040 | 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"> |
| 1f060 | 66 36 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 | f64</span>;.<span.class="tok-kw" |
| 1f080 | 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 3d 22 74 6f 6b 2d | >extern</span>.<span.class="tok- |
| 1f0a0 | 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 |
| 1f0c0 | 6e 22 3e 66 6f 6f 5f 6f 70 74 69 6d 69 7a 65 64 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e | n">foo_optimized</span>(x:.<span |
| 1f0e0 | 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 29 20 3c 73 | .class="tok-type">f64</span>).<s |
| 1f100 | 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 3b | pan.class="tok-type">f64</span>; |
| 1f120 | 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 |
| 1f140 | 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> |
| 1f160 | 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 |
| 1f180 | 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< |
| 1f1a0 | 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 |
| 1f1c0 | 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 22 | ">const</span>.x.=.<span.class=" |
| 1f1e0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 30 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 70 72 | tok-number">0.001</span>;.....pr |
| 1f200 | 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">" |
| 1f220 | 6f 70 74 69 6d 69 7a 65 64 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e | optimized.=.{}\n"</span>,.. |
| 1f240 | 7b 66 6f 6f 5f 6f 70 74 69 6d 69 7a 65 64 28 78 29 7d 29 3b 0a 20 20 20 20 70 72 69 6e 74 28 3c | {foo_optimized(x)});.....print(< |
| 1f260 | 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 72 69 63 | span.class="tok-str">"stric |
| 1f280 | 74 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 66 6f 6f 5f 73 74 72 | t.=.{}\n"</span>,..{foo_str |
| 1f2a0 | 69 63 74 28 78 29 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | ict(x)});.}</code></pre></figure |
| 1f2c0 | 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 |
| 1f2e0 | 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 3e 40 73 65 74 46 6c | i><a.href="#setFloatMode">@setFl |
| 1f300 | 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 72 65 66 3d 22 23 44 | oatMode</a></li>.<li><a.href="#D |
| 1f320 | 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 20 62 79 20 5a 65 72 | ivision-by-Zero">Division.by.Zer |
| 1f340 | 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 20 20 20 20 20 20 0a | o</a></li>.</ul>................ |
| 1f360 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 4f 70 65 72 61 74 6f 72 73 22 3e 3c 61 20 68 72 65 66 | ......<h2.id="Operators"><a.href |
| 1f380 | 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 72 73 3c 2f 61 3e 20 | ="#toc-Operators">Operators</a>. |
| 1f3a0 | 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 72 61 74 6f 72 73 22 | <a.class="hdr".href="#Operators" |
| 1f3c0 | 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 68 | >..</a></h2>........<p>.......Th |
| 1f3e0 | 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 61 64 69 6e 67 2e 20 | ere.is.no.operator.overloading.. |
| 1f400 | 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 69 6e 20 5a 69 67 2c | When.you.see.an.operator.in.Zig, |
| 1f420 | 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 73 20 64 6f 69 6e 67 | .you.know.that.......it.is.doing |
| 1f440 | 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 65 2c 20 61 6e 64 20 | .something.from.this.table,.and. |
| 1f460 | 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 20 20 20 20 20 20 3c | nothing.else........</p>.......< |
| 1f480 | 68 33 20 69 64 3d 22 54 61 62 6c 65 2d 6f 66 2d 4f 70 65 72 61 74 6f 72 73 22 3e 3c 61 20 68 72 | h3.id="Table-of-Operators"><a.hr |
| 1f4a0 | 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 72 73 22 3e 54 61 62 | ef="#toc-Table-of-Operators">Tab |
| 1f4c0 | 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 61 73 73 3d 22 68 64 | le.of.Operators</a>.<a.class="hd |
| 1f4e0 | 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 6f 72 73 22 3e c2 a7 | r".href="#Table-of-Operators">.. |
| 1f500 | 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 64 69 76 20 63 6c 61 73 73 3d 22 74 61 62 | </a></h3>........<div.class="tab |
| 1f520 | 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 3e 0a 20 20 20 20 20 | le-wrapper">.......<table>...... |
| 1f540 | 20 20 20 3c 74 68 65 61 64 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 | ...<thead>.........<tr>......... |
| 1f560 | 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 4e 61 6d 65 3c 2f 74 68 3e 0a 20 20 20 20 | ..<th.scope="col">Name</th>..... |
| 1f580 | 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 53 79 6e 74 61 78 3c 2f 74 68 | ......<th.scope="col">Syntax</th |
| 1f5a0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 54 79 70 65 | >...........<th.scope="col">Type |
| 1f5c0 | 73 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 | s</th>...........<th.scope="col" |
| 1f5e0 | 3e 52 65 6d 61 72 6b 73 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 | >Remarks</th>...........<th.scop |
| 1f600 | 65 3d 22 63 6f 6c 22 3e 45 78 61 6d 70 6c 65 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 | e="col">Example</th>.........</t |
| 1f620 | 72 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 68 65 61 64 3e 0a 20 20 20 20 20 20 20 20 3c 74 62 6f | r>.........</thead>.........<tbo |
| 1f640 | 64 79 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 41 | dy>.........<tr>...........<td>A |
| 1f660 | 64 64 69 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e | ddition</td>...........<td><pre> |
| 1f680 | 3c 63 6f 64 65 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 | <code>a.+.b.a.+=.b</code></pre>< |
| 1f6a0 | 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>............. |
| 1f6c0 | 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 3d 22 | <ul>...............<li><a.href=" |
| 1f6e0 | 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 20 20 | #Integers">Integers</a></li>.... |
| 1f700 | 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 73 22 | ...........<li><a.href="#Floats" |
| 1f720 | 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 2f 75 | >Floats</a></li>.............</u |
| 1f740 | 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 |
| 1f760 | 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>.............. |
| 1f780 | 20 3c 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 | .<li>Can.cause.<a.href="#Default |
| 1f7a0 | 2d 4f 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 | -Operations">overflow</a>.for.in |
| 1f7c0 | 74 65 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 | tegers.</li>...............<li>I |
| 1f7e0 | 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 6c | nvokes.<a.href="#Peer-Type-Resol |
| 1f800 | 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 20 | ution">Peer.Type.Resolution</a>. |
| 1f820 | 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 20 20 20 | for.the.operands.</li>.......... |
| 1f840 | 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 61 64 64 57 | .....<li>See.also.<a.href="#addW |
| 1f860 | 69 74 68 4f 76 65 72 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 | ithOverflow">@addWithOverflow</a |
| 1f880 | 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 20 20 20 20 | >.</li>.............</ul>....... |
| 1f8a0 | 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>........ |
| 1f8c0 | 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .....<pre><code><span.class="tok |
| 1f8e0 | 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -number">2</span>.+.<span.class= |
| 1f900 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 | "tok-number">5</span>.==.<span.c |
| 1f920 | 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 3c 2f 63 6f 64 65 | lass="tok-number">7</span></code |
| 1f940 | 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>......... |
| 1f960 | 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 |
| 1f980 | 3e 57 72 61 70 70 69 6e 67 20 41 64 64 69 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | >Wrapping.Addition</td>......... |
| 1f9a0 | 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 2b 25 20 62 0a 61 20 2b 25 3d 20 62 3c | ..<td><pre><code>a.+%.b.a.+%=.b< |
| 1f9c0 | 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> |
| 1f9e0 | 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>............... |
| 1fa00 | 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 |
| 1fa20 | 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>..... |
| 1fa40 | 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>...... |
| 1fa60 | 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 54 77 | .......<ul>...............<li>Tw |
| 1fa80 | 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. |
| 1faa0 | 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. |
| 1fac0 | 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"> |
| 1fae0 | 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 |
| 1fb00 | 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 |
| 1fb20 | 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 |
| 1fb40 | 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> |
| 1fb60 | 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 |
| 1fb80 | 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 |
| 1fba0 | 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | re><code><span.class="tok-builti |
| 1fbc0 | 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 |
| 1fbe0 | 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 73 73 3d 22 74 6f | ype">u32</span>,.<span.class="to |
| 1fc00 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 66 66 66 66 66 66 66 66 3c 2f 73 70 61 6e 3e 29 20 2b 25 20 | k-number">0xffffffff</span>).+%. |
| 1fc20 | 3c 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 |
| 1fc40 | 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 3e 30 3c | >.==.<span.class="tok-number">0< |
| 1fc60 | 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>...........</ |
| 1fc80 | 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>.. |
| 1fca0 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 53 61 74 75 72 61 74 69 6e 67 20 41 64 64 69 74 69 6f 6e | .........<td>Saturating.Addition |
| 1fcc0 | 3c 2f 74 64 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 3e 61 | </td>...........<td><pre><code>a |
| 1fce0 | 20 2b 7c 20 62 0a 61 20 2b 7c 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a | .+|.b.a.+|=.b</code></pre></td>. |
| 1fd00 | 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>. |
| 1fd20 | 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 74 65 | ..............<li><a.href="#Inte |
| 1fd40 | 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 20 20 | gers">Integers</a></li>......... |
| 1fd60 | 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 20 | ....</ul>...........</td>....... |
| 1fd80 | 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 20 | ....<td>.............<ul>....... |
| 1fda0 | 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 3d 22 23 50 65 | ........<li>Invokes.<a.href="#Pe |
| 1fdc0 | 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 70 65 20 52 65 | er-Type-Resolution">Peer.Type.Re |
| 1fde0 | 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 64 73 2e 3c 2f | solution</a>.for.the.operands.</ |
| 1fe00 | 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>........... |
| 1fe20 | 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>............ |
| 1fe40 | 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | .<pre><code><span.class="tok-bui |
| 1fe60 | 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 |
| 1fe80 | 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=" |
| 1fea0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 29 20 2b 7c 20 3c 73 70 61 6e | tok-number">255</span>).+|.<span |
| 1fec0 | 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 3d 20 | .class="tok-number">1</span>.==. |
| 1fee0 | 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 |
| 1ff00 | 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</ |
| 1ff20 | 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"> |
| 1ff40 | 32 35 35 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 20 | 255</span>)</code></pre>........ |
| 1ff60 | 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>.........< |
| 1ff80 | 74 72 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 3c 2f 74 | tr>...........<td>Subtraction</t |
| 1ffa0 | 64 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 3e 61 20 2d 20 | d>...........<td><pre><code>a.-. |
| 1ffc0 | 62 0a 61 20 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 | b.a.-=.b</code></pre></td>...... |
| 1ffe0 | 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>...... |
| 20000 | 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 72 73 22 | .........<li><a.href="#Integers" |
| 20020 | 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 20 20 20 | >Integers</a></li>.............. |
| 20040 | 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 6f 61 74 73 3c 2f 61 | .<li><a.href="#Floats">Floats</a |
| 20060 | 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 20 | ></li>.............</ul>........ |
| 20080 | 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>......... |
| 200a0 | 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 63 | ....<ul>...............<li>Can.c |
| 200c0 | 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 6f 6e | ause.<a.href="#Default-Operation |
| 200e0 | 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 2f 6c | s">overflow</a>.for.integers.</l |
| 20100 | 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. |
| 20120 | 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 |
| 20140 | 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 |
| 20160 | 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 69 3e 53 | erands.</li>...............<li>S |
| 20180 | 65 65 20 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 | ee.also.<a.href="#subWithOverflo |
| 201a0 | 77 22 3e 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 | w">@subWithOverflow</a>.</li>... |
| 201c0 | 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>. |
| 201e0 | 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> |
| 20200 | 3c 63 6f 64 65 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 | <code><span.class="tok-number">2 |
| 20220 | 3c 2f 73 70 61 6e 3e 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 | </span>.-.<span.class="tok-numbe |
| 20240 | 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 3d 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | r">5</span>.==.-<span.class="tok |
| 20260 | 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | -number">3</span></code></pre>.. |
| 20280 | 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>.... |
| 202a0 | 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 57 72 61 70 70 69 6e 67 | .....<tr>...........<td>Wrapping |
| 202c0 | 20 53 75 62 74 72 61 63 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | .Subtraction</td>...........<td> |
| 202e0 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 2d 25 20 62 0a 61 20 2d 25 3d 20 62 3c 2f 63 6f 64 65 3e | <pre><code>a.-%.b.a.-%=.b</code> |
| 20300 | 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 20 | </pre></td>...........<td>...... |
| 20320 | 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 61 | .......<ul>...............<li><a |
| 20340 | 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 2f | .href="#Integers">Integers</a></ |
| 20360 | 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>........... |
| 20380 | 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>............ |
| 203a0 | 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 77 6f 73 2d 63 6f 6d | .<ul>...............<li>Twos-com |
| 203c0 | 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>. |
| 203e0 | 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 |
| 20400 | 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 |
| 20420 | 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 |
| 20440 | 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. |
| 20460 | 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"> |
| 20480 | 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>...... |
| 204a0 | 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>.... |
| 204c0 | 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 |
| 204e0 | 64 65 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 73 | de><span.class="tok-builtin">@as |
| 20500 | 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 75 | </span>(<span.class="tok-type">u |
| 20520 | 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 62 65 | 8</span>,.<span.class="tok-numbe |
| 20540 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 2d 25 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | r">0</span>).-%.<span.class="tok |
| 20560 | 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 6c 61 73 73 | -number">1</span>.==.<span.class |
| 20580 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | ="tok-number">255</span></code>< |
| 205a0 | 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 2f | /pre>...........</td>.........</ |
| 205c0 | 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 53 | tr>.........<tr>...........<td>S |
| 205e0 | 61 74 75 72 61 74 69 6e 67 20 53 75 62 74 72 61 63 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 | aturating.Subtraction</td>...... |
| 20600 | 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 2d 7c 20 62 0a 61 20 2d 7c 3d | .....<td><pre><code>a.-|.b.a.-|= |
| 20620 | 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 20 3c | .b</code></pre></td>...........< |
| 20640 | 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 20 20 | td>.............<ul>............ |
| 20660 | 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 65 67 | ...<li><a.href="#Integers">Integ |
| 20680 | 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 0a 20 | ers</a></li>.............</ul>.. |
| 206a0 | 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>... |
| 206c0 | 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 69 | ..........<ul>...............<li |
| 206e0 | 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 73 | >Invokes.<a.href="#Peer-Type-Res |
| 20700 | 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 61 | olution">Peer.Type.Resolution</a |
| 20720 | 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 20 | >.for.the.operands.</li>........ |
| 20740 | 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>...... |
| 20760 | 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 |
| 20780 | 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 73 3c 2f | ><span.class="tok-builtin">@as</ |
| 207a0 | 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 33 32 | span>(<span.class="tok-type">u32 |
| 207c0 | 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 |
| 207e0 | 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 2d 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">0</span>).-|.<span.class="tok- |
| 20800 | 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 6c 61 73 73 3d | number">1</span>.==.<span.class= |
| 20820 | 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 3c 2f 70 72 | "tok-number">0</span></code></pr |
| 20840 | 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 72 3e | e>...........</td>.........</tr> |
| 20860 | 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 4e 65 67 61 | .........<tr>...........<td>Nega |
| 20880 | 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f | tion</td>...........<td><pre><co |
| 208a0 | 64 65 3e 2d 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 | de>-a</code></pre></td>......... |
| 208c0 | 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>......... |
| 208e0 | 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 |
| 20900 | 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 6c | tegers</a></li>...............<l |
| 20920 | 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 2f | i><a.href="#Floats">Floats</a></ |
| 20940 | 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>........... |
| 20960 | 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>............ |
| 20980 | 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 63 61 75 73 | .<ul>...............<li>Can.caus |
| 209a0 | 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 6f 6e 73 22 3e | e.<a.href="#Default-Operations"> |
| 209c0 | 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 2f 6c 69 3e 0a | overflow</a>.for.integers.</li>. |
| 209e0 | 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 |
| 20a00 | 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 |
| 20a20 | 65 3e 3c 63 6f 64 65 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 | e><code>-<span.class="tok-number |
| 20a40 | 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 74 6f 6b 2d 6e | ">1</span>.==.<span.class="tok-n |
| 20a60 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | umber">0</span>.-.<span.class="t |
| 20a80 | 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> |
| 20aa0 | 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>.. |
| 20ac0 | 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 57 72 61 70 70 69 | .......<tr>...........<td>Wrappi |
| 20ae0 | 6e 67 20 4e 65 67 61 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c | ng.Negation</td>...........<td>< |
| 20b00 | 70 72 65 3e 3c 63 6f 64 65 3e 2d 25 61 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a | pre><code>-%a</code></pre></td>. |
| 20b20 | 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>. |
| 20b40 | 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 74 65 | ..............<li><a.href="#Inte |
| 20b60 | 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 20 20 | gers">Integers</a></li>......... |
| 20b80 | 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 20 | ....</ul>...........</td>....... |
| 20ba0 | 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 20 | ....<td>.............<ul>....... |
| 20bc0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 77 6f 73 2d 63 6f 6d 70 6c 65 6d 65 6e 74 20 77 72 61 70 | ........<li>Twos-complement.wrap |
| 20be0 | 70 69 6e 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 | ping.behavior.</li>............. |
| 20c00 | 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>........... |
| 20c20 | 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 3e 2d 25 3c 73 | <td>.............<pre><code>-%<s |
| 20c40 | 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 70 61 | pan.class="tok-builtin">@as</spa |
| 20c60 | 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 69 38 3c 2f 73 70 | n>(<span.class="tok-type">i8</sp |
| 20c80 | 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 31 | an>,.-<span.class="tok-number">1 |
| 20ca0 | 32 38 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 22 74 6f 6b 2d | 28</span>).==.-<span.class="tok- |
| 20cc0 | 6e 75 6d 62 65 72 22 3e 31 32 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | number">128</span></code></pre>. |
| 20ce0 | 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>... |
| 20d00 | 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 4d 75 6c 74 69 70 6c | ......<tr>...........<td>Multipl |
| 20d20 | 69 63 61 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e | ication</td>...........<td><pre> |
| 20d40 | 3c 63 6f 64 65 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 | <code>a.*.b.a.*=.b</code></pre>< |
| 20d60 | 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>............. |
| 20d80 | 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 3d 22 | <ul>...............<li><a.href=" |
| 20da0 | 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 20 20 | #Integers">Integers</a></li>.... |
| 20dc0 | 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 73 22 | ...........<li><a.href="#Floats" |
| 20de0 | 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 2f 75 | >Floats</a></li>.............</u |
| 20e00 | 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 |
| 20e20 | 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>.............. |
| 20e40 | 20 3c 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 | .<li>Can.cause.<a.href="#Default |
| 20e60 | 2d 4f 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 | -Operations">overflow</a>.for.in |
| 20e80 | 74 65 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 | tegers.</li>...............<li>I |
| 20ea0 | 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 6c | nvokes.<a.href="#Peer-Type-Resol |
| 20ec0 | 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 20 | ution">Peer.Type.Resolution</a>. |
| 20ee0 | 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 20 20 20 | for.the.operands.</li>.......... |
| 20f00 | 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 6d 75 6c 57 | .....<li>See.also.<a.href="#mulW |
| 20f20 | 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 77 3c 2f 61 | ithOverflow">@mulWithOverflow</a |
| 20f40 | 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 20 20 20 20 | >.</li>.............</ul>....... |
| 20f60 | 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>........ |
| 20f80 | 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .....<pre><code><span.class="tok |
| 20fa0 | 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -number">2</span>.*.<span.class= |
| 20fc0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 | "tok-number">5</span>.==.<span.c |
| 20fe0 | 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 3c 2f 63 6f 64 | lass="tok-number">10</span></cod |
| 21000 | 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>........ |
| 21020 | 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 |
| 21040 | 64 3e 57 72 61 70 70 69 6e 67 20 4d 75 6c 74 69 70 6c 69 63 61 74 69 6f 6e 3c 2f 74 64 3e 0a 20 | d>Wrapping.Multiplication</td>.. |
| 21060 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 2a 25 20 62 0a 61 | .........<td><pre><code>a.*%.b.a |
| 21080 | 20 2a 25 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 | .*%=.b</code></pre></td>........ |
| 210a0 | 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>........ |
| 210c0 | 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 |
| 210e0 | 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 |
| 21100 | 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 |
| 21120 | 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>.............. |
| 21140 | 20 3c 6c 69 3e 54 77 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 | .<li>Twos-complement.wrapping.be |
| 21160 | 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 6c 69 3e 49 | havior.</li>...............<li>I |
| 21180 | 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 6c | nvokes.<a.href="#Peer-Type-Resol |
| 211a0 | 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 20 | ution">Peer.Type.Resolution</a>. |
| 211c0 | 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 20 20 20 | for.the.operands.</li>.......... |
| 211e0 | 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 6d 75 6c 57 | .....<li>See.also.<a.href="#mulW |
| 21200 | 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 77 3c 2f 61 | ithOverflow">@mulWithOverflow</a |
| 21220 | 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 20 20 20 20 | >.</li>.............</ul>....... |
| 21240 | 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>........ |
| 21260 | 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .....<pre><code><span.class="tok |
| 21280 | 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 |
| 212a0 | 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 61 6e 20 63 6c 61 | ="tok-type">u8</span>,.<span.cla |
| 212c0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 30 30 3c 2f 73 70 61 6e 3e 29 20 2a 25 20 3c | ss="tok-number">200</span>).*%.< |
| 212e0 | 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> |
| 21300 | 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 34 34 | .==.<span.class="tok-number">144 |
| 21320 | 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>...........< |
| 21340 | 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>. |
| 21360 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 53 61 74 75 72 61 74 69 6e 67 20 4d 75 6c 74 69 70 6c | ..........<td>Saturating.Multipl |
| 21380 | 69 63 61 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e | ication</td>...........<td><pre> |
| 213a0 | 3c 63 6f 64 65 3e 61 20 2a 7c 20 62 0a 61 20 2a 7c 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | <code>a.*|.b.a.*|=.b</code></pre |
| 213c0 | 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>........... |
| 213e0 | 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 |
| 21400 | 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>.. |
| 21420 | 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> |
| 21440 | 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> |
| 21460 | 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 68 72 | ...............<li>Invokes.<a.hr |
| 21480 | 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. |
| 214a0 | 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 |
| 214c0 | 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 20 20 | ands.</li>.............</ul>.... |
| 214e0 | 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>..... |
| 21500 | 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ........<pre><code><span.class=" |
| 21520 | 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 |
| 21540 | 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 61 6e 20 | ass="tok-type">u8</span>,.<span. |
| 21560 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 30 30 3c 2f 73 70 61 6e 3e 29 20 2a | class="tok-number">200</span>).* |
| 21580 | 7c 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 |
| 215a0 | 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 3e | an>.==.<span.class="tok-number"> |
| 215c0 | 32 35 35 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 | 255</span></code></pre>......... |
| 215e0 | 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 74 | ..</td>.........</tr>.........<t |
| 21600 | 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 44 69 76 69 73 69 6f 6e 3c 2f 74 64 3e 0a 20 | r>...........<td>Division</td>.. |
| 21620 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 2f 20 62 0a 61 20 | .........<td><pre><code>a./.b.a. |
| 21640 | 2f 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>.......... |
| 21660 | 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>.......... |
| 21680 | 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 |
| 216a0 | 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 |
| 216c0 | 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 |
| 216e0 | 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>...........< |
| 21700 | 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>............. |
| 21720 | 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 63 61 75 73 65 | <ul>...............<li>Can.cause |
| 21740 | 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 6f 6e 73 22 3e 6f | .<a.href="#Default-Operations">o |
| 21760 | 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 2f 6c 69 3e 0a 20 | verflow</a>.for.integers.</li>.. |
| 21780 | 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 |
| 217a0 | 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 20 | ef="#Division-by-Zero">Division. |
| 217c0 | 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 2f 6c 69 3e 0a 20 | by.Zero</a>.for.integers.</li>.. |
| 217e0 | 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 |
| 21800 | 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 20 | ef="#Division-by-Zero">Division. |
| 21820 | 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 3c 61 20 68 72 65 | by.Zero</a>.for.floats.in.<a.hre |
| 21840 | 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 73 22 3e 46 | f="#Floating-Point-Operations">F |
| 21860 | 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 3e 2e 3c 2f 6c 69 | loatMode.Optimized.Mode</a>.</li |
| 21880 | 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 20 69 6e 74 65 67 | >...............<li>Signed.integ |
| 218a0 | 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 6d 65 2d 6b 6e 6f | er.operands.must.be.comptime-kno |
| 218c0 | 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 63 61 73 65 73 2c | wn.and.positive..In.other.cases, |
| 218e0 | 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 65 66 3d 22 23 64 | .use.................<a.href="#d |
| 21900 | 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 20 20 20 20 20 20 | ivTrunc">@divTrunc</a>,......... |
| 21920 | 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 22 3e 40 64 69 76 | ........<a.href="#divFloor">@div |
| 21940 | 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 20 20 20 20 3c 61 | Floor</a>,.or.................<a |
| 21960 | 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 20 | .href="#divExact">@divExact</a>. |
| 21980 | 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 69 3e 0a 20 20 20 | instead................</li>.... |
| 219a0 | 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 3d 22 | ...........<li>Invokes.<a.href=" |
| 219c0 | 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 70 65 | #Peer-Type-Resolution">Peer.Type |
| 219e0 | 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 64 73 | .Resolution</a>.for.the.operands |
| 21a00 | 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 20 20 | .</li>.............</ul>........ |
| 21a20 | 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>......... |
| 21a40 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ....<pre><code><span.class="tok- |
| 21a60 | 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 20 2f 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | number">10</span>./.<span.class= |
| 21a80 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 | "tok-number">5</span>.==.<span.c |
| 21aa0 | 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 3c 2f 63 6f 64 65 | lass="tok-number">2</span></code |
| 21ac0 | 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>......... |
| 21ae0 | 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 |
| 21b00 | 3e 52 65 6d 61 69 6e 64 65 72 20 44 69 76 69 73 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | >Remainder.Division</td>........ |
| 21b20 | 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 25 20 62 0a 61 20 25 3d 20 62 3c 2f | ...<td><pre><code>a.%.b.a.%=.b</ |
| 21b40 | 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 0a | code></pre></td>...........<td>. |
| 21b60 | 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>...............< |
| 21b80 | 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 3c | li><a.href="#Integers">Integers< |
| 21ba0 | 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 72 | /a></li>...............<li><a.hr |
| 21bc0 | 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 20 | ef="#Floats">Floats</a></li>.... |
| 21be0 | 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 20 | .........</ul>...........</td>.. |
| 21c00 | 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 20 | .........<td>.............<ul>.. |
| 21c20 | 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 |
| 21c40 | 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 20 | ef="#Division-by-Zero">Division. |
| 21c60 | 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 2f 6c 69 3e 0a 20 | by.Zero</a>.for.integers.</li>.. |
| 21c80 | 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 |
| 21ca0 | 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 20 | ef="#Division-by-Zero">Division. |
| 21cc0 | 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 3c 61 20 68 72 65 | by.Zero</a>.for.floats.in.<a.hre |
| 21ce0 | 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 73 22 3e 46 | f="#Floating-Point-Operations">F |
| 21d00 | 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 3e 2e 3c 2f 6c 69 | loatMode.Optimized.Mode</a>.</li |
| 21d20 | 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 20 6f 72 20 66 6c | >...............<li>Signed.or.fl |
| 21d40 | 6f 61 74 69 6e 67 2d 70 6f 69 6e 74 20 6f 70 65 72 61 6e 64 73 20 6d 75 73 74 20 62 65 20 63 6f | oating-point.operands.must.be.co |
| 21d60 | 6d 70 74 69 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 | mptime-known.and.positive..In.ot |
| 21d80 | 68 65 72 20 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 | her.cases,.use.................< |
| 21da0 | 61 20 68 72 65 66 3d 22 23 72 65 6d 22 3e 40 72 65 6d 3c 2f 61 3e 20 6f 72 0a 20 20 20 20 20 20 | a.href="#rem">@rem</a>.or....... |
| 21dc0 | 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 6d 6f 64 22 3e 40 6d 6f 64 3c 2f 61 | ..........<a.href="#mod">@mod</a |
| 21de0 | 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 69 3e 0a 20 | >.instead................</li>.. |
| 21e00 | 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 |
| 21e20 | 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 |
| 21e40 | 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 |
| 21e60 | 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>...... |
| 21e80 | 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>....... |
| 21ea0 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ......<pre><code><span.class="to |
| 21ec0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 20 25 20 3c 73 70 61 6e 20 63 6c 61 73 | k-number">10</span>.%.<span.clas |
| 21ee0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e | s="tok-number">3</span>.==.<span |
| 21f00 | 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 3c 2f 63 6f | .class="tok-number">1</span></co |
| 21f20 | 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>....... |
| 21f40 | 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>...........< |
| 21f60 | 74 64 3e 42 69 74 20 53 68 69 66 74 20 4c 65 66 74 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | td>Bit.Shift.Left</td>.......... |
| 21f80 | 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 26 6c 74 3b 26 6c 74 3b 20 62 0a 61 20 26 | .<td><pre><code>a.<<.b.a.& |
| 21fa0 | 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 20 | lt;<=.b</code></pre></td>.... |
| 21fc0 | 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 20 | .......<td>.............<ul>.... |
| 21fe0 | 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 72 | ...........<li><a.href="#Integer |
| 22000 | 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 20 | s">Integers</a></li>............ |
| 22020 | 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>.......... |
| 22040 | 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>.......... |
| 22060 | 20 20 20 20 20 3c 6c 69 3e 4d 6f 76 65 73 20 61 6c 6c 20 62 69 74 73 20 74 6f 20 74 68 65 20 6c | .....<li>Moves.all.bits.to.the.l |
| 22080 | 65 66 74 2c 20 69 6e 73 65 72 74 69 6e 67 20 6e 65 77 20 7a 65 72 6f 65 73 20 61 74 20 74 68 65 | eft,.inserting.new.zeroes.at.the |
| 220a0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 65 61 73 74 2d 73 69 67 6e 69 66 69 63 61 6e 74 | ...............least-significant |
| 220c0 | 20 62 69 74 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 3c 63 6f | .bit.</li>...............<li><co |
| 220e0 | 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 | de>b</code>.must.be............. |
| 22100 | 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 65 2d 6b | ..<a.href="#comptime">comptime-k |
| 22120 | 6e 6f 77 6e 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 | nown</a>.or.have.a.type.with.log |
| 22140 | 32 20 6e 75 6d 62 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 66 20 62 69 74 73 20 61 | 2.number...............of.bits.a |
| 22160 | 73 20 3c 63 6f 64 65 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 | s.<code>a</code>.</li>.......... |
| 22180 | 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 73 68 6c 45 | .....<li>See.also.<a.href="#shlE |
| 221a0 | 78 61 63 74 22 3e 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 | xact">@shlExact</a>.</li>....... |
| 221c0 | 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 73 | ........<li>See.also.<a.href="#s |
| 221e0 | 68 6c 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 | hlWithOverflow">@shlWithOverflow |
| 22200 | 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 20 | </a>.</li>.............</ul>.... |
| 22220 | 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>..... |
| 22240 | 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ........<pre><code><span.class=" |
| 22260 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 3c 2f 73 70 61 6e 3e 20 26 6c 74 3b 26 6c 74 3b 20 | tok-number">0b1</span>.<<. |
| 22280 | 3c 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 |
| 222a0 | 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 3e 30 62 | >.==.<span.class="tok-number">0b |
| 222c0 | 31 30 30 30 30 30 30 30 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | 100000000</span></code></pre>... |
| 222e0 | 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>..... |
| 22300 | 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 53 61 74 75 72 61 74 69 6e | ....<tr>...........<td>Saturatin |
| 22320 | 67 20 42 69 74 20 53 68 69 66 74 20 4c 65 66 74 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | g.Bit.Shift.Left</td>........... |
| 22340 | 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 26 6c 74 3b 26 6c 74 3b 7c 20 62 0a 61 20 26 | <td><pre><code>a.<<|.b.a.& |
| 22360 | 6c 74 3b 26 6c 74 3b 7c 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 | lt;<|=.b</code></pre></td>... |
| 22380 | 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>... |
| 223a0 | 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 |
| 223c0 | 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>........... |
| 223e0 | 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>......... |
| 22400 | 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>......... |
| 22420 | 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 73 68 6c | ......<li>See.also.<a.href="#shl |
| 22440 | 45 78 61 63 74 22 3e 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 | Exact">@shlExact</a>.</li>...... |
| 22460 | 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="# |
| 22480 | 73 68 6c 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 | shlWithOverflow">@shlWithOverflo |
| 224a0 | 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>... |
| 224c0 | 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>.... |
| 224e0 | 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .........<pre><code><span.class= |
| 22500 | 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 |
| 22520 | 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 61 6e | lass="tok-type">u8</span>,.<span |
| 22540 | 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 26 6c | .class="tok-number">1</span>).&l |
| 22560 | 74 3b 26 6c 74 3b 7c 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 | t;<|.<span.class="tok-number" |
| 22580 | 3e 38 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 | >8</span>.==.<span.class="tok-nu |
| 225a0 | 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | mber">255</span></code></pre>... |
| 225c0 | 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>..... |
| 225e0 | 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 42 69 74 20 53 68 69 66 74 | ....<tr>...........<td>Bit.Shift |
| 22600 | 20 52 69 67 68 74 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c | .Right</td>...........<td><pre>< |
| 22620 | 63 6f 64 65 3e 61 20 26 67 74 3b 26 67 74 3b 20 62 0a 61 20 26 67 74 3b 26 67 74 3b 3d 20 62 3c | code>a.>>.b.a.>>=.b< |
| 22640 | 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> |
| 22660 | 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>............... |
| 22680 | 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 |
| 226a0 | 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>..... |
| 226c0 | 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>...... |
| 226e0 | 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 4d 6f | .......<ul>...............<li>Mo |
| 22700 | 76 65 73 20 61 6c 6c 20 62 69 74 73 20 74 6f 20 74 68 65 20 72 69 67 68 74 2c 20 69 6e 73 65 72 | ves.all.bits.to.the.right,.inser |
| 22720 | 74 69 6e 67 20 7a 65 72 6f 65 73 20 61 74 20 74 68 65 20 6d 6f 73 74 2d 73 69 67 6e 69 66 69 63 | ting.zeroes.at.the.most-signific |
| 22740 | 61 6e 74 20 62 69 74 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 | ant.bit.</li>...............<li> |
| 22760 | 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 0a 20 20 20 20 20 20 20 20 20 | <code>b</code>.must.be.......... |
| 22780 | 20 20 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 | .......<a.href="#comptime">compt |
| 227a0 | 69 6d 65 2d 6b 6e 6f 77 6e 3c 2f 61 3e 20 6f 72 20 68 61 76 65 20 61 20 74 79 70 65 20 77 69 74 | ime-known</a>.or.have.a.type.wit |
| 227c0 | 68 20 6c 6f 67 32 20 6e 75 6d 62 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 66 | h.log2.number.................of |
| 227e0 | 20 62 69 74 73 20 61 73 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 | .bits.as.<code>a</code>.</li>... |
| 22800 | 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 |
| 22820 | 3d 22 23 73 68 72 45 78 61 63 74 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 61 3e 2e 3c 2f 6c 69 3e | ="#shrExact">@shrExact</a>.</li> |
| 22840 | 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 |
| 22860 | 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 |
| 22880 | 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | re><code><span.class="tok-number |
| 228a0 | 22 3e 30 62 31 30 31 30 3c 2f 73 70 61 6e 3e 20 26 67 74 3b 26 67 74 3b 20 3c 73 70 61 6e 20 63 | ">0b1010</span>.>>.<span.c |
| 228c0 | 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 73 | lass="tok-number">1</span>.==.<s |
| 228e0 | 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 3c 2f 73 70 | pan.class="tok-number">0b101</sp |
| 22900 | 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> |
| 22920 | 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>..... |
| 22940 | 20 20 20 20 20 20 3c 74 64 3e 42 69 74 77 69 73 65 20 41 6e 64 3c 2f 74 64 3e 0a 20 20 20 20 20 | ......<td>Bitwise.And</td>...... |
| 22960 | 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 26 61 6d 70 3b 20 62 0a 61 20 | .....<td><pre><code>a.&.b.a. |
| 22980 | 26 61 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 | &=.b</code></pre></td>...... |
| 229a0 | 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>...... |
| 229c0 | 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 72 73 22 | .........<li><a.href="#Integers" |
| 229e0 | 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 20 20 3c | >Integers</a></li>.............< |
| 22a00 | 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>...........< |
| 22a20 | 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 20 20 | td>.............<ul>............ |
| 22a40 | 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 |
| 22a60 | 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 |
| 22a80 | 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>.. |
| 22aa0 | 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> |
| 22ac0 | 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 65 | ...........<td>.............<pre |
| 22ae0 | 3e 3c 63 6f 64 65 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 | ><code><span.class="tok-number"> |
| 22b00 | 30 62 30 31 31 3c 2f 73 70 61 6e 3e 20 26 61 6d 70 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 0b011</span>.&.<span.class=" |
| 22b20 | 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 73 70 61 | tok-number">0b101</span>.==.<spa |
| 22b40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 30 30 31 3c 2f 73 70 61 6e | n.class="tok-number">0b001</span |
| 22b60 | 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>.. |
| 22b80 | 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>....... |
| 22ba0 | 20 20 20 20 3c 74 64 3e 42 69 74 77 69 73 65 20 4f 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | ....<td>Bitwise.Or</td>......... |
| 22bc0 | 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 7c 20 62 0a 61 20 7c 3d 20 62 3c 2f 63 | ..<td><pre><code>a.|.b.a.|=.b</c |
| 22be0 | 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>.. |
| 22c00 | 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 |
| 22c20 | 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 3c 2f | i><a.href="#Integers">Integers</ |
| 22c40 | 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>....... |
| 22c60 | 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>........ |
| 22c80 | 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 6e 76 6f | .....<ul>...............<li>Invo |
| 22ca0 | 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 |
| 22cc0 | 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 |
| 22ce0 | 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>............. |
| 22d00 | 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>........... |
| 22d20 | 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 3e 3c 73 70 61 | <td>.............<pre><code><spa |
| 22d40 | 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 30 3c 2f 73 70 61 6e | n.class="tok-number">0b010</span |
| 22d60 | 3e 20 7c 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 | >.|.<span.class="tok-number">0b1 |
| 22d80 | 30 30 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 | 00</span>.==.<span.class="tok-nu |
| 22da0 | 6d 62 65 72 22 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 | mber">0b110</span></code></pre>. |
| 22dc0 | 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>... |
| 22de0 | 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 42 69 74 77 69 73 65 | ......<tr>...........<td>Bitwise |
| 22e00 | 20 58 6f 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f | .Xor</td>...........<td><pre><co |
| 22e20 | 64 65 3e 61 20 5e 20 62 0a 61 20 5e 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 | de>a.^.b.a.^=.b</code></pre></td |
| 22e40 | 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 |
| 22e60 | 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 |
| 22e80 | 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>....... |
| 22ea0 | 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>..... |
| 22ec0 | 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 20 20 | ......<td>.............<ul>..... |
| 22ee0 | 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 3d 22 23 | ..........<li>Invokes.<a.href="# |
| 22f00 | 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 70 65 20 | Peer-Type-Resolution">Peer.Type. |
| 22f20 | 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 64 73 2e | Resolution</a>.for.the.operands. |
| 22f40 | 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>......... |
| 22f60 | 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>.......... |
| 22f80 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ...<pre><code><span.class="tok-n |
| 22fa0 | 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 |
| 22fc0 | 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>.==.< |
| 22fe0 | 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 |
| 23000 | 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 |
| 23020 | 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>.... |
| 23040 | 20 20 20 20 20 20 20 3c 74 64 3e 42 69 74 77 69 73 65 20 4e 6f 74 3c 2f 74 64 3e 0a 20 20 20 20 | .......<td>Bitwise.Not</td>..... |
| 23060 | 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 7e 61 3c 2f 63 6f 64 65 3e 3c 2f | ......<td><pre><code>~a</code></ |
| 23080 | 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>........ |
| 230a0 | 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 |
| 230c0 | 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 |
| 230e0 | 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>...........</ |
| 23100 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | td>...........<td></td>......... |
| 23120 | 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 3e 7e 3c | ..<td>.............<pre><code>~< |
| 23140 | 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 70 | span.class="tok-builtin">@as</sp |
| 23160 | 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 73 | an>(<span.class="tok-type">u8</s |
| 23180 | 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 |
| 231a0 | 62 31 30 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 | b10101111</span>).==.<span.class |
| 231c0 | 3d 22 74 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 | ="tok-number">0b01010000</span>< |
| 231e0 | 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>.... |
| 23200 | 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>......... |
| 23220 | 20 20 3c 74 64 3e 44 65 66 61 75 6c 74 69 6e 67 20 4f 70 74 69 6f 6e 61 6c 20 55 6e 77 72 61 70 | ..<td>Defaulting.Optional.Unwrap |
| 23240 | 3c 2f 74 64 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 3e 61 | </td>...........<td><pre><code>a |
| 23260 | 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 73 70 | .<span.class="tok-kw">orelse</sp |
| 23280 | 61 6e 3e 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 | an>.b</code></pre></td>......... |
| 232a0 | 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>......... |
| 232c0 | 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 |
| 232e0 | 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>.............</ |
| 23300 | 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 |
| 23320 | 64 3e 49 66 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 | d>If.<code>a</code>.is.<code><sp |
| 23340 | 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 3c | an.class="tok-null">null</span>< |
| 23360 | 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 3e | /code>,...........returns.<code> |
| 23380 | 62 3c 2f 63 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 | b</code>.("default.value"),..... |
| 233a0 | 20 20 20 20 20 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 | ......otherwise.returns.the.unwr |
| 233c0 | 61 70 70 65 64 20 76 61 6c 75 65 20 6f 66 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e 2e 0a 20 | apped.value.of.<code>a</code>... |
| 233e0 | 20 20 20 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 | .........Note.that.<code>b</code |
| 23400 | 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 3c 61 20 68 72 65 66 | >.may.be.a.value.of.type.<a.href |
| 23420 | 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 2e 0a 20 20 20 20 20 | ="#noreturn">noreturn</a>....... |
| 23440 | 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>....... |
| 23460 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ......<pre><code><span.class="to |
| 23480 | 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 3f 3c 73 70 61 6e | k-kw">const</span>.value:.?<span |
| 234a0 | 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 20 3c | .class="tok-type">u32</span>.=.< |
| 234c0 | 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 |
| 234e0 | 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 |
| 23500 | 70 61 6e 3e 20 75 6e 77 72 61 70 70 65 64 20 3d 20 76 61 6c 75 65 20 3c 73 70 61 6e 20 63 6c 61 | pan>.unwrapped.=.value.<span.cla |
| 23520 | 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 61 6e 20 | ss="tok-kw">orelse</span>.<span. |
| 23540 | 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>;. |
| 23560 | 75 6e 77 72 61 70 70 65 64 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | unwrapped.==.<span.class="tok-nu |
| 23580 | 6d 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 | mber">1234</span></code></pre>.. |
| 235a0 | 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>.... |
| 235c0 | 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4f 70 74 69 6f 6e 61 6c | .....<tr>...........<td>Optional |
| 235e0 | 20 55 6e 77 72 61 70 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e | .Unwrap</td>...........<td><pre> |
| 23600 | 3c 63 6f 64 65 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 | <code>a.?</code></pre></td>..... |
| 23620 | 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 20 20 | ......<td>.............<ul>..... |
| 23640 | 20 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 | ..........<li><a.href="#Optional |
| 23660 | 73 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 | s">Optionals</a></li>........... |
| 23680 | 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>......... |
| 236a0 | 20 20 3c 74 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 | ..<td>.............Equivalent.to |
| 236c0 | 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 3c 73 70 61 6e | :.............<pre><code>a.<span |
| 236e0 | 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 3c 73 | .class="tok-kw">orelse</span>.<s |
| 23700 | 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 3c 2f | pan.class="tok-kw">unreachable</ |
| 23720 | 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 |
| 23740 | 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 |
| 23760 | 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | re><code><span.class="tok-kw">co |
| 23780 | 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 6c 61 73 73 3d 22 | nst</span>.value:.?<span.class=" |
| 237a0 | 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 20 63 6c 61 | tok-type">u32</span>.=.<span.cla |
| 237c0 | 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 76 61 6c | ss="tok-number">5678</span>;.val |
| 237e0 | 75 65 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 | ue.?.==.<span.class="tok-number" |
| 23800 | 3e 35 36 37 38 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 | >5678</span></code></pre>....... |
| 23820 | 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>......... |
| 23840 | 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 44 65 66 61 75 6c 74 69 6e 67 20 45 72 | <tr>...........<td>Defaulting.Er |
| 23860 | 72 6f 72 20 55 6e 77 72 61 70 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 | ror.Unwrap</td>...........<td><p |
| 23880 | 72 65 3e 3c 63 6f 64 65 3e 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | re><code>a.<span.class="tok-kw"> |
| 238a0 | 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 62 0a 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | catch</span>.b.a.<span.class="to |
| 238c0 | 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 62 3c 2f 63 6f 64 65 | k-kw">catch</span>.|err|.b</code |
| 238e0 | 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>..... |
| 23900 | 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>< |
| 23920 | 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 73 3c 2f 61 | a.href="#Errors">Error.Unions</a |
| 23940 | 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 20 | ></li>.............</ul>........ |
| 23960 | 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 3c 63 6f 64 65 3e | ...</td>...........<td>If.<code> |
| 23980 | 61 3c 2f 63 6f 64 65 3e 20 69 73 20 61 6e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | a</code>.is.an.<code><span.class |
| 239a0 | 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 2c 0a 20 | ="tok-kw">error</span></code>,.. |
| 239c0 | 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 | .........returns.<code>b</code>. |
| 239e0 | 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 20 20 6f 74 68 | ("default.value"),...........oth |
| 23a00 | 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 20 76 61 6c | erwise.returns.the.unwrapped.val |
| 23a20 | 75 65 20 6f 66 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 | ue.of.<code>a</code>............ |
| 23a40 | 4e 6f 74 65 20 74 68 61 74 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 62 65 20 | Note.that.<code>b</code>.may.be. |
| 23a60 | 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 75 | a.value.of.type.<a.href="#noretu |
| 23a80 | 72 6e 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 61 3e 2e 0a 3c 63 6f 64 65 3e 65 72 72 3c 2f 63 6f 64 | rn">noreturn</a>..<code>err</cod |
| 23aa0 | 65 3e 20 69 73 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | e>.is.the.<code><span.class="tok |
| 23ac0 | 2d 6b 77 22 3e 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 | -kw">error</span></code>.and.is. |
| 23ae0 | 69 6e 20 73 63 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 | in.scope.of.the.expression.<code |
| 23b00 | 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 3e 0a 20 20 20 20 20 | >b</code>............</td>...... |
| 23b20 | 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 |
| 23b40 | 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 |
| 23b60 | 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 74 79 70 65 22 | n>.value:.<span.class="tok-type" |
| 23b80 | 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 74 6f | >anyerror</span>!<span.class="to |
| 23ba0 | 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 |
| 23bc0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 42 72 6f 6b 65 6e 3b 0a 3c | ="tok-kw">error</span>.Broken;.< |
| 23be0 | 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> |
| 23c00 | 20 75 6e 77 72 61 70 70 65 64 20 3d 20 76 61 6c 75 65 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .unwrapped.=.value.<span.class=" |
| 23c20 | 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 6c 61 73 73 | tok-kw">catch</span>.<span.class |
| 23c40 | 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 75 6e 77 72 61 | ="tok-number">1234</span>;.unwra |
| 23c60 | 70 70 65 64 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 | pped.==.<span.class="tok-number" |
| 23c80 | 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 20 20 20 | >1234</span></code></pre>....... |
| 23ca0 | 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>......... |
| 23cc0 | 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4c 6f 67 69 63 61 6c 20 41 6e 64 3c 2f | <tr>...........<td>Logical.And</ |
| 23ce0 | 74 64 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 3e 61 20 3c | td>...........<td><pre><code>a.< |
| 23d00 | 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 |
| 23d20 | 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 |
| 23d40 | 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>.............. |
| 23d60 | 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"> |
| 23d80 | 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>. |
| 23da0 | 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>.. |
| 23dc0 | 20 20 20 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 | .........If.<code>a</code>.is.<c |
| 23de0 | 6f 64 65 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 | ode><span.class="tok-null">false |
| 23e00 | 3c 2f 73 70 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 3e 3c 73 | </span></code>,.returns.<code><s |
| 23e20 | 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 |
| 23e40 | 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 77 69 74 68 6f 75 74 20 65 76 61 6c 75 | ></code>...........without.evalu |
| 23e60 | 61 74 69 6e 67 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 2e 20 4f 74 68 65 72 77 69 73 65 2c | ating.<code>b</code>..Otherwise, |
| 23e80 | 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 | .returns.<code>b</code>......... |
| 23ea0 | 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>......... |
| 23ec0 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ....<pre><code>(<span.class="tok |
| 23ee0 | 2d 6e 75 6c 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 | -null">false</span>.<span.class= |
| 23f00 | 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 63 6c 61 73 73 3d | "tok-kw">and</span>.<span.class= |
| 23f20 | 22 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 | "tok-null">true</span>).==.<span |
| 23f40 | 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></ |
| 23f60 | 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>..... |
| 23f80 | 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>.......... |
| 23fa0 | 20 3c 74 64 3e 4c 6f 67 69 63 61 6c 20 4f 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | .<td>Logical.Or</td>...........< |
| 23fc0 | 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | td><pre><code>a.<span.class="tok |
| 23fe0 | 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 | -kw">or</span>.b</code></pre></t |
| 24000 | 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 |
| 24020 | 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 50 | l>...............<li><a.href="#P |
| 24040 | 72 69 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 | rimitive-Types">bool</a></li>... |
| 24060 | 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>. |
| 24080 | 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 20 20 49 66 20 | ..........<td>...............If. |
| 240a0 | 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | <code>a</code>.is.<code><span.cl |
| 240c0 | 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 |
| 240e0 | 3e 2c 0a 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 3e 3c | >,...............returns.<code>< |
| 24100 | 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 |
| 24120 | 3e 3c 2f 63 6f 64 65 3e 20 77 69 74 68 6f 75 74 20 65 76 61 6c 75 61 74 69 6e 67 0a 20 20 20 20 | ></code>.without.evaluating..... |
| 24140 | 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 2e 20 4f 74 68 65 72 77 | ..........<code>b</code>..Otherw |
| 24160 | 69 73 65 2c 20 72 65 74 75 72 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 | ise,.returns...............<code |
| 24180 | 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 3e 0a 20 20 20 20 20 | >b</code>............</td>...... |
| 241a0 | 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 |
| 241c0 | 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</ |
| 241e0 | 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 73 | span>.<span.class="tok-kw">or</s |
| 24200 | 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 65 | pan>.<span.class="tok-null">true |
| 24220 | 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 |
| 24240 | 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>..... |
| 24260 | 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>....... |
| 24280 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 42 6f 6f 6c 65 61 6e 20 4e 6f 74 | ..<tr>...........<td>Boolean.Not |
| 242a0 | 3c 2f 74 64 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 3e 21 | </td>...........<td><pre><code>! |
| 242c0 | 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 20 3c 74 | a</code></pre></td>...........<t |
| 242e0 | 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>............. |
| 24300 | 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 22 | ..<li><a.href="#Primitive-Types" |
| 24320 | 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 3c 2f 75 6c 3e | >bool</a></li>.............</ul> |
| 24340 | 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 3c | ...........</td>...........<td>< |
| 24360 | 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>............. |
| 24380 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | <pre><code>!<span.class="tok-nul |
| 243a0 | 6c 22 3e 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 | l">false</span>.==.<span.class=" |
| 243c0 | 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 3c 2f 70 72 | tok-null">true</span></code></pr |
| 243e0 | 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 72 3e | e>...........</td>.........</tr> |
| 24400 | 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 45 71 75 61 | .........<tr>...........<td>Equa |
| 24420 | 6c 69 74 79 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f | lity</td>...........<td><pre><co |
| 24440 | 64 65 3e 61 20 3d 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 | de>a.==.b</code></pre></td>..... |
| 24460 | 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 20 20 | ......<td>.............<ul>..... |
| 24480 | 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 72 73 | ..........<li><a.href="#Integers |
| 244a0 | 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 20 20 | ">Integers</a></li>............. |
| 244c0 | 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 6f 61 74 73 3c 2f | ..<li><a.href="#Floats">Floats</ |
| 244e0 | 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 72 65 | a></li>...............<li><a.hre |
| 24500 | 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 3c 2f 6c | f="#Primitive-Types">bool</a></l |
| 24520 | 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 72 65 66 3d 22 23 50 | i>...............<li><a.href="#P |
| 24540 | 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 2f 6c 69 3e 0a 20 20 | rimitive-Types">type</a></li>... |
| 24560 | 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>. |
| 24580 | 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 20 20 52 65 74 | ..........<td>...............Ret |
| 245a0 | 75 72 6e 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | urns.<code><span.class="tok-null |
| 245c0 | 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 61 6e 64 20 62 20 | ">true</span></code>.if.a.and.b. |
| 245e0 | 61 72 65 20 65 71 75 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 | are.equal,.otherwise.returns.<co |
| 24600 | 64 65 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 | de><span.class="tok-null">false< |
| 24620 | 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 49 6e 76 6f 6b | /span></code>..............Invok |
| 24640 | 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 6f | es.<a.href="#Peer-Type-Resolutio |
| 24660 | 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 20 | n">Peer.Type.Resolution</a>.for. |
| 24680 | 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 64 3e 0a 20 20 | the.operands............</td>... |
| 246a0 | 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 |
| 246c0 | 6f 64 65 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 31 3c | ode>(<span.class="tok-number">1< |
| 246e0 | 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 65 | /span>.==.<span.class="tok-numbe |
| 24700 | 72 22 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 | r">1</span>).==.<span.class="tok |
| 24720 | 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>. |
| 24740 | 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>... |
| 24760 | 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 4e 75 6c 6c 20 43 68 | ......<tr>...........<td>Null.Ch |
| 24780 | 65 63 6b 3c 2f 74 64 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 | eck</td>...........<td><pre><cod |
| 247a0 | 65 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 | e>a.==.<span.class="tok-null">nu |
| 247c0 | 6c 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 | ll</span></code></pre></td>..... |
| 247e0 | 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 20 20 | ......<td>.............<ul>..... |
| 24800 | 20 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 | ..........<li><a.href="#Optional |
| 24820 | 73 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 | s">Optionals</a></li>........... |
| 24840 | 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>......... |
| 24860 | 20 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 | ..<td>...............Returns.<co |
| 24880 | 64 65 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 | de><span.class="tok-null">true</ |
| 248a0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 61 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | span></code>.if.a.is.<code><span |
| 248c0 | 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 3c 2f 63 | .class="tok-null">null</span></c |
| 248e0 | 6f 64 65 3e 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 3e 3c 73 | ode>,.otherwise.returns.<code><s |
| 24900 | 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 |
| 24920 | 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 20 20 20 | ></code>............</td>....... |
| 24940 | 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 3e | ....<td>.............<pre><code> |
| 24960 | 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 |
| 24980 | 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 79 70 65 22 | >.value:.?<span.class="tok-type" |
| 249a0 | 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 |
| 249c0 | 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 | ull">null</span>;.(value.==.<spa |
| 249e0 | 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 29 20 | n.class="tok-null">null</span>). |
| 24a00 | 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 74 72 75 65 3c 2f | ==.<span.class="tok-null">true</ |
| 24a20 | 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 |
| 24a40 | 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>... |
| 24a60 | 20 20 20 20 20 20 20 20 3c 74 64 3e 49 6e 65 71 75 61 6c 69 74 79 3c 2f 74 64 3e 0a 20 20 20 20 | ........<td>Inequality</td>..... |
| 24a80 | 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 21 3d 20 62 3c 2f 63 6f 64 | ......<td><pre><code>a.!=.b</cod |
| 24aa0 | 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 20 20 | e></pre></td>...........<td>.... |
| 24ac0 | 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> |
| 24ae0 | 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 3c 2f 61 3e | <a.href="#Integers">Integers</a> |
| 24b00 | 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 72 65 66 3d | </li>...............<li><a.href= |
| 24b20 | 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 20 20 20 20 | "#Floats">Floats</a></li>....... |
| 24b40 | 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 6d 69 74 69 76 65 2d | ........<li><a.href="#Primitive- |
| 24b60 | 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 20 20 20 20 20 20 20 | Types">bool</a></li>............ |
| 24b80 | 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 |
| 24ba0 | 22 3e 74 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 2f 75 6c | ">type</a></li>.............</ul |
| 24bc0 | 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> |
| 24be0 | 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 3e 3c 73 70 | ...............Returns.<code><sp |
| 24c00 | 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> |
| 24c20 | 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 74 | </code>.if.a.and.b.are.equal,.ot |
| 24c40 | 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | herwise.returns.<code><span.clas |
| 24c60 | 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 2e | s="tok-null">true</span></code>. |
| 24c80 | 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 65 66 3d 22 23 50 | .............Invokes.<a.href="#P |
| 24ca0 | 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 70 65 20 52 | eer-Type-Resolution">Peer.Type.R |
| 24cc0 | 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 64 73 2e 0a | esolution</a>.for.the.operands.. |
| 24ce0 | 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>.. |
| 24d00 | 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 28 3c 73 70 61 6e 20 63 6c 61 | ...........<pre><code>(<span.cla |
| 24d20 | 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 21 3d 20 3c 73 70 61 | ss="tok-number">1</span>.!=.<spa |
| 24d40 | 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 3d | n.class="tok-number">1</span>).= |
| 24d60 | 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 3c 2f | =.<span.class="tok-null">false</ |
| 24d80 | 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 |
| 24da0 | 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>... |
| 24dc0 | 20 20 20 20 20 20 20 20 3c 74 64 3e 4e 6f 6e 2d 4e 75 6c 6c 20 43 68 65 63 6b 3c 2f 74 64 3e 0a | ........<td>Non-Null.Check</td>. |
| 24de0 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 21 3d 20 3c 73 | ..........<td><pre><code>a.!=.<s |
| 24e00 | 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> |
| 24e20 | 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 |
| 24e40 | 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>.............. |
| 24e60 | 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 |
| 24e80 | 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>.. |
| 24ea0 | 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>... |
| 24ec0 | 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 3e 3c 73 70 61 6e 20 | ............Returns.<code><span. |
| 24ee0 | 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 63 | class="tok-null">false</span></c |
| 24f00 | 6f 64 65 3e 20 69 66 20 61 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ode>.if.a.is.<code><span.class=" |
| 24f20 | 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 3e 2c 20 6f 74 | tok-null">null</span></code>,.ot |
| 24f40 | 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | herwise.returns.<code><span.clas |
| 24f60 | 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 2e | s="tok-null">true</span></code>. |
| 24f80 | 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>. |
| 24fa0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | ............<pre><code><span.cla |
| 24fc0 | 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 3a 20 | ss="tok-kw">const</span>.value:. |
| 24fe0 | 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 61 | ?<span.class="tok-type">u32</spa |
| 25000 | 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 6c | n>.=.<span.class="tok-null">null |
| 25020 | 3c 2f 73 70 61 6e 3e 3b 0a 28 76 61 6c 75 65 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </span>;.(value.!=.<span.class=" |
| 25040 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 | tok-null">null</span>).==.<span. |
| 25060 | 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 63 | class="tok-null">false</span></c |
| 25080 | 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>...... |
| 250a0 | 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>........... |
| 250c0 | 3c 74 64 3e 47 72 65 61 74 65 72 20 54 68 61 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | <td>Greater.Than</td>........... |
| 250e0 | 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 26 67 74 3b 20 62 3c 2f 63 6f 64 65 3e 3c 2f | <td><pre><code>a.>.b</code></ |
| 25100 | 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>........ |
| 25120 | 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 |
| 25140 | 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 |
| 25160 | 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 46 6c | >...............<li><a.href="#Fl |
| 25180 | 6f 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 | oats">Floats</a></li>........... |
| 251a0 | 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>......... |
| 251c0 | 20 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 | ..<td>...............Returns.<co |
| 251e0 | 64 65 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 | de><span.class="tok-null">true</ |
| 25200 | 73 70 61 6e 3e 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 | span></code>.if.a.is.greater.tha |
| 25220 | 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 64 65 3e 3c 73 70 | n.b,.otherwise.returns.<code><sp |
| 25240 | 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> |
| 25260 | 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 73 20 3c 61 20 | </code>..............Invokes.<a. |
| 25280 | 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 |
| 252a0 | 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 |
| 252c0 | 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 20 20 20 20 20 | erands............</td>......... |
| 252e0 | 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 3e 28 3c | ..<td>.............<pre><code>(< |
| 25300 | 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> |
| 25320 | 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 3e 31 | .>.<span.class="tok-number">1 |
| 25340 | 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 |
| 25360 | 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>..... |
| 25380 | 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>....... |
| 253a0 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 47 72 65 61 74 65 72 20 6f 72 20 | ..<tr>...........<td>Greater.or. |
| 253c0 | 45 71 75 61 6c 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 | Equal</td>...........<td><pre><c |
| 253e0 | 6f 64 65 3e 61 20 26 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 | ode>a.>=.b</code></pre></td>. |
| 25400 | 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>. |
| 25420 | 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 74 65 | ..............<li><a.href="#Inte |
| 25440 | 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 20 20 | gers">Integers</a></li>......... |
| 25460 | 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 6f 61 | ......<li><a.href="#Floats">Floa |
| 25480 | 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 20 20 | ts</a></li>.............</ul>... |
| 254a0 | 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>.... |
| 254c0 | 20 20 20 20 20 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ...........Returns.<code><span.c |
| 254e0 | 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 |
| 25500 | 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 65 71 75 61 6c | e>.if.a.is.greater.than.or.equal |
| 25520 | 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 6f 64 65 3e 3c | .to.b,.otherwise.returns.<code>< |
| 25540 | 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 |
| 25560 | 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 73 20 3c | n></code>..............Invokes.< |
| 25580 | 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 50 | a.href="#Peer-Type-Resolution">P |
| 255a0 | 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 20 | eer.Type.Resolution</a>.for.the. |
| 255c0 | 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 20 20 20 | operands............</td>....... |
| 255e0 | 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 3e | ....<td>.............<pre><code> |
| 25600 | 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 |
| 25620 | 6e 3e 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 62 65 72 | n>.>=.<span.class="tok-number |
| 25640 | 22 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 | ">1</span>).==.<span.class="tok- |
| 25660 | 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 20 | null">true</span></code></pre>.. |
| 25680 | 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>.... |
| 256a0 | 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4c 65 73 73 20 54 68 61 | .....<tr>...........<td>Less.Tha |
| 256c0 | 6e 3c 2f 74 64 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 3e | n</td>...........<td><pre><code> |
| 256e0 | 61 20 26 6c 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 | a.<.b</code></pre></td>...... |
| 25700 | 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>...... |
| 25720 | 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 72 73 22 | .........<li><a.href="#Integers" |
| 25740 | 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 20 20 20 | >Integers</a></li>.............. |
| 25760 | 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 6f 61 74 73 3c 2f 61 | .<li><a.href="#Floats">Floats</a |
| 25780 | 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 20 | ></li>.............</ul>........ |
| 257a0 | 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>......... |
| 257c0 | 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ......Returns.<code><span.class= |
| 257e0 | 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 20 69 66 | "tok-null">true</span></code>.if |
| 25800 | 20 61 20 69 73 20 6c 65 73 73 20 74 68 61 6e 20 62 2c 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 | .a.is.less.than.b,.otherwise.ret |
| 25820 | 75 72 6e 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | urns.<code><span.class="tok-null |
| 25840 | 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 20 20 20 | ">false</span></code>........... |
| 25860 | 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 70 65 2d 52 | ...Invokes.<a.href="#Peer-Type-R |
| 25880 | 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< |
| 258a0 | 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 20 20 20 20 | /a>.for.the.operands............ |
| 258c0 | 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>............ |
| 258e0 | 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | .<pre><code>(<span.class="tok-nu |
| 25900 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | mber">1</span>.<.<span.class= |
| 25920 | 22 74 6f 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 | "tok-number">2</span>).==.<span. |
| 25940 | 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 |
| 25960 | 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>....... |
| 25980 | 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>...........< |
| 259a0 | 74 64 3e 4c 65 73 73 65 72 20 6f 72 20 45 71 75 61 6c 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | td>Lesser.or.Equal</td>......... |
| 259c0 | 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 26 6c 74 3b 3d 20 62 3c 2f 63 6f 64 65 | ..<td><pre><code>a.<=.b</code |
| 259e0 | 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>..... |
| 25a00 | 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>< |
| 25a20 | 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>< |
| 25a40 | 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 72 65 66 3d 22 | /li>...............<li><a.href=" |
| 25a60 | 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 20 20 20 20 20 | #Floats">Floats</a></li>........ |
| 25a80 | 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>...... |
| 25aa0 | 20 20 20 20 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 | .....<td>...............Returns. |
| 25ac0 | 3c 63 6f 64 65 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 | <code><span.class="tok-null">tru |
| 25ae0 | 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 73 73 20 74 68 61 | e</span></code>.if.a.is.less.tha |
| 25b00 | 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 20 72 65 74 75 72 | n.or.equal.to.b,.otherwise.retur |
| 25b20 | 6e 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | ns.<code><span.class="tok-null"> |
| 25b40 | 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 20 20 20 20 20 | false</span></code>............. |
| 25b60 | 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 70 65 2d 52 65 73 | .Invokes.<a.href="#Peer-Type-Res |
| 25b80 | 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 61 | olution">Peer.Type.Resolution</a |
| 25ba0 | 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 20 20 20 20 3c 2f | >.for.the.operands............</ |
| 25bc0 | 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>.............< |
| 25be0 | 70 72 65 3e 3c 63 6f 64 65 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | pre><code>(<span.class="tok-numb |
| 25c00 | 65 72 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 | er">1</span>.<=.<span.class=" |
| 25c20 | 74 6f 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 | tok-number">2</span>).==.<span.c |
| 25c40 | 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 |
| 25c60 | 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>........ |
| 25c80 | 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 |
| 25ca0 | 64 3e 41 72 72 61 79 20 43 6f 6e 63 61 74 65 6e 61 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 | d>Array.Concatenation</td>...... |
| 25cc0 | 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 2b 2b 20 62 3c 2f 63 6f 64 65 | .....<td><pre><code>a.++.b</code |
| 25ce0 | 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>..... |
| 25d00 | 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>< |
| 25d20 | 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> |
| 25d40 | 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 |
| 25d60 | 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 |
| 25d80 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 4f 6e 6c 79 20 61 76 61 69 6c 61 | l>...............<li>Only.availa |
| 25da0 | 62 6c 65 20 77 68 65 6e 20 74 68 65 20 6c 65 6e 67 74 68 73 20 6f 66 20 62 6f 74 68 20 3c 63 6f | ble.when.the.lengths.of.both.<co |
| 25dc0 | 64 65 3e 61 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 61 | de>a</code>.and.<code>b</code>.a |
| 25de0 | 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 69 6c 65 2d 74 | re.<a.href="#comptime">compile-t |
| 25e00 | 69 6d 65 20 6b 6e 6f 77 6e 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ime.known</a>.</li>............. |
| 25e20 | 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>........... |
| 25e40 | 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 3e 3c 73 70 61 | <td>.............<pre><code><spa |
| 25e60 | 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 6d 65 | n.class="tok-kw">const</span>.me |
| 25e80 | 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 40 69 | m.=.<span.class="tok-builtin">@i |
| 25ea0 | 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 |
| 25ec0 | 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 3b 0a | r">"std"</span>).mem;. |
| 25ee0 | 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 |
| 25f00 | 3e 20 61 72 72 61 79 31 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | >.array1.=.[_]<span.class="tok-t |
| 25f20 | 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 73 73 3d 22 74 6f 6b | ype">u32</span>{<span.class="tok |
| 25f40 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -number">1</span>,<span.class="t |
| 25f60 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 | ok-number">2</span>};.<span.clas |
| 25f80 | 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 72 72 61 79 32 20 3d | s="tok-kw">const</span>.array2.= |
| 25fa0 | 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 33 32 3c 2f | .[_]<span.class="tok-type">u32</ |
| 25fc0 | 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 72 22 3e 33 | span>{<span.class="tok-number">3 |
| 25fe0 | 3c 2f 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 | </span>,<span.class="tok-number" |
| 26000 | 3e 34 3c 2f 73 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 | >4</span>};.<span.class="tok-kw" |
| 26020 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 6f 67 65 74 68 65 72 20 3d 20 61 72 72 61 79 31 20 | >const</span>.together.=.array1. |
| 26040 | 2b 2b 20 61 72 72 61 79 32 3b 0a 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ++.array2;.mem.eql(<span.class=" |
| 26060 | 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 70 3b 74 6f 67 65 74 | tok-type">u32</span>,.&toget |
| 26080 | 68 65 72 2c 20 26 61 6d 70 3b 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | her,.&[_]<span.class="tok-ty |
| 260a0 | 70 65 22 3e 75 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 | pe">u32</span>{<span.class="tok- |
| 260c0 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | number">1</span>,<span.class="to |
| 260e0 | 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-number">2</span>,<span.class=" |
| 26100 | 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 6c 61 73 73 | tok-number">3</span>,<span.class |
| 26120 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 7d 29 3c 2f 63 6f 64 65 3e 3c | ="tok-number">4</span>})</code>< |
| 26140 | 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 2f | /pre>...........</td>.........</ |
| 26160 | 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 41 | tr>.........<tr>...........<td>A |
| 26180 | 72 72 61 79 20 4d 75 6c 74 69 70 6c 69 63 61 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | rray.Multiplication</td>........ |
| 261a0 | 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 2a 2a 20 62 3c 2f 63 6f 64 65 3e 3c | ...<td><pre><code>a.**.b</code>< |
| 261c0 | 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 20 20 | /pre></td>...........<td>....... |
| 261e0 | 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 61 20 | ......<ul>...............<li><a. |
| 26200 | 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 0a 20 | href="#Arrays">Arrays</a></li>.. |
| 26220 | 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> |
| 26240 | 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> |
| 26260 | 0a 20 20 20 20 20 20 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 | ...............<li>Only.availabl |
| 26280 | 65 20 77 68 65 6e 20 74 68 65 20 6c 65 6e 67 74 68 20 6f 66 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f | e.when.the.length.of.<code>a</co |
| 262a0 | 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 61 72 65 20 3c 61 20 68 72 | de>.and.<code>b</code>.are.<a.hr |
| 262c0 | 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 6e 6f 77 | ef="#comptime">compile-time.know |
| 262e0 | 6e 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 | n</a>.</li>.............</ul>... |
| 26300 | 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>.... |
| 26320 | 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .........<pre><code><span.class= |
| 26340 | 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 70 61 | "tok-kw">const</span>.mem.=.<spa |
| 26360 | 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 |
| 26380 | 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">" |
| 263a0 | 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 63 6c | ;std"</span>).mem;.<span.cl |
| 263c0 | 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 61 74 74 65 72 | ass="tok-kw">const</span>.patter |
| 263e0 | 6e 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 3b | n.=.<span.class="tok-str">" |
| 26400 | 61 62 26 71 75 6f 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 | ab"</span>.**.<span.class=" |
| 26420 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 6d 65 6d 2e 65 71 6c 28 3c 73 | tok-number">3</span>;.mem.eql(<s |
| 26440 | 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>,. |
| 26460 | 70 61 74 74 65 72 6e 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 | pattern,.<span.class="tok-str">& |
| 26480 | 71 75 6f 74 3b 61 62 61 62 61 62 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e | quot;ababab"</span>)</code> |
| 264a0 | 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>.........< |
| 264c0 | 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> |
| 264e0 | 50 6f 69 6e 74 65 72 20 44 65 72 65 66 65 72 65 6e 63 65 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | Pointer.Dereference</td>........ |
| 26500 | 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 2e 2a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ...<td><pre><code>a.*</code></pr |
| 26520 | 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 20 | e></td>...........<td>.......... |
| 26540 | 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 65 | ...<ul>...............<li><a.hre |
| 26560 | 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 3c 2f 6c 69 3e 0a | f="#Pointers">Pointers</a></li>. |
| 26580 | 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 |
| 265a0 | 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 50 6f 69 | >...........<td>.............Poi |
| 265c0 | 6e 74 65 72 20 64 65 72 65 66 65 72 65 6e 63 65 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 | nter.dereference............</td |
| 265e0 | 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 |
| 26600 | 65 3e 3c 63 6f 64 65 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 | e><code><span.class="tok-kw">con |
| 26620 | 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 6f 6b 2d 74 79 | st</span>.x:.<span.class="tok-ty |
| 26640 | 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 6f | pe">u32</span>.=.<span.class="to |
| 26660 | 6b 2d 6e 75 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 | k-number">1234</span>;.<span.cla |
| 26680 | 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 26 | ss="tok-kw">const</span>.ptr.=.& |
| 266a0 | 61 6d 70 3b 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 | amp;x;.ptr.*.==.<span.class="tok |
| 266c0 | 2d 6e 75 6d 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 | -number">1234</span></code></pre |
| 266e0 | 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>. |
| 26700 | 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 41 64 64 72 65 | ........<tr>...........<td>Addre |
| 26720 | 73 73 20 4f 66 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 | ss.Of</td>...........<td><pre><c |
| 26740 | 6f 64 65 3e 26 61 6d 70 3b 61 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 | ode>&a</code></pre></td>.... |
| 26760 | 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 6c 6c 20 74 79 70 65 | .......<td>.............All.type |
| 26780 | 73 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 | s...........</td>...........<td> |
| 267a0 | 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>. |
| 267c0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | ............<pre><code><span.cla |
| 267e0 | 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 61 | ss="tok-kw">const</span>.x:.<spa |
| 26800 | 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 20 | n.class="tok-type">u32</span>.=. |
| 26820 | 3c 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 |
| 26840 | 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 |
| 26860 | 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 26 61 6d 70 3b 78 3b 0a 70 74 72 2e 2a 20 3d 3d 20 3c | </span>.ptr.=.&x;.ptr.*.==.< |
| 26880 | 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 |
| 268a0 | 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> |
| 268c0 | 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>..... |
| 268e0 | 20 20 20 20 20 20 3c 74 64 3e 45 72 72 6f 72 20 53 65 74 20 4d 65 72 67 65 3c 2f 74 64 3e 0a 20 | ......<td>Error.Set.Merge</td>.. |
| 26900 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 7c 7c 20 62 3c 2f | .........<td><pre><code>a.||.b</ |
| 26920 | 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 0a | code></pre></td>...........<td>. |
| 26940 | 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>...............< |
| 26960 | 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 3e 45 72 72 | li><a.href="#Error-Set-Type">Err |
| 26980 | 6f 72 20 53 65 74 20 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 | or.Set.Type</a></li>............ |
| 269a0 | 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>.......... |
| 269c0 | 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 4d 65 | .<td>...............<a.href="#Me |
| 269e0 | 72 67 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 | rging-Error-Sets">Merging.Error. |
| 26a00 | 53 65 74 73 3c 2f 61 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 | Sets</a>...........</td>........ |
| 26a20 | 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 3e 3c | ...<td>.............<pre><code>< |
| 26a40 | 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> |
| 26a60 | 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 72 3c | .A.=.<span.class="tok-kw">error< |
| 26a80 | 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 6b 77 | /span>{One};.<span.class="tok-kw |
| 26aa0 | 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 3d 22 | ">const</span>.B.=.<span.class=" |
| 26ac0 | 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 7c 7c | tok-kw">error</span>{Two};.(A.|| |
| 26ae0 | 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 72 6f | .B).==.<span.class="tok-kw">erro |
| 26b00 | 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 3e 0a | r</span>{One,.Two}</code></pre>. |
| 26b20 | 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>... |
| 26b40 | 20 20 20 20 20 20 3c 2f 74 62 6f 64 79 3e 0a 20 20 20 20 20 20 3c 2f 74 61 62 6c 65 3e 0a 20 20 | ......</tbody>.......</table>... |
| 26b60 | 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 | ....</div>..............<h3.id=" |
| 26b80 | 50 72 65 63 65 64 65 6e 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 72 65 63 65 64 | Precedence"><a.href="#toc-Preced |
| 26ba0 | 65 6e 63 65 22 3e 50 72 65 63 65 64 65 6e 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | ence">Precedence</a>.<a.class="h |
| 26bc0 | 64 72 22 20 68 72 65 66 3d 22 23 50 72 65 63 65 64 65 6e 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | dr".href="#Precedence">..</a></h |
| 26be0 | 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 78 28 29 20 78 5b 5d 20 78 2e 79 | 3>........<pre><code>x().x[].x.y |
| 26c00 | 20 78 2e 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 | .x.*.x.?.a!b.x{}.!x.-x.-%x.~x.&a |
| 26c20 | 6d 70 3b 78 20 3f 78 0a 2a 20 2f 20 25 20 2a 2a 20 2a 25 20 2a 7c 20 7c 7c 0a 2b 20 2d 20 2b 2b | mp;x.?x.*./.%.**.*%.*|.||.+.-.++ |
| 26c40 | 20 2b 25 20 2d 25 20 2b 7c 20 2d 7c 0a 26 6c 74 3b 26 6c 74 3b 20 26 67 74 3b 26 67 74 3b 20 26 | .+%.-%.+|.-|.<<.>>.& |
| 26c60 | 6c 74 3b 26 6c 74 3b 7c 0a 26 61 6d 70 3b 20 5e 20 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | lt;<|.&.^.|.<span.class=" |
| 26c80 | 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 61 6e 20 63 6c 61 73 | tok-kw">orelse</span>.<span.clas |
| 26ca0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 0a 3d 3d 20 21 3d 20 26 6c | s="tok-kw">catch</span>.==.!=.&l |
| 26cc0 | 74 3b 20 26 67 74 3b 20 26 6c 74 3b 3d 20 26 67 74 3b 3d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t;.>.<=.>=.<span.class= |
| 26ce0 | 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "tok-kw">and</span>.<span.class= |
| 26d00 | 22 74 6f 6b 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 0a 3d 20 2a 3d 20 2a 25 3d 20 2a 7c 3d 20 | "tok-kw">or</span>.=.*=.*%=.*|=. |
| 26d20 | 2f 3d 20 25 3d 20 2b 3d 20 2b 25 3d 20 2b 7c 3d 20 2d 3d 20 2d 25 3d 20 2d 7c 3d 20 26 6c 74 3b | /=.%=.+=.+%=.+|=.-=.-%=.-|=.< |
| 26d40 | 26 6c 74 3b 3d 20 26 6c 74 3b 26 6c 74 3b 7c 3d 20 26 67 74 3b 26 67 74 3b 3d 20 26 61 6d 70 3b | <=.<<|=.>>=.& |
| 26d60 | 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 20 20 0a 20 20 20 20 | =.^=.|=</code></pre>............ |
| 26d80 | 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 41 72 72 61 79 73 22 3e 3c 61 20 68 72 65 66 | .........<h2.id="Arrays"><a.href |
| 26da0 | 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 20 3c 61 20 63 6c 61 | ="#toc-Arrays">Arrays</a>.<a.cla |
| 26dc0 | 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 a7 3c 2f 61 3e 3c 2f | ss="hdr".href="#Arrays">..</a></ |
| 26de0 | 68 32 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 | h2>........<figure><figcaption.c |
| 26e00 | 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 | lass="zig-cap"><cite.class="file |
| 26e20 | 22 3e 74 65 73 74 5f 61 72 72 61 79 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | ">test_arrays.zig</cite></figcap |
| 26e40 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tion><pre><code><span.class="tok |
| 26e60 | 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 |
| 26e80 | 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 |
| 26ea0 | 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">" |
| 26ec0 | 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 |
| 26ee0 | 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 |
| 26f00 | 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | an>.assert.=.<span.class="tok-bu |
| 26f20 | 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 |
| 26f40 | 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 |
| 26f60 | 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n>).debug.assert;.<span.class="t |
| 26f80 | 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. |
| 26fa0 | 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 |
| 26fc0 | 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 |
| 26fe0 | 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 |
| 27000 | 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 6c 69 74 65 72 61 | ss="tok-comment">//.array.litera |
| 27020 | 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 6b 77 22 3e 63 6f | l</span>.<span.class="tok-kw">co |
| 27040 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 73 73 61 67 65 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c | nst</span>.message.=.[_]<span.cl |
| 27060 | 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. |
| 27080 | 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 2c 20 3c 73 70 61 | class="tok-str">'h'</span>,.<spa |
| 270a0 | 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 2c 20 3c 73 | n.class="tok-str">'e'</span>,.<s |
| 270c0 | 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 61 6e 3e 2c 20 | pan.class="tok-str">'l'</span>,. |
| 270e0 | 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 61 6e 3e | <span.class="tok-str">'l'</span> |
| 27100 | 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6f 27 3c 2f 73 70 61 | ,.<span.class="tok-str">'o'</spa |
| 27120 | 6e 3e 20 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 | n>.};..<span.class="tok-comment" |
| 27140 | 3e 2f 2f 20 61 6c 74 65 72 6e 61 74 69 76 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 75 | >//.alternative.initialization.u |
| 27160 | 73 69 6e 67 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | sing.result.location</span>.<spa |
| 27180 | 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 6c | n.class="tok-kw">const</span>.al |
| 271a0 | 74 5f 6d 65 73 73 61 67 65 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | t_message:.[<span.class="tok-num |
| 271c0 | 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 74 | ber">5</span>]<span.class="tok-t |
| 271e0 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 2e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ype">u8</span>.=..{.<span.class= |
| 27200 | 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 |
| 27220 | 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 |
| 27240 | 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. |
| 27260 | 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 |
| 27280 | 6e 20 63 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 | n.class="tok-str">'o'</span>.};. |
| 272a0 | 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 65 3c 2f | .<span.class="tok-kw">comptime</ |
| 272c0 | 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 6c 28 3c 73 70 61 6e | span>.{.....assert(mem.eql(<span |
| 272e0 | 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 26 61 6d | .class="tok-type">u8</span>,.&am |
| 27300 | 70 3b 6d 65 73 73 61 67 65 2c 20 26 61 6d 70 3b 61 6c 74 5f 6d 65 73 73 61 67 65 29 29 3b 0a 7d | p;message,.&alt_message));.} |
| 27320 | 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 67 | ..<span.class="tok-comment">//.g |
| 27340 | 65 74 20 74 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 | et.the.size.of.an.array</span>.< |
| 27360 | 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 |
| 27380 | 61 6e 3e 20 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 | an>.{.....assert(message.len.==. |
| 273a0 | 3c 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 | <span.class="tok-number">5</span |
| 273c0 | 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 74 22 | >);.}..<span.class="tok-comment" |
| 273e0 | 3e 2f 2f 20 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 | >//.A.string.literal.is.a.single |
| 27400 | 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 6e 20 61 72 72 61 79 2e 3c 2f 73 70 61 6e | -item.pointer.to.an.array.</span |
| 27420 | 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 70 | >.<span.class="tok-kw">const</sp |
| 27440 | 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 73 73 3d 22 | an>.same_message.=.<span.class=" |
| 27460 | 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 |
| 27480 | 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 70 74 69 6d | >;..<span.class="tok-kw">comptim |
| 274a0 | 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 6c 28 3c 73 | e</span>.{.....assert(mem.eql(<s |
| 274c0 | 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>,. |
| 274e0 | 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 3b 0a 7d 0a | &message,.same_message));.}. |
| 27500 | 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 |
| 27520 | 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 74 | >.<span.class="tok-str">"it |
| 27540 | 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 70 61 6e 3e | erate.over.an.array"</span> |
| 27560 | 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< |
| 27580 | 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 2d 74 79 70 | /span>.sum:.<span.class="tok-typ |
| 275a0 | 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 22 74 | e">usize</span>.=.<span.class="t |
| 275c0 | 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 63 | ok-number">0</span>;.....<span.c |
| 275e0 | 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 73 73 61 67 | lass="tok-kw">for</span>.(messag |
| 27600 | 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 79 74 65 3b | e).|byte|.{.........sum.+=.byte; |
| 27620 | 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"> |
| 27640 | 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 20 63 | try</span>.expect(sum.==.<span.c |
| 27660 | 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 3c 73 70 61 | lass="tok-str">'h'</span>.+.<spa |
| 27680 | 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 20 2b 20 3c | n.class="tok-str">'e'</span>.+.< |
| 276a0 | 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 61 6e 3e 20 | span.class="tok-str">'l'</span>. |
| 276c0 | 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 |
| 276e0 | 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 27 6f 27 3c | an>.+.<span.class="tok-str">'o'< |
| 27700 | 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 6f 6d | /span>);.}..<span.class="tok-com |
| 27720 | 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 70 61 6e 3e | ment">//.modifiable.array</span> |
| 27740 | 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> |
| 27760 | 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 3d 22 74 6f | .some_integers:.[<span.class="to |
| 27780 | 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 6c 61 73 73 | k-number">100</span>]<span.class |
| 277a0 | 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 |
| 277c0 | 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 61 6e 3e | lass="tok-null">undefined</span> |
| 277e0 | 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 |
| 27800 | 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">" |
| 27820 | 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 20 7b 0a 20 | modify.an.array"</span>.{.. |
| 27840 | 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 |
| 27860 | 6e 3e 20 28 26 61 6d 70 3b 73 6f 6d 65 5f 69 6e 74 65 67 65 72 73 2c 20 3c 73 70 61 6e 20 63 6c | n>.(&some_integers,.<span.cl |
| 27880 | 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 29 20 7c 2a 69 | ass="tok-number">0</span>..).|*i |
| 278a0 | 74 65 6d 2c 20 69 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 | tem,.i|.{.........item.*.=.<span |
| 278c0 | 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 |
| 278e0 | 70 61 6e 3e 28 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 | pan>(i);.....}.....<span.class=" |
| 27900 | 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 5f 69 | tok-kw">try</span>.expect(some_i |
| 27920 | 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 72 22 | ntegers[<span.class="tok-number" |
| 27940 | 3e 31 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 | >10</span>].==.<span.class="tok- |
| 27960 | 6e 75 6d 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 | number">10</span>);.....<span.cl |
| 27980 | 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 73 | ass="tok-kw">try</span>.expect(s |
| 279a0 | 6f 6d 65 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 | ome_integers[<span.class="tok-nu |
| 279c0 | 6d 62 65 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 | mber">99</span>].==.<span.class= |
| 279e0 | 22 74 6f 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 | "tok-number">99</span>);.}..<spa |
| 27a00 | 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 72 72 61 79 20 63 | n.class="tok-comment">//.array.c |
| 27a20 | 6f 6e 63 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 | oncatenation.works.if.the.values |
| 27a40 | 20 61 72 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 | .are.known</span>.<span.class="t |
| 27a60 | 6f 6b 2d 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 | ok-comment">//.at.compile.time</ |
| 27a80 | 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 |
| 27aa0 | 3c 2f 73 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 | </span>.part_one.=.[_]<span.clas |
| 27ac0 | 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 6e 20 63 | s="tok-type">i32</span>{.<span.c |
| 27ae0 | 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 61 | lass="tok-number">1</span>,.<spa |
| 27b00 | 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 3c | n.class="tok-number">2</span>,.< |
| 27b20 | 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> |
| 27b40 | 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 70 | ,.<span.class="tok-number">4</sp |
| 27b60 | 61 6e 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 | an>.};.<span.class="tok-kw">cons |
| 27b80 | 74 3c 2f 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 | t</span>.part_two.=.[_]<span.cla |
| 27ba0 | 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 6e 20 | ss="tok-type">i32</span>{.<span. |
| 27bc0 | 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 3c 73 70 | class="tok-number">5</span>,.<sp |
| 27be0 | 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 3e 2c 20 | an.class="tok-number">6</span>,. |
| 27c00 | 3c 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 70 61 6e | <span.class="tok-number">7</span |
| 27c20 | 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 3c 2f 73 | >,.<span.class="tok-number">8</s |
| 27c40 | 70 61 6e 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 | pan>.};.<span.class="tok-kw">con |
| 27c60 | 73 74 3c 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 | st</span>.all_of_it.=.part_one.+ |
| 27c80 | 2b 20 70 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 | +.part_two;.<span.class="tok-kw" |
| 27ca0 | 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 28 6d 65 | >comptime</span>.{.....assert(me |
| 27cc0 | 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 69 33 32 | m.eql(<span.class="tok-type">i32 |
| 27ce0 | 3c 2f 73 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 | </span>,.&all_of_it,.&[_ |
| 27d00 | 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 |
| 27d20 | 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 3c 2f | n>{.<span.class="tok-number">1</ |
| 27d40 | 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"> |
| 27d60 | 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 65 | 2</span>,.<span.class="tok-numbe |
| 27d80 | 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 |
| 27da0 | 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 |
| 27dc0 | 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 22 | -number">5</span>,.<span.class=" |
| 27de0 | 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 20 63 6c 61 73 | tok-number">6</span>,.<span.clas |
| 27e00 | 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 70 61 6e 20 63 | s="tok-number">7</span>,.<span.c |
| 27e20 | 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 7d 29 29 3b 0a | lass="tok-number">8</span>.}));. |
| 27e40 | 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">//. |
| 27e60 | 72 65 6d 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 | remember.that.string.literals.ar |
| 27e80 | 65 20 61 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 | e.arrays</span>.<span.class="tok |
| 27ea0 | 2d 6b 77 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 | -kw">const</span>.hello.=.<span. |
| 27ec0 | 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 74 | class="tok-str">"hello" |
| 27ee0 | 3b 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 | ;</span>;.<span.class="tok-kw">c |
| 27f00 | 6f 6e 73 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 | onst</span>.world.=.<span.class= |
| 27f20 | 22 74 6f 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 | "tok-str">"world"</spa |
| 27f40 | 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 2f | n>;.<span.class="tok-kw">const</ |
| 27f60 | 73 70 61 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 | span>.hello_world.=.hello.++.<sp |
| 27f80 | 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 20 26 71 75 6f 74 3b | an.class="tok-str">"." |
| 27fa0 | 3c 2f 73 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 | </span>.++.world;.<span.class="t |
| 27fc0 | 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 61 73 73 | ok-kw">comptime</span>.{.....ass |
| 27fe0 | 65 72 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 | ert(mem.eql(<span.class="tok-typ |
| 28000 | 65 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 | e">u8</span>,.hello_world,.<span |
| 28020 | 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 20 77 6f 72 | .class="tok-str">"hello.wor |
| 28040 | 6c 64 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 | ld"</span>));.}..<span.clas |
| 28060 | 73 3d 22 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 | s="tok-comment">//.**.does.repea |
| 28080 | 74 69 6e 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 | ting.patterns</span>.<span.class |
| 280a0 | 3d 22 74 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 | ="tok-kw">const</span>.pattern.= |
| 280c0 | 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 62 26 | .<span.class="tok-str">"ab& |
| 280e0 | 71 75 6f 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 | quot;</span>.**.<span.class="tok |
| 28100 | 2d 6e 75 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 | -number">3</span>;.<span.class=" |
| 28120 | 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 61 73 | tok-kw">comptime</span>.{.....as |
| 28140 | 73 65 72 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 | sert(mem.eql(<span.class="tok-ty |
| 28160 | 70 65 22 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 | pe">u8</span>,.pattern,.<span.cl |
| 28180 | 61 73 73 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 | ass="tok-str">"ababab" |
| 281a0 | 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 74 6f 6b 2d 63 | </span>));.}..<span.class="tok-c |
| 281c0 | 6f 6d 6d 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 | omment">//.initialize.an.array.t |
| 281e0 | 6f 20 7a 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 | o.zero</span>.<span.class="tok-k |
| 28200 | 77 22 3e 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 | w">const</span>.all_zero.=.[_]<s |
| 28220 | 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 7b | pan.class="tok-type">u16</span>{ |
| 28240 | 3c 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 |
| 28260 | 3e 7d 20 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 | >}.**.<span.class="tok-number">1 |
| 28280 | 30 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 | 0</span>;..<span.class="tok-kw"> |
| 282a0 | 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 28 61 6c 6c | comptime</span>.{.....assert(all |
| 282c0 | 5f 7a 65 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 | _zero.len.==.<span.class="tok-nu |
| 282e0 | 6d 62 65 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 | mber">10</span>);.....assert(all |
| 28300 | 5f 7a 65 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 | _zero[<span.class="tok-number">5 |
| 28320 | 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 |
| 28340 | 62 65 72 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 | ber">0</span>);.}..<span.class=" |
| 28360 | 74 6f 6b 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 | tok-comment">//.use.compile-time |
| 28380 | 20 63 6f 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 | .code.to.initialize.an.array</sp |
| 283a0 | 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 70 | an>.<span.class="tok-kw">var</sp |
| 283c0 | 61 6e 3e 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 | an>.fancy_array.=.init:.{.....<s |
| 283e0 | 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 69 6e | pan.class="tok-kw">var</span>.in |
| 28400 | 69 74 69 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 | itial_value:.[<span.class="tok-n |
| 28420 | 75 6d 62 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 | umber">10</span>]Point.=.<span.c |
| 28440 | 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 61 6e 3e | lass="tok-null">undefined</span> |
| 28460 | 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 2f | ;.....<span.class="tok-kw">for</ |
| 28480 | 73 70 61 6e 3e 20 28 26 61 6d 70 3b 69 6e 69 74 69 61 6c 5f 76 61 6c 75 65 2c 20 3c 73 70 61 6e | span>.(&initial_value,.<span |
| 284a0 | 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 29 20 | .class="tok-number">0</span>..). |
| 284c0 | 7c 2a 70 74 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 70 74 2e 2a 20 3d 20 50 6f 69 6e 74 7b | |*pt,.i|.{.........pt.*.=.Point{ |
| 284e0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ..............x.=.<span.class="t |
| 28500 | 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 69 29 2c 0a | ok-builtin">@intCast</span>(i),. |
| 28520 | 20 20 20 20 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 | .............y.=.<span.class="to |
| 28540 | 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 69 20 2a 20 3c | k-builtin">@intCast</span>(i.*.< |
| 28560 | 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> |
| 28580 | 29 2c 0a 20 20 20 20 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 | ),.........};.....}.....<span.cl |
| 285a0 | 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 69 6e 69 74 20 | ass="tok-kw">break</span>.:init. |
| 285c0 | 69 6e 69 74 69 61 6c 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 | initial_value;.};.<span.class="t |
| 285e0 | 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 3c 73 70 61 | ok-kw">const</span>.Point.=.<spa |
| 28600 | 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 7b | n.class="tok-kw">struct</span>.{ |
| 28620 | 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 69 | .....x:.<span.class="tok-type">i |
| 28640 | 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 74 | 32</span>,.....y:.<span.class="t |
| 28660 | 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 |
| 28680 | 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. |
| 286a0 | 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 69 6c 65 2d 74 69 | class="tok-str">"compile-ti |
| 286c0 | 6d 65 20 61 72 72 61 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 | me.array.initialization"</s |
| 286e0 | 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"> |
| 28700 | 74 72 79 3c 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 | try</span>.expect(fancy_array[<s |
| 28720 | 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>] |
| 28740 | 2e 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 34 | .x.==.<span.class="tok-number">4 |
| 28760 | 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 |
| 28780 | 77 22 3e 74 72 79 3c 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 | w">try</span>.expect(fancy_array |
| 287a0 | 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 61 | [<span.class="tok-number">4</spa |
| 287c0 | 6e 3e 5d 2e 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 | n>].y.==.<span.class="tok-number |
| 287e0 | 22 3e 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 6b | ">8</span>);.}..<span.class="tok |
| 28800 | 2d 63 6f 6d 6d 65 6e 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 | -comment">//.call.a.function.to. |
| 28820 | 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 0a 3c 73 70 61 6e | initialize.an.array</span>.<span |
| 28840 | 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 6d 6f 72 65 5f | .class="tok-kw">var</span>.more_ |
| 28860 | 70 6f 69 6e 74 73 20 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 | points.=.[_]Point{makePoint(<spa |
| 28880 | 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 7d 20 | n.class="tok-number">3</span>)}. |
| 288a0 | 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</ |
| 288c0 | 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 66 6e 3c 2f | span>;.<span.class="tok-kw">fn</ |
| 288e0 | 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 6b 65 50 | span>.<span.class="tok-fn">makeP |
| 28900 | 6f 69 6e 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 6f 6b 2d | oint</span>(x:.<span.class="tok- |
| 28920 | 74 79 70 65 22 3e 69 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 | type">i32</span>).Point.{.....<s |
| 28940 | 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> |
| 28960 | 20 50 6f 69 6e 74 7b 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 | .Point{..........x.=.x,......... |
| 28980 | 2e 79 20 3d 20 78 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 | .y.=.x.*.<span.class="tok-number |
| 289a0 | 22 3e 32 3c 2f 73 70 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 | ">2</span>,.....};.}.<span.class |
| 289c0 | 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 |
| 289e0 | 73 3d 22 74 6f 6b 2d 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 | s="tok-str">"array.initiali |
| 28a00 | 7a 61 74 69 6f 6e 20 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 | zation.with.function.calls" |
| 28a20 | 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 |
| 28a40 | 77 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 | w">try</span>.expect(more_points |
| 28a60 | 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 61 | [<span.class="tok-number">4</spa |
| 28a80 | 6e 3e 5d 2e 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 | n>].x.==.<span.class="tok-number |
| 28aa0 | 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 22 74 6f | ">3</span>);.....<span.class="to |
| 28ac0 | 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 6f 72 65 5f 70 6f 69 | k-kw">try</span>.expect(more_poi |
| 28ae0 | 6e 74 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 | nts[<span.class="tok-number">4</ |
| 28b00 | 73 70 61 6e 3e 5d 2e 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 | span>].y.==.<span.class="tok-num |
| 28b20 | 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 73 73 3d | ber">6</span>);.....<span.class= |
| 28b40 | 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 6f 72 65 5f | "tok-kw">try</span>.expect(more_ |
| 28b60 | 70 6f 69 6e 74 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 6e | points.len.==.<span.class="tok-n |
| 28b80 | 75 6d 62 65 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 | umber">10</span>);.}</code></pre |
| 28ba0 | 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | ></figure><figure><figcaption.cl |
| 28bc0 | 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f | ass="shell-cap">Shell</figcaptio |
| 28be0 | 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 | n><pre><samp>$.<kbd>zig.test.tes |
| 28c00 | 74 5f 61 72 72 61 79 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 34 20 74 65 73 74 5f 61 72 72 61 | t_arrays.zig</kbd>.1/4.test_arra |
| 28c20 | 79 73 2e 74 65 73 74 2e 69 74 65 72 61 74 65 20 6f 76 65 72 20 61 6e 20 61 72 72 61 79 2e 2e 2e | ys.test.iterate.over.an.array... |
| 28c40 | 4f 4b 0a 32 2f 34 20 74 65 73 74 5f 61 72 72 61 79 73 2e 74 65 73 74 2e 6d 6f 64 69 66 79 20 61 | OK.2/4.test_arrays.test.modify.a |
| 28c60 | 6e 20 61 72 72 61 79 2e 2e 2e 4f 4b 0a 33 2f 34 20 74 65 73 74 5f 61 72 72 61 79 73 2e 74 65 73 | n.array...OK.3/4.test_arrays.tes |
| 28c80 | 74 2e 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 7a 61 74 | t.compile-time.array.initializat |
| 28ca0 | 69 6f 6e 2e 2e 2e 4f 4b 0a 34 2f 34 20 74 65 73 74 5f 61 72 72 61 79 73 2e 74 65 73 74 2e 61 72 | ion...OK.4/4.test_arrays.test.ar |
| 28cc0 | 72 61 79 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 77 69 74 68 20 66 75 6e 63 74 69 6f 6e | ray.initialization.with.function |
| 28ce0 | 20 63 61 6c 6c 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 34 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a | .calls...OK.All.4.tests.passed.. |
| 28d00 | 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 | </samp></pre></figure>........<p |
| 28d20 | 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=" |
| 28d40 | 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 68 72 65 66 3d 22 | #for">for</a></li>.<li><a.href=" |
| 28d60 | 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 2f 75 6c 3e 0a 0a | #Slices">Slices</a></li>.</ul>.. |
| 28d80 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 4d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 2d | .......<h3.id="Multidimensional- |
| 28da0 | 41 72 72 61 79 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4d 75 6c 74 69 64 69 6d 65 6e | Arrays"><a.href="#toc-Multidimen |
| 28dc0 | 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 73 69 6f 6e 61 6c 20 | sional-Arrays">Multidimensional. |
| 28de0 | 41 72 72 61 79 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 | Arrays</a>.<a.class="hdr".href=" |
| 28e00 | 23 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 c2 a7 3c 2f 61 3e | #Multidimensional-Arrays">..</a> |
| 28e20 | 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4d 75 6c 74 69 64 69 6d 65 | </h3>........<p>.......Multidime |
| 28e40 | 6e 73 69 6f 6e 61 6c 20 61 72 72 61 79 73 20 63 61 6e 20 62 65 20 63 72 65 61 74 65 64 20 62 79 | nsional.arrays.can.be.created.by |
| 28e60 | 20 6e 65 73 74 69 6e 67 20 61 72 72 61 79 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | .nesting.arrays:.......</p>..... |
| 28e80 | 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 | ..<figure><figcaption.class="zig |
| 28ea0 | 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 6d 75 | -cap"><cite.class="file">test_mu |
| 28ec0 | 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 5f 61 72 72 61 79 73 2e 7a 69 67 3c 2f 63 69 74 65 3e | ltidimensional_arrays.zig</cite> |
| 28ee0 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </figcaption><pre><code><span.cl |
| 28f00 | 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.=. |
| 28f20 | 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 |
| 28f40 | 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">& |
| 28f60 | 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 |
| 28f80 | 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 |
| 28fa0 | 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 20 63 6c 61 | .=.std.testing.expect;.<span.cla |
| 28fc0 | 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 45 | ss="tok-kw">const</span>.expectE |
| 28fe0 | 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 6c 3b 0a | qual.=.std.testing.expectEqual;. |
| 29000 | 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 |
| 29020 | 6e 3e 20 6d 61 74 34 78 35 20 3d 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | n>.mat4x5.=.[<span.class="tok-nu |
| 29040 | 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | mber">4</span>][<span.class="tok |
| 29060 | 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 |
| 29080 | 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 5b 5f 5d 3c 73 70 61 | ok-type">f32</span>{.....[_]<spa |
| 290a0 | 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 20 3c | n.class="tok-type">f32</span>{.< |
| 290c0 | 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 70 61 | span.class="tok-number">1.0</spa |
| 290e0 | 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 2e 30 | n>,.<span.class="tok-number">0.0 |
| 29100 | 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 |
| 29120 | 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 22 74 6f 6b 2d 6e | ">0.0</span>,.<span.class="tok-n |
| 29140 | 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 22 | umber">0.0</span>,.<span.class=" |
| 29160 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 20 7d 2c 0a 20 20 20 20 5b 5f | tok-number">0.0</span>.},.....[_ |
| 29180 | 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 70 61 | ]<span.class="tok-type">f32</spa |
| 291a0 | 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 30 2e 30 | n>{.<span.class="tok-number">0.0 |
| 291c0 | 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 |
| 291e0 | 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 6e | ">1.0</span>,.<span.class="tok-n |
| 29200 | 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 22 | umber">0.0</span>,.<span.class=" |
| 29220 | 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 6c | tok-number">1.0</span>,.<span.cl |
| 29240 | 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 20 7d 2c 0a 20 | ass="tok-number">0.0</span>.},.. |
| 29260 | 20 20 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 66 33 32 | ...[_]<span.class="tok-type">f32 |
| 29280 | 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 |
| 292a0 | 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 22 74 6f 6b 2d 6e | ">0.0</span>,.<span.class="tok-n |
| 292c0 | 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 22 | umber">0.0</span>,.<span.class=" |
| 292e0 | 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 6c | tok-number">1.0</span>,.<span.cl |
| 29300 | 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 20 3c 73 70 | ass="tok-number">0.0</span>,.<sp |
| 29320 | 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 70 61 6e 3e | an.class="tok-number">0.0</span> |
| 29340 | 20 7d 2c 0a 20 20 20 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 | .},.....[_]<span.class="tok-type |
| 29360 | 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 74 6f 6b 2d 6e | ">f32</span>{.<span.class="tok-n |
| 29380 | 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 22 | umber">0.0</span>,.<span.class=" |
| 293a0 | 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 6e 20 63 6c | tok-number">0.0</span>,.<span.cl |
| 293c0 | 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 20 3c 73 70 | ass="tok-number">0.0</span>,.<sp |
| 293e0 | 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 3e | an.class="tok-number">1.0</span> |
| 29400 | 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 39 2e 39 3c 2f | ,.<span.class="tok-number">9.9</ |
| 29420 | 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 2d 6b 77 22 | span>.},.};.<span.class="tok-kw" |
| 29440 | 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 |
| 29460 | 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 72 61 79 73 | r">"multidimensional.arrays |
| 29480 | 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= |
| 294a0 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6d 61 74 34 78 35 20 69 74 73 65 6c 66 20 69 | "tok-comment">//.mat4x5.itself.i |
| 294c0 | 73 20 61 20 6f 6e 65 2d 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 61 72 72 61 79 20 6f 66 20 61 72 72 | s.a.one-dimensional.array.of.arr |
| 294e0 | 61 79 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 74 6f 6b | ays.</span>.....<span.class="tok |
| 29500 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 45 71 75 61 6c 28 6d 61 74 34 | -kw">try</span>.expectEqual(mat4 |
| 29520 | 78 35 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 | x5[<span.class="tok-number">1</s |
| 29540 | 70 61 6e 3e 5d 2c 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 | pan>],.[_]<span.class="tok-type" |
| 29560 | 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 74 6f 6b 2d 6e 75 | >f32</span>{.<span.class="tok-nu |
| 29580 | 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 22 74 | mber">0.0</span>,.<span.class="t |
| 295a0 | 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 6c 61 | ok-number">1.0</span>,.<span.cla |
| 295c0 | 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 |
| 295e0 | 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>, |
| 29600 | 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 |
| 29620 | 70 61 6e 3e 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 | pan>.});......<span.class="tok-c |
| 29640 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 63 63 65 73 73 20 74 68 65 20 32 44 20 61 72 72 61 79 20 62 | omment">//.Access.the.2D.array.b |
| 29660 | 79 20 69 6e 64 65 78 69 6e 67 20 74 68 65 20 6f 75 74 65 72 20 61 72 72 61 79 2c 20 61 6e 64 20 | y.indexing.the.outer.array,.and. |
| 29680 | 74 68 65 6e 20 74 68 65 20 69 6e 6e 65 72 20 61 72 72 61 79 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | then.the.inner.array.</span>.... |
| 296a0 | 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> |
| 296c0 | 20 65 78 70 65 63 74 28 6d 61 74 34 78 35 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .expect(mat4x5[<span.class="tok- |
| 296e0 | 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 5d 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | number">3</span>][<span.class="t |
| 29700 | 6f 6b 2d 6e 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 | ok-number">4</span>].==.<span.cl |
| 29720 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 2e 39 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 | ass="tok-number">9.9</span>);... |
| 29740 | 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">//. |
| 29760 | 48 65 72 65 20 77 65 20 69 74 65 72 61 74 65 20 77 69 74 68 20 66 6f 72 20 6c 6f 6f 70 73 2e 3c | Here.we.iterate.with.for.loops.< |
| 29780 | 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"> |
| 297a0 | 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 6d 61 74 34 78 35 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | for</span>.(mat4x5,.<span.class= |
| 297c0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 29 20 7c 72 6f 77 2c 20 72 | "tok-number">0</span>..).|row,.r |
| 297e0 | 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 6c 61 73 73 3d | ow_index|.{.........<span.class= |
| 29800 | 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 72 6f 77 2c 20 3c 73 70 61 6e 20 | "tok-kw">for</span>.(row,.<span. |
| 29820 | 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 29 20 7c | class="tok-number">0</span>..).| |
| 29840 | 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|.{........... |
| 29860 | 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> |
| 29880 | 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).{.. |
| 298a0 | 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- |
| 298c0 | 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 |
| 298e0 | 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 |
| 29900 | 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 | >);.............}.........}..... |
| 29920 | 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 6d 6d 65 6e 74 22 | }......<span.class="tok-comment" |
| 29940 | 3e 2f 2f 20 49 6e 69 74 69 61 6c 69 7a 65 20 61 20 6d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 | >//.Initialize.a.multidimensiona |
| 29960 | 6c 20 61 72 72 61 79 20 74 6f 20 7a 65 72 6f 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | l.array.to.zeros.</span>.....<sp |
| 29980 | 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 |
| 299a0 | 6c 6c 5f 7a 65 72 6f 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 | ll_zero:.[<span.class="tok-numbe |
| 299c0 | 72 22 3e 34 3c 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 | r">4</span>][<span.class="tok-nu |
| 299e0 | 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- |
| 29a00 | 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 2e 7b 2e 7b 3c 73 70 61 6e 20 63 6c 61 | type">f32</span>.=..{.{<span.cla |
| 29a20 | 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 2a 2a 20 3c 73 70 | ss="tok-number">0</span>}.**.<sp |
| 29a40 | 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 7d 20 | an.class="tok-number">5</span>}. |
| 29a60 | 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 34 3c 2f 73 | **.<span.class="tok-number">4</s |
| 29a80 | 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 74 | pan>;.....<span.class="tok-kw">t |
| 29aa0 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 6c 6c 5f 7a 65 72 6f 5b 3c 73 70 61 6e 20 | ry</span>.expect(all_zero[<span. |
| 29ac0 | 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 5b 3c 73 70 | class="tok-number">0</span>][<sp |
| 29ae0 | 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 5d 20 | an.class="tok-number">0</span>]. |
| 29b00 | 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 |
| 29b20 | 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 | pan>);.}</code></pre></figure><f |
| 29b40 | 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 | igure><figcaption.class="shell-c |
| 29b60 | 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 | ap">Shell</figcaption><pre><samp |
| 29b80 | 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 6d 75 6c 74 69 64 69 6d 65 6e | >$.<kbd>zig.test.test_multidimen |
| 29ba0 | 73 69 6f 6e 61 6c 5f 61 72 72 61 79 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 | sional_arrays.zig</kbd>.1/1.test |
| 29bc0 | 5f 6d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 5f 61 72 72 61 79 73 2e 74 65 73 74 2e 6d 75 | _multidimensional_arrays.test.mu |
| 29be0 | 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 61 72 72 61 79 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 | ltidimensional.arrays...OK.All.1 |
| 29c00 | 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | .tests.passed..</samp></pre></fi |
| 29c20 | 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 53 65 6e | gure>................<h3.id="Sen |
| 29c40 | 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 3c 61 20 68 72 65 66 | tinel-Terminated-Arrays"><a.href |
| 29c60 | 3d 22 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 | ="#toc-Sentinel-Terminated-Array |
| 29c80 | 73 22 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 | s">Sentinel-Terminated.Arrays</a |
| 29ca0 | 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 65 6e 74 69 6e 65 6c | >.<a.class="hdr".href="#Sentinel |
| 29cc0 | 2d 54 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 33 3e 0a | -Terminated-Arrays">..</a></h3>. |
| 29ce0 | 0a 20 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 | .......<p>.......The.syntax.<cod |
| 29d00 | 65 3e 5b 4e 3a 78 5d 54 3c 2f 63 6f 64 65 3e 20 64 65 73 63 72 69 62 65 73 20 61 6e 20 61 72 72 | e>[N:x]T</code>.describes.an.arr |
| 29d20 | 61 79 20 77 68 69 63 68 20 68 61 73 20 61 20 73 65 6e 74 69 6e 65 6c 20 65 6c 65 6d 65 6e 74 20 | ay.which.has.a.sentinel.element. |
| 29d40 | 6f 66 20 76 61 6c 75 65 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 61 74 20 74 68 65 0a 20 | of.value.<code>x</code>.at.the.. |
| 29d60 | 20 20 20 20 20 69 6e 64 65 78 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 74 68 65 20 | .....index.corresponding.to.the. |
| 29d80 | 6c 65 6e 67 74 68 20 3c 63 6f 64 65 3e 4e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | length.<code>N</code>........</p |
| 29da0 | 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 | >.......<figure><figcaption.clas |
| 29dc0 | 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | s="zig-cap"><cite.class="file">t |
| 29de0 | 65 73 74 5f 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 61 72 72 61 79 2e 7a 69 67 3c 2f 63 | est_null_terminated_array.zig</c |
| 29e00 | 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 | ite></figcaption><pre><code><spa |
| 29e20 | 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 |
| 29e40 | 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 |
| 29e60 | 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 |
| 29e80 | 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 |
| 29ea0 | 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 |
| 29ec0 | 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 |
| 29ee0 | 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 |
| 29f00 | 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 30 2d 74 65 72 6d 69 | an.class="tok-str">"0-termi |
| 29f20 | 6e 61 74 65 64 20 73 65 6e 74 69 6e 65 6c 20 61 72 72 61 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | nated.sentinel.array"</span |
| 29f40 | 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 |
| 29f60 | 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 61 73 73 | st</span>.array.=.[_:<span.class |
| 29f80 | 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 |
| 29fa0 | 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 63 | ss="tok-type">u8</span>{.<span.c |
| 29fc0 | 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 61 | lass="tok-number">1</span>,.<spa |
| 29fe0 | 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 3c | n.class="tok-number">2</span>,.< |
| 2a000 | 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> |
| 2a020 | 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 70 | ,.<span.class="tok-number">4</sp |
| 2a040 | 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 6b 2d 6b 77 22 | an>.};......<span.class="tok-kw" |
| 2a060 | 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=" |
| 2a080 | 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 72 61 | tok-builtin">@TypeOf</span>(arra |
| 2a0a0 | 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 22 3e | y).==.[<span.class="tok-number"> |
| 2a0c0 | 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 65 72 | 4</span>:<span.class="tok-number |
| 2a0e0 | 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 70 65 | ">0</span>]<span.class="tok-type |
| 2a100 | 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 22 74 | ">u8</span>);.....<span.class="t |
| 2a120 | 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 2e 6c | ok-kw">try</span>.expect(array.l |
| 2a140 | 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 34 | en.==.<span.class="tok-number">4 |
| 2a160 | 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 |
| 2a180 | 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 |
| 2a1a0 | 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 3d 3d | .class="tok-number">4</span>].== |
| 2a1c0 | 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 61 | .<span.class="tok-number">0</spa |
| 2a1e0 | 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 73 | n>);.}..<span.class="tok-kw">tes |
| 2a200 | 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">& |
| 2a220 | 71 75 6f 74 3b 65 78 74 72 61 20 30 73 20 69 6e 20 30 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 65 | quot;extra.0s.in.0-terminated.se |
| 2a240 | 6e 74 69 6e 65 6c 20 61 72 72 61 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ntinel.array"</span>.{..... |
| 2a260 | 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 68 65 | <span.class="tok-comment">//.The |
| 2a280 | 20 73 65 6e 74 69 6e 65 6c 20 76 61 6c 75 65 20 6d 61 79 20 61 70 70 65 61 72 20 65 61 72 6c 69 | .sentinel.value.may.appear.earli |
| 2a2a0 | 65 72 2c 20 62 75 74 20 64 6f 65 73 20 6e 6f 74 20 69 6e 66 6c 75 65 6e 63 65 20 74 68 65 20 63 | er,.but.does.not.influence.the.c |
| 2a2c0 | 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 27 6c 65 6e 27 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | ompile-time.'len'.</span>.....<s |
| 2a2e0 | 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>. |
| 2a300 | 61 72 72 61 79 20 3d 20 5b 5f 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | array.=.[_:<span.class="tok-numb |
| 2a320 | 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 |
| 2a340 | 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- |
| 2a360 | 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 22 74 | number">1</span>,.<span.class="t |
| 2a380 | 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 61 73 73 | ok-number">0</span>,.<span.class |
| 2a3a0 | 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 |
| 2a3c0 | 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 0a 20 20 | ass="tok-number">4</span>.};.... |
| 2a3e0 | 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 |
| 2a400 | 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 |
| 2a420 | 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 72 72 61 79 29 20 3d 3d 20 5b 3c 73 70 | n">@TypeOf</span>(array).==.[<sp |
| 2a440 | 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 3a 3c | an.class="tok-number">4</span>:< |
| 2a460 | 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> |
| 2a480 | 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 |
| 2a4a0 | 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 79 | >);.....<span.class="tok-kw">try |
| 2a4c0 | 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 72 61 79 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 | </span>.expect(array.len.==.<spa |
| 2a4e0 | 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 29 3b 0a | n.class="tok-number">4</span>);. |
| 2a500 | 20 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 |
| 2a520 | 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 74 6f | an>.expect(array[<span.class="to |
| 2a540 | 6b 2d 6e 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 | k-number">4</span>].==.<span.cla |
| 2a560 | 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 |
| 2a580 | 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | de></pre></figure><figure><figca |
| 2a5a0 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 | ption.class="shell-cap">Shell</f |
| 2a5c0 | 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 | igcaption><pre><samp>$.<kbd>zig. |
| 2a5e0 | 74 65 73 74 20 74 65 73 74 5f 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 61 72 72 61 79 2e | test.test_null_terminated_array. |
| 2a600 | 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 | zig</kbd>.1/2.test_null_terminat |
| 2a620 | 65 64 5f 61 72 72 61 79 2e 74 65 73 74 2e 30 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 65 6e 74 69 | ed_array.test.0-terminated.senti |
| 2a640 | 6e 65 6c 20 61 72 72 61 79 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 6e 75 6c 6c 5f 74 65 72 | nel.array...OK.2/2.test_null_ter |
| 2a660 | 6d 69 6e 61 74 65 64 5f 61 72 72 61 79 2e 74 65 73 74 2e 65 78 74 72 61 20 30 73 20 69 6e 20 30 | minated_array.test.extra.0s.in.0 |
| 2a680 | 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 65 6e 74 69 6e 65 6c 20 61 72 72 61 79 2e 2e 2e 4f 4b 0a | -terminated.sentinel.array...OK. |
| 2a6a0 | 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 | All.2.tests.passed..</samp></pre |
| 2a6c0 | 3e 3c 2f 66 69 67 75 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 | ></figure>........<p>See.also:</ |
| 2a6e0 | 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 |
| 2a700 | 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 6d | rminated-Pointers">Sentinel-Term |
| 2a720 | 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 20 | inated.Pointers</a></li>.<li><a. |
| 2a740 | 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 65 | href="#Sentinel-Terminated-Slice |
| 2a760 | 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 61 | s">Sentinel-Terminated.Slices</a |
| 2a780 | 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 33 20 | ></li>.</ul>................<h3. |
| 2a7a0 | 69 64 3d 22 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 41 72 72 61 79 73 22 3e 3c 61 20 68 72 65 | id="Destructuring-Arrays"><a.hre |
| 2a7c0 | 66 3d 22 23 74 6f 63 2d 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 41 72 72 61 79 73 22 3e 44 65 | f="#toc-Destructuring-Arrays">De |
| 2a7e0 | 73 74 72 75 63 74 75 72 69 6e 67 20 41 72 72 61 79 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | structuring.Arrays</a>.<a.class= |
| 2a800 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 41 72 72 61 79 | "hdr".href="#Destructuring-Array |
| 2a820 | 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 20 20 20 | s">..</a></h3>........<p>....... |
| 2a840 | 20 20 41 72 72 61 79 73 20 63 61 6e 20 62 65 20 64 65 73 74 72 75 63 74 75 72 65 64 3a 0a 20 20 | ..Arrays.can.be.destructured:... |
| 2a860 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | ....</p>.......<figure><figcapti |
| 2a880 | 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 | on.class="zig-cap"><cite.class=" |
| 2a8a0 | 66 69 6c 65 22 3e 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f 61 72 72 61 79 73 2e 7a 69 67 3c 2f | file">destructuring_arrays.zig</ |
| 2a8c0 | 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 | cite></figcaption><pre><code><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 70 | an.class="tok-kw">const</span>.p |
| 2a900 | 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" |
| 2a920 | 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 |
| 2a940 | 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 |
| 2a960 | 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" |
| 2a980 | 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"> |
| 2a9a0 | 73 77 69 7a 7a 6c 65 52 67 62 61 54 6f 42 67 72 61 3c 2f 73 70 61 6e 3e 28 72 67 62 61 3a 20 5b | swizzleRgbaToBgra</span>(rgba:.[ |
| 2a9c0 | 3c 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 |
| 2a9e0 | 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 3c 2f 73 70 61 | >]<span.class="tok-type">u8</spa |
| 2aa00 | 6e 3e 29 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 | n>).[<span.class="tok-number">4< |
| 2aa20 | 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 |
| 2aa40 | 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 |
| 2aa60 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 72 65 61 64 61 62 6c 65 20 73 77 69 7a 7a 6c 69 6e 67 20 62 79 | omment">//.readable.swizzling.by |
| 2aa80 | 20 64 65 73 74 72 75 63 74 75 72 69 6e 67 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | .destructuring</span>.....<span. |
| 2aaa0 | 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 2c 20 3c | class="tok-kw">const</span>.r,.< |
| 2aac0 | 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> |
| 2aae0 | 20 67 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 6e 73 74 3c 2f | .g,.<span.class="tok-kw">const</ |
| 2ab00 | 73 70 61 6e 3e 20 62 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>.b,.<span.class="tok-kw">co |
| 2ab20 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 20 3d 20 72 67 62 61 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | nst</span>.a.=.rgba;.....<span.c |
| 2ab40 | 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 2e 7b 20 62 | lass="tok-kw">return</span>..{.b |
| 2ab60 | 2c 20 67 2c 20 72 2c 20 61 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ,.g,.r,.a.};.}..<span.class="tok |
| 2ab80 | 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 |
| 2aba0 | 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- |
| 2abc0 | 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 3d 22 74 | fn">main</span>().<span.class="t |
| 2abe0 | 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 |
| 2ac00 | 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 6f 73 | .class="tok-kw">const</span>.pos |
| 2ac20 | 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 |
| 2ac40 | 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 |
| 2ac60 | 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 |
| 2ac80 | 62 65 72 22 3e 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 73 | ber">2</span>.};.....<span.class |
| 2aca0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 2c 20 3c 73 70 61 6e 20 | ="tok-kw">const</span>.x,.<span. |
| 2acc0 | 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 79 20 3d 20 | class="tok-kw">const</span>.y.=. |
| 2ace0 | 70 6f 73 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 2d | pos;.....print(<span.class="tok- |
| 2ad00 | 73 74 72 22 3e 26 71 75 6f 74 3b 78 20 3d 20 7b 7d 2c 20 79 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 | str">"x.=.{},.y.=.{}\n" |
| 2ad20 | 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 78 2c 20 79 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ;</span>,..{x,.y});......<span.c |
| 2ad40 | 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 72 61 6e 67 | lass="tok-kw">const</span>.orang |
| 2ad60 | 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 65 72 22 3e 34 3c 2f | e:.[<span.class="tok-number">4</ |
| 2ad80 | 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 3c | span>]<span.class="tok-type">u8< |
| 2ada0 | 2f 73 70 61 6e 3e 20 3d 20 2e 7b 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 |
| 2adc0 | 62 65 72 22 3e 32 35 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 | ber">255</span>,.<span.class="to |
| 2ade0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 36 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | k-number">165</span>,.<span.clas |
| 2ae00 | 73 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 | s="tok-number">0</span>,.<span.c |
| 2ae20 | 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 20 7d 3b 0a | lass="tok-number">255</span>.};. |
| 2ae40 | 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"> |
| 2ae60 | 26 71 75 6f 74 3b 7b 61 6e 79 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 73 77 | "{any}\n"</span>,..{sw |
| 2ae80 | 69 7a 7a 6c 65 52 67 62 61 54 6f 42 67 72 61 28 6f 72 61 6e 67 65 29 7d 29 3b 0a 7d 3c 2f 63 6f | izzleRgbaToBgra(orange)});.}</co |
| 2aea0 | 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | de></pre></figure><figure><figca |
| 2aec0 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 | ption.class="shell-cap">Shell</f |
| 2aee0 | 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 | igcaption><pre><samp>$.<kbd>zig. |
| 2af00 | 62 75 69 6c 64 2d 65 78 65 20 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f 61 72 72 61 79 73 2e 7a | build-exe.destructuring_arrays.z |
| 2af20 | 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f | ig</kbd>.$.<kbd>./destructuring_ |
| 2af40 | 61 72 72 61 79 73 3c 2f 6b 62 64 3e 0a 78 20 3d 20 31 2c 20 79 20 3d 20 32 0a 7b 20 30 2c 20 31 | arrays</kbd>.x.=.1,.y.=.2.{.0,.1 |
| 2af60 | 36 35 2c 20 32 35 35 2c 20 32 35 35 20 7d 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | 65,.255,.255.}.</samp></pre></fi |
| 2af80 | 67 75 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 75 6c | gure>........<p>See.also:</p><ul |
| 2afa0 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 22 3e 44 | >.<li><a.href="#Destructuring">D |
| 2afc0 | 65 73 74 72 75 63 74 75 72 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 | estructuring</a></li>.<li><a.hre |
| 2afe0 | 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 54 75 70 6c 65 73 22 3e 44 65 73 74 72 75 | f="#Destructuring-Tuples">Destru |
| 2b000 | 63 74 75 72 69 6e 67 20 54 75 70 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 | cturing.Tuples</a></li>.<li><a.h |
| 2b020 | 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 56 65 63 74 6f 72 73 22 3e 44 65 73 | ref="#Destructuring-Vectors">Des |
| 2b040 | 74 72 75 63 74 75 72 69 6e 67 20 56 65 63 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c | tructuring.Vectors</a></li>.</ul |
| 2b060 | 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 32 20 69 64 3d 22 | >.......................<h2.id=" |
| 2b080 | 56 65 63 74 6f 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 56 65 63 74 6f 72 73 22 3e | Vectors"><a.href="#toc-Vectors"> |
| 2b0a0 | 56 65 63 74 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 65 66 3d | Vectors</a>.<a.class="hdr".href= |
| 2b0c0 | 22 23 56 65 63 74 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 70 | "#Vectors">..</a></h2>........<p |
| 2b0e0 | 3e 0a 20 20 20 20 20 20 41 20 76 65 63 74 6f 72 20 69 73 20 61 20 67 72 6f 75 70 20 6f 66 20 62 | >.......A.vector.is.a.group.of.b |
| 2b100 | 6f 6f 6c 65 61 6e 73 2c 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 | ooleans,.<a.href="#Integers">Int |
| 2b120 | 65 67 65 72 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f | egers</a>,.<a.href="#Floats">Flo |
| 2b140 | 61 74 73 3c 2f 61 3e 2c 20 6f 72 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e | ats</a>,.or.......<a.href="#Poin |
| 2b160 | 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 72 65 20 6f 70 65 | ters">Pointers</a>.which.are.ope |
| 2b180 | 72 61 74 65 64 20 6f 6e 20 69 6e 20 70 61 72 61 6c 6c 65 6c 2c 20 75 73 69 6e 67 20 53 49 4d 44 | rated.on.in.parallel,.using.SIMD |
| 2b1a0 | 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 20 69 66 20 70 6f 73 73 69 62 6c 65 2e 0a 20 20 20 20 20 | .instructions.if.possible....... |
| 2b1c0 | 20 56 65 63 74 6f 72 20 74 79 70 65 73 20 61 72 65 20 63 72 65 61 74 65 64 20 77 69 74 68 20 74 | .Vector.types.are.created.with.t |
| 2b1e0 | 68 65 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 20 3c 61 20 68 72 65 66 3d 22 23 56 65 | he.builtin.function.<a.href="#Ve |
| 2b200 | 63 74 6f 72 22 3e 40 56 65 63 74 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ctor">@Vector</a>........</p>... |
| 2b220 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 56 65 63 74 6f 72 73 20 73 75 70 70 6f 72 74 20 74 68 | ....<p>.......Vectors.support.th |
| 2b240 | 65 20 73 61 6d 65 20 62 75 69 6c 74 69 6e 20 6f 70 65 72 61 74 6f 72 73 20 61 73 20 74 68 65 69 | e.same.builtin.operators.as.thei |
| 2b260 | 72 20 75 6e 64 65 72 6c 79 69 6e 67 20 62 61 73 65 20 74 79 70 65 73 2e 0a 20 20 20 20 20 20 54 | r.underlying.base.types........T |
| 2b280 | 68 65 73 65 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 70 65 72 66 6f 72 6d 65 64 20 65 6c | hese.operations.are.performed.el |
| 2b2a0 | 65 6d 65 6e 74 2d 77 69 73 65 2c 20 61 6e 64 20 72 65 74 75 72 6e 20 61 20 76 65 63 74 6f 72 20 | ement-wise,.and.return.a.vector. |
| 2b2c0 | 6f 66 20 74 68 65 20 73 61 6d 65 20 6c 65 6e 67 74 68 0a 20 20 20 20 20 20 61 73 20 74 68 65 20 | of.the.same.length.......as.the. |
| 2b2e0 | 69 6e 70 75 74 20 76 65 63 74 6f 72 73 2e 20 54 68 69 73 20 69 6e 63 6c 75 64 65 73 3a 0a 20 20 | input.vectors..This.includes:... |
| 2b300 | 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 6c | ....</p>.......<ul>...........<l |
| 2b320 | 69 3e 41 72 69 74 68 6d 65 74 69 63 20 28 3c 63 6f 64 65 3e 2b 3c 2f 63 6f 64 65 3e 2c 20 3c 63 | i>Arithmetic.(<code>+</code>,.<c |
| 2b340 | 6f 64 65 3e 2d 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 2f 3c 2f 63 6f 64 65 3e 2c 20 3c 63 | ode>-</code>,.<code>/</code>,.<c |
| 2b360 | 6f 64 65 3e 2a 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 | ode>*</code>,................... |
| 2b380 | 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | .......<code><span.class="tok-bu |
| 2b3a0 | 69 6c 74 69 6e 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 | iltin">@divFloor</span></code>,. |
| 2b3c0 | 3c 63 6f 64 65 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 | <code><span.class="tok-builtin"> |
| 2b3e0 | 40 73 71 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | @sqrt</span></code>,.<code><span |
| 2b400 | 20 63 6c 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 | .class="tok-builtin">@ceil</span |
| 2b420 | 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 20 20 | ></code>,....................... |
| 2b440 | 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | ...<code><span.class="tok-builti |
| 2b460 | 6e 22 3e 40 6c 6f 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 65 74 63 2e 29 3c 2f 6c 69 | n">@log</span></code>,.etc.)</li |
| 2b480 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 42 69 74 77 69 73 65 20 6f 70 65 72 61 74 6f 72 | >...........<li>Bitwise.operator |
| 2b4a0 | 73 20 28 3c 63 6f 64 65 3e 26 67 74 3b 26 67 74 3b 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e | s.(<code>>></code>,.<code> |
| 2b4c0 | 26 6c 74 3b 26 6c 74 3b 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 26 61 6d 70 3b 3c 2f 63 6f | <<</code>,.<code>&</co |
| 2b4e0 | 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 20 20 20 20 20 20 20 | de>,............................ |
| 2b500 | 20 20 20 20 20 20 3c 63 6f 64 65 3e 7c 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 7e 3c 2f 63 | ......<code>|</code>,.<code>~</c |
| 2b520 | 6f 64 65 3e 2c 20 65 74 63 2e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 | ode>,.etc.)</li>...........<li>C |
| 2b540 | 6f 6d 70 61 72 69 73 6f 6e 20 6f 70 65 72 61 74 6f 72 73 20 28 3c 63 6f 64 65 3e 26 6c 74 3b 3c | omparison.operators.(<code><< |
| 2b560 | 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 26 67 74 3b 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 | /code>,.<code>></code>,.<code |
| 2b580 | 3e 3d 3d 3c 2f 63 6f 64 65 3e 2c 20 65 74 63 2e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 | >==</code>,.etc.)</li>.......</u |
| 2b5a0 | 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 69 73 20 70 72 6f 68 69 62 69 | l>.......<p>.......It.is.prohibi |
| 2b5c0 | 74 65 64 20 74 6f 20 75 73 65 20 61 20 6d 61 74 68 20 6f 70 65 72 61 74 6f 72 20 6f 6e 20 61 20 | ted.to.use.a.math.operator.on.a. |
| 2b5e0 | 6d 69 78 74 75 72 65 20 6f 66 20 73 63 61 6c 61 72 73 20 28 69 6e 64 69 76 69 64 75 61 6c 20 6e | mixture.of.scalars.(individual.n |
| 2b600 | 75 6d 62 65 72 73 29 0a 20 20 20 20 20 20 61 6e 64 20 76 65 63 74 6f 72 73 2e 20 5a 69 67 20 70 | umbers).......and.vectors..Zig.p |
| 2b620 | 72 6f 76 69 64 65 73 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 73 70 6c 61 74 22 3e 40 73 70 | rovides.the.<a.href="#splat">@sp |
| 2b640 | 6c 61 74 3c 2f 61 3e 20 62 75 69 6c 74 69 6e 20 74 6f 20 65 61 73 69 6c 79 20 63 6f 6e 76 65 72 | lat</a>.builtin.to.easily.conver |
| 2b660 | 74 20 66 72 6f 6d 20 73 63 61 6c 61 72 73 0a 20 20 20 20 20 20 74 6f 20 76 65 63 74 6f 72 73 2c | t.from.scalars.......to.vectors, |
| 2b680 | 20 61 6e 64 20 69 74 20 73 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 72 65 64 75 63 | .and.it.supports.<a.href="#reduc |
| 2b6a0 | 65 22 3e 40 72 65 64 75 63 65 3c 2f 61 3e 20 61 6e 64 20 61 72 72 61 79 20 69 6e 64 65 78 69 6e | e">@reduce</a>.and.array.indexin |
| 2b6c0 | 67 20 73 79 6e 74 61 78 20 74 6f 20 63 6f 6e 76 65 72 74 0a 20 20 20 20 20 20 66 72 6f 6d 20 76 | g.syntax.to.convert.......from.v |
| 2b6e0 | 65 63 74 6f 72 73 20 74 6f 20 73 63 61 6c 61 72 73 2e 20 56 65 63 74 6f 72 73 20 61 6c 73 6f 20 | ectors.to.scalars..Vectors.also. |
| 2b700 | 73 75 70 70 6f 72 74 20 61 73 73 69 67 6e 6d 65 6e 74 20 74 6f 20 61 6e 64 20 66 72 6f 6d 20 66 | support.assignment.to.and.from.f |
| 2b720 | 69 78 65 64 2d 6c 65 6e 67 74 68 0a 20 20 20 20 20 20 61 72 72 61 79 73 20 77 69 74 68 20 63 6f | ixed-length.......arrays.with.co |
| 2b740 | 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 6c 65 6e 67 74 68 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | mptime-known.length........</p>. |
| 2b760 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 72 65 61 72 72 61 6e 67 69 6e 67 20 | ......<p>.......For.rearranging. |
| 2b780 | 65 6c 65 6d 65 6e 74 73 20 77 69 74 68 69 6e 20 61 6e 64 20 62 65 74 77 65 65 6e 20 76 65 63 74 | elements.within.and.between.vect |
| 2b7a0 | 6f 72 73 2c 20 5a 69 67 20 70 72 6f 76 69 64 65 73 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 | ors,.Zig.provides.the.<a.href="# |
| 2b7c0 | 73 68 75 66 66 6c 65 22 3e 40 73 68 75 66 66 6c 65 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 | shuffle">@shuffle</a>.and.<a.hre |
| 2b7e0 | 66 3d 22 23 73 65 6c 65 63 74 22 3e 40 73 65 6c 65 63 74 3c 2f 61 3e 20 66 75 6e 63 74 69 6f 6e | f="#select">@select</a>.function |
| 2b800 | 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 4f 70 | s........</p>.......<p>.......Op |
| 2b820 | 65 72 61 74 69 6f 6e 73 20 6f 6e 20 76 65 63 74 6f 72 73 20 73 68 6f 72 74 65 72 20 74 68 61 6e | erations.on.vectors.shorter.than |
| 2b840 | 20 74 68 65 20 74 61 72 67 65 74 20 6d 61 63 68 69 6e 65 27 73 20 6e 61 74 69 76 65 20 53 49 4d | .the.target.machine's.native.SIM |
| 2b860 | 44 20 73 69 7a 65 20 77 69 6c 6c 20 74 79 70 69 63 61 6c 6c 79 20 63 6f 6d 70 69 6c 65 20 74 6f | D.size.will.typically.compile.to |
| 2b880 | 20 73 69 6e 67 6c 65 20 53 49 4d 44 0a 20 20 20 20 20 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 2c | .single.SIMD.......instructions, |
| 2b8a0 | 20 77 68 69 6c 65 20 76 65 63 74 6f 72 73 20 6c 6f 6e 67 65 72 20 74 68 61 6e 20 74 68 65 20 74 | .while.vectors.longer.than.the.t |
| 2b8c0 | 61 72 67 65 74 20 6d 61 63 68 69 6e 65 27 73 20 6e 61 74 69 76 65 20 53 49 4d 44 20 73 69 7a 65 | arget.machine's.native.SIMD.size |
| 2b8e0 | 20 77 69 6c 6c 20 63 6f 6d 70 69 6c 65 20 74 6f 20 6d 75 6c 74 69 70 6c 65 20 53 49 4d 44 0a 20 | .will.compile.to.multiple.SIMD.. |
| 2b900 | 20 20 20 20 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 2e 20 49 66 20 61 20 67 69 76 65 6e 20 6f 70 | .....instructions..If.a.given.op |
| 2b920 | 65 72 61 74 69 6f 6e 20 64 6f 65 73 6e 27 74 20 68 61 76 65 20 53 49 4d 44 20 73 75 70 70 6f 72 | eration.doesn't.have.SIMD.suppor |
| 2b940 | 74 20 6f 6e 20 74 68 65 20 74 61 72 67 65 74 20 61 72 63 68 69 74 65 63 74 75 72 65 2c 20 74 68 | t.on.the.target.architecture,.th |
| 2b960 | 65 20 63 6f 6d 70 69 6c 65 72 20 77 69 6c 6c 20 64 65 66 61 75 6c 74 0a 20 20 20 20 20 20 74 6f | e.compiler.will.default.......to |
| 2b980 | 20 6f 70 65 72 61 74 69 6e 67 20 6f 6e 20 65 61 63 68 20 76 65 63 74 6f 72 20 65 6c 65 6d 65 6e | .operating.on.each.vector.elemen |
| 2b9a0 | 74 20 6f 6e 65 20 61 74 20 61 20 74 69 6d 65 2e 20 5a 69 67 20 73 75 70 70 6f 72 74 73 20 61 6e | t.one.at.a.time..Zig.supports.an |
| 2b9c0 | 79 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 76 65 63 74 6f 72 20 6c 65 6e 67 74 68 20 75 | y.comptime-known.vector.length.u |
| 2b9e0 | 70 20 74 6f 20 32 5e 33 32 2d 31 2c 0a 20 20 20 20 20 20 61 6c 74 68 6f 75 67 68 20 73 6d 61 6c | p.to.2^32-1,.......although.smal |
| 2ba00 | 6c 20 70 6f 77 65 72 73 20 6f 66 20 74 77 6f 20 28 32 2d 36 34 29 20 61 72 65 20 6d 6f 73 74 20 | l.powers.of.two.(2-64).are.most. |
| 2ba20 | 74 79 70 69 63 61 6c 2e 20 4e 6f 74 65 20 74 68 61 74 20 65 78 63 65 73 73 69 76 65 6c 79 20 6c | typical..Note.that.excessively.l |
| 2ba40 | 6f 6e 67 20 76 65 63 74 6f 72 20 6c 65 6e 67 74 68 73 20 28 65 2e 67 2e 20 32 5e 32 30 29 20 6d | ong.vector.lengths.(e.g..2^20).m |
| 2ba60 | 61 79 0a 20 20 20 20 20 20 72 65 73 75 6c 74 20 69 6e 20 63 6f 6d 70 69 6c 65 72 20 63 72 61 73 | ay.......result.in.compiler.cras |
| 2ba80 | 68 65 73 20 6f 6e 20 63 75 72 72 65 6e 74 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 5a 69 67 2e 0a | hes.on.current.versions.of.Zig.. |
| 2baa0 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | ......</p>.......<figure><figcap |
| 2bac0 | 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 | tion.class="zig-cap"><cite.class |
| 2bae0 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 76 65 63 74 6f 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | ="file">test_vector.zig</cite></ |
| 2bb00 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | figcaption><pre><code><span.clas |
| 2bb20 | 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 |
| 2bb40 | 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< |
| 2bb60 | 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 |
| 2bb80 | 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 |
| 2bba0 | 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 45 71 | s="tok-kw">const</span>.expectEq |
| 2bbc0 | 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 6c 3b 0a 0a | ual.=.std.testing.expectEqual;.. |
| 2bbe0 | 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> |
| 2bc00 | 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 42 61 73 | .<span.class="tok-str">"Bas |
| 2bc20 | 69 63 20 76 65 63 74 6f 72 20 75 73 61 67 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | ic.vector.usage"</span>.{.. |
| 2bc40 | 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">//. |
| 2bc60 | 56 65 63 74 6f 72 73 20 68 61 76 65 20 61 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 | Vectors.have.a.compile-time.know |
| 2bc80 | 6e 20 6c 65 6e 67 74 68 20 61 6e 64 20 62 61 73 65 20 74 79 70 65 2e 3c 2f 73 70 61 6e 3e 0a 20 | n.length.and.base.type.</span>.. |
| 2bca0 | 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 |
| 2bcc0 | 70 61 6e 3e 20 61 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 | pan>.a.=.<span.class="tok-builti |
| 2bce0 | 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n">@Vector</span>(<span.class="t |
| 2bd00 | 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 |
| 2bd20 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 7b 20 3c 73 70 61 6e 20 63 | ="tok-type">i32</span>){.<span.c |
| 2bd40 | 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 61 | lass="tok-number">1</span>,.<spa |
| 2bd60 | 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 3c | n.class="tok-number">2</span>,.< |
| 2bd80 | 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> |
| 2bda0 | 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 70 | ,.<span.class="tok-number">4</sp |
| 2bdc0 | 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 3e | an>.};.....<span.class="tok-kw"> |
| 2bde0 | 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 3d 22 74 6f | const</span>.b.=.<span.class="to |
| 2be00 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | k-builtin">@Vector</span>(<span. |
| 2be20 | 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 |
| 2be40 | 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 7b | an.class="tok-type">i32</span>){ |
| 2be60 | 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 |
| 2be80 | 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 36 3c 2f | n>,.<span.class="tok-number">6</ |
| 2bea0 | 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"> |
| 2bec0 | 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 6e 75 6d 62 65 | 7</span>,.<span.class="tok-numbe |
| 2bee0 | 72 22 3e 38 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 | r">8</span>.};......<span.class= |
| 2bf00 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4d 61 74 68 20 6f 70 65 72 61 74 69 6f 6e 73 | "tok-comment">//.Math.operations |
| 2bf20 | 20 74 61 6b 65 20 70 6c 61 63 65 20 65 6c 65 6d 65 6e 74 2d 77 69 73 65 2e 3c 2f 73 70 61 6e 3e | .take.place.element-wise.</span> |
| 2bf40 | 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< |
| 2bf60 | 2f 73 70 61 6e 3e 20 63 20 3d 20 61 20 2b 20 62 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | /span>.c.=.a.+.b;......<span.cla |
| 2bf80 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 6e 64 69 76 69 64 75 61 6c 20 76 | ss="tok-comment">//.Individual.v |
| 2bfa0 | 65 63 74 6f 72 20 65 6c 65 6d 65 6e 74 73 20 63 61 6e 20 62 65 20 61 63 63 65 73 73 65 64 20 75 | ector.elements.can.be.accessed.u |
| 2bfc0 | 73 69 6e 67 20 61 72 72 61 79 20 69 6e 64 65 78 69 6e 67 20 73 79 6e 74 61 78 2e 3c 2f 73 70 61 | sing.array.indexing.syntax.</spa |
| 2bfe0 | 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 79 3c | n>.....<span.class="tok-kw">try< |
| 2c000 | 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=" |
| 2c020 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 2c 20 63 5b 3c 73 70 61 6e 20 63 6c | tok-number">6</span>,.c[<span.cl |
| 2c040 | 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 3b 0a 20 20 20 | ass="tok-number">0</span>]);.... |
| 2c060 | 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> |
| 2c080 | 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 74 6f 6b 2d 6e 75 | .expectEqual(<span.class="tok-nu |
| 2c0a0 | 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 2c 20 63 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | mber">8</span>,.c[<span.class="t |
| 2c0c0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 29 3b 0a 20 20 20 20 3c 73 70 61 6e | ok-number">1</span>]);.....<span |
| 2c0e0 | 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 |
| 2c100 | 74 45 71 75 61 6c 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 | tEqual(<span.class="tok-number"> |
| 2c120 | 31 30 3c 2f 73 70 61 6e 3e 2c 20 63 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | 10</span>,.c[<span.class="tok-nu |
| 2c140 | 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | mber">2</span>]);.....<span.clas |
| 2c160 | 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 45 71 75 61 | s="tok-kw">try</span>.expectEqua |
| 2c180 | 6c 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 | l(<span.class="tok-number">12</s |
| 2c1a0 | 70 61 6e 3e 2c 20 63 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 | pan>,.c[<span.class="tok-number" |
| 2c1c0 | 3e 33 3c 2f 73 70 61 6e 3e 5d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >3</span>]);.}..<span.class="tok |
| 2c1e0 | 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 |
| 2c200 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 43 6f 6e 76 65 72 73 69 6f 6e 20 62 65 74 77 65 65 6e 20 | k-str">"Conversion.between. |
| 2c220 | 76 65 63 74 6f 72 73 2c 20 61 72 72 61 79 73 2c 20 61 6e 64 20 73 6c 69 63 65 73 26 71 75 6f 74 | vectors,.arrays,.and.slices" |
| 2c240 | 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- |
| 2c260 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 56 65 63 74 6f 72 73 20 61 6e 64 20 66 69 78 65 64 2d 6c 65 | comment">//.Vectors.and.fixed-le |
| 2c280 | 6e 67 74 68 20 61 72 72 61 79 73 20 63 61 6e 20 62 65 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 | ngth.arrays.can.be.automatically |
| 2c2a0 | 20 61 73 73 69 67 6e 65 64 20 62 61 63 6b 20 61 6e 64 20 66 6f 72 74 68 3c 2f 73 70 61 6e 3e 0a | .assigned.back.and.forth</span>. |
| 2c2c0 | 20 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</ |
| 2c2e0 | 73 70 61 6e 3e 20 61 72 72 31 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | span>.arr1:.[<span.class="tok-nu |
| 2c300 | 6d 62 65 72 22 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 | mber">4</span>]<span.class="tok- |
| 2c320 | 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 | type">f32</span>.=.[_]<span.clas |
| 2c340 | 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 6e 20 63 | s="tok-type">f32</span>{.<span.c |
| 2c360 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | lass="tok-number">1.1</span>,.<s |
| 2c380 | 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 32 3c 2f 73 70 61 6e | pan.class="tok-number">3.2</span |
| 2c3a0 | 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 2e 35 3c | >,.<span.class="tok-number">4.5< |
| 2c3c0 | 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" |
| 2c3e0 | 3e 35 2e 36 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 | >5.6</span>.};.....<span.class=" |
| 2c400 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 65 63 3a 20 3c 73 70 61 6e 20 | tok-kw">const</span>.vec:.<span. |
| 2c420 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 | class="tok-builtin">@Vector</spa |
| 2c440 | 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 34 3c 2f 73 | n>(<span.class="tok-number">4</s |
| 2c460 | 70 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 66 33 32 | pan>,.<span.class="tok-type">f32 |
| 2c480 | 3c 2f 73 70 61 6e 3e 29 20 3d 20 61 72 72 31 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | </span>).=.arr1;.....<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 61 72 72 32 3a 20 5b 3c 73 | ="tok-kw">const</span>.arr2:.[<s |
| 2c4c0 | 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>] |
| 2c4e0 | 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 |
| 2c500 | 3e 20 3d 20 76 65 63 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 | >.=.vec;.....<span.class="tok-kw |
| 2c520 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 45 71 75 61 6c 28 61 72 72 31 2c 20 61 | ">try</span>.expectEqual(arr1,.a |
| 2c540 | 72 72 32 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 | rr2);......<span.class="tok-comm |
| 2c560 | 65 6e 74 22 3e 2f 2f 20 59 6f 75 20 63 61 6e 20 61 6c 73 6f 20 61 73 73 69 67 6e 20 66 72 6f 6d | ent">//.You.can.also.assign.from |
| 2c580 | 20 61 20 73 6c 69 63 65 20 77 69 74 68 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 6c 65 6e | .a.slice.with.comptime-known.len |
| 2c5a0 | 67 74 68 20 74 6f 20 61 20 76 65 63 74 6f 72 20 75 73 69 6e 67 20 2e 2a 3c 2f 73 70 61 6e 3e 0a | gth.to.a.vector.using..*</span>. |
| 2c5c0 | 20 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</ |
| 2c5e0 | 73 70 61 6e 3e 20 76 65 63 32 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | span>.vec2:.<span.class="tok-bui |
| 2c600 | 6c 74 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ltin">@Vector</span>(<span.class |
| 2c620 | 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 |
| 2c640 | 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 29 20 3d 20 61 72 72 | ass="tok-type">f32</span>).=.arr |
| 2c660 | 31 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 70 | 1[<span.class="tok-number">1</sp |
| 2c680 | 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 22 3e 33 3c | an>..<span.class="tok-number">3< |
| 2c6a0 | 2f 73 70 61 6e 3e 5d 2e 2a 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>].*;......<span.class="tok |
| 2c6c0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 3a 20 5b 5d 3c 73 70 61 6e | -kw">const</span>.slice:.[]<span |
| 2c6e0 | 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 |
| 2c700 | 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 3d | an.class="tok-type">f32</span>.= |
| 2c720 | 20 26 61 6d 70 3b 61 72 72 31 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .&arr1;.....<span.class="tok |
| 2c740 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6f 66 66 73 65 74 3a 20 3c 73 70 61 6e 20 63 6c | -kw">var</span>.offset:.<span.cl |
| 2c760 | 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 61 | ass="tok-type">u32</span>.=.<spa |
| 2c780 | 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 20 3c | n.class="tok-number">1</span>;.< |
| 2c7a0 | 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 61 72 20 | span.class="tok-comment">//.var. |
| 2c7c0 | 74 6f 20 6d 61 6b 65 20 69 74 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 3c 2f 73 70 61 6e 3e 0a | to.make.it.runtime-known</span>. |
| 2c7e0 | 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 6f 66 66 73 65 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ...._.=.&offset;.<span.class |
| 2c800 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 73 75 70 70 72 65 73 73 20 27 76 61 72 20 | ="tok-comment">//.suppress.'var. |
| 2c820 | 69 73 20 6e 65 76 65 72 20 6d 75 74 61 74 65 64 27 20 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 0a 20 | is.never.mutated'.error</span>.. |
| 2c840 | 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">//. |
| 2c860 | 54 6f 20 65 78 74 72 61 63 74 20 61 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 6c 65 6e 67 | To.extract.a.comptime-known.leng |
| 2c880 | 74 68 20 66 72 6f 6d 20 61 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 20 6f 66 66 73 65 74 2c 3c | th.from.a.runtime-known.offset,< |
| 2c8a0 | 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 |
| 2c8c0 | 65 6e 74 22 3e 2f 2f 20 66 69 72 73 74 20 65 78 74 72 61 63 74 20 61 20 6e 65 77 20 73 6c 69 63 | ent">//.first.extract.a.new.slic |
| 2c8e0 | 65 20 66 72 6f 6d 20 74 68 65 20 73 74 61 72 74 69 6e 67 20 6f 66 66 73 65 74 2c 20 74 68 65 6e | e.from.the.starting.offset,.then |
| 2c900 | 20 61 6e 20 61 72 72 61 79 20 6f 66 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | .an.array.of</span>.....<span.cl |
| 2c920 | 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 74 69 6d 65 2d 6b 6e | ass="tok-comment">//.comptime-kn |
| 2c940 | 6f 77 6e 20 6c 65 6e 67 74 68 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | own.length</span>.....<span.clas |
| 2c960 | 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 65 63 33 3a 20 3c 73 | s="tok-kw">const</span>.vec3:.<s |
| 2c980 | 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 56 65 63 74 6f 72 3c | pan.class="tok-builtin">@Vector< |
| 2c9a0 | 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"> |
| 2c9c0 | 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 74 79 70 65 22 | 2</span>,.<span.class="tok-type" |
| 2c9e0 | 3e 66 33 32 3c 2f 73 70 61 6e 3e 29 20 3d 20 73 6c 69 63 65 5b 6f 66 66 73 65 74 2e 2e 5d 5b 3c | >f32</span>).=.slice[offset..][< |
| 2ca00 | 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> |
| 2ca20 | 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 32 3c 2f 73 70 | ..<span.class="tok-number">2</sp |
| 2ca40 | 61 6e 3e 5d 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 | an>].*;.....<span.class="tok-kw" |
| 2ca60 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 45 71 75 61 6c 28 73 6c 69 63 65 5b 6f 66 | >try</span>.expectEqual(slice[of |
| 2ca80 | 66 73 65 74 5d 2c 20 76 65 63 32 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | fset],.vec2[<span.class="tok-num |
| 2caa0 | 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ber">0</span>]);.....<span.class |
| 2cac0 | 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 45 71 75 61 6c | ="tok-kw">try</span>.expectEqual |
| 2cae0 | 28 73 6c 69 63 65 5b 6f 66 66 73 65 74 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | (slice[offset.+.<span.class="tok |
| 2cb00 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 2c 20 76 65 63 32 5b 3c 73 70 61 6e 20 63 | -number">1</span>],.vec2[<span.c |
| 2cb20 | 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 29 3b 0a 20 20 | lass="tok-number">1</span>]);... |
| 2cb40 | 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 |
| 2cb60 | 3e 20 65 78 70 65 63 74 45 71 75 61 6c 28 76 65 63 32 2c 20 76 65 63 33 29 3b 0a 7d 3c 2f 63 6f | >.expectEqual(vec2,.vec3);.}</co |
| 2cb80 | 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | de></pre></figure><figure><figca |
| 2cba0 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 | ption.class="shell-cap">Shell</f |
| 2cbc0 | 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 | igcaption><pre><samp>$.<kbd>zig. |
| 2cbe0 | 74 65 73 74 20 74 65 73 74 5f 76 65 63 74 6f 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 | test.test_vector.zig</kbd>.1/2.t |
| 2cc00 | 65 73 74 5f 76 65 63 74 6f 72 2e 74 65 73 74 2e 42 61 73 69 63 20 76 65 63 74 6f 72 20 75 73 61 | est_vector.test.Basic.vector.usa |
| 2cc20 | 67 65 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 76 65 63 74 6f 72 2e 74 65 73 74 2e 43 6f 6e | ge...OK.2/2.test_vector.test.Con |
| 2cc40 | 76 65 72 73 69 6f 6e 20 62 65 74 77 65 65 6e 20 76 65 63 74 6f 72 73 2c 20 61 72 72 61 79 73 2c | version.between.vectors,.arrays, |
| 2cc60 | 20 61 6e 64 20 73 6c 69 63 65 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 | .and.slices...OK.All.2.tests.pas |
| 2cc80 | 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 | sed..</samp></pre></figure>..... |
| 2cca0 | 20 20 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 | ...<p>.......TODO.talk.about.C.A |
| 2ccc0 | 42 49 20 69 6e 74 65 72 6f 70 3c 62 72 2f 3e 0a 20 20 20 20 20 20 54 4f 44 4f 20 63 6f 6e 73 69 | BI.interop<br/>.......TODO.consi |
| 2cce0 | 64 65 72 20 73 75 67 67 65 73 74 69 6e 67 20 73 74 64 2e 4d 75 6c 74 69 41 72 72 61 79 4c 69 73 | der.suggesting.std.MultiArrayLis |
| 2cd00 | 74 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 | t.......</p>.......<p>See.also:< |
| 2cd20 | 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 70 6c 61 74 22 3e 40 73 70 | /p><ul>.<li><a.href="#splat">@sp |
| 2cd40 | 6c 61 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 73 68 75 66 66 | lat</a></li>.<li><a.href="#shuff |
| 2cd60 | 6c 65 22 3e 40 73 68 75 66 66 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 | le">@shuffle</a></li>.<li><a.hre |
| 2cd80 | 66 3d 22 23 73 65 6c 65 63 74 22 3e 40 73 65 6c 65 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 | f="#select">@select</a></li>.<li |
| 2cda0 | 3e 3c 61 20 68 72 65 66 3d 22 23 72 65 64 75 63 65 22 3e 40 72 65 64 75 63 65 3c 2f 61 3e 3c 2f | ><a.href="#reduce">@reduce</a></ |
| 2cdc0 | 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 44 65 73 74 72 75 | li>.</ul>.........<h3.id="Destru |
| 2cde0 | 63 74 75 72 69 6e 67 2d 56 65 63 74 6f 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 | cturing-Vectors"><a.href="#toc-D |
| 2ce00 | 65 73 74 72 75 63 74 75 72 69 6e 67 2d 56 65 63 74 6f 72 73 22 3e 44 65 73 74 72 75 63 74 75 72 | estructuring-Vectors">Destructur |
| 2ce20 | 69 6e 67 20 56 65 63 74 6f 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | ing.Vectors</a>.<a.class="hdr".h |
| 2ce40 | 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 56 65 63 74 6f 72 73 22 3e c2 a7 3c | ref="#Destructuring-Vectors">..< |
| 2ce60 | 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 20 20 56 65 63 74 | /a></h3>........<p>.........Vect |
| 2ce80 | 6f 72 73 20 63 61 6e 20 62 65 20 64 65 73 74 72 75 63 74 75 72 65 64 3a 0a 20 20 20 20 20 20 3c | ors.can.be.destructured:.......< |
| 2cea0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | /p>.......<figure><figcaption.cl |
| 2cec0 | 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ass="zig-cap"><cite.class="file" |
| 2cee0 | 3e 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f 76 65 63 74 6f 72 73 2e 7a 69 67 3c 2f 63 69 74 65 | >destructuring_vectors.zig</cite |
| 2cf00 | 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></figcaption><pre><code><span.c |
| 2cf20 | 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 72 69 6e 74 | lass="tok-kw">const</span>.print |
| 2cf40 | 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 |
| 2cf60 | 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 |
| 2cf80 | 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 2e | ">"std"</span>).debug. |
| 2cfa0 | 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 63 6f 6d 6d 65 6e 74 | print;..<span.class="tok-comment |
| 2cfc0 | 22 3e 2f 2f 20 65 6d 75 6c 61 74 65 20 70 75 6e 70 63 6b 6c 64 71 3c 2f 73 70 61 6e 3e 0a 3c 73 | ">//.emulate.punpckldq</span>.<s |
| 2cfe0 | 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 |
| 2d000 | 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 |
| 2d020 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 75 6e 70 61 63 6b 3c 2f 73 70 61 6e 3e 28 | an.class="tok-fn">unpack</span>( |
| 2d040 | 78 3a 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 56 65 | x:.<span.class="tok-builtin">@Ve |
| 2d060 | 63 74 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 6e 75 6d | ctor</span>(<span.class="tok-num |
| 2d080 | 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 2d | ber">4</span>,.<span.class="tok- |
| 2d0a0 | 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 29 2c 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | type">f32</span>),.y:.<span.clas |
| 2d0c0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 3c | s="tok-builtin">@Vector</span>(< |
| 2d0e0 | 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> |
| 2d100 | 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 66 33 32 3c 2f 73 70 | ,.<span.class="tok-type">f32</sp |
| 2d120 | 61 6e 3e 29 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 | an>)).<span.class="tok-builtin"> |
| 2d140 | 40 56 65 63 74 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 | @Vector</span>(<span.class="tok- |
| 2d160 | 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 22 74 | number">4</span>,.<span.class="t |
| 2d180 | 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e | ok-type">f32</span>).{.....<span |
| 2d1a0 | 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 2c 20 | .class="tok-kw">const</span>.a,. |
| 2d1c0 | 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 |
| 2d1e0 | 3e 20 63 2c 20 5f 2c 20 5f 20 3d 20 78 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >.c,._,._.=.x;.....<span.class=" |
| 2d200 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 2c 20 3c 73 70 61 6e 20 63 6c | tok-kw">const</span>.b,.<span.cl |
| 2d220 | 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 2c 20 5f 2c 20 | ass="tok-kw">const</span>.d,._,. |
| 2d240 | 5f 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 3e | _.=.y;.....<span.class="tok-kw"> |
| 2d260 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 2e 7b 20 61 2c 20 62 2c 20 63 2c 20 64 20 7d 3b 0a 7d | return</span>..{.a,.b,.c,.d.};.} |
| 2d280 | 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 |
| 2d2a0 | 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> |
| 2d2c0 | 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 |
| 2d2e0 | 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< |
| 2d300 | 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 |
| 2d320 | 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 |
| 2d340 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | ok-builtin">@Vector</span>(<span |
| 2d360 | 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 |
| 2d380 | 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 29 | pan.class="tok-type">f32</span>) |
| 2d3a0 | 20 3d 20 2e 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 | .=..{.<span.class="tok-number">1 |
| 2d3c0 | 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 6e 75 6d 62 | .0</span>,.<span.class="tok-numb |
| 2d3e0 | 65 72 22 3e 32 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 | er">2.0</span>,.<span.class="tok |
| 2d400 | 2d 6e 75 6d 62 65 72 22 3e 33 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | -number">3.0</span>,.<span.class |
| 2d420 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 2e 30 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 | ="tok-number">4.0</span>.};..... |
| 2d440 | 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 |
| 2d460 | 3e 20 79 3a 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 | >.y:.<span.class="tok-builtin">@ |
| 2d480 | 56 65 63 74 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 6e | Vector</span>(<span.class="tok-n |
| 2d4a0 | 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 |
| 2d4c0 | 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 29 20 3d 20 2e 7b 20 3c 73 70 61 6e 20 63 | k-type">f32</span>).=..{.<span.c |
| 2d4e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | lass="tok-number">5.0</span>,.<s |
| 2d500 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 2e 30 3c 2f 73 70 61 6e | pan.class="tok-number">6.0</span |
| 2d520 | 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 2e 30 3c | >,.<span.class="tok-number">7.0< |
| 2d540 | 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" |
| 2d560 | 3e 38 2e 30 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 | >8.0</span>.};.....print(<span.c |
| 2d580 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 7d 26 71 75 6f 74 3b 3c 2f 73 | lass="tok-str">"{}"</s |
| 2d5a0 | 70 61 6e 3e 2c 20 2e 7b 75 6e 70 61 63 6b 28 78 2c 20 79 29 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e | pan>,..{unpack(x,.y)});.}</code> |
| 2d5c0 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | </pre></figure><figure><figcapti |
| 2d5e0 | 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 | on.class="shell-cap">Shell</figc |
| 2d600 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 | aption><pre><samp>$.<kbd>zig.bui |
| 2d620 | 6c 64 2d 65 78 65 20 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f 76 65 63 74 6f 72 73 2e 7a 69 67 | ld-exe.destructuring_vectors.zig |
| 2d640 | 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f 76 65 | </kbd>.$.<kbd>./destructuring_ve |
| 2d660 | 63 74 6f 72 73 3c 2f 6b 62 64 3e 0a 7b 20 31 65 30 2c 20 35 65 30 2c 20 32 65 30 2c 20 36 65 30 | ctors</kbd>.{.1e0,.5e0,.2e0,.6e0 |
| 2d680 | 20 7d 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 | .}.</samp></pre></figure>....... |
| 2d6a0 | 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 |
| 2d6c0 | 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 3c | ="#Destructuring">Destructuring< |
| 2d6e0 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 | /a></li>.<li><a.href="#Destructu |
| 2d700 | 72 69 6e 67 2d 54 75 70 6c 65 73 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 20 54 75 70 6c 65 | ring-Tuples">Destructuring.Tuple |
| 2d720 | 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 44 65 73 74 72 75 63 | s</a></li>.<li><a.href="#Destruc |
| 2d740 | 74 75 72 69 6e 67 2d 41 72 72 61 79 73 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 20 41 72 72 | turing-Arrays">Destructuring.Arr |
| 2d760 | 61 79 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 0a 20 20 20 20 | ays</a></li>.</ul>.............. |
| 2d780 | 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 22 3e 3c 61 20 68 | ..........<h2.id="Pointers"><a.h |
| 2d7a0 | 72 65 66 3d 22 23 74 6f 63 2d 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e | ref="#toc-Pointers">Pointers</a> |
| 2d7c0 | 20 3c 61 20 63 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 22 | .<a.class="hdr".href="#Pointers" |
| 2d7e0 | 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 5a 69 | >..</a></h2>........<p>.......Zi |
| 2d800 | 67 20 68 61 73 20 74 77 6f 20 6b 69 6e 64 73 20 6f 66 20 70 6f 69 6e 74 65 72 73 3a 20 73 69 6e | g.has.two.kinds.of.pointers:.sin |
| 2d820 | 67 6c 65 2d 69 74 65 6d 20 61 6e 64 20 6d 61 6e 79 2d 69 74 65 6d 2e 0a 20 20 20 20 20 20 3c 2f | gle-item.and.many-item........</ |
| 2d840 | 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 |
| 2d860 | 65 3e 2a 54 3c 2f 63 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 | e>*T</code>.-.single-item.pointe |
| 2d880 | 72 20 74 6f 20 65 78 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 | r.to.exactly.one.item........... |
| 2d8a0 | 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 75 70 70 6f 72 | ...<ul>...............<li>Suppor |
| 2d8c0 | 74 73 20 64 65 72 65 66 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 3e 70 74 72 2e 2a 3c 2f 63 6f | ts.deref.syntax:.<code>ptr.*</co |
| 2d8e0 | 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 70 6f | de></li>...............<li>Suppo |
| 2d900 | 72 74 73 20 73 6c 69 63 65 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 3e 70 74 72 5b 3c 73 70 61 | rts.slice.syntax:.<code>ptr[<spa |
| 2d920 | 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>..< |
| 2d940 | 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> |
| 2d960 | 5d 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 3c 6c 69 3e | ]</code></li>...............<li> |
| 2d980 | 53 75 70 70 6f 72 74 73 20 70 6f 69 6e 74 65 72 20 73 75 62 74 72 61 63 74 69 6f 6e 3a 20 3c 63 | Supports.pointer.subtraction:.<c |
| 2d9a0 | 6f 64 65 3e 70 74 72 20 2d 20 70 74 72 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ode>ptr.-.ptr</code></li>....... |
| 2d9c0 | 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 20 20 20 | ......</ul>...........</li>..... |
| 2d9e0 | 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 5b 2a 5d 54 3c 2f 63 6f 64 65 3e 20 2d 20 6d 61 | ......<li><code>[*]T</code>.-.ma |
| 2da00 | 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 |
| 2da20 | 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>.... |
| 2da40 | 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 |
| 2da60 | 6e 74 61 78 3a 20 3c 63 6f 64 65 3e 70 74 72 5b 69 5d 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 | ntax:.<code>ptr[i]</code></li>.. |
| 2da80 | 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 73 6c 69 63 65 20 | .............<li>Supports.slice. |
| 2daa0 | 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 3e 70 74 72 5b 73 74 61 72 74 2e 2e 65 6e 64 5d 3c 2f 63 | syntax:.<code>ptr[start..end]</c |
| 2dac0 | 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 70 74 72 5b 73 74 61 72 74 2e 2e 5d 3c 2f 63 6f 64 | ode>.and.<code>ptr[start..]</cod |
| 2dae0 | 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 70 6f 72 | e></li>...............<li>Suppor |
| 2db00 | 74 73 20 70 6f 69 6e 74 65 72 2d 69 6e 74 65 67 65 72 20 61 72 69 74 68 6d 65 74 69 63 3a 20 3c | ts.pointer-integer.arithmetic:.< |
| 2db20 | 63 6f 64 65 3e 70 74 72 20 2b 20 69 6e 74 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 70 74 72 | code>ptr.+.int</code>,.<code>ptr |
| 2db40 | 20 2d 20 69 6e 74 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 | .-.int</code></li>.............. |
| 2db60 | 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 70 6f 69 6e 74 65 72 20 73 75 62 74 72 61 63 74 69 6f | .<li>Supports.pointer.subtractio |
| 2db80 | 6e 3a 20 3c 63 6f 64 65 3e 70 74 72 20 2d 20 70 74 72 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 | n:.<code>ptr.-.ptr</code></li>.. |
| 2dba0 | 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 20 20 3c 63 6f | ...........</ul>.............<co |
| 2dbc0 | 64 65 3e 54 3c 2f 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 | de>T</code>.must.have.a.known.si |
| 2dbe0 | 7a 65 2c 20 77 68 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 | ze,.which.means.that.it.cannot.b |
| 2dc00 | 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e.............<code><span.class= |
| 2dc20 | 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 6f 70 61 71 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | "tok-type">anyopaque</span></cod |
| 2dc40 | 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 70 61 71 75 65 | e>.or.any.other.<a.href="#opaque |
| 2dc60 | 22 3e 6f 70 61 71 75 65 20 74 79 70 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c | ">opaque.type</a>............</l |
| 2dc80 | 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 68 65 73 65 20 74 79 | i>.......</ul>.......<p>These.ty |
| 2dca0 | 70 65 73 20 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 | pes.are.closely.related.to.<a.hr |
| 2dcc0 | 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 20 3c 61 20 68 | ef="#Arrays">Arrays</a>.and.<a.h |
| 2dce0 | 72 65 66 3d 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 | ref="#Slices">Slices</a>:</p>... |
| 2dd00 | 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 63 6f 64 65 | ......<ul>.............<li><code |
| 2dd20 | 3e 2a 5b 4e 5d 54 3c 2f 63 6f 64 65 3e 20 2d 20 70 6f 69 6e 74 65 72 20 74 6f 20 4e 20 69 74 65 | >*[N]T</code>.-.pointer.to.N.ite |
| 2dd40 | 6d 73 2c 20 73 61 6d 65 20 61 73 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 20 | ms,.same.as.single-item.pointer. |
| 2dd60 | 74 6f 20 61 6e 20 61 72 72 61 79 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | to.an.array..............<ul>... |
| 2dd80 | 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 69 6e 64 65 78 | ..............<li>Supports.index |
| 2dda0 | 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 3e 61 72 72 61 79 5f 70 74 72 5b 69 5d 3c 2f 63 6f 64 | .syntax:.<code>array_ptr[i]</cod |
| 2ddc0 | 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 |
| 2dde0 | 6f 72 74 73 20 73 6c 69 63 65 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 3e 61 72 72 61 79 5f 70 | orts.slice.syntax:.<code>array_p |
| 2de00 | 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>...... |
| 2de20 | 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 |
| 2de40 | 65 72 74 79 3a 20 3c 63 6f 64 65 3e 61 72 72 61 79 5f 70 74 72 2e 6c 65 6e 3c 2f 63 6f 64 65 3e | erty:.<code>array_ptr.len</code> |
| 2de60 | 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 6f 72 | </li>.................<li>Suppor |
| 2de80 | 74 73 20 70 6f 69 6e 74 65 72 20 73 75 62 74 72 61 63 74 69 6f 6e 3a 20 3c 63 6f 64 65 3e 61 72 | ts.pointer.subtraction:.<code>ar |
| 2dea0 | 72 61 79 5f 70 74 72 20 2d 20 61 72 72 61 79 5f 70 74 72 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a | ray_ptr.-.array_ptr</code></li>. |
| 2dec0 | 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 20 20 3c 2f | ............</ul>.............</ |
| 2dee0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | li>.........</ul>.........<ul>.. |
| 2df00 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 5b 5d 54 3c 2f 63 6f 64 65 3e 20 | ...........<li><code>[]T</code>. |
| 2df20 | 2d 20 69 73 20 61 20 73 6c 69 63 65 20 28 61 20 66 61 74 20 70 6f 69 6e 74 65 72 2c 20 77 68 69 | -.is.a.slice.(a.fat.pointer,.whi |
| 2df40 | 63 68 20 63 6f 6e 74 61 69 6e 73 20 61 20 70 6f 69 6e 74 65 72 20 6f 66 20 74 79 70 65 20 3c 63 | ch.contains.a.pointer.of.type.<c |
| 2df60 | 6f 64 65 3e 5b 2a 5d 54 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 61 20 6c 65 6e 67 74 68 29 2e 0a 20 | ode>[*]T</code>.and.a.length)... |
| 2df80 | 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 20 | ...........<ul>................. |
| 2dfa0 | 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 69 6e 64 65 78 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 | <li>Supports.index.syntax:.<code |
| 2dfc0 | 3e 73 6c 69 63 65 5b 69 5d 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | >slice[i]</code></li>........... |
| 2dfe0 | 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 79 6e 74 61 78 3a | ......<li>Supports.slice.syntax: |
| 2e000 | 20 3c 63 6f 64 65 3e 73 6c 69 63 65 5b 73 74 61 72 74 2e 2e 65 6e 64 5d 3c 2f 63 6f 64 65 3e 3c | .<code>slice[start..end]</code>< |
| 2e020 | 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 6f 72 74 | /li>.................<li>Support |
| 2e040 | 73 20 6c 65 6e 20 70 72 6f 70 65 72 74 79 3a 20 3c 63 6f 64 65 3e 73 6c 69 63 65 2e 6c 65 6e 3c | s.len.property:.<code>slice.len< |
| 2e060 | 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 20 20 | /code></li>.............</ul>... |
| 2e080 | 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 75 6c 3e 0a 20 20 | ..........</li>.........</ul>... |
| 2e0a0 | 20 20 20 20 20 20 3c 70 3e 55 73 65 20 3c 63 6f 64 65 3e 26 61 6d 70 3b 78 3c 2f 63 6f 64 65 3e | ......<p>Use.<code>&x</code> |
| 2e0c0 | 20 74 6f 20 6f 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 | .to.obtain.a.single-item.pointer |
| 2e0e0 | 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | :</p>.......<figure><figcaption. |
| 2e100 | 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c | class="zig-cap"><cite.class="fil |
| 2e120 | 65 22 3e 74 65 73 74 5f 73 69 6e 67 6c 65 5f 69 74 65 6d 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 3c | e">test_single_item_pointer.zig< |
| 2e140 | 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 | /cite></figcaption><pre><code><s |
| 2e160 | 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>. |
| 2e180 | 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 74 69 | expect.=.<span.class="tok-builti |
| 2e1a0 | 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 |
| 2e1c0 | 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>). |
| 2e1e0 | 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 |
| 2e200 | 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 |
| 2e220 | 6f 6b 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 | ok-str">"address.of.syntax& |
| 2e240 | 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=" |
| 2e260 | 74 6f 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 | tok-comment">//.Get.the.address. |
| 2e280 | 6f 66 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 | of.a.variable:</span>.....<span. |
| 2e2a0 | 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 3c | class="tok-kw">const</span>.x:.< |
| 2e2c0 | 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> |
| 2e2e0 | 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 34 | .=.<span.class="tok-number">1234 |
| 2e300 | 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 |
| 2e320 | 22 3e 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 | ">const</span>.x_ptr.=.&x;.. |
| 2e340 | 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">// |
| 2e360 | 20 44 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 | .Dereference.a.pointer:</span>.. |
| 2e380 | 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 |
| 2e3a0 | 6e 3e 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 | n>.expect(x_ptr.*.==.<span.class |
| 2e3c0 | 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 0a 20 20 20 | ="tok-number">1234</span>);..... |
| 2e3e0 | 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 57 68 | .<span.class="tok-comment">//.Wh |
| 2e400 | 65 6e 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 | en.you.get.the.address.of.a.cons |
| 2e420 | 74 20 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 | t.variable,.you.get.a.const.sing |
| 2e440 | 6c 65 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 | le-item.pointer.</span>.....<spa |
| 2e460 | 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 |
| 2e480 | 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 |
| 2e4a0 | 70 65 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 | peOf</span>(x_ptr).==.*<span.cla |
| 2e4c0 | 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 |
| 2e4e0 | 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 0a 0a 20 20 | lass="tok-type">i32</span>);.... |
| 2e500 | 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 49 | ..<span.class="tok-comment">//.I |
| 2e520 | 66 20 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 | f.you.want.to.mutate.the.value,. |
| 2e540 | 79 6f 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 | you'd.need.an.address.of.a.mutab |
| 2e560 | 6c 65 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 | le.variable:</span>.....<span.cl |
| 2e580 | 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 70 61 6e | ass="tok-kw">var</span>.y:.<span |
| 2e5a0 | 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>.=.< |
| 2e5c0 | 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 2f 73 70 | span.class="tok-number">5678</sp |
| 2e5e0 | 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 6f | an>;.....<span.class="tok-kw">co |
| 2e600 | 6e 73 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 | nst</span>.y_ptr.=.&y;.....< |
| 2e620 | 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 |
| 2e640 | 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"> |
| 2e660 | 40 54 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 | @TypeOf</span>(y_ptr).==.*<span. |
| 2e680 | 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 0a 20 20 | class="tok-type">i32</span>);... |
| 2e6a0 | 20 20 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 | ..y_ptr.*.+=.<span.class="tok-nu |
| 2e6c0 | 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= |
| 2e6e0 | 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 5f 70 74 72 | "tok-kw">try</span>.expect(y_ptr |
| 2e700 | 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 22 3e 35 | .*.==.<span.class="tok-number">5 |
| 2e720 | 36 37 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 | 679</span>);.}..<span.class="tok |
| 2e740 | 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 |
| 2e760 | 6b 2d 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 | k-str">"pointer.array.acces |
| 2e780 | 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 |
| 2e7a0 | 3d 22 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 | ="tok-comment">//.Taking.an.addr |
| 2e7c0 | 65 73 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 | ess.of.an.individual.element.giv |
| 2e7e0 | 65 73 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 | es.a</span>.....<span.class="tok |
| 2e800 | 2d 63 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 | -comment">//.single-item.pointer |
| 2e820 | 2e 20 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 | ..This.kind.of.pointer</span>... |
| 2e840 | 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 64 | ..<span.class="tok-comment">//.d |
| 2e860 | 6f 65 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 | oes.not.support.pointer.arithmet |
| 2e880 | 69 63 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 | ic.</span>.....<span.class="tok- |
| 2e8a0 | 6b 77 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 | kw">var</span>.array.=.[_]<span. |
| 2e8c0 | 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 7b 20 3c 73 70 61 | class="tok-type">u8</span>{.<spa |
| 2e8e0 | 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>,.< |
| 2e900 | 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> |
| 2e920 | 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 |
| 2e940 | 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< |
| 2e960 | 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" |
| 2e980 | 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 6d 62 | >5</span>,.<span.class="tok-numb |
| 2e9a0 | 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 74 6f 6b 2d 6e | er">6</span>,.<span.class="tok-n |
| 2e9c0 | 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 73 3d 22 74 6f | umber">7</span>,.<span.class="to |
| 2e9e0 | 6b 2d 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 | k-number">8</span>,.<span.class= |
| 2ea00 | 22 74 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 | "tok-number">9</span>,.<span.cla |
| 2ea20 | 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 20 7d 3b 0a 20 20 20 | ss="tok-number">10</span>.};.... |
| 2ea40 | 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 |
| 2ea60 | 6e 3e 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 | n>.ptr.=.&array[<span.class= |
| 2ea80 | 22 74 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 | "tok-number">2</span>];.....<spa |
| 2eaa0 | 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 |
| 2eac0 | 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 |
| 2eae0 | 70 65 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 | peOf</span>(ptr).==.*<span.class |
| 2eb00 | 3d 22 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 | ="tok-type">u8</span>);......<sp |
| 2eb20 | 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 |
| 2eb40 | 65 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 | ect(array[<span.class="tok-numbe |
| 2eb60 | 72 22 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 | r">2</span>].==.<span.class="tok |
| 2eb80 | 2d 6e 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 | -number">3</span>);.....ptr.*.+= |
| 2eba0 | 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 |
| 2ebc0 | 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 74 72 79 | n>;.....<span.class="tok-kw">try |
| 2ebe0 | 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 20 63 6c 61 73 73 | </span>.expect(array[<span.class |
| 2ec00 | 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 70 61 6e | ="tok-number">2</span>].==.<span |
| 2ec20 | 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 29 3b 0a 7d | .class="tok-number">4</span>);.} |
| 2ec40 | 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 |
| 2ec60 | 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 73 | n>.<span.class="tok-str">"s |
| 2ec80 | 6c 69 63 65 20 73 79 6e 74 61 78 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | lice.syntax"</span>.{.....< |
| 2eca0 | 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 47 65 74 20 | span.class="tok-comment">//.Get. |
| 2ecc0 | 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 76 61 72 69 61 62 6c 65 3a 3c 2f 73 70 61 6e 3e 0a | a.pointer.to.a.variable:</span>. |
| 2ece0 | 20 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 |
| 2ed00 | 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 33 | an>.x:.<span.class="tok-type">i3 |
| 2ed20 | 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 |
| 2ed40 | 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 73 | er">1234</span>;.....<span.class |
| 2ed60 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 5f 70 74 72 20 3d 20 26 | ="tok-kw">const</span>.x_ptr.=.& |
| 2ed80 | 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 74 6f 6b 2d 63 6f 6d | amp;x;......<span.class="tok-com |
| 2eda0 | 6d 65 6e 74 22 3e 2f 2f 20 43 6f 6e 76 65 72 74 20 74 6f 20 61 72 72 61 79 20 70 6f 69 6e 74 65 | ment">//.Convert.to.array.pointe |
| 2edc0 | 72 20 75 73 69 6e 67 20 73 6c 69 63 65 20 73 79 6e 74 61 78 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 | r.using.slice.syntax:</span>.... |
| 2ede0 | 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 |
| 2ee00 | 6e 3e 20 78 5f 61 72 72 61 79 5f 70 74 72 20 3d 20 78 5f 70 74 72 5b 3c 73 70 61 6e 20 63 6c 61 | n>.x_array_ptr.=.x_ptr[<span.cla |
| 2ee20 | 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 73 70 61 6e 20 | ss="tok-number">0</span>..<span. |
| 2ee40 | 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 3b 0a 20 20 | class="tok-number">1</span>];... |
| 2ee60 | 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 |
| 2ee80 | 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 |
| 2eea0 | 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 78 5f 61 72 72 61 79 5f 70 74 72 29 20 3d | n">@TypeOf</span>(x_array_ptr).= |
| 2eec0 | 3d 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 31 3c 2f | =.*[<span.class="tok-number">1</ |
| 2eee0 | 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 69 33 32 | span>]<span.class="tok-type">i32 |
| 2ef00 | 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- |
| 2ef20 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 43 6f 65 72 63 65 20 74 6f 20 6d 61 6e 79 2d 69 74 65 6d 20 | comment">//.Coerce.to.many-item. |
| 2ef40 | 70 6f 69 6e 74 65 72 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 | pointer:</span>.....<span.class= |
| 2ef60 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 5f 6d 61 6e 79 5f 70 74 72 | "tok-kw">const</span>.x_many_ptr |
| 2ef80 | 3a 20 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 69 33 32 3c | :.[*]<span.class="tok-type">i32< |
| 2efa0 | 2f 73 70 61 6e 3e 20 3d 20 78 5f 61 72 72 61 79 5f 70 74 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | /span>.=.x_array_ptr;.....<span. |
| 2efc0 | 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 |
| 2efe0 | 28 78 5f 6d 61 6e 79 5f 70 74 72 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | (x_many_ptr[<span.class="tok-num |
| 2f000 | 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 22 74 | ber">0</span>].==.<span.class="t |
| 2f020 | 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 |
| 2f040 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | ></pre></figure><figure><figcapt |
| 2f060 | 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 | ion.class="shell-cap">Shell</fig |
| 2f080 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 | caption><pre><samp>$.<kbd>zig.te |
| 2f0a0 | 73 74 20 74 65 73 74 5f 73 69 6e 67 6c 65 5f 69 74 65 6d 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 3c | st.test_single_item_pointer.zig< |
| 2f0c0 | 2f 6b 62 64 3e 0a 31 2f 33 20 74 65 73 74 5f 73 69 6e 67 6c 65 5f 69 74 65 6d 5f 70 6f 69 6e 74 | /kbd>.1/3.test_single_item_point |
| 2f0e0 | 65 72 2e 74 65 73 74 2e 61 64 64 72 65 73 73 20 6f 66 20 73 79 6e 74 61 78 2e 2e 2e 4f 4b 0a 32 | er.test.address.of.syntax...OK.2 |
| 2f100 | 2f 33 20 74 65 73 74 5f 73 69 6e 67 6c 65 5f 69 74 65 6d 5f 70 6f 69 6e 74 65 72 2e 74 65 73 74 | /3.test_single_item_pointer.test |
| 2f120 | 2e 70 6f 69 6e 74 65 72 20 61 72 72 61 79 20 61 63 63 65 73 73 2e 2e 2e 4f 4b 0a 33 2f 33 20 74 | .pointer.array.access...OK.3/3.t |
| 2f140 | 65 73 74 5f 73 69 6e 67 6c 65 5f 69 74 65 6d 5f 70 6f 69 6e 74 65 72 2e 74 65 73 74 2e 73 6c 69 | est_single_item_pointer.test.sli |
| 2f160 | 63 65 20 73 79 6e 74 61 78 2e 2e 2e 4f 4b 0a 41 6c 6c 20 33 20 74 65 73 74 73 20 70 61 73 73 65 | ce.syntax...OK.All.3.tests.passe |
| 2f180 | 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 | d..</samp></pre></figure>....... |
| 2f1a0 | 20 3c 70 3e 0a 20 20 20 20 20 20 20 5a 69 67 20 73 75 70 70 6f 72 74 73 20 70 6f 69 6e 74 65 72 | .<p>........Zig.supports.pointer |
| 2f1c0 | 20 61 72 69 74 68 6d 65 74 69 63 2e 20 49 74 27 73 20 62 65 74 74 65 72 20 74 6f 20 61 73 73 69 | .arithmetic..It's.better.to.assi |
| 2f1e0 | 67 6e 20 74 68 65 20 70 6f 69 6e 74 65 72 20 74 6f 20 3c 63 6f 64 65 3e 5b 2a 5d 54 3c 2f 63 6f | gn.the.pointer.to.<code>[*]T</co |
| 2f200 | 64 65 3e 20 61 6e 64 20 69 6e 63 72 65 6d 65 6e 74 20 74 68 61 74 20 76 61 72 69 61 62 6c 65 2e | de>.and.increment.that.variable. |
| 2f220 | 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 64 69 72 65 63 74 6c 79 20 69 6e 63 72 65 6d 65 6e 74 | .For.example,.directly.increment |
| 2f240 | 69 6e 67 20 74 68 65 20 70 6f 69 6e 74 65 72 20 66 72 6f 6d 20 61 20 73 6c 69 63 65 20 77 69 6c | ing.the.pointer.from.a.slice.wil |
| 2f260 | 6c 20 63 6f 72 72 75 70 74 20 69 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | l.corrupt.it........</p>.......< |
| 2f280 | 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 | figure><figcaption.class="zig-ca |
| 2f2a0 | 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 70 6f 69 6e 74 | p"><cite.class="file">test_point |
| 2f2c0 | 65 72 5f 61 72 69 74 68 6d 65 74 69 63 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | er_arithmetic.zig</cite></figcap |
| 2f2e0 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tion><pre><code><span.class="tok |
| 2f300 | 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 |
| 2f320 | 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 |
| 2f340 | 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">" |
| 2f360 | 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 |
| 2f380 | 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 |
| 2f3a0 | 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">" |
| 2f3c0 | 70 6f 69 6e 74 65 72 20 61 72 69 74 68 6d 65 74 69 63 20 77 69 74 68 20 6d 61 6e 79 2d 69 74 65 | pointer.arithmetic.with.many-ite |
| 2f3e0 | 6d 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 73 70 | m.pointer"</span>.{.....<sp |
| 2f400 | 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 |
| 2f420 | 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 74 79 70 65 22 | rray.=.[_]<span.class="tok-type" |
| 2f440 | 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 6b 2d 6e 75 | >i32</span>{.<span.class="tok-nu |
| 2f460 | 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 22 74 6f 6b | mber">1</span>,.<span.class="tok |
| 2f480 | 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 73 73 3d 22 | -number">2</span>,.<span.class=" |
| 2f4a0 | 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 |
| 2f4c0 | 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 20 20 20 20 3c | s="tok-number">4</span>.};.....< |
| 2f4e0 | 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 |
| 2f500 | 74 72 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 | tr:.[*]<span.class="tok-kw">cons |
| 2f520 | 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"> |
| 2f540 | 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 61 72 72 61 79 3b 0a 0a 20 20 20 20 3c 73 | i32</span>.=.&array;......<s |
| 2f560 | 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 |
| 2f580 | 70 65 63 74 28 70 74 72 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | pect(ptr[<span.class="tok-number |
| 2f5a0 | 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 22 74 6f 6b 2d | ">0</span>].==.<span.class="tok- |
| 2f5c0 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 70 74 72 20 2b 3d 20 3c 73 | number">1</span>);.....ptr.+=.<s |
| 2f5e0 | 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 3b | pan.class="tok-number">1</span>; |
| 2f600 | 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 |
| 2f620 | 70 61 6e 3e 20 65 78 70 65 63 74 28 70 74 72 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>.expect(ptr[<span.class="tok |
| 2f640 | 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 63 6c 61 73 | -number">0</span>].==.<span.clas |
| 2f660 | 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 0a 20 20 20 20 3c | s="tok-number">2</span>);......< |
| 2f680 | 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 73 6c 69 63 | span.class="tok-comment">//.slic |
| 2f6a0 | 69 6e 67 20 61 20 6d 61 6e 79 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 20 77 69 74 68 6f 75 74 20 | ing.a.many-item.pointer.without. |
| 2f6c0 | 61 6e 20 65 6e 64 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 3c 2f 73 70 61 6e 3e 0a 20 | an.end.is.equivalent.to</span>.. |
| 2f6e0 | 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">//. |
| 2f700 | 70 6f 69 6e 74 65 72 20 61 72 69 74 68 6d 65 74 69 63 3a 20 60 70 74 72 5b 73 74 61 72 74 2e 2e | pointer.arithmetic:.`ptr[start.. |
| 2f720 | 5d 20 3d 3d 20 70 74 72 20 2b 20 73 74 61 72 74 60 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | ].==.ptr.+.start`</span>.....<sp |
| 2f740 | 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 |
| 2f760 | 65 63 74 28 70 74 72 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 | ect(ptr[<span.class="tok-number" |
| 2f780 | 3e 31 3c 2f 73 70 61 6e 3e 2e 2e 5d 20 3d 3d 20 70 74 72 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 | >1</span>..].==.ptr.+.<span.clas |
| 2f7a0 | 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 0a 20 20 20 20 3c | s="tok-number">1</span>);......< |
| 2f7c0 | 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 73 75 62 74 | span.class="tok-comment">//.subt |
| 2f7e0 | 72 61 63 74 69 6f 6e 20 62 65 74 77 65 65 6e 20 61 6e 79 20 74 77 6f 20 70 6f 69 6e 74 65 72 73 | raction.between.any.two.pointers |
| 2f800 | 20 65 78 63 65 70 74 20 73 6c 69 63 65 73 20 62 61 73 65 64 20 6f 6e 20 65 6c 65 6d 65 6e 74 20 | .except.slices.based.on.element. |
| 2f820 | 73 69 7a 65 20 69 73 20 73 75 70 70 6f 72 74 65 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | size.is.supported</span>.....<sp |
| 2f840 | 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 |
| 2f860 | 65 63 74 28 26 61 6d 70 3b 70 74 72 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ect(&ptr[<span.class="tok-nu |
| 2f880 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 2d 20 26 61 6d 70 3b 70 74 72 5b 3c 73 70 61 6e | mber">1</span>].-.&ptr[<span |
| 2f8a0 | 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 20 3d 3d | .class="tok-number">0</span>].== |
| 2f8c0 | 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 |
| 2f8e0 | 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 73 | n>);.}..<span.class="tok-kw">tes |
| 2f900 | 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">& |
| 2f920 | 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 61 72 69 74 68 6d 65 74 69 63 20 77 69 74 68 20 73 6c 69 | quot;pointer.arithmetic.with.sli |
| 2f940 | 63 65 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 | ces"</span>.{.....<span.cla |
| 2f960 | 73 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 20 3d 20 5b | ss="tok-kw">var</span>.array.=.[ |
| 2f980 | 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 3c 2f 73 70 | _]<span.class="tok-type">i32</sp |
| 2f9a0 | 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 3c | an>{.<span.class="tok-number">1< |
| 2f9c0 | 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" |
| 2f9e0 | 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 6e 75 6d 62 | >2</span>,.<span.class="tok-numb |
| 2fa00 | 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 6f 6b 2d 6e | er">3</span>,.<span.class="tok-n |
| 2fa20 | 75 6d 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 | umber">4</span>.};.....<span.cla |
| 2fa40 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6c 65 6e 67 74 68 3a 20 3c | ss="tok-kw">var</span>.length:.< |
| 2fa60 | 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 |
| 2fa80 | 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< |
| 2faa0 | 2f 73 70 61 6e 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 | /span>;.<span.class="tok-comment |
| 2fac0 | 22 3e 2f 2f 20 76 61 72 20 74 6f 20 6d 61 6b 65 20 69 74 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 | ">//.var.to.make.it.runtime-know |
| 2fae0 | 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 6c 65 6e 67 74 68 3b 20 3c 73 | n</span>....._.=.&length;.<s |
| 2fb00 | 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 73 75 70 70 72 | pan.class="tok-comment">//.suppr |
| 2fb20 | 65 73 73 20 27 76 61 72 20 69 73 20 6e 65 76 65 72 20 6d 75 74 61 74 65 64 27 20 65 72 72 6f 72 | ess.'var.is.never.mutated'.error |
| 2fb40 | 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 22 | </span>.....<span.class="tok-kw" |
| 2fb60 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 61 72 72 61 79 5b 6c 65 6e 67 74 68 | >var</span>.slice.=.array[length |
| 2fb80 | 2e 2e 61 72 72 61 79 2e 6c 65 6e 5d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ..array.len];......<span.class=" |
| 2fba0 | 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 63 65 5b | tok-kw">try</span>.expect(slice[ |
| 2fbc0 | 3c 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 |
| 2fbe0 | 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 31 | >].==.<span.class="tok-number">1 |
| 2fc00 | 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 |
| 2fc20 | 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 6e 20 3d | w">try</span>.expect(slice.len.= |
| 2fc40 | 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 |
| 2fc60 | 61 6e 3e 29 3b 0a 0a 20 20 20 20 73 6c 69 63 65 2e 70 74 72 20 2b 3d 20 3c 73 70 61 6e 20 63 6c | an>);......slice.ptr.+=.<span.cl |
| 2fc80 | 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>;.....< |
| 2fca0 | 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. |
| 2fcc0 | 74 68 65 20 73 6c 69 63 65 20 69 73 20 69 6e 20 61 6e 20 62 61 64 20 73 74 61 74 65 20 73 69 6e | the.slice.is.in.an.bad.state.sin |
| 2fce0 | 63 65 20 6c 65 6e 20 68 61 73 20 6e 6f 74 20 62 65 65 6e 20 75 70 64 61 74 65 64 3c 2f 73 70 61 | ce.len.has.not.been.updated</spa |
| 2fd00 | 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 77 22 3e 74 72 79 | n>......<span.class="tok-kw">try |
| 2fd20 | 3c 2f 73 70 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 | </span>.expect(slice[<span.class |
| 2fd40 | 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 |
| 2fd60 | 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 0a 20 | .class="tok-number">2</span>);.. |
| 2fd80 | 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 |
| 2fda0 | 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 6e 20 63 6c 61 | n>.expect(slice.len.==.<span.cla |
| 2fdc0 | 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 63 6f | ss="tok-number">4</span>);.}</co |
| 2fde0 | 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | de></pre></figure><figure><figca |
| 2fe00 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 | ption.class="shell-cap">Shell</f |
| 2fe20 | 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 | igcaption><pre><samp>$.<kbd>zig. |
| 2fe40 | 74 65 73 74 20 74 65 73 74 5f 70 6f 69 6e 74 65 72 5f 61 72 69 74 68 6d 65 74 69 63 2e 7a 69 67 | test.test_pointer_arithmetic.zig |
| 2fe60 | 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 70 6f 69 6e 74 65 72 5f 61 72 69 74 68 6d 65 74 | </kbd>.1/2.test_pointer_arithmet |
| 2fe80 | 69 63 2e 74 65 73 74 2e 70 6f 69 6e 74 65 72 20 61 72 69 74 68 6d 65 74 69 63 20 77 69 74 68 20 | ic.test.pointer.arithmetic.with. |
| 2fea0 | 6d 61 6e 79 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f | many-item.pointer...OK.2/2.test_ |
| 2fec0 | 70 6f 69 6e 74 65 72 5f 61 72 69 74 68 6d 65 74 69 63 2e 74 65 73 74 2e 70 6f 69 6e 74 65 72 20 | pointer_arithmetic.test.pointer. |
| 2fee0 | 61 72 69 74 68 6d 65 74 69 63 20 77 69 74 68 20 73 6c 69 63 65 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 | arithmetic.with.slices...OK.All. |
| 2ff00 | 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 | 2.tests.passed..</samp></pre></f |
| 2ff20 | 69 67 75 72 65 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 | igure>........<p>.........In.Zig |
| 2ff40 | 2c 20 77 65 20 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 | ,.we.generally.prefer.<a.href="# |
| 2ff60 | 53 6c 69 63 65 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 | Slices">Slices</a>.rather.than.< |
| 2ff80 | 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 69 | a.href="#Sentinel-Terminated-Poi |
| 2ffa0 | 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 74 | nters">Sentinel-Terminated.Point |
| 2ffc0 | 65 72 73 3c 2f 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 | ers</a>..........You.can.turn.an |
| 2ffe0 | 20 61 72 72 61 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 | .array.or.pointer.into.a.slice.u |
| 30000 | 73 69 6e 67 20 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 | sing.slice.syntax........</p>... |
| 30020 | 20 20 20 20 3c 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 | ....<p>.........Slices.have.boun |
| 30040 | 64 73 20 63 68 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 | ds.checking.and.are.therefore.pr |
| 30060 | 6f 74 65 63 74 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 | otected.........against.this.kin |
| 30080 | 64 20 6f 66 20 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 2e 20 54 68 69 73 20 69 73 20 6f | d.of.Illegal.Behavior..This.is.o |
| 300a0 | 6e 65 20 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 | ne.reason.........we.prefer.slic |
| 300c0 | 65 73 20 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 | es.to.pointers........</p>...... |
| 300e0 | 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d | .<figure><figcaption.class="zig- |
| 30100 | 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 6c 69 | cap"><cite.class="file">test_sli |
| 30120 | 63 65 5f 62 6f 75 6e 64 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e | ce_bounds.zig</cite></figcaption |
| 30140 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ><pre><code><span.class="tok-kw" |
| 30160 | 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 |
| 30180 | 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>( |
| 301a0 | 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& |
| 301c0 | 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;..< |
| 301e0 | 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>. |
| 30200 | 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 |
| 30220 | 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 20 20 20 20 3c | ter.slicing"</span>.{.....< |
| 30240 | 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 61 | span.class="tok-kw">var</span>.a |
| 30260 | 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 74 79 70 65 22 | rray.=.[_]<span.class="tok-type" |
| 30280 | 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 6e 75 6d | >u8</span>{.<span.class="tok-num |
| 302a0 | 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 22 74 6f 6b 2d | ber">1</span>,.<span.class="tok- |
| 302c0 | 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 73 73 3d 22 74 | number">2</span>,.<span.class="t |
| 302e0 | 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 73 | ok-number">3</span>,.<span.class |
| 30300 | 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 6c | ="tok-number">4</span>,.<span.cl |
| 30320 | 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 3c 73 70 61 6e | ass="tok-number">5</span>,.<span |
| 30340 | 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 2c 20 3c 73 | .class="tok-number">6</span>,.<s |
| 30360 | 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 70 61 6e 3e 2c | pan.class="tok-number">7</span>, |
| 30380 | 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 61 | .<span.class="tok-number">8</spa |
| 303a0 | 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 39 3c 2f | n>,.<span.class="tok-number">9</ |
| 303c0 | 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"> |
| 303e0 | 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 73 3d 22 74 6f | 10</span>.};.....<span.class="to |
| 30400 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 74 61 72 74 3a 20 3c 73 70 61 6e 20 63 6c | k-kw">var</span>.start:.<span.cl |
| 30420 | 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 |
| 30440 | 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 3b | pan.class="tok-number">2</span>; |
| 30460 | 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 61 | .<span.class="tok-comment">//.va |
| 30480 | 72 20 74 6f 20 6d 61 6b 65 20 69 74 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 3c 2f 73 70 61 6e | r.to.make.it.runtime-known</span |
| 304a0 | 3e 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 73 74 61 72 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 | >....._.=.&start;.<span.clas |
| 304c0 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 73 75 70 70 72 65 73 73 20 27 76 61 72 | s="tok-comment">//.suppress.'var |
| 304e0 | 20 69 73 20 6e 65 76 65 72 20 6d 75 74 61 74 65 64 27 20 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 0a | .is.never.mutated'.error</span>. |
| 30500 | 20 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</ |
| 30520 | 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 61 72 72 61 79 5b 73 74 61 72 74 2e 2e 3c 73 70 61 6e | span>.slice.=.array[start..<span |
| 30540 | 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 3b 0a 20 | .class="tok-number">4</span>];.. |
| 30560 | 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 |
| 30580 | 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 6e 20 63 6c 61 | n>.expect(slice.len.==.<span.cla |
| 305a0 | 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 0a 0a 20 20 20 20 | ss="tok-number">2</span>);...... |
| 305c0 | 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>. |
| 305e0 | 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 74 6f 6b 2d 6e 75 | expect(array[<span.class="tok-nu |
| 30600 | 6d 62 65 72 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 | mber">3</span>].==.<span.class=" |
| 30620 | 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 73 6c 69 63 65 | tok-number">4</span>);.....slice |
| 30640 | 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 70 61 | [<span.class="tok-number">1</spa |
| 30660 | 6e 3e 5d 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 | n>].+=.<span.class="tok-number"> |
| 30680 | 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 |
| 306a0 | 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 |
| 306c0 | 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>].== |
| 306e0 | 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 |
| 30700 | 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 | n>);.}</code></pre></figure><fig |
| 30720 | 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 | ure><figcaption.class="shell-cap |
| 30740 | 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 | ">Shell</figcaption><pre><samp>$ |
| 30760 | 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 73 6c 69 63 65 5f 62 6f 75 6e 64 73 | .<kbd>zig.test.test_slice_bounds |
| 30780 | 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 6c 69 63 65 5f 62 6f 75 6e 64 73 | .zig</kbd>.1/1.test_slice_bounds |
| 307a0 | 2e 74 65 73 74 2e 70 6f 69 6e 74 65 72 20 73 6c 69 63 69 6e 67 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 | .test.pointer.slicing...OK.All.1 |
| 307c0 | 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | .tests.passed..</samp></pre></fi |
| 307e0 | 67 75 72 65 3e 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 | gure>........<p>Pointers.work.at |
| 30800 | 20 63 6f 6d 70 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 | .compile-time.too,.as.long.as.th |
| 30820 | 65 20 63 6f 64 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 | e.code.does.not.depend.on....... |
| 30840 | 61 6e 20 75 6e 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 | an.undefined.memory.layout:</p>. |
| 30860 | 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | ......<figure><figcaption.class= |
| 30880 | 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | "zig-cap"><cite.class="file">tes |
| 308a0 | 74 5f 63 6f 6d 70 74 69 6d 65 5f 70 6f 69 6e 74 65 72 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | t_comptime_pointers.zig</cite></ |
| 308c0 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | figcaption><pre><code><span.clas |
| 308e0 | 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.= |
| 30900 | 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 |
| 30920 | 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"> |
| 30940 | 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 2e | "std"</span>).testing. |
| 30960 | 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 65 | expect;..<span.class="tok-kw">te |
| 30980 | 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"> |
| 309a0 | 26 71 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 | "comptime.pointers"</s |
| 309c0 | 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"> |
| 309e0 | 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 61 6e 20 | comptime</span>.{.........<span. |
| 30a00 | 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 70 | class="tok-kw">var</span>.x:.<sp |
| 30a20 | 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>.= |
| 30a40 | 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 |
| 30a60 | 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 6f 6b 2d 6b 77 22 | n>;.........<span.class="tok-kw" |
| 30a80 | 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 3b 0a 20 20 20 20 | >const</span>.ptr.=.&x;..... |
| 30aa0 | 20 20 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 | ....ptr.*.+=.<span.class="tok-nu |
| 30ac0 | 6d 62 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 | mber">1</span>;.........x.+=.<sp |
| 30ae0 | 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>;. |
| 30b00 | 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 |
| 30b20 | 3c 2f 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 | </span>.expect(ptr.*.==.<span.cl |
| 30b40 | 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 20 | ass="tok-number">3</span>);..... |
| 30b60 | 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 | }.}</code></pre></figure><figure |
| 30b80 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 | ><figcaption.class="shell-cap">S |
| 30ba0 | 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b | hell</figcaption><pre><samp>$.<k |
| 30bc0 | 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 70 6f 69 6e 74 65 | bd>zig.test.test_comptime_pointe |
| 30be0 | 72 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 70 | rs.zig</kbd>.1/1.test_comptime_p |
| 30c00 | 6f 69 6e 74 65 72 73 2e 74 65 73 74 2e 63 6f 6d 70 74 69 6d 65 20 70 6f 69 6e 74 65 72 73 2e 2e | ointers.test.comptime.pointers.. |
| 30c20 | 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c | .OK.All.1.tests.passed..</samp>< |
| 30c40 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 6f 20 63 6f 6e 76 | /pre></figure>........<p>To.conv |
| 30c60 | 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 6f | ert.an.integer.address.into.a.po |
| 30c80 | 69 6e 74 65 72 2c 20 75 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | inter,.use.<code><span.class="to |
| 30ca0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 | k-builtin">@ptrFromInt</span></c |
| 30cc0 | 6f 64 65 3e 2e 0a 20 20 20 20 20 20 54 6f 20 63 6f 6e 76 65 72 74 20 61 20 70 6f 69 6e 74 65 72 | ode>........To.convert.a.pointer |
| 30ce0 | 20 74 6f 20 61 6e 20 69 6e 74 65 67 65 72 2c 20 75 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | .to.an.integer,.use.<code><span. |
| 30d00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 50 74 72 3c | class="tok-builtin">@intFromPtr< |
| 30d20 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 | /span></code>:</p>.......<figure |
| 30d40 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 | ><figcaption.class="zig-cap"><ci |
| 30d60 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 69 6e 74 65 67 65 72 5f 70 6f 69 | te.class="file">test_integer_poi |
| 30d80 | 6e 74 65 72 5f 63 6f 6e 76 65 72 73 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 | nter_conversion.zig</cite></figc |
| 30da0 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | aption><pre><code><span.class="t |
| 30dc0 | 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 73 70 | ok-kw">const</span>.expect.=.<sp |
| 30de0 | 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</ |
| 30e00 | 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 |
| 30e20 | 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 70 65 | t;std"</span>).testing.expe |
| 30e40 | 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</ |
| 30e60 | 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 |
| 30e80 | 74 3b 40 69 6e 74 46 72 6f 6d 50 74 72 20 61 6e 64 20 40 70 74 72 46 72 6f 6d 49 6e 74 26 71 75 | t;@intFromPtr.and.@ptrFromInt&qu |
| 30ea0 | 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 |
| 30ec0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 3a 20 2a 3c 73 70 61 6e 20 63 | k-kw">const</span>.ptr:.*<span.c |
| 30ee0 | 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 |
| 30f00 | 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 46 72 6f 6d 49 | an.class="tok-builtin">@ptrFromI |
| 30f20 | 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 6e 75 6d 62 65 | nt</span>(<span.class="tok-numbe |
| 30f40 | 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 3c 73 70 61 6e | r">0xdeadbee0</span>);.....<span |
| 30f60 | 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 64 64 | .class="tok-kw">const</span>.add |
| 30f80 | 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 |
| 30fa0 | 6e 74 46 72 6f 6d 50 74 72 3c 2f 73 70 61 6e 3e 28 70 74 72 29 3b 0a 20 20 20 20 3c 73 70 61 6e | ntFromPtr</span>(ptr);.....<span |
| 30fc0 | 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 |
| 30fe0 | 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 |
| 31000 | 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 20 63 6c 61 73 73 3d | eOf</span>(addr).==.<span.class= |
| 31020 | 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 3c 73 | "tok-type">usize</span>);.....<s |
| 31040 | 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 |
| 31060 | 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 22 74 6f 6b 2d 6e 75 | pect(addr.==.<span.class="tok-nu |
| 31080 | 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 7d 3c 2f 63 6f 64 | mber">0xdeadbee0</span>);.}</cod |
| 310a0 | 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | e></pre></figure><figure><figcap |
| 310c0 | 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 | tion.class="shell-cap">Shell</fi |
| 310e0 | 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 | gcaption><pre><samp>$.<kbd>zig.t |
| 31100 | 65 73 74 20 74 65 73 74 5f 69 6e 74 65 67 65 72 5f 70 6f 69 6e 74 65 72 5f 63 6f 6e 76 65 72 73 | est.test_integer_pointer_convers |
| 31120 | 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 69 6e 74 65 67 65 72 5f 70 | ion.zig</kbd>.1/1.test_integer_p |
| 31140 | 6f 69 6e 74 65 72 5f 63 6f 6e 76 65 72 73 69 6f 6e 2e 74 65 73 74 2e 40 69 6e 74 46 72 6f 6d 50 | ointer_conversion.test.@intFromP |
| 31160 | 74 72 20 61 6e 64 20 40 70 74 72 46 72 6f 6d 49 6e 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 | tr.and.@ptrFromInt...OK.All.1.te |
| 31180 | 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | sts.passed..</samp></pre></figur |
| 311a0 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 5a 69 67 20 69 73 20 61 62 6c 65 20 74 6f 20 70 72 65 73 | e>........<p>Zig.is.able.to.pres |
| 311c0 | 65 72 76 65 20 6d 65 6d 6f 72 79 20 61 64 64 72 65 73 73 65 73 20 69 6e 20 63 6f 6d 70 74 69 6d | erve.memory.addresses.in.comptim |
| 311e0 | 65 20 63 6f 64 65 2c 20 61 73 20 6c 6f 6e 67 20 61 73 0a 20 20 20 20 20 20 74 68 65 20 70 6f 69 | e.code,.as.long.as.......the.poi |
| 31200 | 6e 74 65 72 20 69 73 20 6e 65 76 65 72 20 64 65 72 65 66 65 72 65 6e 63 65 64 3a 3c 2f 70 3e 0a | nter.is.never.dereferenced:</p>. |
| 31220 | 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | ......<figure><figcaption.class= |
| 31240 | 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | "zig-cap"><cite.class="file">tes |
| 31260 | 74 5f 63 6f 6d 70 74 69 6d 65 5f 70 6f 69 6e 74 65 72 5f 63 6f 6e 76 65 72 73 69 6f 6e 2e 7a 69 | t_comptime_pointer_conversion.zi |
| 31280 | 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e | g</cite></figcaption><pre><code> |
| 312a0 | 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 |
| 312c0 | 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 |
| 312e0 | 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= |
| 31300 | 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> |
| 31320 | 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=" |
| 31340 | 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= |
| 31360 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 40 70 74 72 46 72 6f | "tok-str">"comptime.@ptrFro |
| 31380 | 6d 49 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 | mInt"</span>.{.....<span.cl |
| 313a0 | 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>.{.. |
| 313c0 | 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" |
| 313e0 | 3e 2f 2f 20 5a 69 67 20 69 73 20 61 62 6c 65 20 74 6f 20 64 6f 20 74 68 69 73 20 61 74 20 63 6f | >//.Zig.is.able.to.do.this.at.co |
| 31400 | 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 61 73 20 6c 6f 6e 67 20 61 73 3c 2f 73 70 61 6e 3e 0a 20 20 | mpile-time,.as.long.as</span>... |
| 31420 | 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"> |
| 31440 | 2f 2f 20 70 74 72 20 69 73 20 6e 65 76 65 72 20 64 65 72 65 66 65 72 65 6e 63 65 64 2e 3c 2f 73 | //.ptr.is.never.dereferenced.</s |
| 31460 | 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 6b 77 | pan>.........<span.class="tok-kw |
| 31480 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 | ">const</span>.ptr:.*<span.class |
| 314a0 | 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 |
| 314c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f | lass="tok-builtin">@ptrFromInt</ |
| 314e0 | 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 30 | span>(<span.class="tok-number">0 |
| 31500 | 78 64 65 61 64 62 65 65 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | xdeadbee0</span>);.........<span |
| 31520 | 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 64 64 | .class="tok-kw">const</span>.add |
| 31540 | 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 |
| 31560 | 6e 74 46 72 6f 6d 50 74 72 3c 2f 73 70 61 6e 3e 28 70 74 72 29 3b 0a 20 20 20 20 20 20 20 20 3c | ntFromPtr</span>(ptr);.........< |
| 31580 | 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 |
| 315a0 | 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"> |
| 315c0 | 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 20 63 6c | @TypeOf</span>(addr).==.<span.cl |
| 315e0 | 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 0a 20 20 | ass="tok-type">usize</span>);... |
| 31600 | 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</ |
| 31620 | 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 6e 20 63 6c 61 73 73 | span>.expect(addr.==.<span.class |
| 31640 | 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 2f 73 70 61 6e 3e 29 | ="tok-number">0xdeadbee0</span>) |
| 31660 | 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c | ;.....}.}</code></pre></figure>< |
| 31680 | 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d | figure><figcaption.class="shell- |
| 316a0 | 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d | cap">Shell</figcaption><pre><sam |
| 316c0 | 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f | p>$.<kbd>zig.test.test_comptime_ |
| 316e0 | 70 6f 69 6e 74 65 72 5f 63 6f 6e 76 65 72 73 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 | pointer_conversion.zig</kbd>.1/1 |
| 31700 | 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 70 6f 69 6e 74 65 72 5f 63 6f 6e 76 65 72 73 69 6f | .test_comptime_pointer_conversio |
| 31720 | 6e 2e 74 65 73 74 2e 63 6f 6d 70 74 69 6d 65 20 40 70 74 72 46 72 6f 6d 49 6e 74 2e 2e 2e 4f 4b | n.test.comptime.@ptrFromInt...OK |
| 31740 | 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 | .All.1.tests.passed..</samp></pr |
| 31760 | 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 61 20 | e></figure>........<p>.......<a. |
| 31780 | 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 20 63 6f 6e | href="#ptrCast">@ptrCast</a>.con |
| 317a0 | 76 65 72 74 73 20 61 20 70 6f 69 6e 74 65 72 27 73 20 65 6c 65 6d 65 6e 74 20 74 79 70 65 20 74 | verts.a.pointer's.element.type.t |
| 317c0 | 6f 20 61 6e 6f 74 68 65 72 2e 20 54 68 69 73 0a 20 20 20 20 20 20 63 72 65 61 74 65 73 20 61 20 | o.another..This.......creates.a. |
| 317e0 | 6e 65 77 20 70 6f 69 6e 74 65 72 20 74 68 61 74 20 63 61 6e 20 63 61 75 73 65 20 75 6e 64 65 74 | new.pointer.that.can.cause.undet |
| 31800 | 65 63 74 61 62 6c 65 20 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 0a 20 20 20 20 20 20 64 | ectable.Illegal.Behavior.......d |
| 31820 | 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 6c 6f 61 64 73 20 61 6e 64 20 73 74 6f 72 65 73 | epending.on.the.loads.and.stores |
| 31840 | 20 74 68 61 74 20 70 61 73 73 20 74 68 72 6f 75 67 68 20 69 74 2e 20 47 65 6e 65 72 61 6c 6c 79 | .that.pass.through.it..Generally |
| 31860 | 2c 20 6f 74 68 65 72 0a 20 20 20 20 20 20 6b 69 6e 64 73 20 6f 66 20 74 79 70 65 20 63 6f 6e 76 | ,.other.......kinds.of.type.conv |
| 31880 | 65 72 73 69 6f 6e 73 20 61 72 65 20 70 72 65 66 65 72 61 62 6c 65 20 74 6f 0a 20 20 20 20 20 20 | ersions.are.preferable.to....... |
| 318a0 | 3c 63 6f 64 65 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 | <code><span.class="tok-builtin"> |
| 318c0 | 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 70 6f 73 73 69 62 | @ptrCast</span></code>.if.possib |
| 318e0 | 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 | le........</p>.......<figure><fi |
| 31900 | 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 | gcaption.class="zig-cap"><cite.c |
| 31920 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 70 6f 69 6e 74 65 72 5f 63 61 73 74 69 6e 67 | lass="file">test_pointer_casting |
| 31940 | 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f | .zig</cite></figcaption><pre><co |
| 31960 | 64 65 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 | de><span.class="tok-kw">const</s |
| 31980 | 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 |
| 319a0 | 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= |
| 319c0 | 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> |
| 319e0 | 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 |
| 31a00 | 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 74 | pan>.expect.=.std.testing.expect |
| 31a20 | 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 |
| 31a40 | 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">" |
| 31a60 | 70 6f 69 6e 74 65 72 20 63 61 73 74 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | pointer.casting"</span>.{.. |
| 31a80 | 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 |
| 31aa0 | 70 61 6e 3e 20 62 79 74 65 73 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.bytes.<span.class="tok-kw"> |
| 31ac0 | 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 62 75 | align</span>(<span.class="tok-bu |
| 31ae0 | 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 70 61 6e 20 63 6c 61 | iltin">@alignOf</span>(<span.cla |
| 31b00 | 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 29 20 3d 20 5b 5f 5d | ss="tok-type">u32</span>)).=.[_] |
| 31b20 | 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> |
| 31b40 | 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 30 78 31 32 3c | {.<span.class="tok-number">0x12< |
| 31b60 | 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" |
| 31b80 | 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 2d 6e | >0x12</span>,.<span.class="tok-n |
| 31ba0 | 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 73 3d | umber">0x12</span>,.<span.class= |
| 31bc0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 | "tok-number">0x12</span>.};..... |
| 31be0 | 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 |
| 31c00 | 3e 20 75 33 32 5f 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 | >.u32_ptr:.*<span.class="tok-kw" |
| 31c20 | 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 |
| 31c40 | 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 |
| 31c60 | 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 26 61 6d 70 | ok-builtin">@ptrCast</span>(& |
| 31c80 | 3b 62 79 74 65 73 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 | ;bytes);.....<span.class="tok-kw |
| 31ca0 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 75 33 32 5f 70 74 72 2e 2a 20 3d 3d | ">try</span>.expect(u32_ptr.*.== |
| 31cc0 | 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 |
| 31ce0 | 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=" |
| 31d00 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 76 65 6e 20 74 68 69 73 20 65 78 61 6d 70 6c | tok-comment">//.Even.this.exampl |
| 31d20 | 65 20 69 73 20 63 6f 6e 74 72 69 76 65 64 20 2d 20 74 68 65 72 65 20 61 72 65 20 62 65 74 74 65 | e.is.contrived.-.there.are.bette |
| 31d40 | 72 20 77 61 79 73 20 74 6f 20 64 6f 20 74 68 65 20 61 62 6f 76 65 20 74 68 61 6e 3c 2f 73 70 61 | r.ways.to.do.the.above.than</spa |
| 31d60 | 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 22 | n>.....<span.class="tok-comment" |
| 31d80 | 3e 2f 2f 20 70 6f 69 6e 74 65 72 20 63 61 73 74 69 6e 67 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 | >//.pointer.casting..For.example |
| 31da0 | 2c 20 75 73 69 6e 67 20 61 20 73 6c 69 63 65 20 6e 61 72 72 6f 77 69 6e 67 20 63 61 73 74 3a 3c | ,.using.a.slice.narrowing.cast:< |
| 31dc0 | 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"> |
| 31de0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 33 32 5f 76 61 6c 75 65 20 3d 20 73 74 64 2e 6d 65 6d | const</span>.u32_value.=.std.mem |
| 31e00 | 2e 62 79 74 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 | .bytesAsSlice(<span.class="tok-t |
| 31e20 | 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 62 79 74 65 73 5b 3c 73 70 61 6e 20 63 6c 61 | ype">u32</span>,.bytes[<span.cla |
| 31e40 | 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 5b 3c 73 70 | ss="tok-number">0</span>..])[<sp |
| 31e60 | 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 5d 3b | an.class="tok-number">0</span>]; |
| 31e80 | 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 |
| 31ea0 | 70 61 6e 3e 20 65 78 70 65 63 74 28 75 33 32 5f 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 | pan>.expect(u32_value.==.<span.c |
| 31ec0 | 6c 61 73 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 | lass="tok-number">0x12121212</sp |
| 31ee0 | 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 6d 6d | an>);......<span.class="tok-comm |
| 31f00 | 65 6e 74 22 3e 2f 2f 20 41 6e 64 20 65 76 65 6e 20 61 6e 6f 74 68 65 72 20 77 61 79 2c 20 74 68 | ent">//.And.even.another.way,.th |
| 31f20 | 65 20 6d 6f 73 74 20 73 74 72 61 69 67 68 74 66 6f 72 77 61 72 64 20 77 61 79 20 74 6f 20 64 6f | e.most.straightforward.way.to.do |
| 31f40 | 20 69 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 6f 6b | .it:</span>.....<span.class="tok |
| 31f60 | 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 |
| 31f80 | 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 3c 73 70 61 | ss="tok-builtin">@as</span>(<spa |
| 31fa0 | 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>,.< |
| 31fc0 | 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 |
| 31fe0 | 74 3c 2f 73 70 61 6e 3e 28 62 79 74 65 73 29 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t</span>(bytes)).==.<span.class= |
| 32000 | 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 29 3b | "tok-number">0x12121212</span>); |
| 32020 | 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 |
| 32040 | 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">" |
| 32060 | 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 6e 3e | ;pointer.child.type"</span> |
| 32080 | 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 74 22 | .{.....<span.class="tok-comment" |
| 320a0 | 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 64 60 | >//.pointer.types.have.a.`child` |
| 320c0 | 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 65 20 | .field.which.tells.you.the.type. |
| 320e0 | 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 6e 20 | they.point.to.</span>.....<span. |
| 32100 | 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 |
| 32120 | 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 65 | (<span.class="tok-builtin">@type |
| 32140 | 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 74 79 | Info</span>(*<span.class="tok-ty |
| 32160 | 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 2e 70 6f 69 6e 74 65 72 2e 63 68 69 6c 64 20 3d 3d | pe">u32</span>).pointer.child.== |
| 32180 | 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 |
| 321a0 | 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 | n>);.}</code></pre></figure><fig |
| 321c0 | 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 | ure><figcaption.class="shell-cap |
| 321e0 | 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 | ">Shell</figcaption><pre><samp>$ |
| 32200 | 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 70 6f 69 6e 74 65 72 5f 63 61 73 74 | .<kbd>zig.test.test_pointer_cast |
| 32220 | 69 6e 67 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 70 6f 69 6e 74 65 72 5f 63 | ing.zig</kbd>.1/2.test_pointer_c |
| 32240 | 61 73 74 69 6e 67 2e 74 65 73 74 2e 70 6f 69 6e 74 65 72 20 63 61 73 74 69 6e 67 2e 2e 2e 4f 4b | asting.test.pointer.casting...OK |
| 32260 | 0a 32 2f 32 20 74 65 73 74 5f 70 6f 69 6e 74 65 72 5f 63 61 73 74 69 6e 67 2e 74 65 73 74 2e 70 | .2/2.test_pointer_casting.test.p |
| 32280 | 6f 69 6e 74 65 72 20 63 68 69 6c 64 20 74 79 70 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 | ointer.child.type...OK.All.2.tes |
| 322a0 | 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | ts.passed..</samp></pre></figure |
| 322c0 | 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 |
| 322e0 | 69 3e 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 | i><a.href="#Optional-Pointers">O |
| 32300 | 70 74 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 | ptional.Pointers</a></li>.<li><a |
| 32320 | 20 68 72 65 66 3d 22 23 70 74 72 46 72 6f 6d 49 6e 74 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c | .href="#ptrFromInt">@ptrFromInt< |
| 32340 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 46 72 6f 6d 50 74 | /a></li>.<li><a.href="#intFromPt |
| 32360 | 72 22 3e 40 69 6e 74 46 72 6f 6d 50 74 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 | r">@intFromPtr</a></li>.<li><a.h |
| 32380 | 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 3e | ref="#C-Pointers">C.Pointers</a> |
| 323a0 | 3c 2f 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 76 6f 6c 61 74 | </li>.</ul>........<h3.id="volat |
| 323c0 | 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 3e 76 6f 6c | ile"><a.href="#toc-volatile">vol |
| 323e0 | 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 66 3d 22 23 | atile</a>.<a.class="hdr".href="# |
| 32400 | 76 6f 6c 61 74 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | volatile">..</a></h3>........<p> |
| 32420 | 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 20 74 6f 20 | Loads.and.stores.are.assumed.to. |
| 32440 | 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 67 69 76 65 | not.have.side.effects..If.a.give |
| 32460 | 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 20 68 61 76 | n.load.or.store.......should.hav |
| 32480 | 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 72 79 20 4d | e.side.effects,.such.as.Memory.M |
| 324a0 | 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 73 65 20 3c | apped.Input/Output.(MMIO),.use.< |
| 324c0 | 63 6f 64 65 3e 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 | code><span.class="tok-kw">volati |
| 324e0 | 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 49 6e 20 74 68 65 20 66 | le</span></code>........In.the.f |
| 32500 | 6f 6c 6c 6f 77 69 6e 67 20 63 6f 64 65 2c 20 6c 6f 61 64 73 20 61 6e 64 20 73 74 6f 72 65 73 20 | ollowing.code,.loads.and.stores. |
| 32520 | 77 69 74 68 20 3c 63 6f 64 65 3e 6d 6d 69 6f 5f 70 74 72 3c 2f 63 6f 64 65 3e 20 61 72 65 20 67 | with.<code>mmio_ptr</code>.are.g |
| 32540 | 75 61 72 61 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 | uaranteed.to.all.happen.......an |
| 32560 | 64 20 69 6e 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 | d.in.the.same.order.as.in.source |
| 32580 | 20 63 6f 64 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | .code:</p>.......<figure><figcap |
| 325a0 | 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 | tion.class="zig-cap"><cite.class |
| 325c0 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 76 6f 6c 61 74 69 6c 65 2e 7a 69 67 3c 2f 63 69 74 65 3e | ="file">test_volatile.zig</cite> |
| 325e0 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </figcaption><pre><code><span.cl |
| 32600 | 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 |
| 32620 | 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 |
| 32640 | 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 |
| 32660 | 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 |
| 32680 | 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"> |
| 326a0 | 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 |
| 326c0 | 22 3e 26 71 75 6f 74 3b 76 6f 6c 61 74 69 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | ">"volatile"</span>.{. |
| 326e0 | 20 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</ |
| 32700 | 73 70 61 6e 3e 20 6d 6d 69 6f 5f 70 74 72 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>.mmio_ptr:.*<span.class="to |
| 32720 | 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | k-kw">volatile</span>.<span.clas |
| 32740 | 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 |
| 32760 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f | lass="tok-builtin">@ptrFromInt</ |
| 32780 | 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 30 | span>(<span.class="tok-number">0 |
| 327a0 | 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 61 6e 20 63 6c 61 | x12345678</span>);.....<span.cla |
| 327c0 | 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 |
| 327e0 | 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< |
| 32800 | 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 20 63 6c 61 73 73 | /span>(mmio_ptr).==.*<span.class |
| 32820 | 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 3c 73 70 61 6e 20 | ="tok-kw">volatile</span>.<span. |
| 32840 | 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 3b 0a 7d 3c 2f | class="tok-type">u8</span>);.}</ |
| 32860 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 | code></pre></figure><figure><fig |
| 32880 | 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c | caption.class="shell-cap">Shell< |
| 328a0 | 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 | /figcaption><pre><samp>$.<kbd>zi |
| 328c0 | 67 20 74 65 73 74 20 74 65 73 74 5f 76 6f 6c 61 74 69 6c 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 | g.test.test_volatile.zig</kbd>.1 |
| 328e0 | 2f 31 20 74 65 73 74 5f 76 6f 6c 61 74 69 6c 65 2e 74 65 73 74 2e 76 6f 6c 61 74 69 6c 65 2e 2e | /1.test_volatile.test.volatile.. |
| 32900 | 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c | .OK.All.1.tests.passed..</samp>< |
| 32920 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | /pre></figure>........<p>....... |
| 32940 | 4e 6f 74 65 20 74 68 61 74 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | Note.that.<code><span.class="tok |
| 32960 | 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 20 69 73 20 75 | -kw">volatile</span></code>.is.u |
| 32980 | 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 6e 64 20 3c 61 20 68 | nrelated.to.concurrency.and.<a.h |
| 329a0 | 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 3e 2e 0a 20 20 20 20 | ref="#Atomics">Atomics</a>...... |
| 329c0 | 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 20 75 73 69 6e 67 20 | ..If.you.see.code.that.is.using. |
| 329e0 | 3c 63 6f 64 65 3e 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 | <code><span.class="tok-kw">volat |
| 32a00 | 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 6f 72 20 73 6f 6d 65 74 68 69 6e 67 20 | ile</span></code>.for.something. |
| 32a20 | 6f 74 68 65 72 20 74 68 61 6e 20 4d 65 6d 6f 72 79 20 4d 61 70 70 65 64 0a 20 20 20 20 20 20 49 | other.than.Memory.Mapped.......I |
| 32a40 | 6e 70 75 74 2f 4f 75 74 70 75 74 2c 20 69 74 20 69 73 20 70 72 6f 62 61 62 6c 79 20 61 20 62 75 | nput/Output,.it.is.probably.a.bu |
| 32a60 | 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 68 33 20 | g........</p>...............<h3. |
| 32a80 | 69 64 3d 22 41 6c 69 67 6e 6d 65 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 6c 69 | id="Alignment"><a.href="#toc-Ali |
| 32aa0 | 67 6e 6d 65 6e 74 22 3e 41 6c 69 67 6e 6d 65 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | gnment">Alignment</a>.<a.class=" |
| 32ac0 | 68 64 72 22 20 68 72 65 66 3d 22 23 41 6c 69 67 6e 6d 65 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | hdr".href="#Alignment">..</a></h |
| 32ae0 | 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 61 63 68 20 74 79 70 65 20 68 61 | 3>........<p>.......Each.type.ha |
| 32b00 | 73 20 61 6e 20 3c 73 74 72 6f 6e 67 3e 61 6c 69 67 6e 6d 65 6e 74 3c 2f 73 74 72 6f 6e 67 3e 20 | s.an.<strong>alignment</strong>. |
| 32b20 | 2d 20 61 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 73 75 63 68 20 74 68 61 74 2c 0a 20 | -.a.number.of.bytes.such.that,.. |
| 32b40 | 20 20 20 20 20 77 68 65 6e 20 61 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 74 79 70 65 20 69 73 | .....when.a.value.of.the.type.is |
| 32b60 | 20 6c 6f 61 64 65 64 20 66 72 6f 6d 20 6f 72 20 73 74 6f 72 65 64 20 74 6f 20 6d 65 6d 6f 72 79 | .loaded.from.or.stored.to.memory |
| 32b80 | 2c 0a 20 20 20 20 20 20 74 68 65 20 6d 65 6d 6f 72 79 20 61 64 64 72 65 73 73 20 6d 75 73 74 20 | ,.......the.memory.address.must. |
| 32ba0 | 62 65 20 65 76 65 6e 6c 79 20 64 69 76 69 73 69 62 6c 65 20 62 79 20 74 68 69 73 20 6e 75 6d 62 | be.evenly.divisible.by.this.numb |
| 32bc0 | 65 72 2e 20 59 6f 75 20 63 61 6e 20 75 73 65 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 | er..You.can.use.......<a.href="# |
| 32be0 | 61 6c 69 67 6e 4f 66 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 61 3e 20 74 6f 20 66 69 6e 64 20 6f 75 | alignOf">@alignOf</a>.to.find.ou |
| 32c00 | 74 20 74 68 69 73 20 76 61 6c 75 65 20 66 6f 72 20 61 6e 79 20 74 79 70 65 2e 0a 20 20 20 20 20 | t.this.value.for.any.type....... |
| 32c20 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6c 69 67 6e 6d 65 6e 74 20 | .</p>.......<p>.......Alignment. |
| 32c40 | 64 65 70 65 6e 64 73 20 6f 6e 20 74 68 65 20 43 50 55 20 61 72 63 68 69 74 65 63 74 75 72 65 2c | depends.on.the.CPU.architecture, |
| 32c60 | 20 62 75 74 20 69 73 20 61 6c 77 61 79 73 20 61 20 70 6f 77 65 72 20 6f 66 20 74 77 6f 2c 20 61 | .but.is.always.a.power.of.two,.a |
| 32c80 | 6e 64 0a 20 20 20 20 20 20 6c 65 73 73 20 74 68 61 6e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | nd.......less.than.<code><span.c |
| 32ca0 | 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>.<& |
| 32cc0 | 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 39 3c | lt;.<span.class="tok-number">29< |
| 32ce0 | 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>....... |
| 32d00 | 3c 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 | <p>.......In.Zig,.a.pointer.type |
| 32d20 | 20 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 | .has.an.alignment.value..If.the. |
| 32d40 | 76 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 | value.is.equal.to.the.......alig |
| 32d60 | 6e 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 | nment.of.the.underlying.type,.it |
| 32d80 | 20 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 | .can.be.omitted.from.the.type:.. |
| 32da0 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | .....</p>.......<figure><figcapt |
| 32dc0 | 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d | ion.class="zig-cap"><cite.class= |
| 32de0 | 22 66 69 6c 65 22 3e 74 65 73 74 5f 76 61 72 69 61 62 6c 65 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a | "file">test_variable_alignment.z |
| 32e00 | 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ig</cite></figcaption><pre><code |
| 32e20 | 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 |
| 32e40 | 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 69 | n>.std.=.<span.class="tok-builti |
| 32e60 | 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 |
| 32e80 | 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 3b | ok-str">"std"</span>); |
| 32ea0 | 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 |
| 32ec0 | 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 74 6f 6b 2d 62 75 | n>.builtin.=.<span.class="tok-bu |
| 32ee0 | 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 |
| 32f00 | 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"< |
| 32f20 | 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 |
| 32f40 | 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. |
| 32f60 | 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 65 | expect;..<span.class="tok-kw">te |
| 32f80 | 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"> |
| 32fa0 | 26 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 3c 2f | "variable.alignment"</ |
| 32fc0 | 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" |
| 32fe0 | 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 6f 6b 2d | >var</span>.x:.<span.class="tok- |
| 33000 | 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=" |
| 33020 | 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 3c 73 70 | tok-number">1234</span>;.....<sp |
| 33040 | 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 |
| 33060 | 6c 69 67 6e 5f 6f 66 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 | lign_of_i32.=.<span.class="tok-b |
| 33080 | 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 70 61 6e 20 63 6c | uiltin">@alignOf</span>(<span.cl |
| 330a0 | 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> |
| 330c0 | 28 78 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 | (x));.....<span.class="tok-kw">t |
| 330e0 | 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 74 6f | ry</span>.expect(<span.class="to |
| 33100 | 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 61 6d 70 3b 78 | k-builtin">@TypeOf</span>(&x |
| 33120 | 29 20 3d 3d 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 | ).==.*<span.class="tok-type">i32 |
| 33140 | 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 |
| 33160 | 77 22 3e 74 72 79 3c 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 | w">try</span>.expect(*<span.clas |
| 33180 | 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 3d 20 2a 3c 73 70 61 | s="tok-type">i32</span>.==.*<spa |
| 331a0 | 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 61 6c | n.class="tok-kw">align</span>(al |
| 331c0 | 69 67 6e 5f 6f 66 5f 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 | ign_of_i32).<span.class="tok-typ |
| 331e0 | 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 6c 61 73 73 3d | e">i32</span>);.....<span.class= |
| 33200 | 22 74 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 74 61 72 67 | "tok-kw">if</span>.(builtin.targ |
| 33220 | 65 74 2e 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 | et.cpu.arch.==..x86_64).{....... |
| 33240 | 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 |
| 33260 | 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 |
| 33280 | 6e 22 3e 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 | n">@typeInfo</span>(*<span.class |
| 332a0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 2e 70 6f 69 6e 74 65 72 2e | ="tok-type">i32</span>).pointer. |
| 332c0 | 61 6c 69 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 | alignment.==.<span.class="tok-nu |
| 332e0 | 6d 62 65 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 | mber">4</span>);.....}.}</code>< |
| 33300 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | /pre></figure><figure><figcaptio |
| 33320 | 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 | n.class="shell-cap">Shell</figca |
| 33340 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 | ption><pre><samp>$.<kbd>zig.test |
| 33360 | 20 74 65 73 74 5f 76 61 72 69 61 62 6c 65 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a 69 67 3c 2f 6b 62 | .test_variable_alignment.zig</kb |
| 33380 | 64 3e 0a 31 2f 31 20 74 65 73 74 5f 76 61 72 69 61 62 6c 65 5f 61 6c 69 67 6e 6d 65 6e 74 2e 74 | d>.1/1.test_variable_alignment.t |
| 333a0 | 65 73 74 2e 76 61 72 69 61 62 6c 65 20 61 6c 69 67 6e 6d 65 6e 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 | est.variable.alignment...OK.All. |
| 333c0 | 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 | 1.tests.passed..</samp></pre></f |
| 333e0 | 69 67 75 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 | igure>........<p>In.the.same.way |
| 33400 | 20 74 68 61 74 20 61 20 3c 63 6f 64 65 3e 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .that.a.<code>*<span.class="tok- |
| 33420 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 3c | type">i32</span></code>.can.be.< |
| 33440 | 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< |
| 33460 | 2f 61 3e 20 74 6f 20 61 0a 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 2a 3c 73 70 61 6e 20 | /a>.to.a...........<code>*<span. |
| 33480 | 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 |
| 334a0 | 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 3c 2f 63 | n.class="tok-type">i32</span></c |
| 334c0 | 6f 64 65 3e 2c 20 61 20 70 6f 69 6e 74 65 72 20 77 69 74 68 20 61 20 6c 61 72 67 65 72 20 61 6c | ode>,.a.pointer.with.a.larger.al |
| 334e0 | 69 67 6e 6d 65 6e 74 20 63 61 6e 20 62 65 20 69 6d 70 6c 69 63 69 74 6c 79 0a 20 20 20 20 20 20 | ignment.can.be.implicitly....... |
| 33500 | 63 61 73 74 20 74 6f 20 61 20 70 6f 69 6e 74 65 72 20 77 69 74 68 20 61 20 73 6d 61 6c 6c 65 72 | cast.to.a.pointer.with.a.smaller |
| 33520 | 20 61 6c 69 67 6e 6d 65 6e 74 2c 20 62 75 74 20 6e 6f 74 20 76 69 63 65 20 76 65 72 73 61 2e 0a | .alignment,.but.not.vice.versa.. |
| 33540 | 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 59 6f 75 20 63 | ......</p>.......<p>.......You.c |
| 33560 | 61 6e 20 73 70 65 63 69 66 79 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 6e 20 76 61 72 69 61 62 6c 65 | an.specify.alignment.on.variable |
| 33580 | 73 20 61 6e 64 20 66 75 6e 63 74 69 6f 6e 73 2e 20 49 66 20 79 6f 75 20 64 6f 20 74 68 69 73 2c | s.and.functions..If.you.do.this, |
| 335a0 | 20 74 68 65 6e 0a 20 20 20 20 20 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 74 68 65 6d 20 67 65 74 | .then.......pointers.to.them.get |
| 335c0 | 20 74 68 65 20 73 70 65 63 69 66 69 65 64 20 61 6c 69 67 6e 6d 65 6e 74 3a 0a 20 20 20 20 20 20 | .the.specified.alignment:....... |
| 335e0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 | </p>.......<figure><figcaption.c |
| 33600 | 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 | lass="zig-cap"><cite.class="file |
| 33620 | 22 3e 74 65 73 74 5f 76 61 72 69 61 62 6c 65 5f 66 75 6e 63 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a | ">test_variable_func_alignment.z |
| 33640 | 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ig</cite></figcaption><pre><code |
| 33660 | 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 |
| 33680 | 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 |
| 336a0 | 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 |
| 336c0 | 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 |
| 336e0 | 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= |
| 33700 | 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 |
| 33720 | 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 3c 73 70 61 6e 20 | lass="tok-type">u8</span>.<span. |
| 33740 | 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 |
| 33760 | 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 29 20 3d | n.class="tok-number">4</span>).= |
| 33780 | 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 3c 2f 73 | .<span.class="tok-number">100</s |
| 337a0 | 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 |
| 337c0 | 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 |
| 337e0 | 75 6f 74 3b 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 20 61 6c 69 67 6e 6d 65 6e 74 26 71 75 | uot;global.variable.alignment&qu |
| 33800 | 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 |
| 33820 | 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 |
| 33840 | 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 |
| 33860 | 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 |
| 33880 | 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 66 6f 6f 29 29 2e 70 6f 69 6e 74 65 72 2e 61 | peOf</span>(&foo)).pointer.a |
| 338a0 | 6c 69 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 | lignment.==.<span.class="tok-num |
| 338c0 | 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 6c 61 73 73 3d | ber">4</span>);.....<span.class= |
| 338e0 | 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 6e | "tok-kw">try</span>.expect(<span |
| 33900 | 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 |
| 33920 | 61 6e 3e 28 26 61 6d 70 3b 66 6f 6f 29 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | an>(&foo).==.*<span.class="t |
| 33940 | 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= |
| 33960 | 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 6e 20 63 6c 61 | "tok-number">4</span>).<span.cla |
| 33980 | 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 |
| 339a0 | 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>. |
| 339c0 | 61 73 5f 70 6f 69 6e 74 65 72 5f 74 6f 5f 61 72 72 61 79 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 | as_pointer_to_array:.*<span.clas |
| 339e0 | 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 6c | s="tok-kw">align</span>(<span.cl |
| 33a00 | 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 5b 3c 73 70 61 | ass="tok-number">4</span>).[<spa |
| 33a20 | 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 3c 73 | n.class="tok-number">1</span>]<s |
| 33a40 | 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 3d | pan.class="tok-type">u8</span>.= |
| 33a60 | 20 26 61 6d 70 3b 66 6f 6f 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .&foo;.....<span.class="tok- |
| 33a80 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 5f 73 6c 69 63 65 3a 20 5b 5d 3c 73 70 | kw">const</span>.as_slice:.[]<sp |
| 33aa0 | 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>(< |
| 33ac0 | 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> |
| 33ae0 | 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 38 3c 2f 73 70 61 | ).<span.class="tok-type">u8</spa |
| 33b00 | 6e 3e 20 3d 20 61 73 5f 70 6f 69 6e 74 65 72 5f 74 6f 5f 61 72 72 61 79 3b 0a 20 20 20 20 3c 73 | n>.=.as_pointer_to_array;.....<s |
| 33b20 | 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>. |
| 33b40 | 61 73 5f 75 6e 61 6c 69 67 6e 65 64 5f 73 6c 69 63 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 | as_unaligned_slice:.[]<span.clas |
| 33b60 | 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 61 73 5f 73 6c 69 63 | s="tok-type">u8</span>.=.as_slic |
| 33b80 | 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 3c | e;.....<span.class="tok-kw">try< |
| 33ba0 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 73 5f 75 6e 61 6c 69 67 6e 65 64 5f 73 6c 69 63 65 | /span>.expect(as_unaligned_slice |
| 33bc0 | 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 |
| 33be0 | 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"> |
| 33c00 | 31 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 22 74 6f 6b | 100</span>);.}..<span.class="tok |
| 33c20 | 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- |
| 33c40 | 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 74 | fn">derp</span>().<span.class="t |
| 33c60 | 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= |
| 33c80 | 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 70 | "tok-builtin">@sizeOf</span>(<sp |
| 33ca0 | 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> |
| 33cc0 | 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 2f | ).*.<span.class="tok-number">2</ |
| 33ce0 | 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 |
| 33d00 | 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- |
| 33d20 | 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 |
| 33d40 | 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 3c 73 70 61 6e 20 | ok-number">1234</span>;.}.<span. |
| 33d60 | 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 |
| 33d80 | 6c 61 73 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 | lass="tok-fn">noop1</span>().<sp |
| 33da0 | 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>(< |
| 33dc0 | 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> |
| 33de0 | 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 |
| 33e00 | 70 61 6e 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 | pan>.{}.<span.class="tok-kw">fn< |
| 33e20 | 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 6e 6f 6f 70 | /span>.<span.class="tok-fn">noop |
| 33e40 | 34 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 77 22 3e | 4</span>().<span.class="tok-kw"> |
| 33e60 | 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 75 | align</span>(<span.class="tok-nu |
| 33e80 | 6d 62 65 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 | mber">4</span>).<span.class="tok |
| 33ea0 | 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 20 63 6c 61 | -type">void</span>.{}..<span.cla |
| 33ec0 | 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 |
| 33ee0 | 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 20 61 6c 69 | ass="tok-str">"function.ali |
| 33f00 | 67 6e 6d 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 | gnment"</span>.{.....<span. |
| 33f20 | 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 |
| 33f40 | 28 64 65 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 | (derp().==.<span.class="tok-numb |
| 33f60 | 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 |
| 33f80 | 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 |
| 33fa0 | 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 2f | an.class="tok-builtin">@TypeOf</ |
| 33fc0 | 73 70 61 6e 3e 28 64 65 72 70 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>(derp).==.<span.class="tok- |
| 33fe0 | 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | kw">fn</span>.().<span.class="to |
| 34000 | 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 |
| 34020 | 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( |
| 34040 | 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 |
| 34060 | 66 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 64 65 72 70 29 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c | f</span>(&derp).==.*<span.cl |
| 34080 | 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 6e 20 | ass="tok-kw">align</span>(<span. |
| 340a0 | 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 61 | class="tok-builtin">@sizeOf</spa |
| 340c0 | 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 65 3c | n>(<span.class="tok-type">usize< |
| 340e0 | 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 75 6d 62 65 | /span>).*.<span.class="tok-numbe |
| 34100 | 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 6b 77 | r">2</span>).<span.class="tok-kw |
| 34120 | 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- |
| 34140 | 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | kw">fn</span>.().<span.class="to |
| 34160 | 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 6e 6f 6f 70 31 28 | k-type">i32</span>);......noop1( |
| 34180 | 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< |
| 341a0 | 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 |
| 341c0 | 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 6e 6f 6f 70 31 29 20 3d 3d | uiltin">@TypeOf</span>(noop1).== |
| 341e0 | 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>. |
| 34200 | 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</ |
| 34220 | 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" |
| 34240 | 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=" |
| 34260 | 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 61 6d 70 | tok-builtin">@TypeOf</span>(& |
| 34280 | 3b 6e 6f 6f 70 31 29 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 | ;noop1).==.*<span.class="tok-kw" |
| 342a0 | 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 |
| 342c0 | 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 74 6f | umber">1</span>).<span.class="to |
| 342e0 | 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=" |
| 34300 | 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-kw">fn</span>.().<span.class |
| 34320 | 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 0a 0a 20 20 20 20 6e | ="tok-type">void</span>);......n |
| 34340 | 6f 6f 70 34 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 | oop4();.....<span.class="tok-kw" |
| 34360 | 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=" |
| 34380 | 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 6e 6f 6f 70 | tok-builtin">@TypeOf</span>(noop |
| 343a0 | 34 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 66 6e 3c 2f 73 | 4).==.<span.class="tok-kw">fn</s |
| 343c0 | 70 61 6e 3e 20 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 | pan>.().<span.class="tok-type">v |
| 343e0 | 6f 69 64 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 | oid</span>);.....<span.class="to |
| 34400 | 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 |
| 34420 | 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> |
| 34440 | 28 26 61 6d 70 3b 6e 6f 6f 70 34 29 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | (&noop4).==.*<span.class="to |
| 34460 | 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 22 | k-kw">align</span>(<span.class=" |
| 34480 | 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 6e 20 63 6c 61 73 | tok-number">4</span>).<span.clas |
| 344a0 | 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 |
| 344c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 28 29 20 3c 73 70 61 6e 20 | ass="tok-kw">fn</span>.().<span. |
| 344e0 | 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 0a 7d | class="tok-type">void</span>);.} |
| 34500 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 | </code></pre></figure><figure><f |
| 34520 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c | igcaption.class="shell-cap">Shel |
| 34540 | 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e | l</figcaption><pre><samp>$.<kbd> |
| 34560 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 76 61 72 69 61 62 6c 65 5f 66 75 6e 63 5f 61 6c 69 67 | zig.test.test_variable_func_alig |
| 34580 | 6e 6d 65 6e 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 76 61 72 69 61 62 6c | nment.zig</kbd>.1/2.test_variabl |
| 345a0 | 65 5f 66 75 6e 63 5f 61 6c 69 67 6e 6d 65 6e 74 2e 74 65 73 74 2e 67 6c 6f 62 61 6c 20 76 61 72 | e_func_alignment.test.global.var |
| 345c0 | 69 61 62 6c 65 20 61 6c 69 67 6e 6d 65 6e 74 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 76 61 | iable.alignment...OK.2/2.test_va |
| 345e0 | 72 69 61 62 6c 65 5f 66 75 6e 63 5f 61 6c 69 67 6e 6d 65 6e 74 2e 74 65 73 74 2e 66 75 6e 63 74 | riable_func_alignment.test.funct |
| 34600 | 69 6f 6e 20 61 6c 69 67 6e 6d 65 6e 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 | ion.alignment...OK.All.2.tests.p |
| 34620 | 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 | assed..</samp></pre></figure>... |
| 34640 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 79 6f 75 20 68 61 76 65 20 61 20 70 6f 69 | .....<p>.......If.you.have.a.poi |
| 34660 | 6e 74 65 72 20 6f 72 20 61 20 73 6c 69 63 65 20 74 68 61 74 20 68 61 73 20 61 20 73 6d 61 6c 6c | nter.or.a.slice.that.has.a.small |
| 34680 | 20 61 6c 69 67 6e 6d 65 6e 74 2c 20 62 75 74 20 79 6f 75 20 6b 6e 6f 77 20 74 68 61 74 20 69 74 | .alignment,.but.you.know.that.it |
| 346a0 | 20 61 63 74 75 61 6c 6c 79 0a 20 20 20 20 20 20 68 61 73 20 61 20 62 69 67 67 65 72 20 61 6c 69 | .actually.......has.a.bigger.ali |
| 346c0 | 67 6e 6d 65 6e 74 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 61 6c 69 67 6e 43 61 73 74 22 | gnment,.use.<a.href="#alignCast" |
| 346e0 | 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 61 3e 20 74 6f 20 63 68 61 6e 67 65 20 74 68 65 0a 20 20 | >@alignCast</a>.to.change.the... |
| 34700 | 20 20 20 20 70 6f 69 6e 74 65 72 20 69 6e 74 6f 20 61 20 6d 6f 72 65 20 61 6c 69 67 6e 65 64 20 | ....pointer.into.a.more.aligned. |
| 34720 | 70 6f 69 6e 74 65 72 2e 20 54 68 69 73 20 69 73 20 61 20 6e 6f 2d 6f 70 20 61 74 20 72 75 6e 74 | pointer..This.is.a.no-op.at.runt |
| 34740 | 69 6d 65 2c 20 62 75 74 20 69 6e 73 65 72 74 73 20 61 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 | ime,.but.inserts.a.......<a.href |
| 34760 | 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 74 22 3e | ="#Incorrect-Pointer-Alignment"> |
| 34780 | 73 61 66 65 74 79 20 63 68 65 63 6b 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | safety.check</a>:.......</p>.... |
| 347a0 | 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 | ...<figure><figcaption.class="zi |
| 347c0 | 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 69 | g-cap"><cite.class="file">test_i |
| 347e0 | 6e 63 6f 72 72 65 63 74 5f 70 6f 69 6e 74 65 72 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a 69 67 3c 2f | ncorrect_pointer_alignment.zig</ |
| 34800 | 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 | cite></figcaption><pre><code><sp |
| 34820 | 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 |
| 34840 | 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">@ |
| 34860 | 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 |
| 34880 | 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 |
| 348a0 | 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>.< |
| 348c0 | 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 74 | span.class="tok-str">"point |
| 348e0 | 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 3e | er.alignment.safety"</span> |
| 34900 | 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< |
| 34920 | 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 77 | /span>.array.<span.class="tok-kw |
| 34940 | 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- |
| 34960 | 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 61 | number">4</span>).=.[_]<span.cla |
| 34980 | 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 20 | ss="tok-type">u32</span>{.<span. |
| 349a0 | 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 73 | class="tok-number">0x11111111</s |
| 349c0 | 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 |
| 349e0 | 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 6c | x11111111</span>.};.....<span.cl |
| 34a00 | 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 20 | ass="tok-kw">const</span>.bytes. |
| 34a20 | 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 70 | =.std.mem.sliceAsBytes(array[<sp |
| 34a40 | 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 2e | an.class="tok-number">0</span>.. |
| 34a60 | 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 79 | ]);.....<span.class="tok-kw">try |
| 34a80 | 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 62 | </span>.std.testing.expect(foo(b |
| 34aa0 | 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 72 | ytes).==.<span.class="tok-number |
| 34ac0 | 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 6c | ">0x11111111</span>);.}.<span.cl |
| 34ae0 | 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 |
| 34b00 | 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 5d | ss="tok-fn">foo</span>(bytes:.[] |
| 34b20 | 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> |
| 34b40 | 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 70 | ).<span.class="tok-type">u32</sp |
| 34b60 | 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 |
| 34b80 | 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 6e | onst</span>.slice4.=.bytes[<span |
| 34ba0 | 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 73 | .class="tok-number">1</span>..<s |
| 34bc0 | 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 5d | pan.class="tok-number">5</span>] |
| 34be0 | 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 74 | ;.....<span.class="tok-kw">const |
| 34c00 | 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 65 | </span>.int_slice.=.std.mem.byte |
| 34c20 | 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 3e | sAsSlice(<span.class="tok-type"> |
| 34c40 | 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 69 | u32</span>,.<span.class="tok-bui |
| 34c60 | 6c 74 69 6e 22 3e 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 | ltin">@as</span>([]<span.class=" |
| 34c80 | 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 |
| 34ca0 | 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 6e 20 63 6c | ="tok-number">4</span>).<span.cl |
| 34cc0 | 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 61 6e 20 | ass="tok-type">u8</span>,.<span. |
| 34ce0 | 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 2f | class="tok-builtin">@alignCast</ |
| 34d00 | 73 70 61 6e 3e 28 73 6c 69 63 65 34 29 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | span>(slice4)));.....<span.class |
| 34d20 | 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 6c 69 63 | ="tok-kw">return</span>.int_slic |
| 34d40 | 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 |
| 34d60 | 61 6e 3e 5d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 | an>];.}</code></pre></figure><fi |
| 34d80 | 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 | gure><figcaption.class="shell-ca |
| 34da0 | 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e | p">Shell</figcaption><pre><samp> |
| 34dc0 | 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 69 6e 63 6f 72 72 65 63 74 5f 70 | $.<kbd>zig.test.test_incorrect_p |
| 34de0 | 6f 69 6e 74 65 72 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 | ointer_alignment.zig</kbd>.1/1.t |
| 34e00 | 65 73 74 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f 69 6e 74 65 72 5f 61 6c 69 67 6e 6d 65 6e 74 2e | est_incorrect_pointer_alignment. |
| 34e20 | 74 65 73 74 2e 70 6f 69 6e 74 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 73 61 66 65 74 79 2e 2e 2e | test.pointer.alignment.safety... |
| 34e40 | 74 68 72 65 61 64 20 31 39 38 37 30 35 20 70 61 6e 69 63 3a 20 69 6e 63 6f 72 72 65 63 74 20 61 | thread.198705.panic:.incorrect.a |
| 34e60 | 6c 69 67 6e 6d 65 6e 74 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 | lignment.<span.class="sgr-1m">/h |
| 34e80 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 | ome/andy/dev/zig/doc/langref/tes |
| 34ea0 | 74 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f 69 6e 74 65 72 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a 69 | t_incorrect_pointer_alignment.zi |
| 34ec0 | 67 3a 31 30 3a 36 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | g:10:68</span>:.<span.class="sgr |
| 34ee0 | 2d 32 6d 22 3e 30 78 31 30 34 38 62 38 32 20 69 6e 20 66 6f 6f 20 28 74 65 73 74 29 3c 2f 73 70 | -2m">0x1048b82.in.foo.(test)</sp |
| 34f00 | 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 5f 73 6c 69 63 65 20 3d 20 73 74 64 2e 6d 65 | an>.....const.int_slice.=.std.me |
| 34f20 | 6d 2e 62 79 74 65 73 41 73 53 6c 69 63 65 28 75 33 32 2c 20 40 61 73 28 5b 5d 61 6c 69 67 6e 28 | m.bytesAsSlice(u32,.@as([]align( |
| 34f40 | 34 29 20 75 38 2c 20 40 61 6c 69 67 6e 43 61 73 74 28 73 6c 69 63 65 34 29 29 29 3b 0a 20 20 20 | 4).u8,.@alignCast(slice4)));.... |
| 34f60 | 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 | ................................ |
| 34f80 | 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 | ................................ |
| 34fa0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c | <span.class="sgr-32m">^</span>.< |
| 34fc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | span.class="sgr-1m">/home/andy/d |
| 34fe0 | 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 69 6e 63 6f 72 72 65 63 | ev/zig/doc/langref/test_incorrec |
| 35000 | 74 5f 70 6f 69 6e 74 65 72 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a 69 67 3a 36 3a 33 31 3c 2f 73 70 | t_pointer_alignment.zig:6:31</sp |
| 35020 | 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 38 | an>:.<span.class="sgr-2m">0x1048 |
| 35040 | 61 32 66 20 69 6e 20 74 65 73 74 2e 70 6f 69 6e 74 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 73 61 | a2f.in.test.pointer.alignment.sa |
| 35060 | 66 65 74 79 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 74 72 79 20 73 74 64 2e 74 | fety.(test)</span>.....try.std.t |
| 35080 | 65 73 74 69 6e 67 2e 65 78 70 65 63 74 28 66 6f 6f 28 62 79 74 65 73 29 20 3d 3d 20 30 78 31 31 | esting.expect(foo(bytes).==.0x11 |
| 350a0 | 31 31 31 31 31 31 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 | 111111);........................ |
| 350c0 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f | .......<span.class="sgr-32m">^</ |
| 350e0 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 | span>.<span.class="sgr-1m">/home |
| 35100 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f | /andy/dev/zig/lib/compiler/test_ |
| 35120 | 72 75 6e 6e 65 72 2e 7a 69 67 3a 32 31 34 3a 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | runner.zig:214:25</span>:.<span. |
| 35140 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 66 34 37 35 20 69 6e 20 6d 61 69 6e | class="sgr-2m">0x10ef475.in.main |
| 35160 | 54 65 72 6d 69 6e 61 6c 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 69 | Terminal.(test)</span>.........i |
| 35180 | 66 20 28 74 65 73 74 5f 66 6e 2e 66 75 6e 63 28 29 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 | f.(test_fn.func()).|_|.{........ |
| 351a0 | 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 73 67 | .................<span.class="sg |
| 351c0 | 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | r-32m">^</span>.<span.class="sgr |
| 351e0 | 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 | -1m">/home/andy/dev/zig/lib/comp |
| 35200 | 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 36 32 3a 32 38 3c 2f 73 70 61 6e | iler/test_runner.zig:62:28</span |
| 35220 | 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 37 38 35 | >:.<span.class="sgr-2m">0x10e785 |
| 35240 | 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 20 20 20 20 | d.in.main.(test)</span>......... |
| 35260 | 72 65 74 75 72 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 28 29 3b 0a 20 20 20 20 20 20 20 20 20 | return.mainTerminal();.......... |
| 35280 | 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 73 | ..................<span.class="s |
| 352a0 | 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | gr-32m">^</span>.<span.class="sg |
| 352c0 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 | r-1m">/home/andy/dev/zig/lib/std |
| 352e0 | 2f 73 74 61 72 74 2e 7a 69 67 3a 36 35 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | /start.zig:651:22</span>:.<span. |
| 35300 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 36 63 64 32 20 69 6e 20 70 6f 73 69 | class="sgr-2m">0x10e6cd2.in.posi |
| 35320 | 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>.. |
| 35340 | 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 20 20 | ...........root.main();......... |
| 35360 | 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 73 67 72 2d 33 32 | .............<span.class="sgr-32 |
| 35380 | 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 | m">^</span>.<span.class="sgr-1m" |
| 353a0 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 | >/home/andy/dev/zig/lib/std/star |
| 353c0 | 74 2e 7a 69 67 3a 32 37 31 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:271:5</span>:.<span.class= |
| 353e0 | 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 36 38 61 64 20 69 6e 20 5f 73 74 61 72 74 20 28 74 65 | "sgr-2m">0x10e68ad.in._start.(te |
| 35400 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 69 6c 65 20 28 73 77 69 | st)</span>.....asm.volatile.(swi |
| 35420 | 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | tch.(native_arch).{.....<span.cl |
| 35440 | 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | ass="sgr-32m">^</span>.<span.cla |
| 35460 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | ss="sgr-1m">???:?:?</span>:.<spa |
| 35480 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f | n.class="sgr-2m">0x0.in.???.(??? |
| 354a0 | 29 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 74 65 | )</span>.error:.the.following.te |
| 354c0 | 73 74 20 63 6f 6d 6d 61 6e 64 20 63 72 61 73 68 65 64 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | st.command.crashed:./home/andy/d |
| 354e0 | 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 63 37 34 63 36 66 63 30 35 61 34 61 | ev/zig/.zig-cache/o/c74c6fc05a4a |
| 35500 | 66 62 30 34 39 39 30 65 39 66 65 35 61 65 30 30 63 34 63 30 2f 74 65 73 74 20 2d 2d 73 65 65 64 | fb04990e9fe5ae00c4c0/test.--seed |
| 35520 | 3d 30 78 37 37 37 36 35 63 62 34 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | =0x77765cb4.</samp></pre></figur |
| 35540 | 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 61 6c 6c 6f 77 7a | e>................<h3.id="allowz |
| 35560 | 65 72 6f 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 6c 6c 6f 77 7a 65 72 6f 22 3e 61 6c | ero"><a.href="#toc-allowzero">al |
| 35580 | 6c 6f 77 7a 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 3d | lowzero</a>.<a.class="hdr".href= |
| 355a0 | 22 23 61 6c 6c 6f 77 7a 65 72 6f 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | "#allowzero">..</a></h3>........ |
| 355c0 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 70 6f 69 6e 74 65 72 20 61 74 74 72 69 62 75 74 65 | <p>.......This.pointer.attribute |
| 355e0 | 20 61 6c 6c 6f 77 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 68 61 76 65 20 61 64 64 72 65 73 | .allows.a.pointer.to.have.addres |
| 35600 | 73 20 7a 65 72 6f 2e 20 54 68 69 73 20 69 73 20 6f 6e 6c 79 20 65 76 65 72 20 6e 65 65 64 65 64 | s.zero..This.is.only.ever.needed |
| 35620 | 20 6f 6e 20 74 68 65 0a 20 20 20 20 20 20 66 72 65 65 73 74 61 6e 64 69 6e 67 20 4f 53 20 74 61 | .on.the.......freestanding.OS.ta |
| 35640 | 72 67 65 74 2c 20 77 68 65 72 65 20 74 68 65 20 61 64 64 72 65 73 73 20 7a 65 72 6f 20 69 73 20 | rget,.where.the.address.zero.is. |
| 35660 | 6d 61 70 70 61 62 6c 65 2e 20 49 66 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 72 65 70 72 65 73 65 | mappable..If.you.want.to.represe |
| 35680 | 6e 74 20 6e 75 6c 6c 20 70 6f 69 6e 74 65 72 73 2c 20 75 73 65 0a 20 20 20 20 20 20 3c 61 20 68 | nt.null.pointers,.use.......<a.h |
| 356a0 | 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 69 6f 6e 61 | ref="#Optional-Pointers">Optiona |
| 356c0 | 6c 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 69 6e 73 74 65 61 64 2e 20 3c 61 20 68 72 65 66 3d | l.Pointers</a>.instead..<a.href= |
| 356e0 | 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 |
| 35700 | 69 6e 74 65 72 73 3c 2f 61 3e 20 77 69 74 68 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | inters</a>.with.<code><span.clas |
| 35720 | 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 63 6f 64 | s="tok-kw">allowzero</span></cod |
| 35740 | 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 65 20 61 | e>.......are.not.the.same.size.a |
| 35760 | 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 70 6c 65 | s.pointers..In.this.code.example |
| 35780 | 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 74 20 68 | ,.if.the.pointer.......did.not.h |
| 357a0 | 61 76 65 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ave.the.<code><span.class="tok-k |
| 357c0 | 77 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 74 74 72 69 | w">allowzero</span></code>.attri |
| 357e0 | 62 75 74 65 2c 20 74 68 69 73 20 77 6f 75 6c 64 20 62 65 20 61 0a 20 20 20 20 20 20 3c 61 20 68 | bute,.this.would.be.a.......<a.h |
| 35800 | 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 2d 4e 75 6c 6c 22 | ref="#Pointer-Cast-Invalid-Null" |
| 35820 | 3e 50 6f 69 6e 74 65 72 20 43 61 73 74 20 49 6e 76 61 6c 69 64 20 4e 75 6c 6c 3c 2f 61 3e 20 70 | >Pointer.Cast.Invalid.Null</a>.p |
| 35840 | 61 6e 69 63 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | anic:.......</p>.......<figure>< |
| 35860 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 | figcaption.class="zig-cap"><cite |
| 35880 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 61 6c 6c 6f 77 7a 65 72 6f 2e 7a 69 67 | .class="file">test_allowzero.zig |
| 358a0 | 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | </cite></figcaption><pre><code>< |
| 358c0 | 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> |
| 358e0 | 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" |
| 35900 | 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 |
| 35920 | 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>);.< |
| 35940 | 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> |
| 35960 | 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;..< |
| 35980 | 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>. |
| 359a0 | 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 6c 6c 6f | <span.class="tok-str">"allo |
| 359c0 | 77 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 | wzero"</span>.{.....<span.c |
| 359e0 | 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 65 72 6f 3a 20 3c | lass="tok-kw">var</span>.zero:.< |
| 35a00 | 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 |
| 35a20 | 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< |
| 35a40 | 2f 73 70 61 6e 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 | /span>;.<span.class="tok-comment |
| 35a60 | 22 3e 2f 2f 20 76 61 72 20 74 6f 20 6d 61 6b 65 20 74 6f 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 | ">//.var.to.make.to.runtime-know |
| 35a80 | 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 7a 65 72 6f 3b 20 3c 73 70 61 | n</span>....._.=.&zero;.<spa |
| 35aa0 | 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 73 75 70 70 72 65 73 | n.class="tok-comment">//.suppres |
| 35ac0 | 73 20 27 76 61 72 20 69 73 20 6e 65 76 65 72 20 6d 75 74 61 74 65 64 27 20 65 72 72 6f 72 3c 2f | s.'var.is.never.mutated'.error</ |
| 35ae0 | 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 |
| 35b00 | 6f 6e 73 74 3c 2f 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 | onst</span>.ptr:.*<span.class="t |
| 35b20 | 6f 6b 2d 6b 77 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ok-kw">allowzero</span>.<span.cl |
| 35b40 | 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 |
| 35b60 | 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 46 72 6f 6d 49 6e | n.class="tok-builtin">@ptrFromIn |
| 35b80 | 74 3c 2f 73 70 61 6e 3e 28 7a 65 72 6f 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t</span>(zero);.....<span.class= |
| 35ba0 | 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 6e | "tok-kw">try</span>.expect(<span |
| 35bc0 | 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 46 72 6f 6d 50 74 72 | .class="tok-builtin">@intFromPtr |
| 35be0 | 3c 2f 73 70 61 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 | </span>(ptr).==.<span.class="tok |
| 35c00 | 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 64 65 3e 3c 2f 70 72 | -number">0</span>);.}</code></pr |
| 35c20 | 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 | e></figure><figure><figcaption.c |
| 35c40 | 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 | lass="shell-cap">Shell</figcapti |
| 35c60 | 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 | on><pre><samp>$.<kbd>zig.test.te |
| 35c80 | 73 74 5f 61 6c 6c 6f 77 7a 65 72 6f 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f | st_allowzero.zig</kbd>.1/1.test_ |
| 35ca0 | 61 6c 6c 6f 77 7a 65 72 6f 2e 74 65 73 74 2e 61 6c 6c 6f 77 7a 65 72 6f 2e 2e 2e 4f 4b 0a 41 6c | allowzero.test.allowzero...OK.Al |
| 35cc0 | 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c | l.1.tests.passed..</samp></pre>< |
| 35ce0 | 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 | /figure>................<h3.id=" |
| 35d00 | 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 3c 61 | Sentinel-Terminated-Pointers"><a |
| 35d20 | 20 68 72 65 66 3d 22 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 | .href="#toc-Sentinel-Terminated- |
| 35d40 | 50 6f 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 | Pointers">Sentinel-Terminated.Po |
| 35d60 | 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 66 3d 22 | inters</a>.<a.class="hdr".href=" |
| 35d80 | 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 c2 | #Sentinel-Terminated-Pointers">. |
| 35da0 | 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 54 68 65 20 | .</a></h3>........<p>.......The. |
| 35dc0 | 73 79 6e 74 61 78 20 3c 63 6f 64 65 3e 5b 2a 3a 78 5d 54 3c 2f 63 6f 64 65 3e 20 64 65 73 63 72 | syntax.<code>[*:x]T</code>.descr |
| 35de0 | 69 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 | ibes.a.pointer.that.......has.a. |
| 35e00 | 6c 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 | length.determined.by.a.sentinel. |
| 35e20 | 76 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 | value..This.provides.protection. |
| 35e40 | 20 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 | ......against.buffer.overflow.an |
| 35e60 | 64 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 66 | d.overreads........</p>.......<f |
| 35e80 | 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 | igure><figcaption.class="zig-cap |
| 35ea0 | 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 65 6e 74 69 6e 65 6c 2d 74 65 | "><cite.class="file">sentinel-te |
| 35ec0 | 72 6d 69 6e 61 74 65 64 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | rminated_pointer.zig</cite></fig |
| 35ee0 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | caption><pre><code><span.class=" |
| 35f00 | 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 |
| 35f20 | 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 |
| 35f40 | 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">" |
| 35f60 | 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 3d | std"</span>);..<span.class= |
| 35f80 | 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 61 6c 73 6f 20 61 76 | "tok-comment">//.This.is.also.av |
| 35fa0 | 61 69 6c 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 | ailable.as.`std.c.printf`.</span |
| 35fc0 | 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 6e | >.<span.class="tok-kw">pub</span |
| 35fe0 | 3e 20 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 3c 2f 73 | >.<span.class="tok-kw">extern</s |
| 36000 | 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">" |
| 36020 | 3b 63 26 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 | ;c"</span>.<span.class="tok |
| 36040 | 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- |
| 36060 | 66 6e 22 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 | fn">printf</span>(format:.[*:<sp |
| 36080 | 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 5d 3c | an.class="tok-number">0</span>]< |
| 360a0 | 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> |
| 360c0 | 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 |
| 360e0 | 3e 2c 20 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 | >,....).<span.class="tok-type">c |
| 36100 | 5f 69 6e 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 | _int</span>;..<span.class="tok-k |
| 36120 | 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 |
| 36140 | 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 |
| 36160 | 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 |
| 36180 | 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 6c 61 | -type">anyerror</span>!<span.cla |
| 361a0 | 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>.{..... |
| 361c0 | 5f 20 3d 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 | _.=.printf(<span.class="tok-str" |
| 361e0 | 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 |
| 36200 | 61 6e 3e 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 | an>);.<span.class="tok-comment"> |
| 36220 | 2f 2f 20 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 | //.OK</span>......<span.class="t |
| 36240 | 6f 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 | ok-kw">const</span>.msg.=.<span. |
| 36260 | 63 6c 61 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 | class="tok-str">"Hello,.wor |
| 36280 | 6c 64 21 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 | ld!\n"</span>;.....<span.cl |
| 362a0 | 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 6f 6e 5f 6e 75 | ass="tok-kw">const</span>.non_nu |
| 362c0 | 6c 6c 5f 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 | ll_terminated_msg:.[msg.len]<spa |
| 362e0 | 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 6d | n.class="tok-type">u8</span>.=.m |
| 36300 | 73 67 2e 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 | sg.*;....._.=.printf(&non_nu |
| 36320 | 6c 6c 5f 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 | ll_terminated_msg);.}</code></pr |
| 36340 | 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 | e></figure><figure><figcaption.c |
| 36360 | 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 | lass="shell-cap">Shell</figcapti |
| 36380 | 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 | on><pre><samp>$.<kbd>zig.build-e |
| 363a0 | 78 65 20 73 65 6e 74 69 6e 65 6c 2d 74 65 72 6d 69 6e 61 74 65 64 5f 70 6f 69 6e 74 65 72 2e 7a | xe.sentinel-terminated_pointer.z |
| 363c0 | 69 67 20 2d 6c 63 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d | ig.-lc</kbd>.<span.class="sgr-1m |
| 363e0 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 | ">/home/andy/dev/zig/doc/langref |
| 36400 | 2f 73 65 6e 74 69 6e 65 6c 2d 74 65 72 6d 69 6e 61 74 65 64 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 | /sentinel-terminated_pointer.zig |
| 36420 | 3a 31 31 3a 31 36 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | :11:16:.</span><span.class="sgr- |
| 36440 | 33 31 6d 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 | 31m">error:.</span><span.class=" |
| 36460 | 73 67 72 2d 31 6d 22 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 | sgr-1m">expected.type.'[*:0]cons |
| 36480 | 74 20 75 38 27 2c 20 66 6f 75 6e 64 20 27 2a 63 6f 6e 73 74 20 5b 31 34 5d 75 38 27 0a 3c 2f 73 | t.u8',.found.'*const.[14]u8'.</s |
| 364a0 | 70 61 6e 3e 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 | pan>...._.=.printf(&non_null |
| 364c0 | 5f 74 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 | _terminated_msg);............... |
| 364e0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e | .<span.class="sgr-32m">^~~~~~~~~ |
| 36500 | 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | ~~~~~~~~~~~~~~~.</span><span.cla |
| 36520 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 | ss="sgr-1m">/home/andy/dev/zig/d |
| 36540 | 6f 63 2f 6c 61 6e 67 72 65 66 2f 73 65 6e 74 69 6e 65 6c 2d 74 65 72 6d 69 6e 61 74 65 64 5f 70 | oc/langref/sentinel-terminated_p |
| 36560 | 6f 69 6e 74 65 72 2e 7a 69 67 3a 31 31 3a 31 36 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | ointer.zig:11:16:.</span><span.c |
| 36580 | 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | lass="sgr-36m">note:.</span><spa |
| 365a0 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 65 73 74 69 6e 61 74 69 6f 6e 20 70 6f 69 | n.class="sgr-1m">destination.poi |
| 365c0 | 6e 74 65 72 20 72 65 71 75 69 72 65 73 20 27 30 27 20 73 65 6e 74 69 6e 65 6c 0a 3c 2f 73 70 61 | nter.requires.'0'.sentinel.</spa |
| 365e0 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | n><span.class="sgr-1m">/home/and |
| 36600 | 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 73 65 6e 74 69 6e 65 6c 2d 74 | y/dev/zig/doc/langref/sentinel-t |
| 36620 | 65 72 6d 69 6e 61 74 65 64 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 3a 34 3a 33 34 3a 20 3c 2f 73 70 | erminated_pointer.zig:4:34:.</sp |
| 36640 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c | an><span.class="sgr-36m">note:.< |
| 36660 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 70 61 72 61 6d | /span><span.class="sgr-1m">param |
| 36680 | 65 74 65 72 20 74 79 70 65 20 64 65 63 6c 61 72 65 64 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 70 | eter.type.declared.here.</span>p |
| 366a0 | 75 62 20 65 78 74 65 72 6e 20 26 71 75 6f 74 3b 63 26 71 75 6f 74 3b 20 66 6e 20 70 72 69 6e 74 | ub.extern."c".fn.print |
| 366c0 | 66 28 66 6f 72 6d 61 74 3a 20 5b 2a 3a 30 5d 63 6f 6e 73 74 20 75 38 2c 20 2e 2e 2e 29 20 63 5f | f(format:.[*:0]const.u8,....).c_ |
| 366e0 | 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 20 20 20 20 20 20 | int;............................ |
| 36700 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e | ......<span.class="sgr-32m">^~~~ |
| 36720 | 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | ~~~~~~~~~.</span><span.class="sg |
| 36740 | 72 2d 32 6d 22 3e 72 65 66 65 72 65 6e 63 65 64 20 62 79 3a 0a 20 20 20 20 6d 61 69 6e 3a 20 2f | r-2m">referenced.by:.....main:./ |
| 36760 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e | home/andy/dev/zig/lib/std/start. |
| 36780 | 7a 69 67 3a 36 36 30 3a 33 37 0a 20 20 20 20 63 6f 6d 70 74 69 6d 65 3a 20 2f 68 6f 6d 65 2f 61 | zig:660:37.....comptime:./home/a |
| 367a0 | 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 35 38 | ndy/dev/zig/lib/std/start.zig:58 |
| 367c0 | 3a 33 30 0a 20 20 20 20 32 20 72 65 66 65 72 65 6e 63 65 28 73 29 20 68 69 64 64 65 6e 3b 20 75 | :30.....2.reference(s).hidden;.u |
| 367e0 | 73 65 20 27 2d 66 72 65 66 65 72 65 6e 63 65 2d 74 72 61 63 65 3d 34 27 20 74 6f 20 73 65 65 20 | se.'-freference-trace=4'.to.see. |
| 36800 | 61 6c 6c 20 72 65 66 65 72 65 6e 63 65 73 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f | all.references.</span>.</samp></ |
| 36820 | 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f | pre></figure>........<p>See.also |
| 36840 | 3a 3c 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 | :</p><ul>.<li><a.href="#Sentinel |
| 36860 | 2d 54 65 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 | -Terminated-Slices">Sentinel-Ter |
| 36880 | 6d 69 6e 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 | minated.Slices</a></li>.<li><a.h |
| 368a0 | 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 41 72 72 61 79 73 | ref="#Sentinel-Terminated-Arrays |
| 368c0 | 22 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 | ">Sentinel-Terminated.Arrays</a> |
| 368e0 | 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 20 20 | </li>.</ul>..................... |
| 36900 | 20 20 3c 68 32 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 | ..<h2.id="Slices"><a.href="#toc- |
| 36920 | 53 6c 69 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 | Slices">Slices</a>.<a.class="hdr |
| 36940 | 22 20 68 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | ".href="#Slices">..</a></h2>.... |
| 36960 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 73 6c 69 63 65 20 69 73 20 61 20 70 6f 69 6e 74 | ....<p>.......A.slice.is.a.point |
| 36980 | 65 72 20 61 6e 64 20 61 20 6c 65 6e 67 74 68 2e 20 54 68 65 20 64 69 66 66 65 72 65 6e 63 65 20 | er.and.a.length..The.difference. |
| 369a0 | 62 65 74 77 65 65 6e 20 61 6e 20 61 72 72 61 79 20 61 6e 64 0a 20 20 20 20 20 20 61 20 73 6c 69 | between.an.array.and.......a.sli |
| 369c0 | 63 65 20 69 73 20 74 68 61 74 20 74 68 65 20 61 72 72 61 79 27 73 20 6c 65 6e 67 74 68 20 69 73 | ce.is.that.the.array's.length.is |
| 369e0 | 20 70 61 72 74 20 6f 66 20 74 68 65 20 74 79 70 65 20 61 6e 64 20 6b 6e 6f 77 6e 20 61 74 0a 20 | .part.of.the.type.and.known.at.. |
| 36a00 | 20 20 20 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 77 68 65 72 65 61 73 20 74 68 65 20 73 | .....compile-time,.whereas.the.s |
| 36a20 | 6c 69 63 65 27 73 20 6c 65 6e 67 74 68 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 72 75 6e 74 69 6d | lice's.length.is.known.at.runtim |
| 36a40 | 65 2e 0a 20 20 20 20 20 20 42 6f 74 68 20 63 61 6e 20 62 65 20 61 63 63 65 73 73 65 64 20 77 69 | e........Both.can.be.accessed.wi |
| 36a60 | 74 68 20 74 68 65 20 3c 63 6f 64 65 3e 6c 65 6e 3c 2f 63 6f 64 65 3e 20 66 69 65 6c 64 2e 0a 20 | th.the.<code>len</code>.field... |
| 36a80 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | .....</p>.......<figure><figcapt |
| 36aa0 | 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d | ion.class="zig-cap"><cite.class= |
| 36ac0 | 22 66 69 6c 65 22 3e 74 65 73 74 5f 62 61 73 69 63 5f 73 6c 69 63 65 73 2e 7a 69 67 3c 2f 63 69 | "file">test_basic_slices.zig</ci |
| 36ae0 | 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e | te></figcaption><pre><code><span |
| 36b00 | 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 |
| 36b20 | 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 3e | ect.=.<span.class="tok-builtin"> |
| 36b40 | 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- |
| 36b60 | 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 73 | str">"std"</span>).tes |
| 36b80 | 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 6b 77 | ting.expect;.<span.class="tok-kw |
| 36ba0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 45 71 75 61 6c 53 6c 69 63 65 73 | ">const</span>.expectEqualSlices |
| 36bc0 | 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 |
| 36be0 | 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 |
| 36c00 | 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 |
| 36c20 | 67 2e 65 78 70 65 63 74 45 71 75 61 6c 53 6c 69 63 65 73 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | g.expectEqualSlices;..<span.clas |
| 36c40 | 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 |
| 36c60 | 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 73 6c 69 63 65 73 26 | ss="tok-str">"basic.slices& |
| 36c80 | 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=" |
| 36ca0 | 74 6f 6b 2d 6b 77 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 | tok-kw">var</span>.array.=.[_]<s |
| 36cc0 | 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>{ |
| 36ce0 | 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 |
| 36d00 | 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</ |
| 36d20 | 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"> |
| 36d40 | 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 |
| 36d60 | 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 3d 22 | r">4</span>.};.....<span.class=" |
| 36d80 | 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 5f 72 75 6e 74 | tok-kw">var</span>.known_at_runt |
| 36da0 | 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 74 79 70 65 22 | ime_zero:.<span.class="tok-type" |
| 36dc0 | 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 22 74 6f 6b | >usize</span>.=.<span.class="tok |
| 36de0 | 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b | -number">0</span>;....._.=.& |
| 36e00 | 6b 6e 6f 77 6e 5f 61 74 5f 72 75 6e 74 69 6d 65 5f 7a 65 72 6f 3b 0a 20 20 20 20 3c 73 70 61 6e | known_at_runtime_zero;.....<span |
| 36e20 | 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 69 | .class="tok-kw">const</span>.sli |
| 36e40 | 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 6f | ce.=.array[known_at_runtime_zero |
| 36e60 | 2e 2e 61 72 72 61 79 2e 6c 65 6e 5d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ..array.len];......<span.class=" |
| 36e80 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 6c 74 65 72 6e 61 74 69 76 65 20 69 6e 69 74 | tok-comment">//.alternative.init |
| 36ea0 | 69 61 6c 69 7a 61 74 69 6f 6e 20 75 73 69 6e 67 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e | ialization.using.result.location |
| 36ec0 | 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 22 | </span>.....<span.class="tok-kw" |
| 36ee0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 74 5f 73 6c 69 63 65 3a 20 5b 5d 3c 73 70 61 6e | >const</span>.alt_slice:.[]<span |
| 36f00 | 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 |
| 36f20 | 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>.= |
| 36f40 | 20 26 61 6d 70 3b 2e 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.class="tok-number |
| 36f60 | 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 |
| 36f80 | 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- |
| 36fa0 | 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 |
| 36fc0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 | ok-number">4</span>.};......<spa |
| 36fe0 | 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 |
| 37000 | 63 74 45 71 75 61 6c 53 6c 69 63 65 73 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ctEqualSlices(<span.class="tok-t |
| 37020 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 65 2c 20 61 6c 74 5f 73 6c 69 63 | ype">i32</span>,.slice,.alt_slic |
| 37040 | 65 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 | e);......<span.class="tok-kw">tr |
| 37060 | 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 |
| 37080 | 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 73 6c 69 63 65 29 20 | -builtin">@TypeOf</span>(slice). |
| 370a0 | 3d 3d 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 69 33 32 3c | ==.[]<span.class="tok-type">i32< |
| 370c0 | 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 |
| 370e0 | 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 6c 69 63 65 5b 3c | ">try</span>.expect(&slice[< |
| 37100 | 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> |
| 37120 | 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 73 3d 22 74 6f 6b | ].==.&array[<span.class="tok |
| 37140 | 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 73 70 61 6e 20 63 | -number">0</span>]);.....<span.c |
| 37160 | 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( |
| 37180 | 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 20 20 20 20 3c 73 | slice.len.==.array.len);......<s |
| 371a0 | 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 79 6f | pan.class="tok-comment">//.If.yo |
| 371c0 | 75 20 73 6c 69 63 65 20 77 69 74 68 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 73 74 61 72 | u.slice.with.comptime-known.star |
| 371e0 | 74 20 61 6e 64 20 65 6e 64 20 70 6f 73 69 74 69 6f 6e 73 2c 20 74 68 65 20 72 65 73 75 6c 74 20 | t.and.end.positions,.the.result. |
| 37200 | 69 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 | is</span>.....<span.class="tok-c |
| 37220 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 6e 20 61 72 72 61 79 | omment">//.a.pointer.to.an.array |
| 37240 | 2c 20 72 61 74 68 65 72 20 74 68 61 6e 20 61 20 73 6c 69 63 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 | ,.rather.than.a.slice.</span>... |
| 37260 | 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 |
| 37280 | 61 6e 3e 20 61 72 72 61 79 5f 70 74 72 20 3d 20 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 | an>.array_ptr.=.array[<span.clas |
| 372a0 | 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 61 72 72 61 79 2e 6c | s="tok-number">0</span>..array.l |
| 372c0 | 65 6e 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 74 72 | en];.....<span.class="tok-kw">tr |
| 372e0 | 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 |
| 37300 | 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 72 61 79 5f 70 | -builtin">@TypeOf</span>(array_p |
| 37320 | 74 72 29 20 3d 3d 20 2a 5b 61 72 72 61 79 2e 6c 65 6e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | tr).==.*[array.len]<span.class=" |
| 37340 | 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 3c 73 70 61 | tok-type">i32</span>);......<spa |
| 37360 | 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 6e | n.class="tok-comment">//.You.can |
| 37380 | 20 70 65 72 66 6f 72 6d 20 61 20 73 6c 69 63 65 2d 62 79 2d 6c 65 6e 67 74 68 20 62 79 20 73 6c | .perform.a.slice-by-length.by.sl |
| 373a0 | 69 63 69 6e 67 20 74 77 69 63 65 2e 20 54 68 69 73 20 61 6c 6c 6f 77 73 20 74 68 65 20 63 6f 6d | icing.twice..This.allows.the.com |
| 373c0 | 70 69 6c 65 72 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 | piler</span>.....<span.class="to |
| 373e0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 6f 20 70 65 72 66 6f 72 6d 20 73 6f 6d 65 20 6f 70 | k-comment">//.to.perform.some.op |
| 37400 | 74 69 6d 69 73 61 74 69 6f 6e 73 20 6c 69 6b 65 20 72 65 63 6f 67 6e 69 73 69 6e 67 20 61 20 63 | timisations.like.recognising.a.c |
| 37420 | 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 6c 65 6e 67 74 68 20 77 68 65 6e 3c 2f 73 70 61 6e 3e | omptime-known.length.when</span> |
| 37440 | 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">/ |
| 37460 | 2f 20 74 68 65 20 73 74 61 72 74 20 70 6f 73 69 74 69 6f 6e 20 69 73 20 6f 6e 6c 79 20 6b 6e 6f | /.the.start.position.is.only.kno |
| 37480 | 77 6e 20 61 74 20 72 75 6e 74 69 6d 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | wn.at.runtime.</span>.....<span. |
| 374a0 | 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 72 75 6e 74 69 6d | class="tok-kw">var</span>.runtim |
| 374c0 | 65 5f 73 74 61 72 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 | e_start:.<span.class="tok-type"> |
| 374e0 | 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 22 74 6f 6b 2d | usize</span>.=.<span.class="tok- |
| 37500 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 72 | number">1</span>;....._.=.&r |
| 37520 | 75 6e 74 69 6d 65 5f 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 | untime_start;.....<span.class="t |
| 37540 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 65 6e 67 74 68 20 3d 20 3c 73 70 | ok-kw">const</span>.length.=.<sp |
| 37560 | 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 3b 0a | an.class="tok-number">2</span>;. |
| 37580 | 20 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</ |
| 375a0 | 73 70 61 6e 3e 20 61 72 72 61 79 5f 70 74 72 5f 6c 65 6e 20 3d 20 61 72 72 61 79 5b 72 75 6e 74 | span>.array_ptr_len.=.array[runt |
| 375c0 | 69 6d 65 5f 73 74 61 72 74 2e 2e 5d 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ime_start..][<span.class="tok-nu |
| 375e0 | 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 6c 65 6e 67 74 68 5d 3b 0a 20 20 20 20 3c 73 70 | mber">0</span>..length];.....<sp |
| 37600 | 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 |
| 37620 | 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 |
| 37640 | 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 72 72 61 79 5f 70 74 72 5f 6c 65 6e 29 20 3d 3d 20 2a | ypeOf</span>(array_ptr_len).==.* |
| 37660 | 5b 6c 65 6e 67 74 68 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 | [length]<span.class="tok-type">i |
| 37680 | 33 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 74 6f | 32</span>);......<span.class="to |
| 376a0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 55 73 69 6e 67 20 74 68 65 20 61 64 64 72 65 73 73 2d | k-comment">//.Using.the.address- |
| 376c0 | 6f 66 20 6f 70 65 72 61 74 6f 72 20 6f 6e 20 61 20 73 6c 69 63 65 20 67 69 76 65 73 20 61 20 73 | of.operator.on.a.slice.gives.a.s |
| 376e0 | 69 6e 67 6c 65 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 | ingle-item.pointer.</span>.....< |
| 37700 | 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 |
| 37720 | 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"> |
| 37740 | 40 54 79 70 65 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 | @TypeOf</span>(&slice[<span. |
| 37760 | 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 20 3d 3d | class="tok-number">0</span>]).== |
| 37780 | 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 2f 73 70 | .*<span.class="tok-type">i32</sp |
| 377a0 | 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 6d 65 | an>);.....<span.class="tok-comme |
| 377c0 | 6e 74 22 3e 2f 2f 20 55 73 69 6e 67 20 74 68 65 20 60 70 74 72 60 20 66 69 65 6c 64 20 67 69 76 | nt">//.Using.the.`ptr`.field.giv |
| 377e0 | 65 73 20 61 20 6d 61 6e 79 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 2e 3c 2f 73 70 61 6e 3e 0a 20 | es.a.many-item.pointer.</span>.. |
| 37800 | 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 |
| 37820 | 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 |
| 37840 | 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 73 6c 69 63 65 2e 70 74 72 29 20 3d 3d | in">@TypeOf</span>(slice.ptr).== |
| 37860 | 20 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 69 33 32 3c 2f | .[*]<span.class="tok-type">i32</ |
| 37880 | 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" |
| 378a0 | 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=" |
| 378c0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 50 74 72 3c 2f 73 70 61 6e 3e 28 | tok-builtin">@intFromPtr</span>( |
| 378e0 | 73 6c 69 63 65 2e 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 62 | slice.ptr).==.<span.class="tok-b |
| 37900 | 75 69 6c 74 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 50 74 72 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b | uiltin">@intFromPtr</span>(& |
| 37920 | 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 30 | slice[<span.class="tok-number">0 |
| 37940 | 3c 2f 73 70 61 6e 3e 5d 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>]));......<span.class="to |
| 37960 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 6c 69 63 65 73 20 68 61 76 65 20 61 72 72 61 79 20 | k-comment">//.Slices.have.array. |
| 37980 | 62 6f 75 6e 64 73 20 63 68 65 63 6b 69 6e 67 2e 20 49 66 20 79 6f 75 20 74 72 79 20 74 6f 20 61 | bounds.checking..If.you.try.to.a |
| 379a0 | 63 63 65 73 73 20 73 6f 6d 65 74 68 69 6e 67 20 6f 75 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | ccess.something.out</span>.....< |
| 379c0 | 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 66 20 62 | span.class="tok-comment">//.of.b |
| 379e0 | 6f 75 6e 64 73 2c 20 79 6f 75 27 6c 6c 20 67 65 74 20 61 20 73 61 66 65 74 79 20 63 68 65 63 6b | ounds,.you'll.get.a.safety.check |
| 37a00 | 20 66 61 69 6c 75 72 65 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 6c 69 63 65 5b 3c 73 70 61 6e | .failure:</span>.....slice[<span |
| 37a20 | 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 20 2b | .class="tok-number">10</span>].+ |
| 37a40 | 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 |
| 37a60 | 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 63 6f 6d 6d 65 | an>;......<span.class="tok-comme |
| 37a80 | 6e 74 22 3e 2f 2f 20 4e 6f 74 65 20 74 68 61 74 20 60 73 6c 69 63 65 2e 70 74 72 60 20 64 6f 65 | nt">//.Note.that.`slice.ptr`.doe |
| 37aa0 | 73 20 6e 6f 74 20 69 6e 76 6f 6b 65 20 73 61 66 65 74 79 20 63 68 65 63 6b 69 6e 67 2c 20 77 68 | s.not.invoke.safety.checking,.wh |
| 37ac0 | 69 6c 65 20 60 26 61 6d 70 3b 73 6c 69 63 65 5b 30 5d 60 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | ile.`&slice[0]`</span>.....< |
| 37ae0 | 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 73 73 65 | span.class="tok-comment">//.asse |
| 37b00 | 72 74 73 20 74 68 61 74 20 74 68 65 20 73 6c 69 63 65 20 68 61 73 20 6c 65 6e 20 26 67 74 3b 20 | rts.that.the.slice.has.len.>. |
| 37b20 | 30 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 3d 22 74 6f 6b 2d | 0.</span>......<span.class="tok- |
| 37b40 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 6d 70 74 79 20 73 6c 69 63 65 73 20 63 61 6e 20 62 65 20 | comment">//.Empty.slices.can.be. |
| 37b60 | 63 72 65 61 74 65 64 20 6c 69 6b 65 20 74 68 69 73 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | created.like.this:</span>.....<s |
| 37b80 | 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>. |
| 37ba0 | 65 6d 70 74 79 31 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 | empty1.=.&[<span.class="tok- |
| 37bc0 | 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 73 3d 22 74 6f | number">0</span>]<span.class="to |
| 37be0 | 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 3c 73 70 61 6e 20 63 | k-type">u8</span>{};.....<span.c |
| 37c00 | 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 74 68 65 20 74 79 70 | lass="tok-comment">//.If.the.typ |
| 37c20 | 65 20 69 73 20 6b 6e 6f 77 6e 20 79 6f 75 20 63 61 6e 20 75 73 65 20 74 68 69 73 20 73 68 6f 72 | e.is.known.you.can.use.this.shor |
| 37c40 | 74 20 68 61 6e 64 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 | t.hand:</span>.....<span.class=" |
| 37c60 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 6d 70 74 79 32 3a 20 5b 5d 3c | tok-kw">const</span>.empty2:.[]< |
| 37c80 | 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>. |
| 37ca0 | 3d 20 26 61 6d 70 3b 2e 7b 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | =.&.{};.....<span.class="tok |
| 37cc0 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 65 6d 70 74 79 31 2e 6c 65 | -kw">try</span>.expect(empty1.le |
| 37ce0 | 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 3c | n.==.<span.class="tok-number">0< |
| 37d00 | 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 |
| 37d20 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 65 6d 70 74 79 32 2e 6c 65 6e 20 3d | ">try</span>.expect(empty2.len.= |
| 37d40 | 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 |
| 37d60 | 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 6d 6d | an>);......<span.class="tok-comm |
| 37d80 | 65 6e 74 22 3e 2f 2f 20 41 20 7a 65 72 6f 2d 6c 65 6e 67 74 68 20 69 6e 69 74 69 61 6c 69 7a 61 | ent">//.A.zero-length.initializa |
| 37da0 | 74 69 6f 6e 20 63 61 6e 20 61 6c 77 61 79 73 20 62 65 20 75 73 65 64 20 74 6f 20 63 72 65 61 74 | tion.can.always.be.used.to.creat |
| 37dc0 | 65 20 61 6e 20 65 6d 70 74 79 20 73 6c 69 63 65 2c 20 65 76 65 6e 20 69 66 20 74 68 65 20 73 6c | e.an.empty.slice,.even.if.the.sl |
| 37de0 | 69 63 65 20 69 73 20 6d 75 74 61 62 6c 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | ice.is.mutable.</span>.....<span |
| 37e00 | 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 69 73 20 | .class="tok-comment">//.This.is. |
| 37e20 | 62 65 63 61 75 73 65 20 74 68 65 20 70 6f 69 6e 74 65 64 2d 74 6f 20 64 61 74 61 20 69 73 20 7a | because.the.pointed-to.data.is.z |
| 37e40 | 65 72 6f 20 62 69 74 73 20 6c 6f 6e 67 2c 20 73 6f 20 69 74 73 20 69 6d 6d 75 74 61 62 69 6c 69 | ero.bits.long,.so.its.immutabili |
| 37e60 | 74 79 20 69 73 20 69 72 72 65 6c 65 76 61 6e 74 2e 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 | ty.is.irrelevant.</span>.}</code |
| 37e80 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | ></pre></figure><figure><figcapt |
| 37ea0 | 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 | ion.class="shell-cap">Shell</fig |
| 37ec0 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 | caption><pre><samp>$.<kbd>zig.te |
| 37ee0 | 73 74 20 74 65 73 74 5f 62 61 73 69 63 5f 73 6c 69 63 65 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 | st.test_basic_slices.zig</kbd>.1 |
| 37f00 | 2f 31 20 74 65 73 74 5f 62 61 73 69 63 5f 73 6c 69 63 65 73 2e 74 65 73 74 2e 62 61 73 69 63 20 | /1.test_basic_slices.test.basic. |
| 37f20 | 73 6c 69 63 65 73 2e 2e 2e 74 68 72 65 61 64 20 32 30 30 34 31 32 20 70 61 6e 69 63 3a 20 69 6e | slices...thread.200412.panic:.in |
| 37f40 | 64 65 78 20 6f 75 74 20 6f 66 20 62 6f 75 6e 64 73 3a 20 69 6e 64 65 78 20 31 30 2c 20 6c 65 6e | dex.out.of.bounds:.index.10,.len |
| 37f60 | 20 34 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e | .4.<span.class="sgr-1m">/home/an |
| 37f80 | 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 62 61 73 69 | dy/dev/zig/doc/langref/test_basi |
| 37fa0 | 63 5f 73 6c 69 63 65 73 2e 7a 69 67 3a 34 31 3a 31 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | c_slices.zig:41:10</span>:.<span |
| 37fc0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 62 35 31 31 20 69 6e 20 74 65 73 | .class="sgr-2m">0x104b511.in.tes |
| 37fe0 | 74 2e 62 61 73 69 63 20 73 6c 69 63 65 73 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | t.basic.slices.(test)</span>.... |
| 38000 | 20 73 6c 69 63 65 5b 31 30 5d 20 2b 3d 20 31 3b 0a 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | .slice[10].+=.1;..........<span. |
| 38020 | 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | class="sgr-32m">^</span>.<span.c |
| 38040 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 | lass="sgr-1m">/home/andy/dev/zig |
| 38060 | 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 32 31 | /lib/compiler/test_runner.zig:21 |
| 38080 | 34 3a 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d | 4:25</span>:.<span.class="sgr-2m |
| 380a0 | 22 3e 30 78 31 30 66 32 39 32 35 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 20 28 74 65 73 | ">0x10f2925.in.mainTerminal.(tes |
| 380c0 | 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 65 73 74 5f 66 6e 2e 66 75 | t)</span>.........if.(test_fn.fu |
| 380e0 | 6e 63 28 29 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | nc()).|_|.{..................... |
| 38100 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 | ....<span.class="sgr-32m">^</spa |
| 38120 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e | n>.<span.class="sgr-1m">/home/an |
| 38140 | 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e | dy/dev/zig/lib/compiler/test_run |
| 38160 | 6e 65 72 2e 7a 69 67 3a 36 32 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | ner.zig:62:28</span>:.<span.clas |
| 38180 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 61 64 30 64 20 69 6e 20 6d 61 69 6e 20 28 74 65 | s="sgr-2m">0x10ead0d.in.main.(te |
| 381a0 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 61 69 6e 54 65 | st)</span>.........return.mainTe |
| 381c0 | 72 6d 69 6e 61 6c 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 | rminal();....................... |
| 381e0 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 | .....<span.class="sgr-32m">^</sp |
| 38200 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 | an>.<span.class="sgr-1m">/home/a |
| 38220 | 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 35 | ndy/dev/zig/lib/std/start.zig:65 |
| 38240 | 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 73 67 72 2d 32 6d | 1:22</span>:.<span.class="sgr-2m |
| 38260 | 22 3e 30 78 31 30 65 61 31 38 32 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 | ">0x10ea182.in.posixCallMainAndE |
| 38280 | 78 69 74 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 | xit.(test)</span>.............ro |
| 382a0 | 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 20 20 | ot.main();...................... |
| 382c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c | <span.class="sgr-32m">^</span>.< |
| 382e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | span.class="sgr-1m">/home/andy/d |
| 38300 | 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f | ev/zig/lib/std/start.zig:271:5</ |
| 38320 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 | span>:.<span.class="sgr-2m">0x10 |
| 38340 | 65 39 64 35 64 20 69 6e 20 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 | e9d5d.in._start.(test)</span>... |
| 38360 | 20 20 61 73 6d 20 76 6f 6c 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 | ..asm.volatile.(switch.(native_a |
| 38380 | 72 63 68 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 | rch).{.....<span.class="sgr-32m" |
| 383a0 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f | >^</span>.<span.class="sgr-1m">? |
| 383c0 | 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | ??:?:?</span>:.<span.class="sgr- |
| 383e0 | 32 6d 22 3e 30 78 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 65 72 72 6f | 2m">0x0.in.???.(???)</span>.erro |
| 38400 | 72 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 | r:.the.following.test.command.cr |
| 38420 | 61 73 68 65 64 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 | ashed:./home/andy/dev/zig/.zig-c |
| 38440 | 61 63 68 65 2f 6f 2f 35 39 64 63 38 33 38 32 64 38 31 34 30 63 66 66 36 34 64 31 65 61 37 32 31 | ache/o/59dc8382d8140cff64d1ea721 |
| 38460 | 63 38 33 61 32 31 33 2f 74 65 73 74 20 2d 2d 73 65 65 64 3d 30 78 32 38 33 37 62 66 34 66 0a 3c | c83a213/test.--seed=0x2837bf4f.< |
| 38480 | 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | /samp></pre></figure>........<p> |
| 384a0 | 54 68 69 73 20 69 73 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 | This.is.one.reason.we.prefer.sli |
| 384c0 | 63 65 73 20 74 6f 20 70 6f 69 6e 74 65 72 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 | ces.to.pointers.</p>.......<figu |
| 384e0 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c | re><figcaption.class="zig-cap">< |
| 38500 | 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 6c 69 63 65 73 2e 7a 69 | cite.class="file">test_slices.zi |
| 38520 | 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e | g</cite></figcaption><pre><code> |
| 38540 | 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 |
| 38560 | 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 |
| 38580 | 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 |
| 385a0 | 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>);. |
| 385c0 | 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 |
| 385e0 | 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 3c | >.expect.=.std.testing.expect;.< |
| 38600 | 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> |
| 38620 | 20 6d 65 6d 20 3d 20 73 74 64 2e 6d 65 6d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .mem.=.std.mem;.<span.class="tok |
| 38640 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 6d 74 20 3d 20 73 74 64 2e 66 6d 74 3b | -kw">const</span>.fmt.=.std.fmt; |
| 38660 | 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 |
| 38680 | 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 75 | n>.<span.class="tok-str">"u |
| 386a0 | 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 3c 2f 73 | sing.slices.for.strings"</s |
| 386c0 | 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 |
| 386e0 | 65 6e 74 22 3e 2f 2f 20 5a 69 67 20 68 61 73 20 6e 6f 20 63 6f 6e 63 65 70 74 20 6f 66 20 73 74 | ent">//.Zig.has.no.concept.of.st |
| 38700 | 72 69 6e 67 73 2e 20 53 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 61 72 65 20 63 6f 6e 73 74 | rings..String.literals.are.const |
| 38720 | 20 70 6f 69 6e 74 65 72 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .pointers</span>.....<span.class |
| 38740 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 6f 20 6e 75 6c 6c 2d 74 65 72 6d 69 6e | ="tok-comment">//.to.null-termin |
| 38760 | 61 74 65 64 20 61 72 72 61 79 73 20 6f 66 20 75 38 2c 20 61 6e 64 20 62 79 20 63 6f 6e 76 65 6e | ated.arrays.of.u8,.and.by.conven |
| 38780 | 74 69 6f 6e 20 70 61 72 61 6d 65 74 65 72 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | tion.parameters</span>.....<span |
| 387a0 | 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 61 74 20 61 72 65 | .class="tok-comment">//.that.are |
| 387c0 | 20 26 71 75 6f 74 3b 73 74 72 69 6e 67 73 26 71 75 6f 74 3b 20 61 72 65 20 65 78 70 65 63 74 65 | ."strings".are.expecte |
| 387e0 | 64 20 74 6f 20 62 65 20 55 54 46 2d 38 20 65 6e 63 6f 64 65 64 20 73 6c 69 63 65 73 20 6f 66 20 | d.to.be.UTF-8.encoded.slices.of. |
| 38800 | 75 38 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 | u8.</span>.....<span.class="tok- |
| 38820 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 48 65 72 65 20 77 65 20 63 6f 65 72 63 65 20 2a 63 6f 6e 73 | comment">//.Here.we.coerce.*cons |
| 38840 | 74 20 5b 35 3a 30 5d 75 38 20 61 6e 64 20 2a 63 6f 6e 73 74 20 5b 36 3a 30 5d 75 38 20 74 6f 20 | t.[5:0]u8.and.*const.[6:0]u8.to. |
| 38860 | 5b 5d 63 6f 6e 73 74 20 75 38 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | []const.u8</span>.....<span.clas |
| 38880 | 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 6c 6c 6f 3a 20 5b | s="tok-kw">const</span>.hello:.[ |
| 388a0 | 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 |
| 388c0 | 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 |
| 388e0 | 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 |
| 38900 | 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. |
| 38920 | 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 77 6f 72 6c | class="tok-kw">const</span>.worl |
| 38940 | 64 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 74 3c | d:.[]<span.class="tok-kw">const< |
| 38960 | 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 |
| 38980 | 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"> |
| 389a0 | 26 71 75 6f 74 3b e4 b8 96 e7 95 8c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 | "......"</span>;...... |
| 389c0 | 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>. |
| 389e0 | 61 6c 6c 5f 74 6f 67 65 74 68 65 72 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | all_together:.[<span.class="tok- |
| 38a00 | 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 6c 61 73 73 3d 22 | number">100</span>]<span.class=" |
| 38a20 | 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 |
| 38a40 | 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>;.. |
| 38a60 | 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">//. |
| 38a80 | 59 6f 75 20 63 61 6e 20 75 73 65 20 73 6c 69 63 65 20 73 79 6e 74 61 78 20 77 69 74 68 20 61 74 | You.can.use.slice.syntax.with.at |
| 38aa0 | 20 6c 65 61 73 74 20 6f 6e 65 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 20 69 6e 64 65 78 20 6f | .least.one.runtime-known.index.o |
| 38ac0 | 6e 20 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 | n.an</span>.....<span.class="tok |
| 38ae0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 72 72 61 79 20 74 6f 20 63 6f 6e 76 65 72 74 20 61 6e | -comment">//.array.to.convert.an |
| 38b00 | 20 61 72 72 61 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 | .array.into.a.slice.</span>..... |
| 38b20 | 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>. |
| 38b40 | 73 74 61 72 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 | start:.<span.class="tok-type">us |
| 38b60 | 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 |
| 38b80 | 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 73 74 61 | mber">0</span>;....._.=.&sta |
| 38ba0 | 72 74 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 | rt;.....<span.class="tok-kw">con |
| 38bc0 | 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 6c 5f 74 6f 67 65 74 68 65 72 5f 73 6c 69 63 65 20 3d 20 61 | st</span>.all_together_slice.=.a |
| 38be0 | 6c 6c 5f 74 6f 67 65 74 68 65 72 5b 73 74 61 72 74 2e 2e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | ll_together[start..];.....<span. |
| 38c00 | 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 20 63 6f | class="tok-comment">//.String.co |
| 38c20 | 6e 63 61 74 65 6e 61 74 69 6f 6e 20 65 78 61 6d 70 6c 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | ncatenation.example.</span>..... |
| 38c40 | 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 |
| 38c60 | 3e 20 68 65 6c 6c 6f 5f 77 6f 72 6c 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >.hello_world.=.<span.class="tok |
| 38c80 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 66 6d 74 2e 62 75 66 50 72 69 6e 74 28 61 6c 6c | -kw">try</span>.fmt.bufPrint(all |
| 38ca0 | 5f 74 6f 67 65 74 68 65 72 5f 73 6c 69 63 65 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | _together_slice,.<span.class="to |
| 38cc0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 73 7d 20 7b 73 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | k-str">"{s}.{s}"</span |
| 38ce0 | 3e 2c 20 2e 7b 20 68 65 6c 6c 6f 2c 20 77 6f 72 6c 64 20 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 | >,..{.hello,.world.});......<spa |
| 38d00 | 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 47 65 6e 65 72 61 6c | n.class="tok-comment">//.General |
| 38d20 | 6c 79 2c 20 79 6f 75 20 63 61 6e 20 75 73 65 20 55 54 46 2d 38 20 61 6e 64 20 6e 6f 74 20 77 6f | ly,.you.can.use.UTF-8.and.not.wo |
| 38d40 | 72 72 79 20 61 62 6f 75 74 20 77 68 65 74 68 65 72 20 73 6f 6d 65 74 68 69 6e 67 20 69 73 20 61 | rry.about.whether.something.is.a |
| 38d60 | 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 |
| 38d80 | 6d 65 6e 74 22 3e 2f 2f 20 73 74 72 69 6e 67 2e 20 49 66 20 79 6f 75 20 64 6f 6e 27 74 20 6e 65 | ment">//.string..If.you.don't.ne |
| 38da0 | 65 64 20 74 6f 20 64 65 61 6c 20 77 69 74 68 20 69 6e 64 69 76 69 64 75 61 6c 20 63 68 61 72 61 | ed.to.deal.with.individual.chara |
| 38dc0 | 63 74 65 72 73 2c 20 6e 6f 20 6e 65 65 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | cters,.no.need</span>.....<span. |
| 38de0 | 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 64 65 63 6f 64 65 | class="tok-comment">//.to.decode |
| 38e00 | 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 |
| 38e20 | 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 61 | ">try</span>.expect(mem.eql(<spa |
| 38e40 | 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 68 65 | n.class="tok-type">u8</span>,.he |
| 38e60 | 6c 6c 6f 5f 77 6f 72 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 | llo_world,.<span.class="tok-str" |
| 38e80 | 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 20 e4 b8 96 e7 95 8c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | >"hello......."</span> |
| 38ea0 | 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 74 65 73 74 | ));.}..<span.class="tok-kw">test |
| 38ec0 | 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 |
| 38ee0 | 75 6f 74 3b 73 6c 69 63 65 20 70 6f 69 6e 74 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | uot;slice.pointer"</span>.{ |
| 38f00 | 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 |
| 38f20 | 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 |
| 38f40 | 6d 62 65 72 22 3e 31 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 | mber">10</span>]<span.class="tok |
| 38f60 | 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=" |
| 38f80 | 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 20 | tok-null">undefined</span>;..... |
| 38fa0 | 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 |
| 38fc0 | 3e 20 70 74 72 20 3d 20 26 61 6d 70 3b 61 72 72 61 79 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | >.ptr.=.&array;.....<span.cl |
| 38fe0 | 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(< |
| 39000 | 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 |
| 39020 | 3c 2f 73 70 61 6e 3e 28 70 74 72 29 20 3d 3d 20 2a 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>(ptr).==.*[<span.class="t |
| 39040 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-number">10</span>]<span.class |
| 39060 | 3d 22 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 | ="tok-type">u8</span>);......<sp |
| 39080 | 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 20 70 6f 69 6e | an.class="tok-comment">//.A.poin |
| 390a0 | 74 65 72 20 74 6f 20 61 6e 20 61 72 72 61 79 20 63 61 6e 20 62 65 20 73 6c 69 63 65 64 20 6a 75 | ter.to.an.array.can.be.sliced.ju |
| 390c0 | 73 74 20 6c 69 6b 65 20 61 6e 20 61 72 72 61 79 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | st.like.an.array:</span>.....<sp |
| 390e0 | 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 74 61 | an.class="tok-kw">var</span>.sta |
| 39100 | 72 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 | rt:.<span.class="tok-type">usize |
| 39120 | 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 |
| 39140 | 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 |
| 39160 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 65 6e 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | k-kw">var</span>.end:.<span.clas |
| 39180 | 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 |
| 391a0 | 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 0a 20 | n.class="tok-number">5</span>;.. |
| 391c0 | 20 20 20 5f 20 3d 20 2e 7b 20 26 61 6d 70 3b 73 74 61 72 74 2c 20 26 61 6d 70 3b 65 6e 64 20 7d | ..._.=..{.&start,.&end.} |
| 391e0 | 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 74 | ;.....<span.class="tok-kw">const |
| 39200 | 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 70 74 72 5b 73 74 61 72 74 2e 2e 65 6e 64 5d 3b | </span>.slice.=.ptr[start..end]; |
| 39220 | 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">/ |
| 39240 | 2f 20 54 68 65 20 73 6c 69 63 65 20 69 73 20 6d 75 74 61 62 6c 65 20 62 65 63 61 75 73 65 20 77 | /.The.slice.is.mutable.because.w |
| 39260 | 65 20 73 6c 69 63 65 64 20 61 20 6d 75 74 61 62 6c 65 20 70 6f 69 6e 74 65 72 2e 3c 2f 73 70 61 | e.sliced.a.mutable.pointer.</spa |
| 39280 | 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 79 3c | n>.....<span.class="tok-kw">try< |
| 392a0 | 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 |
| 392c0 | 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 73 6c 69 63 65 29 20 3d 3d | uiltin">@TypeOf</span>(slice).== |
| 392e0 | 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 |
| 39300 | 61 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 | an>);.....slice[<span.class="tok |
| 39320 | 2d 6e 75 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 | -number">2</span>].=.<span.class |
| 39340 | 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 |
| 39360 | 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 |
| 39380 | 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 |
| 393a0 | 22 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 | ">2</span>].==.<span.class="tok- |
| 393c0 | 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | number">3</span>);......<span.cl |
| 393e0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 67 61 69 6e 2c 20 73 6c 69 63 | ass="tok-comment">//.Again,.slic |
| 39400 | 69 6e 67 20 77 69 74 68 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 69 6e 64 65 78 65 73 20 | ing.with.comptime-known.indexes. |
| 39420 | 77 69 6c 6c 20 70 72 6f 64 75 63 65 20 61 6e 6f 74 68 65 72 20 70 6f 69 6e 74 65 72 3c 2f 73 70 | will.produce.another.pointer</sp |
| 39440 | 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 |
| 39460 | 22 3e 2f 2f 20 74 6f 20 61 6e 20 61 72 72 61 79 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | ">//.to.an.array:</span>.....<sp |
| 39480 | 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 |
| 394a0 | 74 72 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 75 6d | tr2.=.slice[<span.class="tok-num |
| 394c0 | 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 6b 2d | ber">2</span>..<span.class="tok- |
| 394e0 | 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 6c 61 | number">3</span>];.....<span.cla |
| 39500 | 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 70 74 | ss="tok-kw">try</span>.expect(pt |
| 39520 | 72 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 75 6d 62 65 | r2.len.==.<span.class="tok-numbe |
| 39540 | 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 73 3d 22 74 | r">1</span>);.....<span.class="t |
| 39560 | 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 32 5b 3c 73 | ok-kw">try</span>.expect(ptr2[<s |
| 39580 | 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 5d | pan.class="tok-number">0</span>] |
| 395a0 | 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 3c 2f | .==.<span.class="tok-number">3</ |
| 395c0 | 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" |
| 395e0 | 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=" |
| 39600 | 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 74 72 32 | tok-builtin">@TypeOf</span>(ptr2 |
| 39620 | 29 20 3d 3d 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 | ).==.*[<span.class="tok-number"> |
| 39640 | 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"> |
| 39660 | 75 38 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 2f 66 69 67 75 | u8</span>);.}</code></pre></figu |
| 39680 | 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 | re><figure><figcaption.class="sh |
| 396a0 | 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | ell-cap">Shell</figcaption><pre> |
| 396c0 | 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 73 6c 69 63 65 | <samp>$.<kbd>zig.test.test_slice |
| 396e0 | 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 73 6c 69 63 65 73 2e 74 65 73 74 | s.zig</kbd>.1/2.test_slices.test |
| 39700 | 2e 75 73 69 6e 67 20 73 6c 69 63 65 73 20 66 6f 72 20 73 74 72 69 6e 67 73 2e 2e 2e 4f 4b 0a 32 | .using.slices.for.strings...OK.2 |
| 39720 | 2f 32 20 74 65 73 74 5f 73 6c 69 63 65 73 2e 74 65 73 74 2e 73 6c 69 63 65 20 70 6f 69 6e 74 65 | /2.test_slices.test.slice.pointe |
| 39740 | 72 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d | r...OK.All.2.tests.passed..</sam |
| 39760 | 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 | p></pre></figure>........<p>See. |
| 39780 | 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 6f 69 6e | also:</p><ul>.<li><a.href="#Poin |
| 397a0 | 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 61 20 68 | ters">Pointers</a></li>.<li><a.h |
| 397c0 | 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 68 | ref="#for">for</a></li>.<li><a.h |
| 397e0 | 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 0a 3c 2f | ref="#Arrays">Arrays</a></li>.</ |
| 39800 | 75 6c 3e 0a 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 53 65 6e 74 69 6e 65 6c 2d 54 65 72 | ul>.........<h3.id="Sentinel-Ter |
| 39820 | 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 2d 53 65 | minated-Slices"><a.href="#toc-Se |
| 39840 | 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 74 69 6e | ntinel-Terminated-Slices">Sentin |
| 39860 | 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 6c 61 73 | el-Terminated.Slices</a>.<a.clas |
| 39880 | 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 6e 61 74 | s="hdr".href="#Sentinel-Terminat |
| 398a0 | 65 64 2d 53 6c 69 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 70 | ed-Slices">..</a></h3>........<p |
| 398c0 | 3e 0a 20 20 20 20 20 20 54 68 65 20 73 79 6e 74 61 78 20 3c 63 6f 64 65 3e 5b 3a 78 5d 54 3c 2f | >.......The.syntax.<code>[:x]T</ |
| 398e0 | 63 6f 64 65 3e 20 69 73 20 61 20 73 6c 69 63 65 20 77 68 69 63 68 20 68 61 73 20 61 20 72 75 6e | code>.is.a.slice.which.has.a.run |
| 39900 | 74 69 6d 65 2d 6b 6e 6f 77 6e 20 6c 65 6e 67 74 68 0a 20 20 20 20 20 20 61 6e 64 20 61 6c 73 6f | time-known.length.......and.also |
| 39920 | 20 67 75 61 72 61 6e 74 65 65 73 20 61 20 73 65 6e 74 69 6e 65 6c 20 76 61 6c 75 65 20 61 74 20 | .guarantees.a.sentinel.value.at. |
| 39940 | 74 68 65 20 65 6c 65 6d 65 6e 74 20 69 6e 64 65 78 65 64 20 62 79 20 74 68 65 20 6c 65 6e 67 74 | the.element.indexed.by.the.lengt |
| 39960 | 68 2e 20 54 68 65 20 74 79 70 65 20 64 6f 65 73 20 6e 6f 74 0a 20 20 20 20 20 20 67 75 61 72 61 | h..The.type.does.not.......guara |
| 39980 | 6e 74 65 65 20 74 68 61 74 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 73 65 6e 74 69 6e 65 6c 20 | ntee.that.there.are.no.sentinel. |
| 399a0 | 65 6c 65 6d 65 6e 74 73 20 62 65 66 6f 72 65 20 74 68 61 74 2e 20 53 65 6e 74 69 6e 65 6c 2d 74 | elements.before.that..Sentinel-t |
| 399c0 | 65 72 6d 69 6e 61 74 65 64 20 73 6c 69 63 65 73 20 61 6c 6c 6f 77 20 65 6c 65 6d 65 6e 74 0a 20 | erminated.slices.allow.element.. |
| 399e0 | 20 20 20 20 20 61 63 63 65 73 73 20 74 6f 20 74 68 65 20 3c 63 6f 64 65 3e 6c 65 6e 3c 2f 63 6f | .....access.to.the.<code>len</co |
| 39a00 | 64 65 3e 20 69 6e 64 65 78 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 | de>.index........</p>.......<fig |
| 39a20 | 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e | ure><figcaption.class="zig-cap"> |
| 39a40 | 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 6e 75 6c 6c 5f 74 65 72 | <cite.class="file">test_null_ter |
| 39a60 | 6d 69 6e 61 74 65 64 5f 73 6c 69 63 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | minated_slice.zig</cite></figcap |
| 39a80 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tion><pre><code><span.class="tok |
| 39aa0 | 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 |
| 39ac0 | 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> |
| 39ae0 | 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 |
| 39b00 | 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 |
| 39b20 | 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 |
| 39b40 | 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 |
| 39b60 | 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 |
| 39b80 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 30 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 6c 69 63 65 26 | k-str">"0-terminated.slice& |
| 39ba0 | 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=" |
| 39bc0 | 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 3a 20 5b 3a 3c 73 | tok-kw">const</span>.slice:.[:<s |
| 39be0 | 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 5d | pan.class="tok-number">0</span>] |
| 39c00 | 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 |
| 39c20 | 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 |
| 39c40 | 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">" |
| 39c60 | 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | ;hello"</span>;......<span. |
| 39c80 | 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 |
| 39ca0 | 28 73 6c 69 63 65 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 | (slice.len.==.<span.class="tok-n |
| 39cc0 | 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 63 6c 61 73 | umber">5</span>);.....<span.clas |
| 39ce0 | 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 |
| 39d00 | 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 35 3c 2f 73 | ce[<span.class="tok-number">5</s |
| 39d20 | 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 |
| 39d40 | 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 2f 66 69 67 | ">0</span>);.}</code></pre></fig |
| 39d60 | 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 | ure><figure><figcaption.class="s |
| 39d80 | 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | hell-cap">Shell</figcaption><pre |
| 39da0 | 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 6e 75 6c 6c | ><samp>$.<kbd>zig.test.test_null |
| 39dc0 | 5f 74 65 72 6d 69 6e 61 74 65 64 5f 73 6c 69 63 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 | _terminated_slice.zig</kbd>.1/1. |
| 39de0 | 74 65 73 74 5f 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 73 6c 69 63 65 2e 74 65 73 74 2e | test_null_terminated_slice.test. |
| 39e00 | 30 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 6c 69 63 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 | 0-terminated.slice...OK.All.1.te |
| 39e20 | 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | sts.passed..</samp></pre></figur |
| 39e40 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 65 6e 74 69 6e 65 6c 2d 74 65 72 | e>........<p>.......Sentinel-ter |
| 39e60 | 6d 69 6e 61 74 65 64 20 73 6c 69 63 65 73 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 63 72 65 61 74 | minated.slices.can.also.be.creat |
| 39e80 | 65 64 20 75 73 69 6e 67 20 61 20 76 61 72 69 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 73 6c 69 63 | ed.using.a.variation.of.the.slic |
| 39ea0 | 65 20 73 79 6e 74 61 78 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 64 61 74 61 5b 73 74 61 72 74 2e | e.syntax.......<code>data[start. |
| 39ec0 | 2e 65 6e 64 20 3a 78 5d 3c 2f 63 6f 64 65 3e 2c 20 77 68 65 72 65 20 3c 63 6f 64 65 3e 64 61 74 | .end.:x]</code>,.where.<code>dat |
| 39ee0 | 61 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 6d 61 6e 79 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 2c | a</code>.is.a.many-item.pointer, |
| 39f00 | 0a 20 20 20 20 20 20 61 72 72 61 79 20 6f 72 20 73 6c 69 63 65 20 61 6e 64 20 3c 63 6f 64 65 3e | .......array.or.slice.and.<code> |
| 39f20 | 78 3c 2f 63 6f 64 65 3e 20 69 73 20 74 68 65 20 73 65 6e 74 69 6e 65 6c 20 76 61 6c 75 65 2e 0a | x</code>.is.the.sentinel.value.. |
| 39f40 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | ......</p>.......<figure><figcap |
| 39f60 | 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 | tion.class="zig-cap"><cite.class |
| 39f80 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 73 6c 69 | ="file">test_null_terminated_sli |
| 39fa0 | 63 69 6e 67 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | cing.zig</cite></figcaption><pre |
| 39fc0 | 3e 3c 63 6f 64 65 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 | ><code><span.class="tok-kw">cons |
| 39fe0 | 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- |
| 3a000 | 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 |
| 3a020 | 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 |
| 3a040 | 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 |
| 3a060 | 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 |
| 3a080 | 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 |
| 3a0a0 | 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 |
| 3a0c0 | 75 6f 74 3b 30 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 6c 69 63 69 6e 67 26 71 75 6f 74 3b 3c 2f | uot;0-terminated.slicing"</ |
| 3a0e0 | 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" |
| 3a100 | 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 61 | >var</span>.array.=.[_]<span.cla |
| 3a120 | 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 63 | ss="tok-type">u8</span>{.<span.c |
| 3a140 | 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 73 70 61 | lass="tok-number">3</span>,.<spa |
| 3a160 | 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 3c | n.class="tok-number">2</span>,.< |
| 3a180 | 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> |
| 3a1a0 | 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 3c 2f 73 70 | ,.<span.class="tok-number">0</sp |
| 3a1c0 | 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 3c | an>,.<span.class="tok-number">3< |
| 3a1e0 | 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" |
| 3a200 | 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 6e 75 6d 62 | >2</span>,.<span.class="tok-numb |
| 3a220 | 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 22 74 6f 6b 2d 6e | er">1</span>,.<span.class="tok-n |
| 3a240 | 75 6d 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 | umber">0</span>.};.....<span.cla |
| 3a260 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 72 75 6e 74 69 6d 65 5f 6c | ss="tok-kw">var</span>.runtime_l |
| 3a280 | 65 6e 67 74 68 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 | ength:.<span.class="tok-type">us |
| 3a2a0 | 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 |
| 3a2c0 | 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 72 75 6e | mber">3</span>;....._.=.&run |
| 3a2e0 | 74 69 6d 65 5f 6c 65 6e 67 74 68 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | time_length;.....<span.class="to |
| 3a300 | 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 61 72 72 61 79 | k-kw">const</span>.slice.=.array |
| 3a320 | 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 |
| 3a340 | 6e 3e 2e 2e 72 75 6e 74 69 6d 65 5f 6c 65 6e 67 74 68 20 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | n>..runtime_length.:<span.class= |
| 3a360 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3b 0a 0a 20 20 20 20 3c 73 70 | "tok-number">0</span>];......<sp |
| 3a380 | 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 |
| 3a3a0 | 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 |
| 3a3c0 | 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 73 6c 69 63 65 29 20 3d 3d 20 5b 3a 3c 73 70 61 6e 20 63 | ypeOf</span>(slice).==.[:<span.c |
| 3a3e0 | 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 6e | lass="tok-number">0</span>]<span |
| 3a400 | 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 3b 0a 20 20 | .class="tok-type">u8</span>);... |
| 3a420 | 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 |
| 3a440 | 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 6e 20 63 6c 61 73 | >.expect(slice.len.==.<span.clas |
| 3a460 | 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 7d 3c 2f 63 6f 64 | s="tok-number">3</span>);.}</cod |
| 3a480 | 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | e></pre></figure><figure><figcap |
| 3a4a0 | 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 | tion.class="shell-cap">Shell</fi |
| 3a4c0 | 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 | gcaption><pre><samp>$.<kbd>zig.t |
| 3a4e0 | 65 73 74 20 74 65 73 74 5f 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 73 6c 69 63 69 6e 67 | est.test_null_terminated_slicing |
| 3a500 | 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 | .zig</kbd>.1/1.test_null_termina |
| 3a520 | 74 65 64 5f 73 6c 69 63 69 6e 67 2e 74 65 73 74 2e 30 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 6c | ted_slicing.test.0-terminated.sl |
| 3a540 | 69 63 69 6e 67 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c | icing...OK.All.1.tests.passed..< |
| 3a560 | 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | /samp></pre></figure>........<p> |
| 3a580 | 0a 20 20 20 20 20 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 69 | .......Sentinel-terminated.slici |
| 3a5a0 | 6e 67 20 61 73 73 65 72 74 73 20 74 68 61 74 20 74 68 65 20 65 6c 65 6d 65 6e 74 20 69 6e 20 74 | ng.asserts.that.the.element.in.t |
| 3a5c0 | 68 65 20 73 65 6e 74 69 6e 65 6c 20 70 6f 73 69 74 69 6f 6e 20 6f 66 20 74 68 65 20 62 61 63 6b | he.sentinel.position.of.the.back |
| 3a5e0 | 69 6e 67 20 64 61 74 61 20 69 73 0a 20 20 20 20 20 20 61 63 74 75 61 6c 6c 79 20 74 68 65 20 73 | ing.data.is.......actually.the.s |
| 3a600 | 65 6e 74 69 6e 65 6c 20 76 61 6c 75 65 2e 20 49 66 20 74 68 69 73 20 69 73 20 6e 6f 74 20 74 68 | entinel.value..If.this.is.not.th |
| 3a620 | 65 20 63 61 73 65 2c 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 | e.case,.safety-checked.<a.href=" |
| 3a640 | 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 | #Illegal-Behavior">Illegal.Behav |
| 3a660 | 69 6f 72 3c 2f 61 3e 20 72 65 73 75 6c 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ior</a>.results........</p>..... |
| 3a680 | 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 | ..<figure><figcaption.class="zig |
| 3a6a0 | 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 65 | -cap"><cite.class="file">test_se |
| 3a6c0 | 6e 74 69 6e 65 6c 5f 6d 69 73 6d 61 74 63 68 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 | ntinel_mismatch.zig</cite></figc |
| 3a6e0 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | aption><pre><code><span.class="t |
| 3a700 | 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. |
| 3a720 | 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 |
| 3a740 | 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 |
| 3a760 | 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 |
| 3a780 | 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 |
| 3a7a0 | 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 |
| 3a7c0 | 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=" |
| 3a7e0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 65 6e 74 69 6e 65 6c 20 6d 69 73 6d 61 74 63 68 | tok-str">"sentinel.mismatch |
| 3a800 | 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= |
| 3a820 | 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 20 3d 20 5b 5f 5d 3c | "tok-kw">var</span>.array.=.[_]< |
| 3a840 | 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 7b | span.class="tok-type">u8</span>{ |
| 3a860 | 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 |
| 3a880 | 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</ |
| 3a8a0 | 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"> |
| 3a8c0 | 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 62 65 | 1</span>,.<span.class="tok-numbe |
| 3a8e0 | 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 61 73 73 3d | r">0</span>.};......<span.class= |
| 3a900 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 43 72 65 61 74 69 6e 67 20 61 20 73 65 6e 74 | "tok-comment">//.Creating.a.sent |
| 3a920 | 69 6e 65 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 6c 69 63 65 20 66 72 6f 6d 20 74 68 65 20 61 | inel-terminated.slice.from.the.a |
| 3a940 | 72 72 61 79 20 77 69 74 68 20 61 20 6c 65 6e 67 74 68 20 6f 66 20 32 3c 2f 73 70 61 6e 3e 0a 20 | rray.with.a.length.of.2</span>.. |
| 3a960 | 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">//. |
| 3a980 | 77 69 6c 6c 20 72 65 73 75 6c 74 20 69 6e 20 74 68 65 20 76 61 6c 75 65 20 60 31 60 20 6f 63 63 | will.result.in.the.value.`1`.occ |
| 3a9a0 | 75 70 79 69 6e 67 20 74 68 65 20 73 65 6e 74 69 6e 65 6c 20 65 6c 65 6d 65 6e 74 20 70 6f 73 69 | upying.the.sentinel.element.posi |
| 3a9c0 | 74 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 3d 22 74 6f | tion.</span>.....<span.class="to |
| 3a9e0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 64 6f 65 73 20 6e 6f 74 20 6d 61 74 63 | k-comment">//.This.does.not.matc |
| 3aa00 | 68 20 74 68 65 20 69 6e 64 69 63 61 74 65 64 20 73 65 6e 74 69 6e 65 6c 20 76 61 6c 75 65 20 6f | h.the.indicated.sentinel.value.o |
| 3aa20 | 66 20 60 30 60 20 61 6e 64 20 77 69 6c 6c 20 6c 65 61 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | f.`0`.and.will.lead</span>.....< |
| 3aa40 | 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 61 | span.class="tok-comment">//.to.a |
| 3aa60 | 20 72 75 6e 74 69 6d 65 20 70 61 6e 69 63 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | .runtime.panic.</span>.....<span |
| 3aa80 | 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 72 75 6e 74 69 | .class="tok-kw">var</span>.runti |
| 3aaa0 | 6d 65 5f 6c 65 6e 67 74 68 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | me_length:.<span.class="tok-type |
| 3aac0 | 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 22 74 6f | ">usize</span>.=.<span.class="to |
| 3aae0 | 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 | k-number">2</span>;....._.=.& |
| 3ab00 | 3b 72 75 6e 74 69 6d 65 5f 6c 65 6e 67 74 68 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ;runtime_length;.....<span.class |
| 3ab20 | 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 61 | ="tok-kw">const</span>.slice.=.a |
| 3ab40 | 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 30 3c | rray[<span.class="tok-number">0< |
| 3ab60 | 2f 73 70 61 6e 3e 2e 2e 72 75 6e 74 69 6d 65 5f 6c 65 6e 67 74 68 20 3a 3c 73 70 61 6e 20 63 6c | /span>..runtime_length.:<span.cl |
| 3ab80 | 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 3b 0a 0a 20 20 20 | ass="tok-number">0</span>];..... |
| 3aba0 | 20 5f 20 3d 20 73 6c 69 63 65 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | ._.=.slice;.}</code></pre></figu |
| 3abc0 | 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 | re><figure><figcaption.class="sh |
| 3abe0 | 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | ell-cap">Shell</figcaption><pre> |
| 3ac00 | 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 73 65 6e 74 69 | <samp>$.<kbd>zig.test.test_senti |
| 3ac20 | 6e 65 6c 5f 6d 69 73 6d 61 74 63 68 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f | nel_mismatch.zig</kbd>.1/1.test_ |
| 3ac40 | 73 65 6e 74 69 6e 65 6c 5f 6d 69 73 6d 61 74 63 68 2e 74 65 73 74 2e 73 65 6e 74 69 6e 65 6c 20 | sentinel_mismatch.test.sentinel. |
| 3ac60 | 6d 69 73 6d 61 74 63 68 2e 2e 2e 74 68 72 65 61 64 20 32 30 31 31 37 34 20 70 61 6e 69 63 3a 20 | mismatch...thread.201174.panic:. |
| 3ac80 | 73 65 6e 74 69 6e 65 6c 20 6d 69 73 6d 61 74 63 68 3a 20 65 78 70 65 63 74 65 64 20 30 2c 20 66 | sentinel.mismatch:.expected.0,.f |
| 3aca0 | 6f 75 6e 64 20 31 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d | ound.1.<span.class="sgr-1m">/hom |
| 3acc0 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f | e/andy/dev/zig/doc/langref/test_ |
| 3ace0 | 73 65 6e 74 69 6e 65 6c 5f 6d 69 73 6d 61 74 63 68 2e 7a 69 67 3a 31 33 3a 32 34 3c 2f 73 70 61 | sentinel_mismatch.zig:13:24</spa |
| 3ad00 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 38 61 | n>:.<span.class="sgr-2m">0x1048a |
| 3ad20 | 37 31 20 69 6e 20 74 65 73 74 2e 73 65 6e 74 69 6e 65 6c 20 6d 69 73 6d 61 74 63 68 20 28 74 65 | 71.in.test.sentinel.mismatch.(te |
| 3ad40 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 73 6c 69 63 65 20 3d 20 61 72 72 | st)</span>.....const.slice.=.arr |
| 3ad60 | 61 79 5b 30 2e 2e 72 75 6e 74 69 6d 65 5f 6c 65 6e 67 74 68 20 3a 30 5d 3b 0a 20 20 20 20 20 20 | ay[0..runtime_length.:0];....... |
| 3ad80 | 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 73 67 | .................<span.class="sg |
| 3ada0 | 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | r-32m">^</span>.<span.class="sgr |
| 3adc0 | 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 | -1m">/home/andy/dev/zig/lib/comp |
| 3ade0 | 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 32 31 34 3a 32 35 3c 2f 73 70 61 | iler/test_runner.zig:214:25</spa |
| 3ae00 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 66 31 | n>:.<span.class="sgr-2m">0x10ef1 |
| 3ae20 | 64 35 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | d5.in.mainTerminal.(test)</span> |
| 3ae40 | 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 65 73 74 5f 66 6e 2e 66 75 6e 63 28 29 29 20 7c 5f 7c | .........if.(test_fn.func()).|_| |
| 3ae60 | 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 3c 73 70 61 6e | .{.........................<span |
| 3ae80 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | .class="sgr-32m">^</span>.<span. |
| 3aea0 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | class="sgr-1m">/home/andy/dev/zi |
| 3aec0 | 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 36 | g/lib/compiler/test_runner.zig:6 |
| 3aee0 | 32 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d | 2:28</span>:.<span.class="sgr-2m |
| 3af00 | 22 3e 30 78 31 30 65 37 35 62 64 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e | ">0x10e75bd.in.main.(test)</span |
| 3af20 | 3e 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 28 29 3b | >.........return.mainTerminal(); |
| 3af40 | 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 3c 73 70 61 | ............................<spa |
| 3af60 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | n.class="sgr-32m">^</span>.<span |
| 3af80 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a | .class="sgr-1m">/home/andy/dev/z |
| 3afa0 | 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 35 31 3a 32 32 3c 2f 73 70 61 | ig/lib/std/start.zig:651:22</spa |
| 3afc0 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 36 61 | n>:.<span.class="sgr-2m">0x10e6a |
| 3afe0 | 33 32 20 69 6e 20 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 | 32.in.posixCallMainAndExit.(test |
| 3b000 | 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 29 | )</span>.............root.main() |
| 3b020 | 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 61 | ;......................<span.cla |
| 3b040 | 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | ss="sgr-32m">^</span>.<span.clas |
| 3b060 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 | s="sgr-1m">/home/andy/dev/zig/li |
| 3b080 | 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | b/std/start.zig:271:5</span>:.<s |
| 3b0a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 36 36 30 64 20 69 6e 20 | pan.class="sgr-2m">0x10e660d.in. |
| 3b0c0 | 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 61 73 6d 20 76 6f 6c | _start.(test)</span>.....asm.vol |
| 3b0e0 | 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 | atile.(switch.(native_arch).{... |
| 3b100 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e | ..<span.class="sgr-32m">^</span> |
| 3b120 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 | .<span.class="sgr-1m">???:?:?</s |
| 3b140 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 | pan>:.<span.class="sgr-2m">0x0.i |
| 3b160 | 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 65 72 72 6f 72 3a 20 74 68 65 20 66 6f | n.???.(???)</span>.error:.the.fo |
| 3b180 | 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 65 64 3a 0a 2f 68 | llowing.test.command.crashed:./h |
| 3b1a0 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 33 61 | ome/andy/dev/zig/.zig-cache/o/3a |
| 3b1c0 | 65 31 63 37 66 33 65 37 63 39 66 64 39 64 30 33 35 32 30 66 38 35 38 36 39 64 62 61 35 34 2f 74 | e1c7f3e7c9fd9d03520f85869dba54/t |
| 3b1e0 | 65 73 74 20 2d 2d 73 65 65 64 3d 30 78 63 61 62 35 64 37 32 64 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 | est.--seed=0xcab5d72d.</samp></p |
| 3b200 | 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a | re></figure>........<p>See.also: |
| 3b220 | 3c 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 | </p><ul>.<li><a.href="#Sentinel- |
| 3b240 | 54 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 | Terminated-Pointers">Sentinel-Te |
| 3b260 | 72 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 | rminated.Pointers</a></li>.<li>< |
| 3b280 | 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 41 72 72 | a.href="#Sentinel-Terminated-Arr |
| 3b2a0 | 61 79 73 22 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 | ays">Sentinel-Terminated.Arrays< |
| 3b2c0 | 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 0a 0a 20 | /a></li>.</ul>.................. |
| 3b2e0 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 74 72 75 63 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | .....<h2.id="struct"><a.href="#t |
| 3b300 | 6f 63 2d 73 74 72 75 63 74 22 3e 73 74 72 75 63 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | oc-struct">struct</a>.<a.class=" |
| 3b320 | 68 64 72 22 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | hdr".href="#struct">..</a></h2>. |
| 3b340 | 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | .......<figure><figcaption.class |
| 3b360 | 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 | ="zig-cap"><cite.class="file">te |
| 3b380 | 73 74 5f 73 74 72 75 63 74 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | st_structs.zig</cite></figcaptio |
| 3b3a0 | 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | n><pre><code><span.class="tok-co |
| 3b3c0 | 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 73 70 61 | mment">//.Declare.a.struct.</spa |
| 3b3e0 | 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">//. |
| 3b400 | 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 20 74 68 | Zig.gives.no.guarantees.about.th |
| 3b420 | 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 65 20 6f | e.order.of.fields.and.the.size.o |
| 3b440 | 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 6d 65 6e | f</span>.<span.class="tok-commen |
| 3b460 | 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 64 73 20 | t">//.the.struct.but.the.fields. |
| 3b480 | 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 6e 65 64 | are.guaranteed.to.be.ABI-aligned |
| 3b4a0 | 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 6f | .</span>.<span.class="tok-kw">co |
| 3b4c0 | 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 3d 22 | nst</span>.Point.=.<span.class=" |
| 3b4e0 | 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 20 3c | tok-kw">struct</span>.{.....x:.< |
| 3b500 | 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 3e | span.class="tok-type">f32</span> |
| 3b520 | 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 22 3e | ,.....y:.<span.class="tok-type"> |
| 3b540 | 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 74 6f 6b | f32</span>,.};..<span.class="tok |
| 3b560 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 44 65 63 6c 61 72 65 20 61 6e 20 69 6e 73 74 61 6e 63 65 | -comment">//.Declare.an.instance |
| 3b580 | 20 6f 66 20 61 20 73 74 72 75 63 74 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | .of.a.struct.</span>.<span.class |
| 3b5a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 3a 20 50 6f 69 6e 74 20 | ="tok-kw">const</span>.p:.Point. |
| 3b5c0 | 3d 20 2e 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 | =..{......x.=.<span.class="tok-n |
| 3b5e0 | 75 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 | umber">0.12</span>,......y.=.<sp |
| 3b600 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 33 34 3c 2f 73 70 61 6e | an.class="tok-number">0.34</span |
| 3b620 | 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 74 22 | >,.};..<span.class="tok-comment" |
| 3b640 | 3e 2f 2f 20 46 75 6e 63 74 69 6f 6e 73 20 69 6e 20 74 68 65 20 73 74 72 75 63 74 27 73 20 6e 61 | >//.Functions.in.the.struct's.na |
| 3b660 | 6d 65 73 70 61 63 65 20 63 61 6e 20 62 65 20 63 61 6c 6c 65 64 20 77 69 74 68 20 64 6f 74 20 73 | mespace.can.be.called.with.dot.s |
| 3b680 | 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 22 74 6f 6b 2d 6b | yntax.</span>.<span.class="tok-k |
| 3b6a0 | 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 61 6e 20 63 6c 61 | w">const</span>.Vec3.=.<span.cla |
| 3b6c0 | 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>.{..... |
| 3b6e0 | 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 33 32 3c 2f 73 | x:.<span.class="tok-type">f32</s |
| 3b700 | 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 74 6f 6b 2d 74 79 | pan>,.....y:.<span.class="tok-ty |
| 3b720 | 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 61 6e 20 63 6c 61 | pe">f32</span>,.....z:.<span.cla |
| 3b740 | 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 0a 20 20 20 20 3c | ss="tok-type">f32</span>,......< |
| 3b760 | 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>.< |
| 3b780 | 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 |
| 3b7a0 | 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 70 61 6e 3e 28 78 | pan.class="tok-fn">init</span>(x |
| 3b7c0 | 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 |
| 3b7e0 | 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 66 | an>,.y:.<span.class="tok-type">f |
| 3b800 | 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 22 74 6f 6b 2d 74 | 32</span>,.z:.<span.class="tok-t |
| 3b820 | 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 20 20 20 20 20 20 | ype">f32</span>).Vec3.{......... |
| 3b840 | 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 |
| 3b860 | 6e 3e 20 56 65 63 33 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 78 20 3d 20 78 2c 0a 20 20 20 | n>.Vec3{..............x.=.x,.... |
| 3b880 | 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 20 20 20 20 2e 7a 20 | ..........y.=.y,..............z. |
| 3b8a0 | 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 20 20 3c 73 70 61 6e | =.z,.........};.....}......<span |
| 3b8c0 | 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 6e | .class="tok-kw">pub</span>.<span |
| 3b8e0 | 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. |
| 3b900 | 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 28 73 65 6c 66 3a 20 | class="tok-fn">dot</span>(self:. |
| 3b920 | 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 63 6c 61 73 73 3d 22 | Vec3,.other:.Vec3).<span.class=" |
| 3b940 | 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 20 20 20 20 20 20 3c | tok-type">f32</span>.{.........< |
| 3b960 | 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 |
| 3b980 | 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 2e 79 20 2a 20 6f 74 | >.self.x.*.other.x.+.self.y.*.ot |
| 3b9a0 | 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 0a 20 20 20 20 7d 0a | her.y.+.self.z.*.other.z;.....}. |
| 3b9c0 | 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 |
| 3b9e0 | 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">" |
| 3ba00 | 3b 64 6f 74 20 70 72 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 | ;dot.product"</span>.{..... |
| 3ba20 | 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 |
| 3ba40 | 3e 20 76 31 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 | >.v1.=.Vec3.init(<span.class="to |
| 3ba60 | 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 6c 61 73 | k-number">1.0</span>,.<span.clas |
| 3ba80 | 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 6e | s="tok-number">0.0</span>,.<span |
| 3baa0 | 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 29 3b | .class="tok-number">0.0</span>); |
| 3bac0 | 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< |
| 3bae0 | 2f 73 70 61 6e 3e 20 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 | /span>.v2.=.Vec3.init(<span.clas |
| 3bb00 | 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 6e | s="tok-number">0.0</span>,.<span |
| 3bb20 | 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 20 | .class="tok-number">1.0</span>,. |
| 3bb40 | 3c 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 70 | <span.class="tok-number">0.0</sp |
| 3bb60 | 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 |
| 3bb80 | 72 79 3c 2f 73 70 61 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 | ry</span>.expect(v1.dot(v2).==.< |
| 3bba0 | 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 70 61 | span.class="tok-number">0.0</spa |
| 3bbc0 | 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 6d 6d 65 | n>);......<span.class="tok-comme |
| 3bbe0 | 6e 74 22 3e 2f 2f 20 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 | nt">//.Other.than.being.availabl |
| 3bc00 | 65 20 74 6f 20 63 61 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 | e.to.call.with.dot.syntax,.struc |
| 3bc20 | 74 20 6d 65 74 68 6f 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 | t.methods.are</span>.....<span.c |
| 3bc40 | 6c 61 73 73 3d 22 74 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 | lass="tok-comment">//.not.specia |
| 3bc60 | 6c 2e 20 59 6f 75 20 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 | l..You.can.reference.them.as.any |
| 3bc80 | 20 6f 74 68 65 72 20 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 | .other.declaration.inside</span> |
| 3bca0 | 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">/ |
| 3bcc0 | 2f 20 74 68 65 20 73 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 | /.the.struct:</span>.....<span.c |
| 3bce0 | 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( |
| 3bd00 | 56 65 63 33 2e 64 6f 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 | Vec3.dot(v1,.v2).==.<span.class= |
| 3bd20 | 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 7d 0a 0a 3c 73 70 | "tok-number">0.0</span>);.}..<sp |
| 3bd40 | 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 75 63 74 | an.class="tok-comment">//.Struct |
| 3bd60 | 73 20 63 61 6e 20 68 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 | s.can.have.declarations.</span>. |
| 3bd80 | 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 74 72 | <span.class="tok-comment">//.Str |
| 3bda0 | 75 63 74 73 20 63 61 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 | ucts.can.have.0.fields.</span>.< |
| 3bdc0 | 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> |
| 3bde0 | 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 3e 73 74 | .Empty.=.<span.class="tok-kw">st |
| 3be00 | 72 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 | ruct</span>.{.....<span.class="t |
| 3be20 | 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 |
| 3be40 | 6f 6b 2d 6b 77 22 3e 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 | ok-kw">const</span>.PI.=.<span.c |
| 3be60 | 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 3b 0a 7d | lass="tok-number">3.14</span>;.} |
| 3be80 | 3b 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 |
| 3bea0 | 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 73 | n>.<span.class="tok-str">"s |
| 3bec0 | 74 72 75 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 3c | truct.namespaced.variable"< |
| 3bee0 | 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 |
| 3bf00 | 22 3e 74 72 79 3c 2f 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 | ">try</span>.expect(Empty.PI.==. |
| 3bf20 | 3c 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 31 34 3c 2f 73 | <span.class="tok-number">3.14</s |
| 3bf40 | 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"> |
| 3bf60 | 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 74 | try</span>.expect(<span.class="t |
| 3bf80 | 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 45 6d 70 74 79 | ok-builtin">@sizeOf</span>(Empty |
| 3bfa0 | 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 30 3c | ).==.<span.class="tok-number">0< |
| 3bfc0 | 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 |
| 3bfe0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 6d 70 74 79 20 73 74 72 75 63 74 73 20 63 61 6e 20 62 65 20 | omment">//.Empty.structs.can.be. |
| 3c000 | 69 6e 73 74 61 6e 74 69 61 74 65 64 20 74 68 65 20 73 61 6d 65 20 61 73 20 75 73 75 61 6c 2e 3c | instantiated.the.same.as.usual.< |
| 3c020 | 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"> |
| 3c040 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 6f 65 73 5f 6e 6f 74 68 69 6e 67 3a 20 45 6d 70 74 79 | const</span>.does_nothing:.Empty |
| 3c060 | 20 3d 20 2e 7b 7d 3b 0a 0a 20 20 20 20 5f 20 3d 20 64 6f 65 73 5f 6e 6f 74 68 69 6e 67 3b 0a 7d | .=..{};......_.=.does_nothing;.} |
| 3c080 | 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 53 | ..<span.class="tok-comment">//.S |
| 3c0a0 | 74 72 75 63 74 20 66 69 65 6c 64 20 6f 72 64 65 72 20 69 73 20 64 65 74 65 72 6d 69 6e 65 64 20 | truct.field.order.is.determined. |
| 3c0c0 | 62 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 2c 20 68 6f 77 65 76 65 72 2c 20 61 20 62 61 73 65 | by.the.compiler,.however,.a.base |
| 3c0e0 | 20 70 6f 69 6e 74 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 | .pointer</span>.<span.class="tok |
| 3c100 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 61 6e 20 62 65 20 63 6f 6d 70 75 74 65 64 20 66 72 6f | -comment">//.can.be.computed.fro |
| 3c120 | 6d 20 61 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 | m.a.field.pointer:</span>.<span. |
| 3c140 | 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 |
| 3c160 | 6c 61 73 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 | lass="tok-fn">setYBasedOnX</span |
| 3c180 | 3e 28 78 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 | >(x:.*<span.class="tok-type">f32 |
| 3c1a0 | 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 79 70 | </span>,.y:.<span.class="tok-typ |
| 3c1c0 | 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 6f 6b 2d | e">f32</span>).<span.class="tok- |
| 3c1e0 | 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 |
| 3c200 | 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 6f 69 6e 74 3a | ass="tok-kw">const</span>.point: |
| 3c220 | 20 2a 50 6f 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 | .*Point.=.<span.class="tok-built |
| 3c240 | 69 6e 22 3e 40 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | in">@fieldParentPtr</span>(<span |
| 3c260 | 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 2f | .class="tok-str">"x"</ |
| 3c280 | 73 70 61 6e 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 | span>,.x);.....point.y.=.y;.}.<s |
| 3c2a0 | 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>.< |
| 3c2c0 | 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 65 6c 64 | span.class="tok-str">"field |
| 3c2e0 | 20 70 61 72 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 | .parent.pointer"</span>.{.. |
| 3c300 | 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 |
| 3c320 | 6e 3e 20 70 6f 69 6e 74 20 3d 20 50 6f 69 6e 74 7b 0a 20 20 20 20 20 20 20 20 2e 78 20 3d 20 3c | n>.point.=.Point{..........x.=.< |
| 3c340 | 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 32 33 34 3c 2f | span.class="tok-number">0.1234</ |
| 3c360 | 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 63 6c 61 73 73 3d | span>,..........y.=.<span.class= |
| 3c380 | 22 74 6f 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 | "tok-number">0.5678</span>,..... |
| 3c3a0 | 7d 3b 0a 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 | };.....setYBasedOnX(&point.x |
| 3c3c0 | 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 2e 39 3c 2f | ,.<span.class="tok-number">0.9</ |
| 3c3e0 | 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" |
| 3c400 | 3e 74 72 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 | >try</span>.expect(point.y.==.<s |
| 3c420 | 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 6e | pan.class="tok-number">0.9</span |
| 3c440 | 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 74 22 | >);.}..<span.class="tok-comment" |
| 3c460 | 3e 2f 2f 20 53 74 72 75 63 74 73 20 63 61 6e 20 62 65 20 72 65 74 75 72 6e 65 64 20 66 72 6f 6d | >//.Structs.can.be.returned.from |
| 3c480 | 20 66 75 6e 63 74 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 | .functions.</span>.<span.class=" |
| 3c4a0 | 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 |
| 3c4c0 | 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 70 61 6e 20 63 | ok-fn">LinkedList</span>(<span.c |
| 3c4e0 | 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: |
| 3c500 | 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 |
| 3c520 | 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 65 | an>).<span.class="tok-type">type |
| 3c540 | 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 |
| 3c560 | 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 |
| 3c580 | 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 3c 73 | k-kw">struct</span>.{.........<s |
| 3c5a0 | 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 |
| 3c5c0 | 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>. |
| 3c5e0 | 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 3e 73 74 72 75 | Node.=.<span.class="tok-kw">stru |
| 3c600 | 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 76 3a 20 3f 2a | ct</span>.{.............prev:.?* |
| 3c620 | 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 6f 64 65 2c 0a | Node,.............next:.?*Node,. |
| 3c640 | 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 20 20 7d 3b 0a | ............data:.T,.........};. |
| 3c660 | 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 20 20 20 20 20 | .........first:.?*Node,......... |
| 3c680 | 6c 61 73 74 3a 20 3f 2a 4e 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 6c 65 6e 3a 20 3c 73 70 61 6e | last:.?*Node,.........len:.<span |
| 3c6a0 | 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 2c 0a | .class="tok-type">usize</span>,. |
| 3c6c0 | 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 6b 77 22 3e 74 | ....};.}..<span.class="tok-kw">t |
| 3c6e0 | 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" |
| 3c700 | 3e 26 71 75 6f 74 3b 6c 69 6e 6b 65 64 20 6c 69 73 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | >"linked.list"</span>. |
| 3c720 | 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 74 22 3e | {.....<span.class="tok-comment"> |
| 3c740 | 2f 2f 20 46 75 6e 63 74 69 6f 6e 73 20 63 61 6c 6c 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 | //.Functions.called.at.compile-t |
| 3c760 | 69 6d 65 20 61 72 65 20 6d 65 6d 6f 69 7a 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | ime.are.memoized.</span>.....<sp |
| 3c780 | 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 |
| 3c7a0 | 65 63 74 28 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 | ect(LinkedList(<span.class="tok- |
| 3c7c0 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 4c 69 6e 6b 65 64 4c 69 73 74 28 | type">i32</span>).==.LinkedList( |
| 3c7e0 | 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 |
| 3c800 | 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 63 | >));......<span.class="tok-kw">c |
| 3c820 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 73 74 20 3d 20 4c 69 6e 6b 65 64 4c 69 73 74 28 3c 73 | onst</span>.list.=.LinkedList(<s |
| 3c840 | 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 29 | pan.class="tok-type">i32</span>) |
| 3c860 | 7b 0a 20 20 20 20 20 20 20 20 2e 66 69 72 73 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | {..........first.=.<span.class=" |
| 3c880 | 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>,.......... |
| 3c8a0 | 6c 61 73 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 | last.=.<span.class="tok-null">nu |
| 3c8c0 | 6c 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 6c 65 6e 20 3d 20 3c 73 70 61 6e 20 | ll</span>,..........len.=.<span. |
| 3c8e0 | 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>,.... |
| 3c900 | 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 |
| 3c920 | 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6c 69 73 74 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e | </span>.expect(list.len.==.<span |
| 3c940 | 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 0a | .class="tok-number">0</span>);.. |
| 3c960 | 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">// |
| 3c980 | 20 53 69 6e 63 65 20 74 79 70 65 73 20 61 72 65 20 66 69 72 73 74 20 63 6c 61 73 73 20 76 61 6c | .Since.types.are.first.class.val |
| 3c9a0 | 75 65 73 20 79 6f 75 20 63 61 6e 20 69 6e 73 74 61 6e 74 69 61 74 65 20 74 68 65 20 74 79 70 65 | ues.you.can.instantiate.the.type |
| 3c9c0 | 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 |
| 3c9e0 | 6d 65 6e 74 22 3e 2f 2f 20 62 79 20 61 73 73 69 67 6e 69 6e 67 20 69 74 20 74 6f 20 61 20 76 61 | ment">//.by.assigning.it.to.a.va |
| 3ca00 | 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 73 3d 22 | riable:</span>.....<span.class=" |
| 3ca20 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4c 69 73 74 4f 66 49 6e 74 73 20 | tok-kw">const</span>.ListOfInts. |
| 3ca40 | 3d 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 | =.LinkedList(<span.class="tok-ty |
| 3ca60 | 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 6c 61 73 73 | pe">i32</span>);.....<span.class |
| 3ca80 | 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 4c 69 73 74 | ="tok-kw">try</span>.expect(List |
| 3caa0 | 4f 66 49 6e 74 73 20 3d 3d 20 4c 69 6e 6b 65 64 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | OfInts.==.LinkedList(<span.class |
| 3cac0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 29 3b 0a 0a 20 20 20 20 3c | ="tok-type">i32</span>));......< |
| 3cae0 | 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 |
| 3cb00 | 6f 64 65 20 3d 20 4c 69 73 74 4f 66 49 6e 74 73 2e 4e 6f 64 65 7b 0a 20 20 20 20 20 20 20 20 2e | ode.=.ListOfInts.Node{.......... |
| 3cb20 | 70 72 65 76 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 | prev.=.<span.class="tok-null">nu |
| 3cb40 | 6c 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 6e 65 78 74 20 3d 20 3c 73 70 61 6e | ll</span>,..........next.=.<span |
| 3cb60 | 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 2c 0a 20 | .class="tok-null">null</span>,.. |
| 3cb80 | 20 20 20 20 20 20 20 2e 64 61 74 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ........data.=.<span.class="tok- |
| 3cba0 | 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 | number">1234</span>,.....};..... |
| 3cbc0 | 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 |
| 3cbe0 | 3e 20 6c 69 73 74 32 20 3d 20 4c 69 6e 6b 65 64 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | >.list2.=.LinkedList(<span.class |
| 3cc00 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 7b 0a 20 20 20 20 20 20 20 | ="tok-type">i32</span>){........ |
| 3cc20 | 20 2e 66 69 72 73 74 20 3d 20 26 61 6d 70 3b 6e 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 2e 6c 61 | ..first.=.&node,..........la |
| 3cc40 | 73 74 20 3d 20 26 61 6d 70 3b 6e 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 2e 6c 65 6e 20 3d 20 3c | st.=.&node,..........len.=.< |
| 3cc60 | 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> |
| 3cc80 | 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 63 | ,.....};......<span.class="tok-c |
| 3cca0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 57 68 65 6e 20 75 73 69 6e 67 20 61 20 70 6f 69 6e 74 65 72 20 | omment">//.When.using.a.pointer. |
| 3ccc0 | 74 6f 20 61 20 73 74 72 75 63 74 2c 20 66 69 65 6c 64 73 20 63 61 6e 20 62 65 20 61 63 63 65 73 | to.a.struct,.fields.can.be.acces |
| 3cce0 | 73 65 64 20 64 69 72 65 63 74 6c 79 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | sed.directly,</span>.....<span.c |
| 3cd00 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 77 69 74 68 6f 75 74 20 65 78 | lass="tok-comment">//.without.ex |
| 3cd20 | 70 6c 69 63 69 74 6c 79 20 64 65 72 65 66 65 72 65 6e 63 69 6e 67 20 74 68 65 20 70 6f 69 6e 74 | plicitly.dereferencing.the.point |
| 3cd40 | 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 6b 2d | er.</span>.....<span.class="tok- |
| 3cd60 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 6f 20 79 6f 75 20 63 61 6e 20 64 6f 3c 2f 73 70 61 6e 3e | comment">//.So.you.can.do</span> |
| 3cd80 | 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 |
| 3cda0 | 70 61 6e 3e 20 65 78 70 65 63 74 28 6c 69 73 74 32 2e 66 69 72 73 74 2e 3f 2e 64 61 74 61 20 3d | pan>.expect(list2.first.?.data.= |
| 3cdc0 | 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 34 3c | =.<span.class="tok-number">1234< |
| 3cde0 | 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 63 6f | /span>);.....<span.class="tok-co |
| 3ce00 | 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6e 73 74 65 61 64 20 6f 66 20 74 72 79 20 65 78 70 65 63 74 28 | mment">//.instead.of.try.expect( |
| 3ce20 | 6c 69 73 74 32 2e 66 69 72 73 74 2e 3f 2e 2a 2e 64 61 74 61 20 3d 3d 20 31 32 33 34 29 3b 3c 2f | list2.first.?.*.data.==.1234);</ |
| 3ce40 | 73 70 61 6e 3e 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 63 6f | span>.}..<span.class="tok-kw">co |
| 3ce60 | 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= |
| 3ce80 | 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 |
| 3cea0 | 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 |
| 3cec0 | 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 3c 2f 63 6f 64 65 | t;</span>).testing.expect;</code |
| 3cee0 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | ></pre></figure><figure><figcapt |
| 3cf00 | 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 | ion.class="shell-cap">Shell</fig |
| 3cf20 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 | caption><pre><samp>$.<kbd>zig.te |
| 3cf40 | 73 74 20 74 65 73 74 5f 73 74 72 75 63 74 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 34 20 74 65 | st.test_structs.zig</kbd>.1/4.te |
| 3cf60 | 73 74 5f 73 74 72 75 63 74 73 2e 74 65 73 74 2e 64 6f 74 20 70 72 6f 64 75 63 74 2e 2e 2e 4f 4b | st_structs.test.dot.product...OK |
| 3cf80 | 0a 32 2f 34 20 74 65 73 74 5f 73 74 72 75 63 74 73 2e 74 65 73 74 2e 73 74 72 75 63 74 20 6e 61 | .2/4.test_structs.test.struct.na |
| 3cfa0 | 6d 65 73 70 61 63 65 64 20 76 61 72 69 61 62 6c 65 2e 2e 2e 4f 4b 0a 33 2f 34 20 74 65 73 74 5f | mespaced.variable...OK.3/4.test_ |
| 3cfc0 | 73 74 72 75 63 74 73 2e 74 65 73 74 2e 66 69 65 6c 64 20 70 61 72 65 6e 74 20 70 6f 69 6e 74 65 | structs.test.field.parent.pointe |
| 3cfe0 | 72 2e 2e 2e 4f 4b 0a 34 2f 34 20 74 65 73 74 5f 73 74 72 75 63 74 73 2e 74 65 73 74 2e 6c 69 6e | r...OK.4/4.test_structs.test.lin |
| 3d000 | 6b 65 64 20 6c 69 73 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 34 20 74 65 73 74 73 20 70 61 73 73 65 64 | ked.list...OK.All.4.tests.passed |
| 3d020 | 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 0a 20 20 20 20 20 | ..</samp></pre></figure>........ |
| 3d040 | 20 3c 68 33 20 69 64 3d 22 44 65 66 61 75 6c 74 2d 46 69 65 6c 64 2d 56 61 6c 75 65 73 22 3e 3c | .<h3.id="Default-Field-Values">< |
| 3d060 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 65 66 61 75 6c 74 2d 46 69 65 6c 64 2d 56 61 6c 75 65 | a.href="#toc-Default-Field-Value |
| 3d080 | 73 22 3e 44 65 66 61 75 6c 74 20 46 69 65 6c 64 20 56 61 6c 75 65 73 3c 2f 61 3e 20 3c 61 20 63 | s">Default.Field.Values</a>.<a.c |
| 3d0a0 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 46 69 65 6c 64 2d | lass="hdr".href="#Default-Field- |
| 3d0c0 | 56 61 6c 75 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 | Values">..</a></h3>........<p>.. |
| 3d0e0 | 20 20 20 20 20 45 61 63 68 20 73 74 72 75 63 74 20 66 69 65 6c 64 20 6d 61 79 20 68 61 76 65 20 | .....Each.struct.field.may.have. |
| 3d100 | 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 69 6e 64 69 63 61 74 69 6e 67 20 74 68 65 20 64 65 66 | an.expression.indicating.the.def |
| 3d120 | 61 75 6c 74 20 66 69 65 6c 64 0a 20 20 20 20 20 20 76 61 6c 75 65 2e 20 53 75 63 68 20 65 78 70 | ault.field.......value..Such.exp |
| 3d140 | 72 65 73 73 69 6f 6e 73 20 61 72 65 20 65 78 65 63 75 74 65 64 20 61 74 20 3c 61 20 68 72 65 66 | ressions.are.executed.at.<a.href |
| 3d160 | 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 20 61 6e 64 20 61 | ="#comptime">comptime</a>,.and.a |
| 3d180 | 6c 6c 6f 77 20 74 68 65 0a 20 20 20 20 20 20 66 69 65 6c 64 20 74 6f 20 62 65 20 6f 6d 69 74 74 | llow.the.......field.to.be.omitt |
| 3d1a0 | 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 72 65 73 73 69 6f | ed.in.a.struct.literal.expressio |
| 3d1c0 | 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 | n:.......</p>.......<figure><fig |
| 3d1e0 | 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c | caption.class="zig-cap"><cite.cl |
| 3d200 | 61 73 73 3d 22 66 69 6c 65 22 3e 73 74 72 75 63 74 5f 64 65 66 61 75 6c 74 5f 66 69 65 6c 64 5f | ass="file">struct_default_field_ |
| 3d220 | 76 61 6c 75 65 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | values.zig</cite></figcaption><p |
| 3d240 | 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | re><code><span.class="tok-kw">co |
| 3d260 | 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 3d 22 74 6f | nst</span>.Foo.=.<span.class="to |
| 3d280 | 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 20 3c 73 70 | k-kw">struct</span>.{.....a:.<sp |
| 3d2a0 | 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>.= |
| 3d2c0 | 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</ |
| 3d2e0 | 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 |
| 3d300 | 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 6c 61 73 73 | ype">i32</span>,.};..<span.class |
| 3d320 | 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 |
| 3d340 | 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 72 75 63 74 | s="tok-str">"default.struct |
| 3d360 | 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 3c 2f 73 70 | .initialization.fields"</sp |
| 3d380 | 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 |
| 3d3a0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 46 6f 6f 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 | onst</span>.x:.Foo.=..{......... |
| 3d3c0 | 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 3c | .b.=.<span.class="tok-number">5< |
| 3d3e0 | 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=" |
| 3d400 | 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 20 | tok-kw">if</span>.(x.a.+.x.b.!=. |
| 3d420 | 3c 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 73 | <span.class="tok-number">1239</s |
| 3d440 | 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 6b | pan>).{.........<span.class="tok |
| 3d460 | 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 |
| 3d480 | 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 0a 20 20 | ="tok-kw">unreachable</span>;... |
| 3d4a0 | 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 | ..}.}</code></pre></figure><figu |
| 3d4c0 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 | re><figcaption.class="shell-cap" |
| 3d4e0 | 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 | >Shell</figcaption><pre><samp>$. |
| 3d500 | 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 73 74 72 75 63 74 5f 64 65 66 61 75 6c 74 5f 66 69 65 | <kbd>zig.test.struct_default_fie |
| 3d520 | 6c 64 5f 76 61 6c 75 65 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 73 74 72 75 63 74 5f 64 | ld_values.zig</kbd>.1/1.struct_d |
| 3d540 | 65 66 61 75 6c 74 5f 66 69 65 6c 64 5f 76 61 6c 75 65 73 2e 74 65 73 74 2e 64 65 66 61 75 6c 74 | efault_field_values.test.default |
| 3d560 | 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 2e 2e 2e | .struct.initialization.fields... |
| 3d580 | 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f | OK.All.1.tests.passed..</samp></ |
| 3d5a0 | 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 46 61 75 | pre></figure>........<h4.id="Fau |
| 3d5c0 | 6c 74 79 2d 44 65 66 61 75 6c 74 2d 46 69 65 6c 64 2d 56 61 6c 75 65 73 22 3e 3c 61 20 68 72 65 | lty-Default-Field-Values"><a.hre |
| 3d5e0 | 66 3d 22 23 74 6f 63 2d 46 61 75 6c 74 79 2d 44 65 66 61 75 6c 74 2d 46 69 65 6c 64 2d 56 61 6c | f="#toc-Faulty-Default-Field-Val |
| 3d600 | 75 65 73 22 3e 46 61 75 6c 74 79 20 44 65 66 61 75 6c 74 20 46 69 65 6c 64 20 56 61 6c 75 65 73 | ues">Faulty.Default.Field.Values |
| 3d620 | 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 46 61 75 6c 74 | </a>.<a.class="hdr".href="#Fault |
| 3d640 | 79 2d 44 65 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 | y-Default-Field-Values">..</a></ |
| 3d660 | 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 44 65 66 61 75 6c 74 20 66 69 65 | h4>........<p>.......Default.fie |
| 3d680 | 6c 64 20 76 61 6c 75 65 73 20 61 72 65 20 6f 6e 6c 79 20 61 70 70 72 6f 70 72 69 61 74 65 20 77 | ld.values.are.only.appropriate.w |
| 3d6a0 | 68 65 6e 20 74 68 65 20 64 61 74 61 20 69 6e 76 61 72 69 61 6e 74 73 20 6f 66 20 61 20 73 74 72 | hen.the.data.invariants.of.a.str |
| 3d6c0 | 75 63 74 0a 20 20 20 20 20 20 63 61 6e 6e 6f 74 20 62 65 20 76 69 6f 6c 61 74 65 64 20 62 79 20 | uct.......cannot.be.violated.by. |
| 3d6e0 | 6f 6d 69 74 74 69 6e 67 20 74 68 61 74 20 66 69 65 6c 64 20 66 72 6f 6d 20 61 6e 20 69 6e 69 74 | omitting.that.field.from.an.init |
| 3d700 | 69 61 6c 69 7a 61 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 | ialization........</p>.......<p> |
| 3d720 | 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 68 65 72 65 20 69 73 20 61 6e 20 69 | .......For.example,.here.is.an.i |
| 3d740 | 6e 61 70 70 72 6f 70 72 69 61 74 65 20 75 73 65 20 6f 66 20 64 65 66 61 75 6c 74 20 73 74 72 75 | nappropriate.use.of.default.stru |
| 3d760 | 63 74 20 66 69 65 6c 64 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 3a 0a 20 20 20 20 20 20 3c | ct.field.initialization:.......< |
| 3d780 | 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | /p>.......<figure><figcaption.cl |
| 3d7a0 | 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ass="zig-cap"><cite.class="file" |
| 3d7c0 | 3e 62 61 64 5f 64 65 66 61 75 6c 74 5f 76 61 6c 75 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 | >bad_default_value.zig</cite></f |
| 3d7e0 | 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | igcaption><pre><code><span.class |
| 3d800 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 68 72 65 73 68 6f 6c 64 | ="tok-kw">const</span>.Threshold |
| 3d820 | 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</ |
| 3d840 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6d 69 6e 69 6d 75 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | span>.{.....minimum:.<span.class |
| 3d860 | 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 63 | ="tok-type">f32</span>.=.<span.c |
| 3d880 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 32 35 3c 2f 73 70 61 6e 3e 2c 0a 20 | lass="tok-number">0.25</span>,.. |
| 3d8a0 | 20 20 20 6d 61 78 69 6d 75 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | ...maximum:.<span.class="tok-typ |
| 3d8c0 | 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 3d 22 74 6f 6b | e">f32</span>.=.<span.class="tok |
| 3d8e0 | 2d 6e 75 6d 62 65 72 22 3e 30 2e 37 35 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c 73 70 61 6e | -number">0.75</span>,......<span |
| 3d900 | 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 61 74 | .class="tok-kw">const</span>.Cat |
| 3d920 | 65 67 6f 72 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 65 6e 75 | egory.=.<span.class="tok-kw">enu |
| 3d940 | 6d 3c 2f 73 70 61 6e 3e 20 7b 20 6c 6f 77 2c 20 6d 65 64 69 75 6d 2c 20 68 69 67 68 20 7d 3b 0a | m</span>.{.low,.medium,.high.};. |
| 3d960 | 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 70 | .....<span.class="tok-kw">fn</sp |
| 3d980 | 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 61 74 65 67 6f 72 | an>.<span.class="tok-fn">categor |
| 3d9a0 | 69 7a 65 3c 2f 73 70 61 6e 3e 28 74 3a 20 54 68 72 65 73 68 6f 6c 64 2c 20 76 61 6c 75 65 3a 20 | ize</span>(t:.Threshold,.value:. |
| 3d9c0 | 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 |
| 3d9e0 | 3e 29 20 43 61 74 65 67 6f 72 79 20 7b 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 74 2e 6d | >).Category.{.........assert(t.m |
| 3da00 | 61 78 69 6d 75 6d 20 26 67 74 3b 3d 20 74 2e 6d 69 6e 69 6d 75 6d 29 3b 0a 20 20 20 20 20 20 20 | aximum.>=.t.minimum);........ |
| 3da20 | 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>. |
| 3da40 | 28 76 61 6c 75 65 20 26 6c 74 3b 20 74 2e 6d 69 6e 69 6d 75 6d 29 20 3c 73 70 61 6e 20 63 6c 61 | (value.<.t.minimum).<span.cla |
| 3da60 | 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 2e 6c 6f 77 3b 0a | ss="tok-kw">return</span>..low;. |
| 3da80 | 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 69 66 3c | ........<span.class="tok-kw">if< |
| 3daa0 | 2f 73 70 61 6e 3e 20 28 76 61 6c 75 65 20 26 67 74 3b 20 74 2e 6d 61 78 69 6d 75 6d 29 20 3c 73 | /span>.(value.>.t.maximum).<s |
| 3dac0 | 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> |
| 3dae0 | 20 2e 68 69 67 68 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 | ..high;.........<span.class="tok |
| 3db00 | 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 2e 6d 65 64 69 75 6d 3b 0a 20 20 20 20 | -kw">return</span>..medium;..... |
| 3db20 | 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 70 75 62 3c 2f | }.};..<span.class="tok-kw">pub</ |
| 3db40 | 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 |
| 3db60 | 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</ |
| 3db80 | 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 3e | span>().!<span.class="tok-type"> |
| 3dba0 | 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 |
| 3dbc0 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 74 68 72 65 73 68 6f 6c 64 3a 20 54 68 72 | ok-kw">var</span>.threshold:.Thr |
| 3dbe0 | 65 73 68 6f 6c 64 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 2e 6d 61 78 69 6d 75 6d 20 3d 20 3c | eshold.=..{..........maximum.=.< |
| 3dc00 | 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 32 30 3c 2f 73 70 | span.class="tok-number">0.20</sp |
| 3dc20 | 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 |
| 3dc40 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 61 74 65 67 6f 72 79 20 3d 20 74 68 72 | -kw">const</span>.category.=.thr |
| 3dc60 | 65 73 68 6f 6c 64 2e 63 61 74 65 67 6f 72 69 7a 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | eshold.categorize(<span.class="t |
| 3dc80 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 39 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 | ok-number">0.90</span>);.....<sp |
| 3dca0 | 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 74 64 | an.class="tok-kw">try</span>.std |
| 3dcc0 | 2e 69 6f 2e 67 65 74 53 74 64 4f 75 74 28 29 2e 77 72 69 74 65 41 6c 6c 28 3c 73 70 61 6e 20 63 | .io.getStdOut().writeAll(<span.c |
| 3dce0 | 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 70 61 | lass="tok-builtin">@tagName</spa |
| 3dd00 | 6e 3e 28 63 61 74 65 67 6f 72 79 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n>(category));.}..<span.class="t |
| 3dd20 | 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. |
| 3dd40 | 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 |
| 3dd60 | 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 |
| 3dd80 | 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 |
| 3dda0 | 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 74 64 | ok-kw">const</span>.assert.=.std |
| 3ddc0 | 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | .debug.assert;</code></pre></fig |
| 3dde0 | 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 | ure><figure><figcaption.class="s |
| 3de00 | 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | hell-cap">Shell</figcaption><pre |
| 3de20 | 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 62 61 64 5f | ><samp>$.<kbd>zig.build-exe.bad_ |
| 3de40 | 64 65 66 61 75 6c 74 5f 76 61 6c 75 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e | default_value.zig</kbd>.$.<kbd>. |
| 3de60 | 2f 62 61 64 5f 64 65 66 61 75 6c 74 5f 76 61 6c 75 65 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 | /bad_default_value</kbd>.thread. |
| 3de80 | 32 30 36 35 35 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 6c | 206555.panic:.reached.unreachabl |
| 3dea0 | 65 20 63 6f 64 65 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d | e.code.<span.class="sgr-1m">/hom |
| 3dec0 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 64 65 62 75 67 2e 7a 69 67 | e/andy/dev/zig/lib/std/debug.zig |
| 3dee0 | 3a 35 35 30 3a 31 34 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | :550:14</span>:.<span.class="sgr |
| 3df00 | 2d 32 6d 22 3e 30 78 31 30 34 38 64 62 64 20 69 6e 20 61 73 73 65 72 74 20 28 62 61 64 5f 64 65 | -2m">0x1048dbd.in.assert.(bad_de |
| 3df20 | 66 61 75 6c 74 5f 76 61 6c 75 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 66 20 28 21 6f 6b 29 | fault_value)</span>.....if.(!ok) |
| 3df40 | 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 |
| 3df60 | 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 73 67 72 | re..............<span.class="sgr |
| 3df80 | 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | -32m">^</span>.<span.class="sgr- |
| 3dfa0 | 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 | 1m">/home/andy/dev/zig/doc/langr |
| 3dfc0 | 65 66 2f 62 61 64 5f 64 65 66 61 75 6c 74 5f 76 61 6c 75 65 2e 7a 69 67 3a 38 3a 31 35 3c 2f 73 | ef/bad_default_value.zig:8:15</s |
| 3dfe0 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 | pan>:.<span.class="sgr-2m">0x10d |
| 3e000 | 65 37 64 39 20 69 6e 20 63 61 74 65 67 6f 72 69 7a 65 20 28 62 61 64 5f 64 65 66 61 75 6c 74 5f | e7d9.in.categorize.(bad_default_ |
| 3e020 | 76 61 6c 75 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 74 2e 6d | value)</span>.........assert(t.m |
| 3e040 | 61 78 69 6d 75 6d 20 26 67 74 3b 3d 20 74 2e 6d 69 6e 69 6d 75 6d 29 3b 0a 20 20 20 20 20 20 20 | aximum.>=.t.minimum);........ |
| 3e060 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f | .......<span.class="sgr-32m">^</ |
| 3e080 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 | span>.<span.class="sgr-1m">/home |
| 3e0a0 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 62 61 64 5f 64 65 | /andy/dev/zig/doc/langref/bad_de |
| 3e0c0 | 66 61 75 6c 74 5f 76 61 6c 75 65 2e 7a 69 67 3a 31 39 3a 34 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | fault_value.zig:19:42</span>:.<s |
| 3e0e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 37 31 61 20 69 6e 20 | pan.class="sgr-2m">0x10de71a.in. |
| 3e100 | 6d 61 69 6e 20 28 62 61 64 5f 64 65 66 61 75 6c 74 5f 76 61 6c 75 65 29 3c 2f 73 70 61 6e 3e 0a | main.(bad_default_value)</span>. |
| 3e120 | 20 20 20 20 63 6f 6e 73 74 20 63 61 74 65 67 6f 72 79 20 3d 20 74 68 72 65 73 68 6f 6c 64 2e 63 | ....const.category.=.threshold.c |
| 3e140 | 61 74 65 67 6f 72 69 7a 65 28 30 2e 39 30 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ategorize(0.90);................ |
| 3e160 | 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 20 | ..........................<span. |
| 3e180 | 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | class="sgr-32m">^</span>.<span.c |
| 3e1a0 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 | lass="sgr-1m">/home/andy/dev/zig |
| 3e1c0 | 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 36 30 3a 33 37 3c 2f 73 70 61 6e 3e | /lib/std/start.zig:660:37</span> |
| 3e1e0 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 36 32 61 | :.<span.class="sgr-2m">0x10de62a |
| 3e200 | 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 62 61 64 5f 64 65 | .in.posixCallMainAndExit.(bad_de |
| 3e220 | 66 61 75 6c 74 5f 76 61 6c 75 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | fault_value)</span>............. |
| 3e240 | 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 63 61 74 63 68 | const.result.=.root.main().catch |
| 3e260 | 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 20 20 20 20 20 | .|err|.{........................ |
| 3e280 | 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 73 67 72 2d 33 32 | .............<span.class="sgr-32 |
| 3e2a0 | 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 | m">^</span>.<span.class="sgr-1m" |
| 3e2c0 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 | >/home/andy/dev/zig/lib/std/star |
| 3e2e0 | 74 2e 7a 69 67 3a 32 37 31 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:271:5</span>:.<span.class= |
| 3e300 | 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 31 64 64 20 69 6e 20 5f 73 74 61 72 74 20 28 62 61 | "sgr-2m">0x10de1dd.in._start.(ba |
| 3e320 | 64 5f 64 65 66 61 75 6c 74 5f 76 61 6c 75 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 | d_default_value)</span>.....asm. |
| 3e340 | 76 6f 6c 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b | volatile.(switch.(native_arch).{ |
| 3e360 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 | .....<span.class="sgr-32m">^</sp |
| 3e380 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f | an>.<span.class="sgr-1m">???:?:? |
| 3e3a0 | 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 | </span>:.<span.class="sgr-2m">0x |
| 3e3c0 | 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 | 0.in.???.(???)</span>.(process.t |
| 3e3e0 | 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 | erminated.by.signal).</samp></pr |
| 3e400 | 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 62 6f | e></figure>........<p>.......Abo |
| 3e420 | 76 65 20 79 6f 75 20 63 61 6e 20 73 65 65 20 74 68 65 20 64 61 6e 67 65 72 20 6f 66 20 69 67 6e | ve.you.can.see.the.danger.of.ign |
| 3e440 | 6f 72 69 6e 67 20 74 68 69 73 20 70 72 69 6e 63 69 70 6c 65 2e 20 54 68 65 20 64 65 66 61 75 6c | oring.this.principle..The.defaul |
| 3e460 | 74 0a 20 20 20 20 20 20 66 69 65 6c 64 20 76 61 6c 75 65 73 20 63 61 75 73 65 64 20 74 68 65 20 | t.......field.values.caused.the. |
| 3e480 | 64 61 74 61 20 69 6e 76 61 72 69 61 6e 74 20 74 6f 20 62 65 20 76 69 6f 6c 61 74 65 64 2c 20 63 | data.invariant.to.be.violated,.c |
| 3e4a0 | 61 75 73 69 6e 67 20 69 6c 6c 65 67 61 6c 0a 20 20 20 20 20 20 62 65 68 61 76 69 6f 72 2e 0a 20 | ausing.illegal.......behavior... |
| 3e4c0 | 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 6f 20 66 69 78 | .....</p>.......<p>.......To.fix |
| 3e4e0 | 20 74 68 69 73 2c 20 72 65 6d 6f 76 65 20 74 68 65 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 73 | .this,.remove.the.default.values |
| 3e500 | 20 66 72 6f 6d 20 61 6c 6c 20 74 68 65 20 73 74 72 75 63 74 20 66 69 65 6c 64 73 2c 20 61 6e 64 | .from.all.the.struct.fields,.and |
| 3e520 | 20 70 72 6f 76 69 64 65 0a 20 20 20 20 20 20 61 20 6e 61 6d 65 64 20 64 65 66 61 75 6c 74 20 76 | .provide.......a.named.default.v |
| 3e540 | 61 6c 75 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | alue:.......</p>.......<figure>< |
| 3e560 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 | figcaption.class="zig-cap"><cite |
| 3e580 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 74 72 75 63 74 5f 64 65 66 61 75 6c 74 5f 76 61 6c | .class="file">struct_default_val |
| 3e5a0 | 75 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c | ue.zig</cite></figcaption><pre>< |
| 3e5c0 | 63 6f 64 65 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 | code><span.class="tok-kw">const< |
| 3e5e0 | 2f 73 70 61 6e 3e 20 54 68 72 65 73 68 6f 6c 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>.Threshold.=.<span.class=" |
| 3e600 | 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 69 6e 69 | tok-kw">struct</span>.{.....mini |
| 3e620 | 6d 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 66 33 32 3c | mum:.<span.class="tok-type">f32< |
| 3e640 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 6d 61 78 69 6d 75 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | /span>,.....maximum:.<span.class |
| 3e660 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c 73 70 | ="tok-type">f32</span>,......<sp |
| 3e680 | 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 64 | an.class="tok-kw">const</span>.d |
| 3e6a0 | 65 66 61 75 6c 74 3a 20 54 68 72 65 73 68 6f 6c 64 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 2e | efault:.Threshold.=..{.......... |
| 3e6c0 | 6d 69 6e 69 6d 75 6d 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 | minimum.=.<span.class="tok-numbe |
| 3e6e0 | 72 22 3e 30 2e 32 35 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 6d 61 78 69 6d 75 6d | r">0.25</span>,..........maximum |
| 3e700 | 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 37 35 | .=.<span.class="tok-number">0.75 |
| 3e720 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | </span>,.....};.};</code></pre>< |
| 3e740 | 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 66 20 61 20 73 74 72 75 63 74 20 76 | /figure>........<p>If.a.struct.v |
| 3e760 | 61 6c 75 65 20 72 65 71 75 69 72 65 73 20 61 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 20 76 61 | alue.requires.a.runtime-known.va |
| 3e780 | 6c 75 65 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 62 65 20 69 6e 69 74 69 61 6c 69 7a 65 64 0a 20 | lue.in.order.to.be.initialized.. |
| 3e7a0 | 20 20 20 20 20 77 69 74 68 6f 75 74 20 76 69 6f 6c 61 74 69 6e 67 20 64 61 74 61 20 69 6e 76 61 | .....without.violating.data.inva |
| 3e7c0 | 72 69 61 6e 74 73 2c 20 74 68 65 6e 20 75 73 65 20 61 6e 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 | riants,.then.use.an.initializati |
| 3e7e0 | 6f 6e 20 6d 65 74 68 6f 64 20 74 68 61 74 20 61 63 63 65 70 74 73 0a 20 20 20 20 20 20 74 68 6f | on.method.that.accepts.......tho |
| 3e800 | 73 65 20 72 75 6e 74 69 6d 65 20 76 61 6c 75 65 73 2c 20 61 6e 64 20 70 6f 70 75 6c 61 74 65 73 | se.runtime.values,.and.populates |
| 3e820 | 20 74 68 65 20 72 65 6d 61 69 6e 69 6e 67 20 66 69 65 6c 64 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 | .the.remaining.fields.</p>...... |
| 3e840 | 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 65 78 74 65 72 6e 2d 73 | ................<h3.id="extern-s |
| 3e860 | 74 72 75 63 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 74 65 72 6e 2d 73 74 72 75 | truct"><a.href="#toc-extern-stru |
| 3e880 | 63 74 22 3e 65 78 74 65 72 6e 20 73 74 72 75 63 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | ct">extern.struct</a>.<a.class=" |
| 3e8a0 | 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d 73 74 72 75 63 74 22 3e c2 a7 3c 2f 61 | hdr".href="#extern-struct">..</a |
| 3e8c0 | 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 6e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | ></h3>........<p>An.<code><span. |
| 3e8e0 | 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 70 | class="tok-kw">extern</span>.<sp |
| 3e900 | 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>< |
| 3e920 | 2f 63 6f 64 65 3e 20 68 61 73 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 20 6d 61 74 63 | /code>.has.in-memory.layout.matc |
| 3e940 | 68 69 6e 67 0a 20 20 20 20 20 20 74 68 65 20 43 20 41 42 49 20 66 6f 72 20 74 68 65 20 74 61 72 | hing.......the.C.ABI.for.the.tar |
| 3e960 | 67 65 74 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 49 66 20 77 65 6c 6c 2d 64 65 66 69 6e 65 | get.</p>.......<p>If.well-define |
| 3e980 | 64 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 20 69 73 20 6e 6f 74 20 72 65 71 75 69 72 | d.in-memory.layout.is.not.requir |
| 3e9a0 | 65 64 2c 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 61 3e | ed,.<a.href="#struct">struct</a> |
| 3e9c0 | 20 69 73 20 61 20 62 65 74 74 65 72 20 63 68 6f 69 63 65 0a 20 20 20 20 20 20 62 65 63 61 75 73 | .is.a.better.choice.......becaus |
| 3e9e0 | 65 20 69 74 20 70 6c 61 63 65 73 20 66 65 77 65 72 20 72 65 73 74 72 69 63 74 69 6f 6e 73 20 6f | e.it.places.fewer.restrictions.o |
| 3ea00 | 6e 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 | n.the.compiler.</p>.......<p>See |
| 3ea20 | 20 3c 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 | .<a.href="#packed-struct">packed |
| 3ea40 | 20 73 74 72 75 63 74 3c 2f 61 3e 20 66 6f 72 20 61 20 73 74 72 75 63 74 20 74 68 61 74 20 68 61 | .struct</a>.for.a.struct.that.ha |
| 3ea60 | 73 20 74 68 65 20 41 42 49 20 6f 66 20 69 74 73 20 62 61 63 6b 69 6e 67 20 69 6e 74 65 67 65 72 | s.the.ABI.of.its.backing.integer |
| 3ea80 | 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c 20 66 6f 72 20 | ,.......which.can.be.useful.for. |
| 3eaa0 | 6d 6f 64 65 6c 69 6e 67 20 66 6c 61 67 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 | modeling.flags.</p>.......<p>See |
| 3eac0 | 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 |
| 3eae0 | 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 3c 2f 6c 69 3e | ern-union">extern.union</a></li> |
| 3eb00 | 0a 3c 6c 69 3e 3c 61 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 | .<li><a.href="#extern-enum">exte |
| 3eb20 | 72 6e 20 65 6e 75 6d 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 | rn.enum</a></li>.</ul>.......... |
| 3eb40 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 3c 61 20 | ......<h3.id="packed-struct"><a. |
| 3eb60 | 68 72 65 66 3d 22 23 74 6f 63 2d 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 | href="#toc-packed-struct">packed |
| 3eb80 | 20 73 74 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 | .struct</a>.<a.class="hdr".href= |
| 3eba0 | 22 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | "#packed-struct">..</a></h3>.... |
| 3ebc0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 6e 6c 69 6b 65 20 6e 6f 72 6d 61 6c 20 73 74 72 75 | ....<p>.......Unlike.normal.stru |
| 3ebe0 | 63 74 73 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | cts,.<code><span.class="tok-kw"> |
| 3ec00 | 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 |
| 3ec20 | 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:.. |
| 3ec40 | 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 |
| 3ec60 | 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 |
| 3ec80 | 61 72 65 64 2c 20 6c 65 61 73 74 20 74 6f 20 6d 6f 73 74 20 73 69 67 6e 69 66 69 63 61 6e 74 2e | ared,.least.to.most.significant. |
| 3eca0 | 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 6e 6f 20 70 61 | </li>.........<li>There.is.no.pa |
| 3ecc0 | 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 20 20 20 20 20 | dding.between.fields.</li>...... |
| 3ece0 | 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 72 79 20 77 69 | ...<li>Zig.supports.arbitrary.wi |
| 3ed00 | 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 65 67 65 72 73 | dth.<a.href="#Integers">Integers |
| 3ed20 | 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 20 69 6e 74 65 | </a>.and.although.normally,.inte |
| 3ed40 | 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 6e 20 38 20 62 | gers.with.fewer.........than.8.b |
| 3ed60 | 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 66 20 6d 65 6d | its.will.still.use.1.byte.of.mem |
| 3ed80 | 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 79 20 75 73 65 | ory,.in.packed.structs,.they.use |
| 3eda0 | 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 77 69 64 74 68 | .........exactly.their.bit.width |
| 3edc0 | 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 3c 63 6f 64 | ..........</li>.........<li><cod |
| 3ede0 | 65 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 | e><span.class="tok-type">bool</s |
| 3ee00 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 69 65 6c 64 73 20 75 73 65 20 65 78 61 63 74 6c 79 20 31 | pan></code>.fields.use.exactly.1 |
| 3ee20 | 20 62 69 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6e 20 3c 61 20 68 72 65 | .bit.</li>.........<li>An.<a.hre |
| 3ee40 | 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 20 66 69 65 6c 64 20 75 73 65 73 20 65 78 | f="#enum">enum</a>.field.uses.ex |
| 3ee60 | 61 63 74 6c 79 20 74 68 65 20 62 69 74 20 77 69 64 74 68 20 6f 66 20 69 74 73 20 69 6e 74 65 67 | actly.the.bit.width.of.its.integ |
| 3ee80 | 65 72 20 74 61 67 20 74 79 70 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 20 | er.tag.type.</li>.........<li>A. |
| 3eea0 | 3c 61 20 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 | <a.href="#packed-union">packed.u |
| 3eec0 | 6e 69 6f 6e 3c 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 | nion</a>.field.uses.exactly.the. |
| 3eee0 | 62 69 74 20 77 69 64 74 68 20 6f 66 20 74 68 65 20 75 6e 69 6f 6e 20 66 69 65 6c 64 20 77 69 74 | bit.width.of.the.union.field.wit |
| 3ef00 | 68 0a 20 20 20 20 20 20 20 20 74 68 65 20 6c 61 72 67 65 73 74 20 62 69 74 20 77 69 64 74 68 2e | h.........the.largest.bit.width. |
| 3ef20 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 50 61 63 6b 65 64 20 73 74 72 75 63 74 73 | </li>.........<li>Packed.structs |
| 3ef40 | 20 73 75 70 70 6f 72 74 20 65 71 75 61 6c 69 74 79 20 6f 70 65 72 61 74 6f 72 73 2e 3c 2f 6c 69 | .support.equality.operators.</li |
| 3ef60 | 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 54 68 | >.......</ul>.......<p>.......Th |
| 3ef80 | 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | is.means.that.a.<code><span.clas |
| 3efa0 | 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 70 61 6e 20 63 | s="tok-kw">packed</span>.<span.c |
| 3efc0 | 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 2f 63 6f 64 | lass="tok-kw">struct</span></cod |
| 3efe0 | 65 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 | e>.can.participate.......in.a.<a |
| 3f000 | 20 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 | .href="#bitCast">@bitCast</a>.or |
| 3f020 | 20 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 | .a.<a.href="#ptrCast">@ptrCast</ |
| 3f040 | 61 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 | a>.to.reinterpret.memory........ |
| 3f060 | 54 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 | This.even.works.at.<a.href="#com |
| 3f080 | 70 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 | ptime">comptime</a>:.......</p>. |
| 3f0a0 | 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | ......<figure><figcaption.class= |
| 3f0c0 | 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | "zig-cap"><cite.class="file">tes |
| 3f0e0 | 74 5f 70 61 63 6b 65 64 5f 73 74 72 75 63 74 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | t_packed_structs.zig</cite></fig |
| 3f100 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | caption><pre><code><span.class=" |
| 3f120 | 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 |
| 3f140 | 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 |
| 3f160 | 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">" |
| 3f180 | 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=" |
| 3f1a0 | 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 5f 65 6e 64 69 | tok-kw">const</span>.native_endi |
| 3f1c0 | 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 69 6e 22 3e 40 | an.=.<span.class="tok-builtin">@ |
| 3f1e0 | 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 |
| 3f200 | 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 2e | tr">"builtin"</span>). |
| 3f220 | 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 73 70 61 6e 20 | target.cpu.arch.endian();.<span. |
| 3f240 | 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 |
| 3f260 | 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. |
| 3f280 | 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 75 6c 6c | class="tok-kw">const</span>.Full |
| 3f2a0 | 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 2f | .=.<span.class="tok-kw">packed</ |
| 3f2c0 | 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 63 | span>.<span.class="tok-kw">struc |
| 3f2e0 | 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 6e 20 63 6c 61 | t</span>.{.....number:.<span.cla |
| 3f300 | 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 3b 0a 3c 73 70 | ss="tok-type">u16</span>,.};.<sp |
| 3f320 | 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 44 | an.class="tok-kw">const</span>.D |
| 3f340 | 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 77 22 3e 70 61 | ivided.=.<span.class="tok-kw">pa |
| 3f360 | 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" |
| 3f380 | 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 20 3c 73 70 61 | >struct</span>.{.....half1:.<spa |
| 3f3a0 | 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 20 | n.class="tok-type">u8</span>,... |
| 3f3c0 | 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 6b 2d 74 79 70 | ..quarter3:.<span.class="tok-typ |
| 3f3e0 | 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 20 3c 73 70 61 | e">u4</span>,.....quarter4:.<spa |
| 3f400 | 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 3e 2c 0a 7d 3b | n.class="tok-type">u4</span>,.}; |
| 3f420 | 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 |
| 3f440 | 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 40 | n>.<span.class="tok-str">"@ |
| 3f460 | 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 63 74 73 26 71 | bitCast.between.packed.structs&q |
| 3f480 | 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 |
| 3f4a0 | 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 28 29 3b 0a 20 | ok-kw">try</span>.doTheTest();.. |
| 3f4c0 | 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 |
| 3f4e0 | 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 6d 70 74 69 6d 65 | n>.<span.class="tok-kw">comptime |
| 3f500 | 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 61 6e 20 63 6c | </span>.doTheTest();.}..<span.cl |
| 3f520 | 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 |
| 3f540 | 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 3e 28 29 20 21 | ss="tok-fn">doTheTest</span>().! |
| 3f560 | 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 |
| 3f580 | 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 |
| 3f5a0 | 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 |
| 3f5c0 | 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 6c 6c 29 20 3d | -builtin">@sizeOf</span>(Full).= |
| 3f5e0 | 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 70 | =.<span.class="tok-number">2</sp |
| 3f600 | 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 |
| 3f620 | 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 74 6f | ry</span>.expect(<span.class="to |
| 3f640 | 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 69 76 69 64 65 | k-builtin">@sizeOf</span>(Divide |
| 3f660 | 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 65 72 22 3e 32 | d).==.<span.class="tok-number">2 |
| 3f680 | 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 |
| 3f6a0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 75 6c 6c 20 3d 20 46 75 6c 6c 7b 20 2e 6e 75 | w">const</span>.full.=.Full{..nu |
| 3f6c0 | 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 72 22 3e | mber.=.<span.class="tok-number"> |
| 3f6e0 | 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 61 73 73 | 0x1234</span>.};.....<span.class |
| 3f700 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 69 76 69 64 65 64 3a 20 | ="tok-kw">const</span>.divided:. |
| 3f720 | 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 62 75 69 6c 74 | Divided.=.<span.class="tok-built |
| 3f740 | 69 6e 22 3e 40 62 69 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 66 75 6c 6c 29 3b 0a 20 20 20 20 3c | in">@bitCast</span>(full);.....< |
| 3f760 | 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 |
| 3f780 | 78 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 | xpect(divided.half1.==.<span.cla |
| 3f7a0 | 73 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 | ss="tok-number">0x34</span>);... |
| 3f7c0 | 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 |
| 3f7e0 | 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 20 3d 3d 20 3c 73 70 | >.expect(divided.quarter3.==.<sp |
| 3f800 | 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 3c 2f 73 70 61 6e 3e | an.class="tok-number">0x2</span> |
| 3f820 | 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< |
| 3f840 | 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 34 20 3d | /span>.expect(divided.quarter4.= |
| 3f860 | 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 31 3c 2f | =.<span.class="tok-number">0x1</ |
| 3f880 | 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 77 | span>);......<span.class="tok-kw |
| 3f8a0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 72 64 65 72 65 64 3a 20 5b 3c 73 70 61 6e 20 63 | ">const</span>.ordered:.[<span.c |
| 3f8c0 | 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 70 61 6e | lass="tok-number">2</span>]<span |
| 3f8e0 | 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 73 | .class="tok-type">u8</span>.=.<s |
| 3f900 | 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 74 | pan.class="tok-builtin">@bitCast |
| 3f920 | 3c 2f 73 70 61 6e 3e 28 66 75 6c 6c 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </span>(full);.....<span.class=" |
| 3f940 | 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 6e 61 74 69 76 65 5f 65 6e | tok-kw">switch</span>.(native_en |
| 3f960 | 64 69 61 6e 29 20 7b 0a 20 20 20 20 20 20 20 20 2e 62 69 67 20 3d 26 67 74 3b 20 7b 0a 20 20 20 | dian).{..........big.=>.{.... |
| 3f980 | 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 |
| 3f9a0 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6f 72 64 65 72 65 64 5b 3c 73 70 61 6e 20 63 6c | y</span>.expect(ordered[<span.cl |
| 3f9c0 | 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 20 3d 3d 20 3c 73 | ass="tok-number">0</span>].==.<s |
| 3f9e0 | 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 3c 2f 73 70 61 | pan.class="tok-number">0x12</spa |
| 3fa00 | 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 22 74 6f | n>);.............<span.class="to |
| 3fa20 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6f 72 64 65 72 65 64 5b | k-kw">try</span>.expect(ordered[ |
| 3fa40 | 3c 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 |
| 3fa60 | 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 30 | >].==.<span.class="tok-number">0 |
| 3fa80 | 78 33 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 20 20 | x34</span>);.........},......... |
| 3faa0 | 2e 6c 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 70 61 | .little.=>.{.............<spa |
| 3fac0 | 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 |
| 3fae0 | 63 74 28 6f 72 64 65 72 65 64 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | ct(ordered[<span.class="tok-numb |
| 3fb00 | 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 22 74 6f | er">0</span>].==.<span.class="to |
| 3fb20 | 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 20 20 20 20 20 | k-number">0x34</span>);......... |
| 3fb40 | 20 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 |
| 3fb60 | 61 6e 3e 20 65 78 70 65 63 74 28 6f 72 64 65 72 65 64 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | an>.expect(ordered[<span.class=" |
| 3fb80 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 | tok-number">1</span>].==.<span.c |
| 3fba0 | 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 29 3b 0a | lass="tok-number">0x12</span>);. |
| 3fbc0 | 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | ........},.....}.}</code></pre>< |
| 3fbe0 | 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 | /figure><figure><figcaption.clas |
| 3fc00 | 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | s="shell-cap">Shell</figcaption> |
| 3fc20 | 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f | <pre><samp>$.<kbd>zig.test.test_ |
| 3fc40 | 70 61 63 6b 65 64 5f 73 74 72 75 63 74 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 | packed_structs.zig</kbd>.1/1.tes |
| 3fc60 | 74 5f 70 61 63 6b 65 64 5f 73 74 72 75 63 74 73 2e 74 65 73 74 2e 40 62 69 74 43 61 73 74 20 62 | t_packed_structs.test.@bitCast.b |
| 3fc80 | 65 74 77 65 65 6e 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 | etween.packed.structs...OK.All.1 |
| 3fca0 | 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | .tests.passed..</samp></pre></fi |
| 3fcc0 | 67 75 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 62 61 63 6b 69 | gure>........<p>.......The.backi |
| 3fce0 | 6e 67 20 69 6e 74 65 67 65 72 20 69 73 20 69 6e 66 65 72 72 65 64 20 66 72 6f 6d 20 74 68 65 20 | ng.integer.is.inferred.from.the. |
| 3fd00 | 66 69 65 6c 64 73 27 20 74 6f 74 61 6c 20 62 69 74 20 77 69 64 74 68 2e 0a 20 20 20 20 20 20 4f | fields'.total.bit.width........O |
| 3fd20 | 70 74 69 6f 6e 61 6c 6c 79 2c 20 69 74 20 63 61 6e 20 62 65 20 65 78 70 6c 69 63 69 74 6c 79 20 | ptionally,.it.can.be.explicitly. |
| 3fd40 | 70 72 6f 76 69 64 65 64 20 61 6e 64 20 65 6e 66 6f 72 63 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 | provided.and.enforced.at.compile |
| 3fd60 | 20 74 69 6d 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e | .time:.......</p>.......<figure> |
| 3fd80 | 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 | <figcaption.class="zig-cap"><cit |
| 3fda0 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 6d 69 73 73 69 7a 65 64 5f 70 61 63 | e.class="file">test_missized_pac |
| 3fdc0 | 6b 65 64 5f 73 74 72 75 63 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | ked_struct.zig</cite></figcaptio |
| 3fde0 | 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n><pre><code><span.class="tok-kw |
| 3fe00 | 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 |
| 3fe20 | 74 72 22 3e 26 71 75 6f 74 3b 6d 69 73 73 69 7a 65 64 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 | tr">"missized.packed.struct |
| 3fe40 | 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= |
| 3fe60 | 22 74 6f 6b 2d 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 | "tok-kw">const</span>.S.=.<span. |
| 3fe80 | 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 70 | class="tok-kw">packed</span>.<sp |
| 3fea0 | 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 28 | an.class="tok-kw">struct</span>( |
| 3fec0 | 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 |
| 3fee0 | 3e 29 20 7b 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 | >).{.a:.<span.class="tok-type">u |
| 3ff00 | 31 36 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 | 16</span>,.b:.<span.class="tok-t |
| 3ff20 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 5f 20 3d 20 53 7b 20 2e 61 20 | ype">u8</span>.};....._.=.S{..a. |
| 3ff40 | 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 |
| 3ff60 | 61 6e 3e 2c 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 | an>,..b.=.<span.class="tok-numbe |
| 3ff80 | 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 | r">2</span>.};.}</code></pre></f |
| 3ffa0 | 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | igure><figure><figcaption.class= |
| 3ffc0 | 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | "shell-cap">Shell</figcaption><p |
| 3ffe0 | 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 6d 69 | re><samp>$.<kbd>zig.test.test_mi |
| 40000 | 73 73 69 7a 65 64 5f 70 61 63 6b 65 64 5f 73 74 72 75 63 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c | ssized_packed_struct.zig</kbd>.< |
| 40020 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | span.class="sgr-1m">/home/andy/d |
| 40040 | 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6d 69 73 73 69 7a 65 64 | ev/zig/doc/langref/test_missized |
| 40060 | 5f 70 61 63 6b 65 64 5f 73 74 72 75 63 74 2e 7a 69 67 3a 32 3a 32 39 3a 20 3c 2f 73 70 61 6e 3e | _packed_struct.zig:2:29:.</span> |
| 40080 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 | <span.class="sgr-31m">error:.</s |
| 400a0 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 62 61 63 6b 69 6e 67 | pan><span.class="sgr-1m">backing |
| 400c0 | 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 27 75 33 32 27 20 68 61 73 20 62 69 74 20 73 69 7a 65 | .integer.type.'u32'.has.bit.size |
| 400e0 | 20 33 32 20 62 75 74 20 74 68 65 20 73 74 72 75 63 74 20 66 69 65 6c 64 73 20 68 61 76 65 20 61 | .32.but.the.struct.fields.have.a |
| 40100 | 20 74 6f 74 61 6c 20 62 69 74 20 73 69 7a 65 20 6f 66 20 32 34 0a 3c 2f 73 70 61 6e 3e 20 20 20 | .total.bit.size.of.24.</span>... |
| 40120 | 20 63 6f 6e 73 74 20 53 20 3d 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 28 75 33 32 29 20 7b 20 | .const.S.=.packed.struct(u32).{. |
| 40140 | 61 3a 20 75 31 36 2c 20 62 3a 20 75 38 20 7d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | a:.u16,.b:.u8.};................ |
| 40160 | 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 73 67 72 2d 33 32 | .............<span.class="sgr-32 |
| 40180 | 6d 22 3e 5e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 | m">^~~.</span><span.class="sgr-2 |
| 401a0 | 6d 22 3e 72 65 66 65 72 65 6e 63 65 64 20 62 79 3a 0a 20 20 20 20 74 65 73 74 2e 6d 69 73 73 69 | m">referenced.by:.....test.missi |
| 401c0 | 7a 65 64 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | zed.packed.struct:./home/andy/de |
| 401e0 | 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6d 69 73 73 69 7a 65 64 5f | v/zig/doc/langref/test_missized_ |
| 40200 | 70 61 63 6b 65 64 5f 73 74 72 75 63 74 2e 7a 69 67 3a 32 3a 32 32 0a 3c 2f 73 70 61 6e 3e 0a 3c | packed_struct.zig:2:22.</span>.< |
| 40220 | 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | /samp></pre></figure>........<p> |
| 40240 | 0a 20 20 20 20 20 20 5a 69 67 20 61 6c 6c 6f 77 73 20 74 68 65 20 61 64 64 72 65 73 73 20 74 6f | .......Zig.allows.the.address.to |
| 40260 | 20 62 65 20 74 61 6b 65 6e 20 6f 66 20 61 20 6e 6f 6e 2d 62 79 74 65 2d 61 6c 69 67 6e 65 64 20 | .be.taken.of.a.non-byte-aligned. |
| 40280 | 66 69 65 6c 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e | field:.......</p>.......<figure> |
| 402a0 | 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 | <figcaption.class="zig-cap"><cit |
| 402c0 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 70 6f 69 6e 74 65 72 5f 74 6f 5f 6e | e.class="file">test_pointer_to_n |
| 402e0 | 6f 6e 2d 62 79 74 65 5f 61 6c 69 67 6e 65 64 5f 66 69 65 6c 64 2e 7a 69 67 3c 2f 63 69 74 65 3e | on-byte_aligned_field.zig</cite> |
| 40300 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </figcaption><pre><code><span.cl |
| 40320 | 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.=. |
| 40340 | 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 |
| 40360 | 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">& |
| 40380 | 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 |
| 403a0 | 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 |
| 403c0 | 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 |
| 403e0 | 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 46 69 65 | ass="tok-kw">const</span>.BitFie |
| 40400 | 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 6b 65 64 | ld.=.<span.class="tok-kw">packed |
| 40420 | 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 |
| 40440 | 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 73 73 3d | uct</span>.{.....a:.<span.class= |
| 40460 | 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 3c 73 70 | "tok-type">u3</span>,.....b:.<sp |
| 40480 | 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 2c 0a 20 | an.class="tok-type">u3</span>,.. |
| 404a0 | 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 75 32 3c | ...c:.<span.class="tok-type">u2< |
| 404c0 | 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 6b 77 22 | /span>,.};..<span.class="tok-kw" |
| 404e0 | 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 20 20 20 | >var</span>.foo.=.BitField{..... |
| 40500 | 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 3e 31 3c | .a.=.<span.class="tok-number">1< |
| 40520 | 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 22 74 6f | /span>,......b.=.<span.class="to |
| 40540 | 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 3c 73 70 | k-number">2</span>,......c.=.<sp |
| 40560 | 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 0a | an.class="tok-number">3</span>,. |
| 40580 | 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 |
| 405a0 | 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">" |
| 405c0 | 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 66 69 65 | ;pointer.to.non-byte-aligned.fie |
| 405e0 | 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 6c 61 73 | ld"</span>.{.....<span.clas |
| 40600 | 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 26 61 | s="tok-kw">const</span>.ptr.=.&a |
| 40620 | 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 6b 2d 6b | mp;foo.b;.....<span.class="tok-k |
| 40640 | 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 20 3c 73 | w">try</span>.expect(ptr.*.==.<s |
| 40660 | 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>) |
| 40680 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 | ;.}</code></pre></figure><figure |
| 406a0 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 | ><figcaption.class="shell-cap">S |
| 406c0 | 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b | hell</figcaption><pre><samp>$.<k |
| 406e0 | 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 70 6f 69 6e 74 65 72 5f 74 6f 5f 6e 6f 6e 2d | bd>zig.test.test_pointer_to_non- |
| 40700 | 62 79 74 65 5f 61 6c 69 67 6e 65 64 5f 66 69 65 6c 64 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 | byte_aligned_field.zig</kbd>.1/1 |
| 40720 | 20 74 65 73 74 5f 70 6f 69 6e 74 65 72 5f 74 6f 5f 6e 6f 6e 2d 62 79 74 65 5f 61 6c 69 67 6e 65 | .test_pointer_to_non-byte_aligne |
| 40740 | 64 5f 66 69 65 6c 64 2e 74 65 73 74 2e 70 6f 69 6e 74 65 72 20 74 6f 20 6e 6f 6e 2d 62 79 74 65 | d_field.test.pointer.to.non-byte |
| 40760 | 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 | -aligned.field...OK.All.1.tests. |
| 40780 | 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a | passed..</samp></pre></figure>.. |
| 407a0 | 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 68 65 20 70 6f 69 | ......<p>.......However,.the.poi |
| 407c0 | 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 20 66 69 65 6c 64 | nter.to.a.non-byte-aligned.field |
| 407e0 | 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 64 20 63 61 6e 6e | .has.special.properties.and.cann |
| 40800 | 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 6e 6f 72 6d 61 6c | ot.......be.passed.when.a.normal |
| 40820 | 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 20 20 3c 2f 70 3e | .pointer.is.expected:.......</p> |
| 40840 | 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | .......<figure><figcaption.class |
| 40860 | 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 | ="zig-cap"><cite.class="file">te |
| 40880 | 73 74 5f 6d 69 73 61 6c 69 67 6e 65 64 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 3c 2f 63 69 74 65 3e | st_misaligned_pointer.zig</cite> |
| 408a0 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </figcaption><pre><code><span.cl |
| 408c0 | 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.=. |
| 408e0 | 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 |
| 40900 | 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">& |
| 40920 | 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 |
| 40940 | 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 |
| 40960 | 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 |
| 40980 | 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 46 69 65 | ass="tok-kw">const</span>.BitFie |
| 409a0 | 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 6b 65 64 | ld.=.<span.class="tok-kw">packed |
| 409c0 | 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 |
| 409e0 | 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 73 73 3d | uct</span>.{.....a:.<span.class= |
| 40a00 | 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 3c 73 70 | "tok-type">u3</span>,.....b:.<sp |
| 40a20 | 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 2c 0a 20 | an.class="tok-type">u3</span>,.. |
| 40a40 | 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 75 32 3c | ...c:.<span.class="tok-type">u2< |
| 40a60 | 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 6b 77 22 | /span>,.};..<span.class="tok-kw" |
| 40a80 | 3e 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 | >var</span>.bit_field.=.BitField |
| 40aa0 | 7b 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 | {......a.=.<span.class="tok-numb |
| 40ac0 | 65 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 | er">1</span>,......b.=.<span.cla |
| 40ae0 | 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 2e 63 | ss="tok-number">2</span>,......c |
| 40b00 | 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 |
| 40b20 | 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 74 | pan>,.};..<span.class="tok-kw">t |
| 40b40 | 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" |
| 40b60 | 3e 26 71 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 | >"pointer.to.non-byte-align |
| 40b80 | 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 20 20 20 3c 73 70 61 | ed.field"</span>.{.....<spa |
| 40ba0 | 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 |
| 40bc0 | 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 3d 3d 20 3c 73 70 61 | ct(bar(&bit_field.b).==.<spa |
| 40be0 | 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 0a | n.class="tok-number">2</span>);. |
| 40c00 | 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 |
| 40c20 | 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 |
| 40c40 | 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 22 3e 63 6f 6e 73 74 | >(x:.*<span.class="tok-kw">const |
| 40c60 | 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 |
| 40c80 | 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 6b 2d 74 79 70 65 22 | 3</span>).<span.class="tok-type" |
| 40ca0 | 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 61 73 73 3d 22 74 6f | >u3</span>.{.....<span.class="to |
| 40cc0 | 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 7d 3c 2f 63 6f 64 65 | k-kw">return</span>.x.*;.}</code |
| 40ce0 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | ></pre></figure><figure><figcapt |
| 40d00 | 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 | ion.class="shell-cap">Shell</fig |
| 40d20 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 | caption><pre><samp>$.<kbd>zig.te |
| 40d40 | 73 74 20 74 65 73 74 5f 6d 69 73 61 6c 69 67 6e 65 64 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 3c 2f | st.test_misaligned_pointer.zig</ |
| 40d60 | 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f | kbd>.<span.class="sgr-1m">/home/ |
| 40d80 | 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6d 69 | andy/dev/zig/doc/langref/test_mi |
| 40da0 | 73 61 6c 69 67 6e 65 64 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 3a 31 37 3a 32 30 3a 20 3c 2f 73 70 | saligned_pointer.zig:17:20:.</sp |
| 40dc0 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 | an><span.class="sgr-31m">error:. |
| 40de0 | 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 65 78 70 65 | </span><span.class="sgr-1m">expe |
| 40e00 | 63 74 65 64 20 74 79 70 65 20 27 2a 63 6f 6e 73 74 20 75 33 27 2c 20 66 6f 75 6e 64 20 27 2a 61 | cted.type.'*const.u3',.found.'*a |
| 40e20 | 6c 69 67 6e 28 31 3a 33 3a 31 29 20 75 33 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 74 72 79 20 65 | lign(1:3:1).u3'.</span>....try.e |
| 40e40 | 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 3d 3d 20 32 | xpect(bar(&bit_field.b).==.2 |
| 40e60 | 29 3b 0a 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 |
| 40e80 | 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e | s="sgr-32m">^~~~~~~~~~~~.</span> |
| 40ea0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | <span.class="sgr-1m">/home/andy/ |
| 40ec0 | 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6d 69 73 61 6c 69 67 | dev/zig/doc/langref/test_misalig |
| 40ee0 | 6e 65 64 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 3a 31 37 3a 32 30 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | ned_pointer.zig:17:20:.</span><s |
| 40f00 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e | pan.class="sgr-36m">note:.</span |
| 40f20 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 70 6f 69 6e 74 65 72 20 68 6f | ><span.class="sgr-1m">pointer.ho |
| 40f40 | 73 74 20 73 69 7a 65 20 27 31 27 20 63 61 6e 6e 6f 74 20 63 61 73 74 20 69 6e 74 6f 20 70 6f 69 | st.size.'1'.cannot.cast.into.poi |
| 40f60 | 6e 74 65 72 20 68 6f 73 74 20 73 69 7a 65 20 27 30 27 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | nter.host.size.'0'.</span><span. |
| 40f80 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | class="sgr-1m">/home/andy/dev/zi |
| 40fa0 | 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6d 69 73 61 6c 69 67 6e 65 64 5f 70 6f | g/doc/langref/test_misaligned_po |
| 40fc0 | 69 6e 74 65 72 2e 7a 69 67 3a 31 37 3a 32 30 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | inter.zig:17:20:.</span><span.cl |
| 40fe0 | 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | ass="sgr-36m">note:.</span><span |
| 41000 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 70 6f 69 6e 74 65 72 20 62 69 74 20 6f 66 66 73 | .class="sgr-1m">pointer.bit.offs |
| 41020 | 65 74 20 27 33 27 20 63 61 6e 6e 6f 74 20 63 61 73 74 20 69 6e 74 6f 20 70 6f 69 6e 74 65 72 20 | et.'3'.cannot.cast.into.pointer. |
| 41040 | 62 69 74 20 6f 66 66 73 65 74 20 27 30 27 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | bit.offset.'0'.</span><span.clas |
| 41060 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f | s="sgr-1m">/home/andy/dev/zig/do |
| 41080 | 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6d 69 73 61 6c 69 67 6e 65 64 5f 70 6f 69 6e 74 65 | c/langref/test_misaligned_pointe |
| 410a0 | 72 2e 7a 69 67 3a 32 30 3a 31 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | r.zig:20:11:.</span><span.class= |
| 410c0 | 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | "sgr-36m">note:.</span><span.cla |
| 410e0 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 70 61 72 61 6d 65 74 65 72 20 74 79 70 65 20 64 65 63 6c 61 | ss="sgr-1m">parameter.type.decla |
| 41100 | 72 65 64 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 66 6e 20 62 61 72 28 78 3a 20 2a 63 6f 6e 73 74 | red.here.</span>fn.bar(x:.*const |
| 41120 | 20 75 33 29 20 75 33 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 | .u3).u3.{...........<span.class= |
| 41140 | 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 | "sgr-32m">^~~~~~~~~.</span>.</sa |
| 41160 | 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | mp></pre></figure>........<p>... |
| 41180 | 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 20 3c | ....In.this.case,.the.function.< |
| 411a0 | 63 6f 64 65 3e 62 61 72 3c 2f 63 6f 64 65 3e 20 63 61 6e 6e 6f 74 20 62 65 20 63 61 6c 6c 65 64 | code>bar</code>.cannot.be.called |
| 411c0 | 20 62 65 63 61 75 73 65 20 74 68 65 20 70 6f 69 6e 74 65 72 0a 20 20 20 20 20 20 74 6f 20 74 68 | .because.the.pointer.......to.th |
| 411e0 | 65 20 6e 6f 6e 2d 41 42 49 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 20 6d 65 6e 74 69 6f 6e 73 | e.non-ABI-aligned.field.mentions |
| 41200 | 20 74 68 65 20 62 69 74 20 6f 66 66 73 65 74 2c 20 62 75 74 20 74 68 65 20 66 75 6e 63 74 69 6f | .the.bit.offset,.but.the.functio |
| 41220 | 6e 20 65 78 70 65 63 74 73 20 61 6e 20 41 42 49 2d 61 6c 69 67 6e 65 64 20 70 6f 69 6e 74 65 72 | n.expects.an.ABI-aligned.pointer |
| 41240 | 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 50 6f 69 | ........</p>.......<p>.......Poi |
| 41260 | 6e 74 65 72 73 20 74 6f 20 6e 6f 6e 2d 41 42 49 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 73 20 | nters.to.non-ABI-aligned.fields. |
| 41280 | 73 68 61 72 65 20 74 68 65 20 73 61 6d 65 20 61 64 64 72 65 73 73 20 61 73 20 74 68 65 20 6f 74 | share.the.same.address.as.the.ot |
| 412a0 | 68 65 72 20 66 69 65 6c 64 73 20 77 69 74 68 69 6e 20 74 68 65 69 72 20 68 6f 73 74 20 69 6e 74 | her.fields.within.their.host.int |
| 412c0 | 65 67 65 72 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | eger:.......</p>.......<figure>< |
| 412e0 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 | figcaption.class="zig-cap"><cite |
| 41300 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 70 61 63 6b 65 64 5f 73 74 72 75 63 74 | .class="file">test_packed_struct |
| 41320 | 5f 66 69 65 6c 64 5f 61 64 64 72 65 73 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | _field_address.zig</cite></figca |
| 41340 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ption><pre><code><span.class="to |
| 41360 | 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 |
| 41380 | 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 |
| 413a0 | 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 |
| 413c0 | 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 |
| 413e0 | 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. |
| 41400 | 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 |
| 41420 | 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 64 20 3d 20 3c 73 | k-kw">const</span>.BitField.=.<s |
| 41440 | 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 2f 73 70 61 6e 3e | pan.class="tok-kw">packed</span> |
| 41460 | 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 70 | .<span.class="tok-kw">struct</sp |
| 41480 | 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 74 6f 6b 2d 74 79 | an>.{.....a:.<span.class="tok-ty |
| 414a0 | 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 6e 20 63 6c 61 73 | pe">u3</span>,.....b:.<span.clas |
| 414c0 | 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 63 3a 20 3c | s="tok-type">u3</span>,.....c:.< |
| 414e0 | 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 6e 3e 2c | span.class="tok-type">u2</span>, |
| 41500 | 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 76 61 72 3c 2f 73 | .};..<span.class="tok-kw">var</s |
| 41520 | 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 0a 20 20 20 20 2e | pan>.bit_field.=.BitField{...... |
| 41540 | 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 3e 31 3c 2f | a.=.<span.class="tok-number">1</ |
| 41560 | 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 22 74 6f 6b | span>,......b.=.<span.class="tok |
| 41580 | 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 3c 73 70 61 | -number">2</span>,......c.=.<spa |
| 415a0 | 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 0a 7d | n.class="tok-number">3</span>,.} |
| 415c0 | 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 |
| 415e0 | 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">" |
| 41600 | 70 6f 69 6e 74 65 72 73 20 6f 66 20 73 75 62 2d 62 79 74 65 2d 61 6c 69 67 6e 65 64 20 66 69 65 | pointers.of.sub-byte-aligned.fie |
| 41620 | 6c 64 73 20 73 68 61 72 65 20 61 64 64 72 65 73 73 65 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | lds.share.addresses"</span> |
| 41640 | 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< |
| 41660 | 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 |
| 41680 | 75 69 6c 74 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 50 74 72 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b | uiltin">@intFromPtr</span>(& |
| 416a0 | 62 69 74 5f 66 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 | bit_field.a).==.<span.class="tok |
| 416c0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 50 74 72 3c 2f 73 70 61 6e 3e 28 26 61 6d | -builtin">@intFromPtr</span>(&am |
| 416e0 | 70 3b 62 69 74 5f 66 69 65 6c 64 2e 62 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | p;bit_field.b));.....<span.class |
| 41700 | 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 |
| 41720 | 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 46 72 6f 6d 50 74 | n.class="tok-builtin">@intFromPt |
| 41740 | 72 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 20 3c 73 | r</span>(&bit_field.a).==.<s |
| 41760 | 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 46 72 6f 6d | pan.class="tok-builtin">@intFrom |
| 41780 | 50 74 72 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 62 69 74 5f 66 69 65 6c 64 2e 63 29 29 3b 0a 7d | Ptr</span>(&bit_field.c));.} |
| 417a0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 | </code></pre></figure><figure><f |
| 417c0 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c | igcaption.class="shell-cap">Shel |
| 417e0 | 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e | l</figcaption><pre><samp>$.<kbd> |
| 41800 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 70 61 63 6b 65 64 5f 73 74 72 75 63 74 5f 66 69 65 6c | zig.test.test_packed_struct_fiel |
| 41820 | 64 5f 61 64 64 72 65 73 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 70 61 63 | d_address.zig</kbd>.1/1.test_pac |
| 41840 | 6b 65 64 5f 73 74 72 75 63 74 5f 66 69 65 6c 64 5f 61 64 64 72 65 73 73 2e 74 65 73 74 2e 70 6f | ked_struct_field_address.test.po |
| 41860 | 69 6e 74 65 72 73 20 6f 66 20 73 75 62 2d 62 79 74 65 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 | inters.of.sub-byte-aligned.field |
| 41880 | 73 20 73 68 61 72 65 20 61 64 64 72 65 73 73 65 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 | s.share.addresses...OK.All.1.tes |
| 418a0 | 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | ts.passed..</samp></pre></figure |
| 418c0 | 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 61 6e 20 62 65 20 6f | >........<p>.......This.can.be.o |
| 418e0 | 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 74 4f 66 66 73 65 74 | bserved.with.<a.href="#bitOffset |
| 41900 | 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 3c 61 20 68 72 65 66 | Of">@bitOffsetOf</a>.and.<a.href |
| 41920 | 3d 22 23 6f 66 66 73 65 74 4f 66 22 3e 6f 66 66 73 65 74 4f 66 3c 2f 61 3e 3a 0a 20 20 20 20 20 | ="#offsetOf">offsetOf</a>:...... |
| 41940 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | .</p>.......<figure><figcaption. |
| 41960 | 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c | class="zig-cap"><cite.class="fil |
| 41980 | 65 22 3e 74 65 73 74 5f 62 69 74 4f 66 66 73 65 74 4f 66 5f 6f 66 66 73 65 74 4f 66 2e 7a 69 67 | e">test_bitOffsetOf_offsetOf.zig |
| 419a0 | 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | </cite></figcaption><pre><code>< |
| 419c0 | 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> |
| 419e0 | 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" |
| 41a00 | 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 |
| 41a20 | 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>);.< |
| 41a40 | 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> |
| 41a60 | 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;..< |
| 41a80 | 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> |
| 41aa0 | 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 22 | .BitField.=.<span.class="tok-kw" |
| 41ac0 | 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 2d | >packed</span>.<span.class="tok- |
| 41ae0 | 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 6e | kw">struct</span>.{.....a:.<span |
| 41b00 | 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 20 | .class="tok-type">u3</span>,.... |
| 41b20 | 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 73 | .b:.<span.class="tok-type">u3</s |
| 41b40 | 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 |
| 41b60 | 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 22 | pe">u2</span>,.};..<span.class=" |
| 41b80 | 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= |
| 41ba0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6f 66 66 73 65 74 73 20 6f 66 20 6e 6f 6e 2d 62 | "tok-str">"offsets.of.non-b |
| 41bc0 | 79 74 65 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | yte-aligned.fields"</span>. |
| 41be0 | 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 |
| 41c00 | 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 |
| 41c20 | 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 |
| 41c40 | 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 74 | n.class="tok-builtin">@bitOffset |
| 41c60 | 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 3d | Of</span>(BitField,.<span.class= |
| 41c80 | 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 20 | "tok-str">"a"</span>). |
| 41ca0 | 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 |
| 41cc0 | 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 74 6f 6b 2d | pan>);.........<span.class="tok- |
| 41ce0 | 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 |
| 41d00 | 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 74 4f 66 3c 2f 73 70 | s="tok-builtin">@bitOffsetOf</sp |
| 41d20 | 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 6b 2d 73 | an>(BitField,.<span.class="tok-s |
| 41d40 | 74 72 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 | tr">"b"</span>).==.<sp |
| 41d60 | 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 3b | an.class="tok-number">3</span>); |
| 41d80 | 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 |
| 41da0 | 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 |
| 41dc0 | 2d 62 75 69 6c 74 69 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 | -builtin">@bitOffsetOf</span>(Bi |
| 41de0 | 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 22 3e 26 71 | tField,.<span.class="tok-str">&q |
| 41e00 | 75 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 | uot;c"</span>).==.<span.cla |
| 41e20 | 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 0a 20 20 20 20 | ss="tok-number">6</span>);...... |
| 41e40 | 20 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 |
| 41e60 | 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 |
| 41e80 | 74 69 6e 22 3e 40 6f 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 | tin">@offsetOf</span>(BitField,. |
| 41ea0 | 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 75 | <span.class="tok-str">"a&qu |
| 41ec0 | 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 2d | ot;</span>).==.<span.class="tok- |
| 41ee0 | 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 6e | number">0</span>);.........<span |
| 41f00 | 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 |
| 41f20 | 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 6f 66 66 | t(<span.class="tok-builtin">@off |
| 41f40 | 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 20 63 6c 61 | setOf</span>(BitField,.<span.cla |
| 41f60 | 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 73 70 61 6e | ss="tok-str">"b"</span |
| 41f80 | 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 72 22 3e 30 | >).==.<span.class="tok-number">0 |
| 41fa0 | 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 74 | </span>);.........<span.class="t |
| 41fc0 | 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 |
| 41fe0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6f 66 66 73 65 74 4f 66 3c 2f 73 70 | lass="tok-builtin">@offsetOf</sp |
| 42000 | 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 6b 2d 73 | an>(BitField,.<span.class="tok-s |
| 42020 | 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 20 3d 3d 20 3c 73 70 | tr">"c"</span>).==.<sp |
| 42040 | 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>); |
| 42060 | 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 | .....}.}</code></pre></figure><f |
| 42080 | 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 | igure><figcaption.class="shell-c |
| 420a0 | 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 | ap">Shell</figcaption><pre><samp |
| 420c0 | 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 62 69 74 4f 66 66 73 65 74 4f | >$.<kbd>zig.test.test_bitOffsetO |
| 420e0 | 66 5f 6f 66 66 73 65 74 4f 66 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 62 69 | f_offsetOf.zig</kbd>.1/1.test_bi |
| 42100 | 74 4f 66 66 73 65 74 4f 66 5f 6f 66 66 73 65 74 4f 66 2e 74 65 73 74 2e 6f 66 66 73 65 74 73 20 | tOffsetOf_offsetOf.test.offsets. |
| 42120 | 6f 66 20 6e 6f 6e 2d 62 79 74 65 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 73 2e 2e 2e 4f 4b 0a | of.non-byte-aligned.fields...OK. |
| 42140 | 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 | All.1.tests.passed..</samp></pre |
| 42160 | 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 61 63 6b | ></figure>........<p>.......Pack |
| 42180 | 65 64 20 73 74 72 75 63 74 73 20 68 61 76 65 20 74 68 65 20 73 61 6d 65 20 61 6c 69 67 6e 6d 65 | ed.structs.have.the.same.alignme |
| 421a0 | 6e 74 20 61 73 20 74 68 65 69 72 20 62 61 63 6b 69 6e 67 20 69 6e 74 65 67 65 72 2c 20 68 6f 77 | nt.as.their.backing.integer,.how |
| 421c0 | 65 76 65 72 2c 20 6f 76 65 72 61 6c 69 67 6e 65 64 0a 20 20 20 20 20 20 70 6f 69 6e 74 65 72 73 | ever,.overaligned.......pointers |
| 421e0 | 20 74 6f 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 20 63 61 6e 20 6f 76 65 72 72 69 64 65 20 | .to.packed.structs.can.override. |
| 42200 | 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | this:.......</p>.......<figure>< |
| 42220 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 | figcaption.class="zig-cap"><cite |
| 42240 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 6f 76 65 72 61 6c 69 67 6e 65 64 5f 70 | .class="file">test_overaligned_p |
| 42260 | 61 63 6b 65 64 5f 73 74 72 75 63 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 | acked_struct.zig</cite></figcapt |
| 42280 | 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ion><pre><code><span.class="tok- |
| 422a0 | 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 |
| 422c0 | 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>( |
| 422e0 | 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& |
| 42300 | 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- |
| 42320 | 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 65 | kw">const</span>.expect.=.std.te |
| 42340 | 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- |
| 42360 | 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 |
| 42380 | 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 |
| 423a0 | 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>.{.... |
| 423c0 | 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</ |
| 423e0 | 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 |
| 42400 | 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= |
| 42420 | 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 |
| 42440 | 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 |
| 42460 | 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 |
| 42480 | 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 |
| 424a0 | 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 |
| 424c0 | 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 |
| 424e0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3d 20 2e 7b 20 2e 61 20 3d 20 3c | ok-number">4</span>).=..{..a.=.< |
| 42500 | 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> |
| 42520 | 2c 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 | ,..b.=.<span.class="tok-number"> |
| 42540 | 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 73 3d 22 74 6f 6b | 2</span>.};.....<span.class="tok |
| 42560 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 3a 20 2a 3c 73 70 61 6e 20 63 6c | -kw">const</span>.ptr:.*<span.cl |
| 42580 | 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 6e 20 | ass="tok-kw">align</span>(<span. |
| 425a0 | 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 20 53 20 3d | class="tok-number">4</span>).S.= |
| 425c0 | 20 26 61 6d 70 3b 66 6f 6f 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .&foo;.....<span.class="tok- |
| 425e0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 5f 74 6f 5f 62 3a 20 2a 3c 73 70 61 | kw">const</span>.ptr_to_b:.*<spa |
| 42600 | 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 20 | n.class="tok-type">u32</span>.=. |
| 42620 | 26 61 6d 70 3b 70 74 72 2e 62 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | &ptr.b;.....<span.class="tok |
| 42640 | 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 5f 74 6f 5f 62 2e | -kw">try</span>.expect(ptr_to_b. |
| 42660 | 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 32 3c | *.==.<span.class="tok-number">2< |
| 42680 | 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | /span>);.}</code></pre></figure> |
| 426a0 | 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | <figure><figcaption.class="shell |
| 426c0 | 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 | -cap">Shell</figcaption><pre><sa |
| 426e0 | 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 6f 76 65 72 61 6c 69 67 | mp>$.<kbd>zig.test.test_overalig |
| 42700 | 6e 65 64 5f 70 61 63 6b 65 64 5f 73 74 72 75 63 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 | ned_packed_struct.zig</kbd>.1/1. |
| 42720 | 74 65 73 74 5f 6f 76 65 72 61 6c 69 67 6e 65 64 5f 70 61 63 6b 65 64 5f 73 74 72 75 63 74 2e 74 | test_overaligned_packed_struct.t |
| 42740 | 65 73 74 2e 6f 76 65 72 61 6c 69 67 6e 65 64 20 70 6f 69 6e 74 65 72 20 74 6f 20 70 61 63 6b 65 | est.overaligned.pointer.to.packe |
| 42760 | 64 20 73 74 72 75 63 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 | d.struct...OK.All.1.tests.passed |
| 42780 | 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 | ..</samp></pre></figure>........ |
| 427a0 | 3c 70 3e 0a 20 20 20 20 20 20 49 74 27 73 20 61 6c 73 6f 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 | <p>.......It's.also.possible.to. |
| 427c0 | 73 65 74 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 66 20 73 74 72 75 63 74 20 66 69 65 6c 64 73 3a 0a | set.alignment.of.struct.fields:. |
| 427e0 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | ......</p>.......<figure><figcap |
| 42800 | 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 | tion.class="zig-cap"><cite.class |
| 42820 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 61 6c 69 67 6e 65 64 5f 73 74 72 75 63 74 5f 66 69 65 6c | ="file">test_aligned_struct_fiel |
| 42840 | 64 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c | ds.zig</cite></figcaption><pre>< |
| 42860 | 63 6f 64 65 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 | code><span.class="tok-kw">const< |
| 42880 | 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 |
| 428a0 | 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 |
| 428c0 | 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 |
| 428e0 | 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< |
| 42900 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 45 71 75 61 6c 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 | /span>.expectEqual.=.std.testing |
| 42920 | 2e 65 78 70 65 63 74 45 71 75 61 6c 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .expectEqual;..<span.class="tok- |
| 42940 | 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 |
| 42960 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 6c 69 67 6e 65 64 20 73 74 72 75 63 74 20 66 69 65 6c 64 | -str">"aligned.struct.field |
| 42980 | 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 |
| 429a0 | 3d 22 74 6f 6b 2d 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 | ="tok-kw">const</span>.S.=.<span |
| 429c0 | 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>.{. |
| 429e0 | 20 20 20 20 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 | ........a:.<span.class="tok-type |
| 42a00 | 22 3e 75 33 32 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 | ">u32</span>.<span.class="tok-kw |
| 42a20 | 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- |
| 42a40 | 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 62 3a 20 3c 73 | number">2</span>),.........b:.<s |
| 42a60 | 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 20 | pan.class="tok-type">u32</span>. |
| 42a80 | 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 6e | <span.class="tok-kw">align</span |
| 42aa0 | 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 36 34 3c 2f 73 | >(<span.class="tok-number">64</s |
| 42ac0 | 70 61 6e 3e 29 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 | pan>),.....};.....<span.class="t |
| 42ae0 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 6f 6f 20 3d 20 53 7b 20 2e 61 20 3d 20 | ok-kw">var</span>.foo.=.S{..a.=. |
| 42b00 | 3c 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 |
| 42b20 | 3e 2c 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 | >,..b.=.<span.class="tok-number" |
| 42b40 | 3e 32 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 | >2</span>.};......<span.class="t |
| 42b60 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 45 71 75 61 6c 28 3c 73 | ok-kw">try</span>.expectEqual(<s |
| 42b80 | 70 61 6e 20 63 6c 61 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 | pan.class="tok-number">64</span> |
| 42ba0 | 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 61 6c 69 | ,.<span.class="tok-builtin">@ali |
| 42bc0 | 67 6e 4f 66 3c 2f 73 70 61 6e 3e 28 53 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | gnOf</span>(S));.....<span.class |
| 42be0 | 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 45 71 75 61 6c | ="tok-kw">try</span>.expectEqual |
| 42c00 | 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 3c 2f 73 70 | (*<span.class="tok-kw">align</sp |
| 42c20 | 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</ |
| 42c40 | 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 75 33 | span>).<span.class="tok-type">u3 |
| 42c60 | 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 69 6c 74 | 2</span>,.<span.class="tok-built |
| 42c80 | 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 2e 61 29 29 3b | in">@TypeOf</span>(&foo.a)); |
| 42ca0 | 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 |
| 42cc0 | 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 73 73 3d 22 74 | pan>.expectEqual(*<span.class="t |
| 42ce0 | 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= |
| 42d00 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | "tok-number">64</span>).<span.cl |
| 42d20 | 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 |
| 42d40 | 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 |
| 42d60 | 61 6e 3e 28 26 61 6d 70 3b 66 6f 6f 2e 62 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | an>(&foo.b));.}</code></pre> |
| 42d80 | 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | </figure><figure><figcaption.cla |
| 42da0 | 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e | ss="shell-cap">Shell</figcaption |
| 42dc0 | 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 | ><pre><samp>$.<kbd>zig.test.test |
| 42de0 | 5f 61 6c 69 67 6e 65 64 5f 73 74 72 75 63 74 5f 66 69 65 6c 64 73 2e 7a 69 67 3c 2f 6b 62 64 3e | _aligned_struct_fields.zig</kbd> |
| 42e00 | 0a 31 2f 31 20 74 65 73 74 5f 61 6c 69 67 6e 65 64 5f 73 74 72 75 63 74 5f 66 69 65 6c 64 73 2e | .1/1.test_aligned_struct_fields. |
| 42e20 | 74 65 73 74 2e 61 6c 69 67 6e 65 64 20 73 74 72 75 63 74 20 66 69 65 6c 64 73 2e 2e 2e 4f 4b 0a | test.aligned.struct.fields...OK. |
| 42e40 | 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 | All.1.tests.passed..</samp></pre |
| 42e60 | 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 71 75 61 | ></figure>........<p>.......Equa |
| 42e80 | 74 69 6e 67 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 20 72 65 73 75 6c 74 73 20 69 6e 20 61 | ting.packed.structs.results.in.a |
| 42ea0 | 20 63 6f 6d 70 61 72 69 73 6f 6e 20 6f 66 20 74 68 65 20 62 61 63 6b 69 6e 67 20 69 6e 74 65 67 | .comparison.of.the.backing.integ |
| 42ec0 | 65 72 2c 20 0a 20 20 20 20 20 20 61 6e 64 20 6f 6e 6c 79 20 77 6f 72 6b 73 20 66 6f 72 20 74 68 | er,........and.only.works.for.th |
| 42ee0 | 65 20 60 3d 3d 60 20 61 6e 64 20 60 21 3d 60 20 6f 70 65 72 61 74 6f 72 73 2e 0a 20 20 20 20 20 | e.`==`.and.`!=`.operators....... |
| 42f00 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | .</p>.......<figure><figcaption. |
| 42f20 | 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c | class="zig-cap"><cite.class="fil |
| 42f40 | 65 22 3e 74 65 73 74 5f 70 61 63 6b 65 64 5f 73 74 72 75 63 74 5f 65 71 75 61 6c 69 74 79 2e 7a | e">test_packed_struct_equality.z |
| 42f60 | 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ig</cite></figcaption><pre><code |
| 42f80 | 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 |
| 42fa0 | 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 69 | n>.std.=.<span.class="tok-builti |
| 42fc0 | 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 |
| 42fe0 | 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 3b | ok-str">"std"</span>); |
| 43000 | 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 |
| 43020 | 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 0a | n>.expect.=.std.testing.expect;. |
| 43040 | 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 |
| 43060 | 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 61 | >.<span.class="tok-str">"pa |
| 43080 | 63 6b 65 64 20 73 74 72 75 63 74 20 65 71 75 61 6c 69 74 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | cked.struct.equality"</span |
| 430a0 | 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 |
| 430c0 | 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 2d 6b | st</span>.S.=.<span.class="tok-k |
| 430e0 | 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 |
| 43100 | 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 61 3a | k-kw">struct</span>.{.........a: |
| 43120 | 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 |
| 43140 | 3e 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 74 6f 6b 2d 74 | >,.........b:.<span.class="tok-t |
| 43160 | 79 70 65 22 3e 75 34 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 | ype">u4</span>,.....};.....<span |
| 43180 | 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:. |
| 431a0 | 53 20 3d 20 2e 7b 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 | S.=..{..a.=.<span.class="tok-num |
| 431c0 | 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 2e 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ber">1</span>,..b.=.<span.class= |
| 431e0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 | "tok-number">2</span>.};.....<sp |
| 43200 | 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 79 | an.class="tok-kw">const</span>.y |
| 43220 | 3a 20 53 20 3d 20 2e 7b 20 2e 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | :.S.=..{..b.=.<span.class="tok-n |
| 43240 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 2e 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | umber">2</span>,..a.=.<span.clas |
| 43260 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c | s="tok-number">1</span>.};.....< |
| 43280 | 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 |
| 432a0 | 78 70 65 63 74 28 78 20 3d 3d 20 79 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 | xpect(x.==.y);.}</code></pre></f |
| 432c0 | 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | igure><figure><figcaption.class= |
| 432e0 | 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | "shell-cap">Shell</figcaption><p |
| 43300 | 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 70 61 | re><samp>$.<kbd>zig.test.test_pa |
| 43320 | 63 6b 65 64 5f 73 74 72 75 63 74 5f 65 71 75 61 6c 69 74 79 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 | cked_struct_equality.zig</kbd>.1 |
| 43340 | 2f 31 20 74 65 73 74 5f 70 61 63 6b 65 64 5f 73 74 72 75 63 74 5f 65 71 75 61 6c 69 74 79 2e 74 | /1.test_packed_struct_equality.t |
| 43360 | 65 73 74 2e 70 61 63 6b 65 64 20 73 74 72 75 63 74 20 65 71 75 61 6c 69 74 79 2e 2e 2e 4f 4b 0a | est.packed.struct.equality...OK. |
| 43380 | 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 | All.1.tests.passed..</samp></pre |
| 433a0 | 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 69 6e | ></figure>........<p>.......Usin |
| 433c0 | 67 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 20 77 69 74 68 20 3c 61 20 68 72 65 66 3d 22 23 | g.packed.structs.with.<a.href="# |
| 433e0 | 76 6f 6c 61 74 69 6c 65 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 61 3e 20 69 73 20 70 72 6f 62 6c 65 | volatile">volatile</a>.is.proble |
| 43400 | 6d 61 74 69 63 2c 20 61 6e 64 20 6d 61 79 20 62 65 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f | matic,.and.may.be.a.compile.erro |
| 43420 | 72 20 69 6e 20 74 68 65 20 66 75 74 75 72 65 2e 0a 20 20 20 20 20 20 46 6f 72 20 64 65 74 61 69 | r.in.the.future........For.detai |
| 43440 | 6c 73 20 6f 6e 20 74 68 69 73 20 73 75 62 73 63 72 69 62 65 20 74 6f 0a 20 20 20 20 20 20 3c 61 | ls.on.this.subscribe.to.......<a |
| 43460 | 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 61 6e | .href="https://github.com/ziglan |
| 43480 | 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 31 37 36 31 22 3e 74 68 69 73 20 69 73 73 75 65 3c 2f 61 | g/zig/issues/1761">this.issue</a |
| 434a0 | 3e 2e 0a 20 20 20 20 20 20 54 4f 44 4f 20 75 70 64 61 74 65 20 74 68 65 73 65 20 64 6f 63 73 20 | >........TODO.update.these.docs. |
| 434c0 | 77 69 74 68 20 61 20 72 65 63 6f 6d 6d 65 6e 64 61 74 69 6f 6e 20 6f 6e 20 68 6f 77 20 74 6f 20 | with.a.recommendation.on.how.to. |
| 434e0 | 75 73 65 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 20 77 69 74 68 20 4d 4d 49 4f 0a 20 20 20 | use.packed.structs.with.MMIO.... |
| 43500 | 20 20 20 28 74 68 65 20 75 73 65 20 63 61 73 65 20 66 6f 72 20 76 6f 6c 61 74 69 6c 65 20 70 61 | ...(the.use.case.for.volatile.pa |
| 43520 | 63 6b 65 64 20 73 74 72 75 63 74 73 29 20 6f 6e 63 65 20 74 68 69 73 20 69 73 73 75 65 20 69 73 | cked.structs).once.this.issue.is |
| 43540 | 20 72 65 73 6f 6c 76 65 64 2e 0a 20 20 20 20 20 20 44 6f 6e 27 74 20 77 6f 72 72 79 2c 20 74 68 | .resolved........Don't.worry,.th |
| 43560 | 65 72 65 20 77 69 6c 6c 20 62 65 20 61 20 67 6f 6f 64 20 73 6f 6c 75 74 69 6f 6e 20 66 6f 72 20 | ere.will.be.a.good.solution.for. |
| 43580 | 74 68 69 73 20 75 73 65 20 63 61 73 65 20 69 6e 20 7a 69 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | this.use.case.in.zig........</p> |
| 435a0 | 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 53 74 72 75 63 74 2d 4e 61 | ...............<h3.id="Struct-Na |
| 435c0 | 6d 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 74 72 75 63 74 2d 4e 61 6d 69 6e | ming"><a.href="#toc-Struct-Namin |
| 435e0 | 67 22 3e 53 74 72 75 63 74 20 4e 61 6d 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | g">Struct.Naming</a>.<a.class="h |
| 43600 | 64 72 22 20 68 72 65 66 3d 22 23 53 74 72 75 63 74 2d 4e 61 6d 69 6e 67 22 3e c2 a7 3c 2f 61 3e | dr".href="#Struct-Naming">..</a> |
| 43620 | 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 69 6e 63 65 20 61 6c 6c 20 73 74 72 75 63 74 | </h3>........<p>Since.all.struct |
| 43640 | 73 20 61 72 65 20 61 6e 6f 6e 79 6d 6f 75 73 2c 20 5a 69 67 20 69 6e 66 65 72 73 20 74 68 65 20 | s.are.anonymous,.Zig.infers.the. |
| 43660 | 74 79 70 65 20 6e 61 6d 65 20 62 61 73 65 64 20 6f 6e 20 61 20 66 65 77 20 72 75 6c 65 73 2e 3c | type.name.based.on.a.few.rules.< |
| 43680 | 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 49 66 20 | /p>.......<ul>...........<li>If. |
| 436a0 | 74 68 65 20 73 74 72 75 63 74 20 69 73 20 69 6e 20 74 68 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 | the.struct.is.in.the.initializat |
| 436c0 | 69 6f 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 6f 66 20 61 20 76 61 72 69 61 62 6c 65 2c 20 69 74 | ion.expression.of.a.variable,.it |
| 436e0 | 20 67 65 74 73 20 6e 61 6d 65 64 20 61 66 74 65 72 0a 20 20 20 20 20 20 20 20 20 20 74 68 61 74 | .gets.named.after...........that |
| 43700 | 20 76 61 72 69 61 62 6c 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 | .variable.</li>...........<li>If |
| 43720 | 20 74 68 65 20 73 74 72 75 63 74 20 69 73 20 69 6e 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 | .the.struct.is.in.the.<code><spa |
| 43740 | 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 3c 2f | n.class="tok-kw">return</span></ |
| 43760 | 63 6f 64 65 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 | code>.expression,.it.gets.named. |
| 43780 | 61 66 74 65 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 | after...........the.function.it. |
| 437a0 | 69 73 20 72 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 | is.returning.from,.with.the.para |
| 437c0 | 6d 65 74 65 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 | meter.values.serialized.</li>... |
| 437e0 | 20 20 20 20 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 | ........<li>Otherwise,.the.struc |
| 43800 | 74 20 67 65 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 66 69 6c | t.gets.a.name.such.as.<code>(fil |
| 43820 | 65 6e 61 6d 65 2e 66 75 6e 63 6e 61 6d 65 5f 5f 73 74 72 75 63 74 5f 49 44 29 3c 2f 63 6f 64 65 | ename.funcname__struct_ID)</code |
| 43840 | 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 74 68 65 20 73 74 72 | >.</li>...........<li>If.the.str |
| 43860 | 75 63 74 20 69 73 20 64 65 63 6c 61 72 65 64 20 69 6e 73 69 64 65 20 61 6e 6f 74 68 65 72 20 73 | uct.is.declared.inside.another.s |
| 43880 | 74 72 75 63 74 2c 20 69 74 20 67 65 74 73 20 6e 61 6d 65 64 20 61 66 74 65 72 20 62 6f 74 68 20 | truct,.it.gets.named.after.both. |
| 438a0 | 74 68 65 20 70 61 72 65 6e 74 0a 20 20 20 20 20 20 20 20 20 20 73 74 72 75 63 74 20 61 6e 64 20 | the.parent...........struct.and. |
| 438c0 | 74 68 65 20 6e 61 6d 65 20 69 6e 66 65 72 72 65 64 20 62 79 20 74 68 65 20 70 72 65 76 69 6f 75 | the.name.inferred.by.the.previou |
| 438e0 | 73 20 72 75 6c 65 73 2c 20 73 65 70 61 72 61 74 65 64 20 62 79 20 61 20 64 6f 74 2e 3c 2f 6c 69 | s.rules,.separated.by.a.dot.</li |
| 43900 | 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 | >.......</ul>.......<figure><fig |
| 43920 | 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c | caption.class="zig-cap"><cite.cl |
| 43940 | 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 63 69 74 65 | ass="file">struct_name.zig</cite |
| 43960 | 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></figcaption><pre><code><span.c |
| 43980 | 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.= |
| 439a0 | 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 |
| 439c0 | 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"> |
| 439e0 | 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. |
| 43a00 | 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. |
| 43a20 | 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 |
| 43a40 | 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 |
| 43a60 | 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>.{ |
| 43a80 | 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< |
| 43aa0 | 2f 73 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 | /span>.Foo.=.<span.class="tok-kw |
| 43ac0 | 22 3e 73 74 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 | ">struct</span>.{};.....std.debu |
| 43ae0 | 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 71 | g.print(<span.class="tok-str">&q |
| 43b00 | 75 6f 74 3b 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 | uot;variable:.{s}\n"</span> |
| 43b20 | 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 |
| 43b40 | 79 70 65 4e 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 | ypeName</span>(Foo)});.....std.d |
| 43b60 | 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 22 | ebug.print(<span.class="tok-str" |
| 43b80 | 3e 26 71 75 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 | >"anonymous:.{s}\n"</s |
| 43ba0 | 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 6e | pan>,..{<span.class="tok-builtin |
| 43bc0 | 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 61 73 73 3d 22 | ">@typeName</span>(<span.class=" |
| 43be0 | 74 6f 6b 2d 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 | tok-kw">struct</span>.{})});.... |
| 43c00 | 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 |
| 43c20 | 6b 2d 73 74 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 | k-str">"function:.{s}\n&quo |
| 43c40 | 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 6b 2d 62 75 | t;</span>,..{<span.class="tok-bu |
| 43c60 | 69 6c 74 69 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 | iltin">@typeName</span>(List(<sp |
| 43c80 | 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 29 | an.class="tok-type">i32</span>)) |
| 43ca0 | 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 6e 3c 2f | });.}..<span.class="tok-kw">fn</ |
| 43cc0 | 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 4c 69 73 74 3c | span>.<span.class="tok-fn">List< |
| 43ce0 | 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 |
| 43d00 | 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- |
| 43d20 | 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 61 73 73 3d 22 | type">type</span>).<span.class=" |
| 43d40 | 74 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 | tok-type">type</span>.{.....<spa |
| 43d60 | 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>.< |
| 43d80 | 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 6e | span.class="tok-kw">struct</span |
| 43da0 | 3e 20 7b 0a 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 | >.{.........x:.T,.....};.}</code |
| 43dc0 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | ></pre></figure><figure><figcapt |
| 43de0 | 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 | ion.class="shell-cap">Shell</fig |
| 43e00 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 | caption><pre><samp>$.<kbd>zig.bu |
| 43e20 | 69 6c 64 2d 65 78 65 20 73 74 72 75 63 74 5f 6e 61 6d 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 | ild-exe.struct_name.zig</kbd>.$. |
| 43e40 | 3c 6b 62 64 3e 2e 2f 73 74 72 75 63 74 5f 6e 61 6d 65 3c 2f 6b 62 64 3e 0a 76 61 72 69 61 62 6c | <kbd>./struct_name</kbd>.variabl |
| 43e60 | 65 3a 20 73 74 72 75 63 74 5f 6e 61 6d 65 2e 6d 61 69 6e 2e 46 6f 6f 0a 61 6e 6f 6e 79 6d 6f 75 | e:.struct_name.main.Foo.anonymou |
| 43e80 | 73 3a 20 73 74 72 75 63 74 5f 6e 61 6d 65 2e 6d 61 69 6e 5f 5f 73 74 72 75 63 74 5f 32 34 31 34 | s:.struct_name.main__struct_2414 |
| 43ea0 | 37 0a 66 75 6e 63 74 69 6f 6e 3a 20 73 74 72 75 63 74 5f 6e 61 6d 65 2e 4c 69 73 74 28 69 33 32 | 7.function:.struct_name.List(i32 |
| 43ec0 | 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 | ).</samp></pre></figure>........ |
| 43ee0 | 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 41 6e 6f 6e 79 6d 6f 75 73 2d 53 74 72 75 63 74 | ........<h3.id="Anonymous-Struct |
| 43f00 | 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 79 6d 6f | -Literals"><a.href="#toc-Anonymo |
| 43f20 | 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 74 | us-Struct-Literals">Anonymous.St |
| 43f40 | 72 75 63 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 | ruct.Literals</a>.<a.class="hdr" |
| 43f60 | 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 6c | .href="#Anonymous-Struct-Literal |
| 43f80 | 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 20 20 20 | s">..</a></h3>........<p>....... |
| 43fa0 | 5a 69 67 20 61 6c 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 | Zig.allows.omitting.the.struct.t |
| 43fc0 | 79 70 65 20 6f 66 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 | ype.of.a.literal..When.the.resul |
| 43fe0 | 74 20 69 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 | t.is.<a.href="#Type-Coercion">co |
| 44000 | 65 72 63 65 64 3c 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 | erced</a>,.......the.struct.lite |
| 44020 | 72 61 6c 20 77 69 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 | ral.will.directly.instantiate.th |
| 44040 | 65 20 3c 61 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 65 6d 61 | e.<a.href="#Result-Location-Sema |
| 44060 | 6e 74 69 63 73 22 3e 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 3c 2f 61 3e 2c 0a 20 20 20 20 | ntics">result.location</a>,..... |
| 44080 | 20 20 77 69 74 68 20 6e 6f 20 63 6f 70 79 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | ..with.no.copy:.......</p>...... |
| 440a0 | 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d | .<figure><figcaption.class="zig- |
| 440c0 | 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 74 72 | cap"><cite.class="file">test_str |
| 440e0 | 75 63 74 5f 72 65 73 75 6c 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | uct_result.zig</cite></figcaptio |
| 44100 | 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n><pre><code><span.class="tok-kw |
| 44120 | 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 |
| 44140 | 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 |
| 44160 | 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 |
| 44180 | 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 |
| 441a0 | 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 |
| 441c0 | 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 |
| 441e0 | 22 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 | ">const</span>.Point.=.<span.cla |
| 44200 | 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 20 78 3a 20 3c | ss="tok-kw">struct</span>.{.x:.< |
| 44220 | 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> |
| 44240 | 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 69 33 32 3c | ,.y:.<span.class="tok-type">i32< |
| 44260 | 2f 73 70 61 6e 3e 20 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"> |
| 44280 | 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 |
| 442a0 | 22 3e 26 71 75 6f 74 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 | ">"anonymous.struct.literal |
| 442c0 | 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= |
| 442e0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 3a 20 50 6f 69 6e 74 20 | "tok-kw">const</span>.pt:.Point. |
| 44300 | 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 2e 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | =..{..........x.=.<span.class="t |
| 44320 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 79 | ok-number">13</span>,..........y |
| 44340 | 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 37 3c 2f | .=.<span.class="tok-number">67</ |
| 44360 | 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 74 | span>,.....};.....<span.class="t |
| 44380 | 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 2e 78 20 3d 3d | ok-kw">try</span>.expect(pt.x.== |
| 443a0 | 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 33 3c 2f 73 70 | .<span.class="tok-number">13</sp |
| 443c0 | 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 |
| 443e0 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 74 2e 79 20 3d 3d 20 3c 73 70 61 6e 20 63 | ry</span>.expect(pt.y.==.<span.c |
| 44400 | 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 29 3b 0a 7d 3c | lass="tok-number">67</span>);.}< |
| 44420 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 | /code></pre></figure><figure><fi |
| 44440 | 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c | gcaption.class="shell-cap">Shell |
| 44460 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a | </figcaption><pre><samp>$.<kbd>z |
| 44480 | 69 67 20 74 65 73 74 20 74 65 73 74 5f 73 74 72 75 63 74 5f 72 65 73 75 6c 74 2e 7a 69 67 3c 2f | ig.test.test_struct_result.zig</ |
| 444a0 | 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 74 72 75 63 74 5f 72 65 73 75 6c 74 2e 74 65 73 74 | kbd>.1/1.test_struct_result.test |
| 444c0 | 2e 61 6e 6f 6e 79 6d 6f 75 73 20 73 74 72 75 63 74 20 6c 69 74 65 72 61 6c 2e 2e 2e 4f 4b 0a 41 | .anonymous.struct.literal...OK.A |
| 444e0 | 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e | ll.1.tests.passed..</samp></pre> |
| 44500 | 3c 2f 66 69 67 75 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 73 | </figure>........<p>.......The.s |
| 44520 | 74 72 75 63 74 20 74 79 70 65 20 63 61 6e 20 62 65 20 69 6e 66 65 72 72 65 64 2e 20 48 65 72 65 | truct.type.can.be.inferred..Here |
| 44540 | 20 74 68 65 20 3c 61 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 | .the.<a.href="#Result-Location-S |
| 44560 | 65 6d 61 6e 74 69 63 73 22 3e 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 3c 2f 61 3e 0a 20 20 | emantics">result.location</a>... |
| 44580 | 20 20 20 20 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 | ....does.not.include.a.type,.and |
| 445a0 | 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 20 3c | .so.Zig.infers.the.type:.......< |
| 445c0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | /p>.......<figure><figcaption.cl |
| 445e0 | 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ass="zig-cap"><cite.class="file" |
| 44600 | 3e 74 65 73 74 5f 61 6e 6f 6e 79 6d 6f 75 73 5f 73 74 72 75 63 74 2e 7a 69 67 3c 2f 63 69 74 65 | >test_anonymous_struct.zig</cite |
| 44620 | 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></figcaption><pre><code><span.c |
| 44640 | 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.= |
| 44660 | 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 |
| 44680 | 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"> |
| 446a0 | 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 |
| 446c0 | 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 |
| 446e0 | 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 |
| 44700 | 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. |
| 44720 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 75 6c 6c 79 20 61 6e 6f 6e | class="tok-str">"fully.anon |
| 44740 | 79 6d 6f 75 73 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 | ymous.struct"</span>.{..... |
| 44760 | 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>. |
| 44780 | 63 68 65 63 6b 28 2e 7b 0a 20 20 20 20 20 20 20 20 2e 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c | check(.{..........int.=.<span.cl |
| 447a0 | 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 3c 73 70 | ass="tok-builtin">@as</span>(<sp |
| 447c0 | 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>,. |
| 447e0 | 3c 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 |
| 44800 | 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 2e 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c | pan>),..........float.=.<span.cl |
| 44820 | 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 3c 73 70 | ass="tok-builtin">@as</span>(<sp |
| 44840 | 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 2c 20 | an.class="tok-type">f64</span>,. |
| 44860 | 3c 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</ |
| 44880 | 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 2e 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | span>),..........b.=.<span.class |
| 448a0 | 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 20 20 20 | ="tok-null">true</span>,........ |
| 448c0 | 20 2e 73 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 | ..s.=.<span.class="tok-str">&quo |
| 448e0 | 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 29 3b 0a 7d 0a 0a 3c 73 | t;hi"</span>,.....});.}..<s |
| 44900 | 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 |
| 44920 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 63 68 65 63 6b 3c 2f 73 70 61 6e 3e 28 61 | an.class="tok-fn">check</span>(a |
| 44940 | 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 6e 79 74 79 70 | rgs:.<span.class="tok-kw">anytyp |
| 44960 | 65 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 65 | e</span>).!<span.class="tok-type |
| 44980 | 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= |
| 449a0 | 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 67 73 2e | "tok-kw">try</span>.expect(args. |
| 449c0 | 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 3e | int.==.<span.class="tok-number"> |
| 449e0 | 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 74 | 1234</span>);.....<span.class="t |
| 44a00 | 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 66 6c | ok-kw">try</span>.expect(args.fl |
| 44a20 | 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 65 72 22 3e | oat.==.<span.class="tok-number"> |
| 44a40 | 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 63 6c 61 73 73 3d 22 | 12.34</span>);.....<span.class=" |
| 44a60 | 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 67 73 2e 62 | tok-kw">try</span>.expect(args.b |
| 44a80 | 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< |
| 44aa0 | 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 20 63 6c 61 73 73 | /span>.expect(args.s[<span.class |
| 44ac0 | 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 |
| 44ae0 | 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 20 | .class="tok-str">'h'</span>);... |
| 44b00 | 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 |
| 44b20 | 3e 20 65 78 70 65 63 74 28 61 72 67 73 2e 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >.expect(args.s[<span.class="tok |
| 44b40 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | -number">1</span>].==.<span.clas |
| 44b60 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 69 27 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 | s="tok-str">'i'</span>);.}</code |
| 44b80 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | ></pre></figure><figure><figcapt |
| 44ba0 | 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 | ion.class="shell-cap">Shell</fig |
| 44bc0 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 | caption><pre><samp>$.<kbd>zig.te |
| 44be0 | 73 74 20 74 65 73 74 5f 61 6e 6f 6e 79 6d 6f 75 73 5f 73 74 72 75 63 74 2e 7a 69 67 3c 2f 6b 62 | st.test_anonymous_struct.zig</kb |
| 44c00 | 64 3e 0a 31 2f 31 20 74 65 73 74 5f 61 6e 6f 6e 79 6d 6f 75 73 5f 73 74 72 75 63 74 2e 74 65 73 | d>.1/1.test_anonymous_struct.tes |
| 44c20 | 74 2e 66 75 6c 6c 79 20 61 6e 6f 6e 79 6d 6f 75 73 20 73 74 72 75 63 74 2e 2e 2e 4f 4b 0a 41 6c | t.fully.anonymous.struct...OK.Al |
| 44c40 | 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c | l.1.tests.passed..</samp></pre>< |
| 44c60 | 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 | /figure>................<h3.id=" |
| 44c80 | 54 75 70 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 75 70 6c 65 73 22 3e 54 75 | Tuples"><a.href="#toc-Tuples">Tu |
| 44ca0 | 70 6c 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 54 | ples</a>.<a.class="hdr".href="#T |
| 44cc0 | 75 70 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 | uples">..</a></h3>........<p>... |
| 44ce0 | 20 20 20 20 41 6e 6f 6e 79 6d 6f 75 73 20 73 74 72 75 63 74 73 20 63 61 6e 20 62 65 20 63 72 65 | ....Anonymous.structs.can.be.cre |
| 44d00 | 61 74 65 64 20 77 69 74 68 6f 75 74 20 73 70 65 63 69 66 79 69 6e 67 20 66 69 65 6c 64 20 6e 61 | ated.without.specifying.field.na |
| 44d20 | 6d 65 73 2c 20 61 6e 64 20 61 72 65 20 72 65 66 65 72 72 65 64 20 74 6f 20 61 73 20 22 74 75 70 | mes,.and.are.referred.to.as."tup |
| 44d40 | 6c 65 73 22 2e 20 41 6e 20 65 6d 70 74 79 20 74 75 70 6c 65 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 | les"..An.empty.tuple.looks.like. |
| 44d60 | 3c 63 6f 64 65 3e 2e 7b 7d 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 63 61 6e 20 62 65 20 73 65 65 6e | <code>.{}</code>.and.can.be.seen |
| 44d80 | 20 69 6e 20 6f 6e 65 20 6f 66 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 48 65 6c 6c 6f 2d 57 | .in.one.of.the.<a.href="#Hello-W |
| 44da0 | 6f 72 6c 64 22 3e 48 65 6c 6c 6f 20 57 6f 72 6c 64 20 65 78 61 6d 70 6c 65 73 3c 2f 61 3e 2e 0a | orld">Hello.World.examples</a>.. |
| 44dc0 | 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 20 66 | ......</p>.......<p>.......The.f |
| 44de0 | 69 65 6c 64 73 20 61 72 65 20 69 6d 70 6c 69 63 69 74 6c 79 20 6e 61 6d 65 64 20 75 73 69 6e 67 | ields.are.implicitly.named.using |
| 44e00 | 20 6e 75 6d 62 65 72 73 20 73 74 61 72 74 69 6e 67 20 66 72 6f 6d 20 30 2e 20 42 65 63 61 75 73 | .numbers.starting.from.0..Becaus |
| 44e20 | 65 20 74 68 65 69 72 20 6e 61 6d 65 73 20 61 72 65 20 69 6e 74 65 67 65 72 73 2c 0a 20 20 20 20 | e.their.names.are.integers,..... |
| 44e40 | 20 20 74 68 65 79 20 63 61 6e 6e 6f 74 20 62 65 20 61 63 63 65 73 73 65 64 20 77 69 74 68 20 3c | ..they.cannot.be.accessed.with.< |
| 44e60 | 63 6f 64 65 3e 2e 3c 2f 63 6f 64 65 3e 20 73 79 6e 74 61 78 20 77 69 74 68 6f 75 74 20 61 6c 73 | code>.</code>.syntax.without.als |
| 44e80 | 6f 20 77 72 61 70 70 69 6e 67 20 74 68 65 6d 20 69 6e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 40 | o.wrapping.them.in.......<code>@ |
| 44ea0 | 26 71 75 6f 74 3b 26 71 75 6f 74 3b 3c 2f 63 6f 64 65 3e 2e 20 4e 61 6d 65 73 20 69 6e 73 69 64 | ""</code>..Names.insid |
| 44ec0 | 65 20 3c 63 6f 64 65 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 | e.<code>@""</code>.are |
| 44ee0 | 20 61 6c 77 61 79 73 20 72 65 63 6f 67 6e 69 73 65 64 20 61 73 0a 20 20 20 20 20 20 3c 61 20 68 | .always.recognised.as.......<a.h |
| 44f00 | 72 65 66 3d 22 23 49 64 65 6e 74 69 66 69 65 72 73 22 3e 69 64 65 6e 74 69 66 69 65 72 73 3c 2f | ref="#Identifiers">identifiers</ |
| 44f20 | 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 20 20 20 4c | a>........</p>.......<p>.......L |
| 44f40 | 69 6b 65 20 61 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 | ike.arrays,.tuples.have.a..len.f |
| 44f60 | 69 65 6c 64 2c 20 63 61 6e 20 62 65 20 69 6e 64 65 78 65 64 20 28 70 72 6f 76 69 64 65 64 20 74 | ield,.can.be.indexed.(provided.t |
| 44f80 | 68 65 20 69 6e 64 65 78 20 69 73 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 29 0a 20 20 20 20 | he.index.is.comptime-known)..... |
| 44fa0 | 20 20 61 6e 64 20 77 6f 72 6b 20 77 69 74 68 20 74 68 65 20 2b 2b 20 61 6e 64 20 2a 2a 20 6f 70 | ..and.work.with.the.++.and.**.op |
| 44fc0 | 65 72 61 74 6f 72 73 2e 20 54 68 65 79 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 69 74 65 72 61 74 | erators..They.can.also.be.iterat |
| 44fe0 | 65 64 20 6f 76 65 72 20 77 69 74 68 20 3c 61 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 66 6f | ed.over.with.<a.href="#inline-fo |
| 45000 | 72 22 3e 69 6e 6c 69 6e 65 20 66 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | r">inline.for</a>........</p>... |
| 45020 | 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a | ....<figure><figcaption.class="z |
| 45040 | 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f | ig-cap"><cite.class="file">test_ |
| 45060 | 74 75 70 6c 65 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | tuples.zig</cite></figcaption><p |
| 45080 | 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | re><code><span.class="tok-kw">co |
| 450a0 | 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 |
| 450c0 | 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. |
| 450e0 | 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"< |
| 45100 | 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 |
| 45120 | 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. |
| 45140 | 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 65 | expect;..<span.class="tok-kw">te |
| 45160 | 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"> |
| 45180 | 26 71 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 | "tuple"</span>.{.....< |
| 451a0 | 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> |
| 451c0 | 20 76 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 | .values.=..{.........<span.class |
| 451e0 | 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. |
| 45200 | 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 73 70 | class="tok-type">u32</span>,.<sp |
| 45220 | 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 |
| 45240 | 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 6b 2d 62 75 69 | >),.........<span.class="tok-bui |
| 45260 | 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 |
| 45280 | 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= |
| 452a0 | 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 0a 20 20 20 20 | "tok-number">12.34</span>),..... |
| 452c0 | 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 75 65 3c | ....<span.class="tok-null">true< |
| 452e0 | 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 22 74 6f 6b | /span>,.........<span.class="tok |
| 45300 | 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 20 20 | -str">"hi"</span>,.... |
| 45320 | 20 7d 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 | .}.++..{<span.class="tok-null">f |
| 45340 | 61 6c 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 | alse</span>}.**.<span.class="tok |
| 45360 | 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 6c 61 | -number">2</span>;.....<span.cla |
| 45380 | 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 |
| 453a0 | 6c 75 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 | lues[<span.class="tok-number">0< |
| 453c0 | 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 62 | /span>].==.<span.class="tok-numb |
| 453e0 | 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 |
| 45400 | 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 6c | s="tok-kw">try</span>.expect(val |
| 45420 | 75 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 34 3c 2f | ues[<span.class="tok-number">4</ |
| 45440 | 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 6c 6c 22 | span>].==.<span.class="tok-null" |
| 45460 | 3e 66 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 | >false</span>);.....<span.class= |
| 45480 | 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 |
| 454a0 | 73 73 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 2c 20 | ss="tok-kw">for</span>.(values,. |
| 454c0 | 3c 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 |
| 454e0 | 3e 2e 2e 29 20 7c 76 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 | >..).|v,.i|.{.........<span.clas |
| 45500 | 73 3d 22 74 6f 6b 2d 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 | s="tok-kw">if</span>.(i.!=.<span |
| 45520 | 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 20 3c 73 | .class="tok-number">2</span>).<s |
| 45540 | 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 73 70 61 | pan.class="tok-kw">continue</spa |
| 45560 | 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 6f 6b 2d 6b 77 22 | n>;.........<span.class="tok-kw" |
| 45580 | 3e 74 72 79 3c 2f 73 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 | >try</span>.expect(v);.....}.... |
| 455a0 | 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> |
| 455c0 | 20 65 78 70 65 63 74 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 | .expect(values.len.==.<span.clas |
| 455e0 | 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 20 20 20 3c 73 | s="tok-number">6</span>);.....<s |
| 45600 | 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 |
| 45620 | 70 65 63 74 28 76 61 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 | pect(values.@"3"[<span |
| 45640 | 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 20 3d 3d | .class="tok-number">0</span>].== |
| 45660 | 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 2f 73 70 61 6e | .<span.class="tok-str">'h'</span |
| 45680 | 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 | >);.}</code></pre></figure><figu |
| 456a0 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 | re><figcaption.class="shell-cap" |
| 456c0 | 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 | >Shell</figcaption><pre><samp>$. |
| 456e0 | 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 74 75 70 6c 65 73 2e 7a 69 67 3c 2f 6b | <kbd>zig.test.test_tuples.zig</k |
| 45700 | 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 74 75 70 6c 65 73 2e 74 65 73 74 2e 74 75 70 6c 65 2e 2e | bd>.1/1.test_tuples.test.tuple.. |
| 45720 | 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c | .OK.All.1.tests.passed..</samp>< |
| 45740 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 44 65 | /pre></figure>........<h4.id="De |
| 45760 | 73 74 72 75 63 74 75 72 69 6e 67 2d 54 75 70 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | structuring-Tuples"><a.href="#to |
| 45780 | 63 2d 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 54 75 70 6c 65 73 22 3e 44 65 73 74 72 75 63 74 | c-Destructuring-Tuples">Destruct |
| 457a0 | 75 72 69 6e 67 20 54 75 70 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | uring.Tuples</a>.<a.class="hdr". |
| 457c0 | 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 54 75 70 6c 65 73 22 3e c2 a7 3c | href="#Destructuring-Tuples">..< |
| 457e0 | 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 75 70 6c | /a></h4>........<p>.........Tupl |
| 45800 | 65 73 20 63 61 6e 20 62 65 20 3c 61 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e | es.can.be.<a.href="#Destructurin |
| 45820 | 67 22 3e 64 65 73 74 72 75 63 74 75 72 65 64 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | g">destructured</a>........</p>. |
| 45840 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 75 70 6c 65 20 64 65 73 74 72 75 63 74 | ......<p>.........Tuple.destruct |
| 45860 | 75 72 69 6e 67 20 69 73 20 68 65 6c 70 66 75 6c 20 66 6f 72 20 72 65 74 75 72 6e 69 6e 67 20 6d | uring.is.helpful.for.returning.m |
| 45880 | 75 6c 74 69 70 6c 65 20 76 61 6c 75 65 73 20 66 72 6f 6d 20 61 20 62 6c 6f 63 6b 3a 0a 20 20 20 | ultiple.values.from.a.block:.... |
| 458a0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | ...</p>.......<figure><figcaptio |
| 458c0 | 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 | n.class="zig-cap"><cite.class="f |
| 458e0 | 69 6c 65 22 3e 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f 62 6c 6f 63 6b 2e 7a 69 67 3c 2f 63 69 | ile">destructuring_block.zig</ci |
| 45900 | 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e | te></figcaption><pre><code><span |
| 45920 | 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 72 69 | .class="tok-kw">const</span>.pri |
| 45940 | 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 3e 40 | nt.=.<span.class="tok-builtin">@ |
| 45960 | 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 |
| 45980 | 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 62 75 | tr">"std"</span>).debu |
| 459a0 | 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 3e 70 | g.print;..<span.class="tok-kw">p |
| 459c0 | 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 66 | ub</span>.<span.class="tok-kw">f |
| 459e0 | 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 61 | n</span>.<span.class="tok-fn">ma |
| 45a00 | 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 70 | in</span>().<span.class="tok-typ |
| 45a20 | 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 |
| 45a40 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 69 67 69 74 73 20 3d 20 | ="tok-kw">const</span>.digits.=. |
| 45a60 | 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 38 3c 2f 73 70 | [_]<span.class="tok-type">i8</sp |
| 45a80 | 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 72 22 3e 33 | an>.{.<span.class="tok-number">3 |
| 45aa0 | 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 |
| 45ac0 | 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 6f 6b 2d 6e 75 6d | ">8</span>,.<span.class="tok-num |
| 45ae0 | 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 3d 22 74 6f 6b 2d | ber">9</span>,.<span.class="tok- |
| 45b00 | 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 |
| 45b20 | 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 73 | ok-number">7</span>,.<span.class |
| 45b40 | 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 6c | ="tok-number">4</span>,.<span.cl |
| 45b60 | 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 7d 3b 0a 0a 20 20 | ass="tok-number">1</span>.};.... |
| 45b80 | 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 |
| 45ba0 | 61 6e 3e 20 6d 69 6e 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 | an>.min,.<span.class="tok-kw">co |
| 45bc0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 61 78 20 3d 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 | nst</span>.max.=.blk:.{......... |
| 45be0 | 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>. |
| 45c00 | 6d 69 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 69 38 3c 2f | min:.<span.class="tok-type">i8</ |
| 45c20 | 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" |
| 45c40 | 3e 31 32 37 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 | >127</span>;.........<span.class |
| 45c60 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6d 61 78 3a 20 3c 73 70 61 6e 20 | ="tok-kw">var</span>.max:.<span. |
| 45c80 | 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 3d 20 2d 3c 73 | class="tok-type">i8</span>.=.-<s |
| 45ca0 | 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 38 3c 2f 73 70 61 6e | pan.class="tok-number">128</span |
| 45cc0 | 3e 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 6b 2d 6b 77 22 | >;..........<span.class="tok-kw" |
| 45ce0 | 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 64 69 67 69 74 73 29 20 7c 64 69 67 69 74 7c 20 7b 0a 20 | >for</span>.(digits).|digit|.{.. |
| 45d00 | 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"> |
| 45d20 | 69 66 3c 2f 73 70 61 6e 3e 20 28 64 69 67 69 74 20 26 6c 74 3b 20 6d 69 6e 29 20 6d 69 6e 20 3d | if</span>.(digit.<.min).min.= |
| 45d40 | 20 64 69 67 69 74 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 | .digit;.............<span.class= |
| 45d60 | 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 64 69 67 69 74 20 26 67 74 3b 20 6d | "tok-kw">if</span>.(digit.>.m |
| 45d80 | 61 78 29 20 6d 61 78 20 3d 20 64 69 67 69 74 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 | ax).max.=.digit;.........}...... |
| 45da0 | 20 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 2f | ....<span.class="tok-kw">break</ |
| 45dc0 | 73 70 61 6e 3e 20 3a 62 6c 6b 20 2e 7b 20 6d 69 6e 2c 20 6d 61 78 20 7d 3b 0a 20 20 20 20 7d 3b | span>.:blk..{.min,.max.};.....}; |
| 45de0 | 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 2d 73 74 72 | ......print(<span.class="tok-str |
| 45e00 | 22 3e 26 71 75 6f 74 3b 6d 69 6e 20 3d 20 7b 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e | ">"min.=.{}"</span>,.. |
| 45e20 | 7b 20 6d 69 6e 20 7d 29 3b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | {.min.});.....print(<span.class= |
| 45e40 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 61 78 20 3d 20 7b 7d 26 71 75 6f 74 3b 3c 2f | "tok-str">"max.=.{}"</ |
| 45e60 | 73 70 61 6e 3e 2c 20 2e 7b 20 6d 61 78 20 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | span>,..{.max.});.}</code></pre> |
| 45e80 | 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | </figure><figure><figcaption.cla |
| 45ea0 | 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e | ss="shell-cap">Shell</figcaption |
| 45ec0 | 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 | ><pre><samp>$.<kbd>zig.build-exe |
| 45ee0 | 20 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f 62 6c 6f 63 6b 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 | .destructuring_block.zig</kbd>.$ |
| 45f00 | 20 3c 6b 62 64 3e 2e 2f 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f 62 6c 6f 63 6b 3c 2f 6b 62 64 | .<kbd>./destructuring_block</kbd |
| 45f20 | 3e 0a 6d 69 6e 20 3d 20 30 6d 61 78 20 3d 20 39 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f | >.min.=.0max.=.9.</samp></pre></ |
| 45f40 | 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 75 70 6c 65 | figure>........<p>.........Tuple |
| 45f60 | 20 64 65 73 74 72 75 63 74 75 72 69 6e 67 20 69 73 20 68 65 6c 70 66 75 6c 20 66 6f 72 20 64 65 | .destructuring.is.helpful.for.de |
| 45f80 | 61 6c 69 6e 67 20 77 69 74 68 20 66 75 6e 63 74 69 6f 6e 73 20 61 6e 64 20 62 75 69 6c 74 2d 69 | aling.with.functions.and.built-i |
| 45fa0 | 6e 73 20 74 68 61 74 20 72 65 74 75 72 6e 20 6d 75 6c 74 69 70 6c 65 20 76 61 6c 75 65 73 0a 20 | ns.that.return.multiple.values.. |
| 45fc0 | 20 20 20 20 20 20 20 61 73 20 61 20 74 75 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | .......as.a.tuple:.......</p>... |
| 45fe0 | 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a | ....<figure><figcaption.class="z |
| 46000 | 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 64 65 73 74 72 | ig-cap"><cite.class="file">destr |
| 46020 | 75 63 74 75 72 69 6e 67 5f 72 65 74 75 72 6e 5f 76 61 6c 75 65 2e 7a 69 67 3c 2f 63 69 74 65 3e | ucturing_return_value.zig</cite> |
| 46040 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </figcaption><pre><code><span.cl |
| 46060 | 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. |
| 46080 | 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 |
| 460a0 | 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" |
| 460c0 | 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 2e 70 | >"std"</span>).debug.p |
| 460e0 | 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 3e 66 6e 3c 2f | rint;..<span.class="tok-kw">fn</ |
| 46100 | 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 69 76 6d 6f | span>.<span.class="tok-fn">divmo |
| 46120 | 64 3c 2f 73 70 61 6e 3e 28 6e 75 6d 65 72 61 74 6f 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | d</span>(numerator:.<span.class= |
| 46140 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 64 65 6e 6f 6d 69 6e 61 74 | "tok-type">u32</span>,.denominat |
| 46160 | 6f 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 33 32 3c 2f | or:.<span.class="tok-type">u32</ |
| 46180 | 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 73 74 72 75 | span>).<span.class="tok-kw">stru |
| 461a0 | 63 74 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 74 79 70 | ct</span>.{.<span.class="tok-typ |
| 461c0 | 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 2d | e">u32</span>,.<span.class="tok- |
| 461e0 | 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7d 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | type">u32</span>.}.{.....<span.c |
| 46200 | 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 2e 7b 20 6e | lass="tok-kw">return</span>..{.n |
| 46220 | 75 6d 65 72 61 74 6f 72 20 2f 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 2c 20 6e 75 6d 65 72 61 74 6f | umerator./.denominator,.numerato |
| 46240 | 72 20 25 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | r.%.denominator.};.}..<span.clas |
| 46260 | 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 |
| 46280 | 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 |
| 462a0 | 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 |
| 462c0 | 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>.{.... |
| 462e0 | 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 |
| 46300 | 6e 3e 20 64 69 76 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 6e | n>.div,.<span.class="tok-kw">con |
| 46320 | 73 74 3c 2f 73 70 61 6e 3e 20 6d 6f 64 20 3d 20 64 69 76 6d 6f 64 28 3c 73 70 61 6e 20 63 6c 61 | st</span>.mod.=.divmod(<span.cla |
| 46340 | 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 3c 73 70 61 6e | ss="tok-number">10</span>,.<span |
| 46360 | 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 3b 0a 0a | .class="tok-number">3</span>);.. |
| 46380 | 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"> |
| 463a0 | 26 71 75 6f 74 3b 31 30 20 2f 20 33 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | "10./.3.=.{}\n"</span> |
| 463c0 | 2c 20 2e 7b 64 69 76 7d 29 3b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ,..{div});.....print(<span.class |
| 463e0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 31 30 20 25 20 33 20 3d 20 7b 7d 5c 6e 26 71 | ="tok-str">"10.%.3.=.{}\n&q |
| 46400 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6d 6f 64 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | uot;</span>,..{mod});.}</code></ |
| 46420 | 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e | pre></figure><figure><figcaption |
| 46440 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 | .class="shell-cap">Shell</figcap |
| 46460 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 | tion><pre><samp>$.<kbd>zig.build |
| 46480 | 2d 65 78 65 20 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f 72 65 74 75 72 6e 5f 76 61 6c 75 65 2e | -exe.destructuring_return_value. |
| 464a0 | 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 64 65 73 74 72 75 63 74 75 72 69 6e 67 | zig</kbd>.$.<kbd>./destructuring |
| 464c0 | 5f 72 65 74 75 72 6e 5f 76 61 6c 75 65 3c 2f 6b 62 64 3e 0a 31 30 20 2f 20 33 20 3d 20 33 0a 31 | _return_value</kbd>.10./.3.=.3.1 |
| 464e0 | 30 20 25 20 33 20 3d 20 31 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | 0.%.3.=.1.</samp></pre></figure> |
| 46500 | 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 |
| 46520 | 3e 3c 61 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 22 3e 44 65 73 74 72 75 | ><a.href="#Destructuring">Destru |
| 46540 | 63 74 75 72 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 | cturing</a></li>.<li><a.href="#D |
| 46560 | 65 73 74 72 75 63 74 75 72 69 6e 67 2d 41 72 72 61 79 73 22 3e 44 65 73 74 72 75 63 74 75 72 69 | estructuring-Arrays">Destructuri |
| 46580 | 6e 67 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 | ng.Arrays</a></li>.<li><a.href=" |
| 465a0 | 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 56 65 63 74 6f 72 73 22 3e 44 65 73 74 72 75 63 74 | #Destructuring-Vectors">Destruct |
| 465c0 | 75 72 69 6e 67 20 56 65 63 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 | uring.Vectors</a></li>.</ul>.... |
| 465e0 | 20 20 20 20 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 | ..................<p>See.also:</ |
| 46600 | 70 3e 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 | p><ul>.<li><a.href="#comptime">c |
| 46620 | 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 22 23 66 | omptime</a></li>.<li><a.href="#f |
| 46640 | 69 65 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 | ieldParentPtr">@fieldParentPtr</ |
| 46660 | 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. |
| 46680 | 69 64 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 | id="enum"><a.href="#toc-enum">en |
| 466a0 | 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 6e 75 | um</a>.<a.class="hdr".href="#enu |
| 466c0 | 6d 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 | m">..</a></h2>........<figure><f |
| 466e0 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 | igcaption.class="zig-cap"><cite. |
| 46700 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 65 6e 75 6d 73 2e 7a 69 67 3c 2f 63 69 74 | class="file">test_enums.zig</cit |
| 46720 | 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | e></figcaption><pre><code><span. |
| 46740 | 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 |
| 46760 | 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 3e 40 | ct.=.<span.class="tok-builtin">@ |
| 46780 | 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 |
| 467a0 | 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 73 74 | tr">"std"</span>).test |
| 467c0 | 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 6b 77 22 | ing.expect;.<span.class="tok-kw" |
| 467e0 | 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 3d | >const</span>.mem.=.<span.class= |
| 46800 | 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 |
| 46820 | 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 |
| 46840 | 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 73 73 3d 22 74 6f | t;</span>).mem;..<span.class="to |
| 46860 | 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 65 6e 75 6d 2e 3c 2f | k-comment">//.Declare.an.enum.</ |
| 46880 | 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 |
| 468a0 | 3c 2f 73 70 61 6e 3e 20 54 79 70 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | </span>.Type.=.<span.class="tok- |
| 468c0 | 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6f 6b 2c 0a 20 20 20 20 6e 6f | kw">enum</span>.{.....ok,.....no |
| 468e0 | 74 5f 6f 6b 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 | t_ok,.};..<span.class="tok-comme |
| 46900 | 6e 74 22 3e 2f 2f 20 44 65 63 6c 61 72 65 20 61 20 73 70 65 63 69 66 69 63 20 65 6e 75 6d 20 66 | nt">//.Declare.a.specific.enum.f |
| 46920 | 69 65 6c 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 | ield.</span>.<span.class="tok-kw |
| 46940 | 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 |
| 46960 | 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 |
| 46980 | 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 |
| 469a0 | 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 |
| 469c0 | 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 |
| 469e0 | 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 |
| 46a00 | 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.= |
| 46a20 | 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 |
| 46a40 | 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 |
| 46a60 | 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 |
| 46a80 | 2c 0a 7d 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 | ,.};.<span.class="tok-comment">/ |
| 46aa0 | 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 6e | /.Now.you.can.cast.between.u2.an |
| 46ac0 | 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 6b | d.Value.</span>.<span.class="tok |
| 46ae0 | 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 73 | -comment">//.The.ordinal.value.s |
| 46b00 | 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 62 79 20 31 20 66 | tarts.from.0,.counting.up.by.1.f |
| 46b20 | 72 6f 6d 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 6d 65 6d 62 65 72 2e 3c 2f 73 70 61 6e 3e 0a | rom.the.previous.member.</span>. |
| 46b40 | 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> |
| 46b60 | 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 6e 75 | .<span.class="tok-str">"enu |
| 46b80 | 6d 20 6f 72 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 | m.ordinal.value"</span>.{.. |
| 46ba0 | 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 |
| 46bc0 | 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 |
| 46be0 | 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 45 6e 75 6d 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 2e 7a 65 | in">@intFromEnum</span>(Value.ze |
| 46c00 | 72 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 72 22 3e | ro).==.<span.class="tok-number"> |
| 46c20 | 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- |
| 46c40 | 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 |
| 46c60 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 45 6e 75 6d 3c 2f 73 70 | s="tok-builtin">@intFromEnum</sp |
| 46c80 | 61 6e 3e 28 56 61 6c 75 65 2e 6f 6e 65 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | an>(Value.one).==.<span.class="t |
| 46ca0 | 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 3c 73 70 61 6e 20 | ok-number">1</span>);.....<span. |
| 46cc0 | 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 |
| 46ce0 | 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 69 6e 74 46 | (<span.class="tok-builtin">@intF |
| 46d00 | 72 6f 6d 45 6e 75 6d 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 2e 74 77 6f 29 20 3d 3d 20 3c 73 70 | romEnum</span>(Value.two).==.<sp |
| 46d20 | 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>); |
| 46d40 | 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">// |
| 46d60 | 20 59 6f 75 20 63 61 6e 20 6f 76 65 72 72 69 64 65 20 74 68 65 20 6f 72 64 69 6e 61 6c 20 76 61 | .You.can.override.the.ordinal.va |
| 46d80 | 6c 75 65 20 66 6f 72 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 | lue.for.an.enum.</span>.<span.cl |
| 46da0 | 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 56 61 6c 75 65 32 | ass="tok-kw">const</span>.Value2 |
| 46dc0 | 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 73 70 | .=.<span.class="tok-kw">enum</sp |
| 46de0 | 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 33 32 3c 2f | an>(<span.class="tok-type">u32</ |
| 46e00 | 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 68 75 6e 64 72 65 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | span>).{.....hundred.=.<span.cla |
| 46e20 | 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 2c 0a 20 20 20 20 | ss="tok-number">100</span>,..... |
| 46e40 | 74 68 6f 75 73 61 6e 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 | thousand.=.<span.class="tok-numb |
| 46e60 | 65 72 22 3e 31 30 30 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 6d 69 6c 6c 69 6f 6e 20 3d 20 3c | er">1000</span>,.....million.=.< |
| 46e80 | 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 30 30 30 3c | span.class="tok-number">1000000< |
| 46ea0 | 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 6b 77 22 3e | /span>,.};.<span.class="tok-kw"> |
| 46ec0 | 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 |
| 46ee0 | 22 3e 26 71 75 6f 74 3b 73 65 74 20 65 6e 75 6d 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 26 71 | ">"set.enum.ordinal.value&q |
| 46f00 | 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 |
| 46f20 | 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 |
| 46f40 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 45 6e 75 6d 3c | lass="tok-builtin">@intFromEnum< |
| 46f60 | 2f 73 70 61 6e 3e 28 56 61 6c 75 65 32 2e 68 75 6e 64 72 65 64 29 20 3d 3d 20 3c 73 70 61 6e 20 | /span>(Value2.hundred).==.<span. |
| 46f80 | 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 29 3b 0a | class="tok-number">100</span>);. |
| 46fa0 | 20 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 |
| 46fc0 | 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 |
| 46fe0 | 74 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 45 6e 75 6d 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 32 2e | tin">@intFromEnum</span>(Value2. |
| 47000 | 74 68 6f 75 73 61 6e 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 | thousand).==.<span.class="tok-nu |
| 47020 | 6d 62 65 72 22 3e 31 30 30 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | mber">1000</span>);.....<span.cl |
| 47040 | 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(< |
| 47060 | 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 46 72 6f | span.class="tok-builtin">@intFro |
| 47080 | 6d 45 6e 75 6d 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 32 2e 6d 69 6c 6c 69 6f 6e 29 20 3d 3d 20 | mEnum</span>(Value2.million).==. |
| 470a0 | 3c 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 30 30 30 | <span.class="tok-number">1000000 |
| 470c0 | 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 6f | </span>);.}..<span.class="tok-co |
| 470e0 | 6d 6d 65 6e 74 22 3e 2f 2f 20 59 6f 75 20 63 61 6e 20 61 6c 73 6f 20 6f 76 65 72 72 69 64 65 20 | mment">//.You.can.also.override. |
| 47100 | 6f 6e 6c 79 20 73 6f 6d 65 20 76 61 6c 75 65 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | only.some.values.</span>.<span.c |
| 47120 | 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 56 61 6c 75 65 | lass="tok-kw">const</span>.Value |
| 47140 | 33 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 73 | 3.=.<span.class="tok-kw">enum</s |
| 47160 | 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 34 3c 2f | pan>(<span.class="tok-type">u4</ |
| 47180 | 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 61 2c 0a 20 20 20 20 62 20 3d 20 3c 73 70 61 6e 20 63 6c | span>).{.....a,.....b.=.<span.cl |
| 471a0 | 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 2c 0a 20 20 20 20 63 | ass="tok-number">8</span>,.....c |
| 471c0 | 2c 0a 20 20 20 20 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 | ,.....d.=.<span.class="tok-numbe |
| 471e0 | 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 65 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 | r">4</span>,.....e,.};.<span.cla |
| 47200 | 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 |
| 47220 | 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 69 6d 70 6c 69 63 69 | ass="tok-str">"enum.implici |
| 47240 | 74 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 73 20 61 6e 64 20 6f 76 65 72 72 69 64 64 65 6e 20 | t.ordinal.values.and.overridden. |
| 47260 | 76 61 6c 75 65 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 | values"</span>.{.....<span. |
| 47280 | 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 |
| 472a0 | 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 69 6e 74 46 | (<span.class="tok-builtin">@intF |
| 472c0 | 72 6f 6d 45 6e 75 6d 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 33 2e 61 29 20 3d 3d 20 3c 73 70 61 | romEnum</span>(Value3.a).==.<spa |
| 472e0 | 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>);. |
| 47300 | 20 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 |
| 47320 | 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 |
| 47340 | 74 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 45 6e 75 6d 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 33 2e | tin">@intFromEnum</span>(Value3. |
| 47360 | 62 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 38 | b).==.<span.class="tok-number">8 |
| 47380 | 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 |
| 473a0 | 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 |
| 473c0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 45 6e 75 6d 3c 2f 73 70 61 | ="tok-builtin">@intFromEnum</spa |
| 473e0 | 6e 3e 28 56 61 6c 75 65 33 2e 63 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>(Value3.c).==.<span.class="tok |
| 47400 | 2d 6e 75 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 | -number">9</span>);.....<span.cl |
| 47420 | 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(< |
| 47440 | 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 46 72 6f | span.class="tok-builtin">@intFro |
| 47460 | 6d 45 6e 75 6d 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 33 2e 64 29 20 3d 3d 20 3c 73 70 61 6e 20 | mEnum</span>(Value3.d).==.<span. |
| 47480 | 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 20 20 | class="tok-number">4</span>);... |
| 474a0 | 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 |
| 474c0 | 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 |
| 474e0 | 6e 22 3e 40 69 6e 74 46 72 6f 6d 45 6e 75 6d 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 33 2e 65 29 | n">@intFromEnum</span>(Value3.e) |
| 47500 | 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 3c 2f | .==.<span.class="tok-number">5</ |
| 47520 | 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 6f 6d 6d | span>);.}..<span.class="tok-comm |
| 47540 | 65 6e 74 22 3e 2f 2f 20 45 6e 75 6d 73 20 63 61 6e 20 68 61 76 65 20 6d 65 74 68 6f 64 73 2c 20 | ent">//.Enums.can.have.methods,. |
| 47560 | 74 68 65 20 73 61 6d 65 20 61 73 20 73 74 72 75 63 74 73 20 61 6e 64 20 75 6e 69 6f 6e 73 2e 3c | the.same.as.structs.and.unions.< |
| 47580 | 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" |
| 475a0 | 3e 2f 2f 20 45 6e 75 6d 20 6d 65 74 68 6f 64 73 20 61 72 65 20 6e 6f 74 20 73 70 65 63 69 61 6c | >//.Enum.methods.are.not.special |
| 475c0 | 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 6e | ,.they.are.only.namespaced</span |
| 475e0 | 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 66 | >.<span.class="tok-comment">//.f |
| 47600 | 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 20 | unctions.that.you.can.call.with. |
| 47620 | 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 22 | dot.syntax.</span>.<span.class=" |
| 47640 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 75 69 74 20 3d 20 3c 73 70 61 | tok-kw">const</span>.Suit.=.<spa |
| 47660 | 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 20 | n.class="tok-kw">enum</span>.{.. |
| 47680 | 20 20 20 63 6c 75 62 73 2c 0a 20 20 20 20 73 70 61 64 65 73 2c 0a 20 20 20 20 64 69 61 6d 6f 6e | ...clubs,.....spades,.....diamon |
| 476a0 | 64 73 2c 0a 20 20 20 20 68 65 61 72 74 73 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ds,.....hearts,......<span.class |
| 476c0 | 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 |
| 476e0 | 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= |
| 47700 | 22 74 6f 6b 2d 66 6e 22 3e 69 73 43 6c 75 62 73 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 53 75 | "tok-fn">isClubs</span>(self:.Su |
| 47720 | 69 74 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 | it).<span.class="tok-type">bool< |
| 47740 | 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 |
| 47760 | 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 20 3d 3d 20 53 75 69 74 | k-kw">return</span>.self.==.Suit |
| 47780 | 2e 63 6c 75 62 73 3b 0a 20 20 20 20 7d 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .clubs;.....}.};.<span.class="to |
| 477a0 | 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 |
| 477c0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 6e 75 6d 20 6d 65 74 68 6f 64 26 71 75 6f 74 3b 3c | ok-str">"enum.method"< |
| 477e0 | 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 |
| 47800 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 20 3d 20 53 75 69 74 2e 73 70 61 64 65 73 3b 0a | ">const</span>.p.=.Suit.spades;. |
| 47820 | 20 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 |
| 47840 | 61 6e 3e 20 65 78 70 65 63 74 28 21 70 2e 69 73 43 6c 75 62 73 28 29 29 3b 0a 7d 0a 0a 3c 73 70 | an>.expect(!p.isClubs());.}..<sp |
| 47860 | 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 6e 20 65 6e 75 | an.class="tok-comment">//.An.enu |
| 47880 | 6d 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 6e 3e 0a 3c | m.can.be.switched.upon.</span>.< |
| 478a0 | 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> |
| 478c0 | 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 65 6e 75 6d | .Foo.=.<span.class="tok-kw">enum |
| 478e0 | 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 6d 62 65 72 | </span>.{.....string,.....number |
| 47900 | 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 74 6f 6b 2d | ,.....none,.};.<span.class="tok- |
| 47920 | 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 |
| 47940 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 6e 75 6d 20 73 77 69 74 63 68 26 71 75 6f 74 3b 3c 2f 73 | -str">"enum.switch"</s |
| 47960 | 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"> |
| 47980 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 20 3d 20 46 6f 6f 2e 6e 75 6d 62 65 72 3b 0a 20 20 20 | const</span>.p.=.Foo.number;.... |
| 479a0 | 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 |
| 479c0 | 6e 3e 20 77 68 61 74 5f 69 73 5f 69 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>.what_is_it.=.<span.class="tok |
| 479e0 | 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 70 29 20 7b 0a 20 20 20 20 20 20 20 | -kw">switch</span>.(p).{........ |
| 47a00 | 20 46 6f 6f 2e 73 74 72 69 6e 67 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .Foo.string.=>.<span.class="t |
| 47a20 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 69 73 20 69 73 20 61 20 73 74 72 69 6e 67 26 71 | ok-str">"this.is.a.string&q |
| 47a40 | 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 75 6d 62 65 72 20 | uot;</span>,.........Foo.number. |
| 47a60 | 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 71 75 6f | =>.<span.class="tok-str">&quo |
| 47a80 | 74 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 2c | t;this.is.a.number"</span>, |
| 47aa0 | 0a 20 20 20 20 20 20 20 20 46 6f 6f 2e 6e 6f 6e 65 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c | .........Foo.none.=>.<span.cl |
| 47ac0 | 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 73 20 61 20 6e 6f | ass="tok-str">"this.is.a.no |
| 47ae0 | 6e 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 | ne"</span>,.....};.....<spa |
| 47b00 | 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 |
| 47b20 | 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 |
| 47b40 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 77 68 61 74 5f 69 73 5f 69 74 2c 20 3c 73 70 61 6e 20 63 | ">u8</span>,.what_is_it,.<span.c |
| 47b60 | 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 73 20 61 20 6e | lass="tok-str">"this.is.a.n |
| 47b80 | 75 6d 62 65 72 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 | umber"</span>));.}..<span.c |
| 47ba0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 40 74 79 70 65 49 6e 66 6f 20 | lass="tok-comment">//.@typeInfo. |
| 47bc0 | 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 20 69 6e 74 65 67 65 | can.be.used.to.access.the.intege |
| 47be0 | 72 20 74 61 67 20 74 79 70 65 20 6f 66 20 61 6e 20 65 6e 75 6d 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 | r.tag.type.of.an.enum.</span>.<s |
| 47c00 | 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>. |
| 47c20 | 53 6d 61 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 65 6e 75 | Small.=.<span.class="tok-kw">enu |
| 47c40 | 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6f 6e 65 2c 0a 20 20 20 20 74 77 6f 2c 0a 20 20 20 | m</span>.{.....one,.....two,.... |
| 47c60 | 20 74 68 72 65 65 2c 0a 20 20 20 20 66 6f 75 72 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | .three,.....four,.};.<span.class |
| 47c80 | 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 |
| 47ca0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 2e 6d 65 74 61 2e 54 61 67 26 71 | s="tok-str">"std.meta.Tag&q |
| 47cc0 | 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 |
| 47ce0 | 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 |
| 47d00 | 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 6f 3c 2f 73 70 | lass="tok-builtin">@typeInfo</sp |
| 47d20 | 61 6e 3e 28 53 6d 61 6c 6c 29 2e 40 26 71 75 6f 74 3b 65 6e 75 6d 26 71 75 6f 74 3b 2e 74 61 67 | an>(Small).@"enum".tag |
| 47d40 | 5f 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 | _type.==.<span.class="tok-type"> |
| 47d60 | 75 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 | u2</span>);.}..<span.class="tok- |
| 47d80 | 63 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 | comment">//.@typeInfo.tells.us.t |
| 47da0 | 68 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 | he.field.count.and.the.fields.na |
| 47dc0 | 6d 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 | mes:</span>.<span.class="tok-kw" |
| 47de0 | 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 |
| 47e00 | 72 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 | r">"@typeInfo"</span>. |
| 47e20 | 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</ |
| 47e40 | 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 |
| 47e60 | 69 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 40 | iltin">@typeInfo</span>(Small).@ |
| 47e80 | 26 71 75 6f 74 3b 65 6e 75 6d 26 71 75 6f 74 3b 2e 66 69 65 6c 64 73 2e 6c 65 6e 20 3d 3d 20 3c | "enum".fields.len.==.< |
| 47ea0 | 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> |
| 47ec0 | 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< |
| 47ee0 | 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 73 | /span>.expect(mem.eql(<span.clas |
| 47f00 | 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 61 6e 20 63 6c | s="tok-type">u8</span>,.<span.cl |
| 47f20 | 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 |
| 47f40 | 6e 3e 28 53 6d 61 6c 6c 29 2e 40 26 71 75 6f 74 3b 65 6e 75 6d 26 71 75 6f 74 3b 2e 66 69 65 6c | n>(Small).@"enum".fiel |
| 47f60 | 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 3e 31 3c 2f 73 | ds[<span.class="tok-number">1</s |
| 47f80 | 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 6b 2d 73 74 72 | pan>].name,.<span.class="tok-str |
| 47fa0 | 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 0a 7d 0a 0a 3c | ">"two"</span>));.}..< |
| 47fc0 | 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 40 74 61 67 | span.class="tok-comment">//.@tag |
| 47fe0 | 4e 61 6d 65 20 67 69 76 65 73 20 61 20 5b 3a 30 5d 63 6f 6e 73 74 20 75 38 20 72 65 70 72 65 73 | Name.gives.a.[:0]const.u8.repres |
| 48000 | 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 70 61 6e | entation.of.an.enum.value:</span |
| 48020 | 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 73 70 61 | >.<span.class="tok-kw">test</spa |
| 48040 | 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 40 | n>.<span.class="tok-str">"@ |
| 48060 | 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 70 61 6e | tagName"</span>.{.....<span |
| 48080 | 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 |
| 480a0 | 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" |
| 480c0 | 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 62 75 69 | >u8</span>,.<span.class="tok-bui |
| 480e0 | 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 68 72 65 | ltin">@tagName</span>(Small.thre |
| 48100 | 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 6f 74 3b | e),.<span.class="tok-str">" |
| 48120 | 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 3e 3c 2f | three"</span>));.}</code></ |
| 48140 | 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e | pre></figure><figure><figcaption |
| 48160 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 | .class="shell-cap">Shell</figcap |
| 48180 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 | tion><pre><samp>$.<kbd>zig.test. |
| 481a0 | 74 65 73 74 5f 65 6e 75 6d 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 38 20 74 65 73 74 5f 65 6e | test_enums.zig</kbd>.1/8.test_en |
| 481c0 | 75 6d 73 2e 74 65 73 74 2e 65 6e 75 6d 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 2e 2e 2e 4f 4b | ums.test.enum.ordinal.value...OK |
| 481e0 | 0a 32 2f 38 20 74 65 73 74 5f 65 6e 75 6d 73 2e 74 65 73 74 2e 73 65 74 20 65 6e 75 6d 20 6f 72 | .2/8.test_enums.test.set.enum.or |
| 48200 | 64 69 6e 61 6c 20 76 61 6c 75 65 2e 2e 2e 4f 4b 0a 33 2f 38 20 74 65 73 74 5f 65 6e 75 6d 73 2e | dinal.value...OK.3/8.test_enums. |
| 48220 | 74 65 73 74 2e 65 6e 75 6d 20 69 6d 70 6c 69 63 69 74 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 | test.enum.implicit.ordinal.value |
| 48240 | 73 20 61 6e 64 20 6f 76 65 72 72 69 64 64 65 6e 20 76 61 6c 75 65 73 2e 2e 2e 4f 4b 0a 34 2f 38 | s.and.overridden.values...OK.4/8 |
| 48260 | 20 74 65 73 74 5f 65 6e 75 6d 73 2e 74 65 73 74 2e 65 6e 75 6d 20 6d 65 74 68 6f 64 2e 2e 2e 4f | .test_enums.test.enum.method...O |
| 48280 | 4b 0a 35 2f 38 20 74 65 73 74 5f 65 6e 75 6d 73 2e 74 65 73 74 2e 65 6e 75 6d 20 73 77 69 74 63 | K.5/8.test_enums.test.enum.switc |
| 482a0 | 68 2e 2e 2e 4f 4b 0a 36 2f 38 20 74 65 73 74 5f 65 6e 75 6d 73 2e 74 65 73 74 2e 73 74 64 2e 6d | h...OK.6/8.test_enums.test.std.m |
| 482c0 | 65 74 61 2e 54 61 67 2e 2e 2e 4f 4b 0a 37 2f 38 20 74 65 73 74 5f 65 6e 75 6d 73 2e 74 65 73 74 | eta.Tag...OK.7/8.test_enums.test |
| 482e0 | 2e 40 74 79 70 65 49 6e 66 6f 2e 2e 2e 4f 4b 0a 38 2f 38 20 74 65 73 74 5f 65 6e 75 6d 73 2e 74 | .@typeInfo...OK.8/8.test_enums.t |
| 48300 | 65 73 74 2e 40 74 61 67 4e 61 6d 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 38 20 74 65 73 74 73 20 70 61 | est.@tagName...OK.All.8.tests.pa |
| 48320 | 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 | ssed..</samp></pre></figure>.... |
| 48340 | 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. |
| 48360 | 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 3c 2f | href="#typeInfo">@typeInfo</a></ |
| 48380 | 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 40 74 61 67 4e | li>.<li><a.href="#tagName">@tagN |
| 483a0 | 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 73 69 7a 65 4f | ame</a></li>.<li><a.href="#sizeO |
| 483c0 | 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 0a 20 20 20 20 | f">@sizeOf</a></li>.</ul>....... |
| 483e0 | 20 20 3c 68 33 20 69 64 3d 22 65 78 74 65 72 6e 2d 65 6e 75 6d 22 3e 3c 61 20 68 72 65 66 3d 22 | ..<h3.id="extern-enum"><a.href=" |
| 48400 | 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 75 6d 3c 2f 61 | #toc-extern-enum">extern.enum</a |
| 48420 | 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 65 | >.<a.class="hdr".href="#extern-e |
| 48440 | 6e 75 6d 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 | num">..</a></h3>........<p>..... |
| 48460 | 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 20 67 75 61 72 | ..By.default,.enums.are.not.guar |
| 48480 | 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 68 20 74 68 65 | anteed.to.be.compatible.with.the |
| 484a0 | 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 66 69 67 75 72 65 | .C.ABI:.......</p>.......<figure |
| 484c0 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 | ><figcaption.class="zig-cap"><ci |
| 484e0 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 65 6e 75 6d 5f 65 78 70 6f 72 74 5f 65 72 72 6f | te.class="file">enum_export_erro |
| 48500 | 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 | r.zig</cite></figcaption><pre><c |
| 48520 | 6f 64 65 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 | ode><span.class="tok-kw">const</ |
| 48540 | 73 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 | span>.Foo.=.<span.class="tok-kw" |
| 48560 | 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 20 61 2c 20 62 2c 20 63 20 7d 3b 0a 3c 73 70 61 6e 20 | >enum</span>.{.a,.b,.c.};.<span. |
| 48580 | 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 20 3c 73 70 | class="tok-kw">export</span>.<sp |
| 485a0 | 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 |
| 485c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 6e 74 72 79 3c 2f 73 70 61 6e 3e 28 66 6f | n.class="tok-fn">entry</span>(fo |
| 485e0 | 6f 3a 20 46 6f 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 | o:.Foo).<span.class="tok-type">v |
| 48600 | 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 66 6f 6f 3b 0a 7d 3c 2f 63 6f 64 | oid</span>.{....._.=.foo;.}</cod |
| 48620 | 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | e></pre></figure><figure><figcap |
| 48640 | 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 | tion.class="shell-cap">Shell</fi |
| 48660 | 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 | gcaption><pre><samp>$.<kbd>zig.b |
| 48680 | 75 69 6c 64 2d 6f 62 6a 20 65 6e 75 6d 5f 65 78 70 6f 72 74 5f 65 72 72 6f 72 2e 7a 69 67 20 2d | uild-obj.enum_export_error.zig.- |
| 486a0 | 74 61 72 67 65 74 20 78 38 36 5f 36 34 2d 6c 69 6e 75 78 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 | target.x86_64-linux</kbd>.<span. |
| 486c0 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | class="sgr-1m">/home/andy/dev/zi |
| 486e0 | 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 65 6e 75 6d 5f 65 78 70 6f 72 74 5f 65 72 72 6f 72 2e | g/doc/langref/enum_export_error. |
| 48700 | 7a 69 67 3a 32 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 73 67 | zig:2:17:.</span><span.class="sg |
| 48720 | 72 2d 33 31 6d 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 | r-31m">error:.</span><span.class |
| 48740 | 3d 22 73 67 72 2d 31 6d 22 3e 70 61 72 61 6d 65 74 65 72 20 6f 66 20 74 79 70 65 20 27 65 6e 75 | ="sgr-1m">parameter.of.type.'enu |
| 48760 | 6d 5f 65 78 70 6f 72 74 5f 65 72 72 6f 72 2e 46 6f 6f 27 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 20 | m_export_error.Foo'.not.allowed. |
| 48780 | 69 6e 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 | in.function.with.calling.convent |
| 487a0 | 69 6f 6e 20 27 78 38 36 5f 36 34 5f 73 79 73 76 27 0a 3c 2f 73 70 61 6e 3e 65 78 70 6f 72 74 20 | ion.'x86_64_sysv'.</span>export. |
| 487c0 | 66 6e 20 65 6e 74 72 79 28 66 6f 6f 3a 20 46 6f 6f 29 20 76 6f 69 64 20 7b 0a 20 20 20 20 20 20 | fn.entry(foo:.Foo).void.{....... |
| 487e0 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e | ..........<span.class="sgr-32m"> |
| 48800 | 5e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | ^~~~~~~~.</span><span.class="sgr |
| 48820 | 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 | -1m">/home/andy/dev/zig/doc/lang |
| 48840 | 72 65 66 2f 65 6e 75 6d 5f 65 78 70 6f 72 74 5f 65 72 72 6f 72 2e 7a 69 67 3a 32 3a 31 37 3a 20 | ref/enum_export_error.zig:2:17:. |
| 48860 | 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 | </span><span.class="sgr-36m">not |
| 48880 | 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 65 | e:.</span><span.class="sgr-1m">e |
| 488a0 | 6e 75 6d 20 74 61 67 20 74 79 70 65 20 27 75 32 27 20 69 73 20 6e 6f 74 20 65 78 74 65 72 6e 20 | num.tag.type.'u2'.is.not.extern. |
| 488c0 | 63 6f 6d 70 61 74 69 62 6c 65 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | compatible.</span><span.class="s |
| 488e0 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 | gr-1m">/home/andy/dev/zig/doc/la |
| 48900 | 6e 67 72 65 66 2f 65 6e 75 6d 5f 65 78 70 6f 72 74 5f 65 72 72 6f 72 2e 7a 69 67 3a 32 3a 31 37 | ngref/enum_export_error.zig:2:17 |
| 48920 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e | :.</span><span.class="sgr-36m">n |
| 48940 | 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 73 67 72 2d 31 6d 22 | ote:.</span><span.class="sgr-1m" |
| 48960 | 3e 6f 6e 6c 79 20 69 6e 74 65 67 65 72 73 20 77 69 74 68 20 30 2c 20 38 2c 20 31 36 2c 20 33 32 | >only.integers.with.0,.8,.16,.32 |
| 48980 | 2c 20 36 34 20 61 6e 64 20 31 32 38 20 62 69 74 73 20 61 72 65 20 65 78 74 65 72 6e 20 63 6f 6d | ,.64.and.128.bits.are.extern.com |
| 489a0 | 70 61 74 69 62 6c 65 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | patible.</span><span.class="sgr- |
| 489c0 | 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 | 1m">/home/andy/dev/zig/doc/langr |
| 489e0 | 65 66 2f 65 6e 75 6d 5f 65 78 70 6f 72 74 5f 65 72 72 6f 72 2e 7a 69 67 3a 31 3a 31 33 3a 20 3c | ef/enum_export_error.zig:1:13:.< |
| 48a00 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 | /span><span.class="sgr-36m">note |
| 48a20 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 65 6e | :.</span><span.class="sgr-1m">en |
| 48a40 | 75 6d 20 64 65 63 6c 61 72 65 64 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 63 6f 6e 73 74 20 46 6f | um.declared.here.</span>const.Fo |
| 48a60 | 6f 20 3d 20 65 6e 75 6d 20 7b 20 61 2c 20 62 2c 20 63 20 7d 3b 0a 20 20 20 20 20 20 20 20 20 20 | o.=.enum.{.a,.b,.c.};........... |
| 48a80 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e | ..<span.class="sgr-32m">^~~~~~~~ |
| 48aa0 | 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | ~~~~~~~~.</span><span.class="sgr |
| 48ac0 | 2d 32 6d 22 3e 72 65 66 65 72 65 6e 63 65 64 20 62 79 3a 0a 20 20 20 20 72 6f 6f 74 3a 20 2f 68 | -2m">referenced.by:.....root:./h |
| 48ae0 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a | ome/andy/dev/zig/lib/std/start.z |
| 48b00 | 69 67 3a 33 3a 32 32 0a 20 20 20 20 63 6f 6d 70 74 69 6d 65 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 | ig:3:22.....comptime:./home/andy |
| 48b20 | 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 3a 39 0a | /dev/zig/lib/std/start.zig:27:9. |
| 48b40 | 20 20 20 20 32 20 72 65 66 65 72 65 6e 63 65 28 73 29 20 68 69 64 64 65 6e 3b 20 75 73 65 20 27 | ....2.reference(s).hidden;.use.' |
| 48b60 | 2d 66 72 65 66 65 72 65 6e 63 65 2d 74 72 61 63 65 3d 34 27 20 74 6f 20 73 65 65 20 61 6c 6c 20 | -freference-trace=4'.to.see.all. |
| 48b80 | 72 65 66 65 72 65 6e 63 65 73 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e | references.</span>.</samp></pre> |
| 48ba0 | 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 61 | </figure>........<p>.......For.a |
| 48bc0 | 20 43 2d 41 42 49 2d 63 6f 6d 70 61 74 69 62 6c 65 20 65 6e 75 6d 2c 20 70 72 6f 76 69 64 65 20 | .C-ABI-compatible.enum,.provide. |
| 48be0 | 61 6e 20 65 78 70 6c 69 63 69 74 20 74 61 67 20 74 79 70 65 20 74 6f 0a 20 20 20 20 20 20 74 68 | an.explicit.tag.type.to.......th |
| 48c00 | 65 20 65 6e 75 6d 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 | e.enum:.......</p>.......<figure |
| 48c20 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 | ><figcaption.class="zig-cap"><ci |
| 48c40 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 65 6e 75 6d 5f 65 78 70 6f 72 74 2e 7a 69 67 3c | te.class="file">enum_export.zig< |
| 48c60 | 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 | /cite></figcaption><pre><code><s |
| 48c80 | 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>. |
| 48ca0 | 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 65 6e 75 6d 3c | Foo.=.<span.class="tok-kw">enum< |
| 48cc0 | 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 63 5f | /span>(<span.class="tok-type">c_ |
| 48ce0 | 69 6e 74 3c 2f 73 70 61 6e 3e 29 20 7b 20 61 2c 20 62 2c 20 63 20 7d 3b 0a 3c 73 70 61 6e 20 63 | int</span>).{.a,.b,.c.};.<span.c |
| 48d00 | 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 |
| 48d20 | 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 |
| 48d40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 6e 74 72 79 3c 2f 73 70 61 6e 3e 28 66 6f 6f | .class="tok-fn">entry</span>(foo |
| 48d60 | 3a 20 46 6f 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 | :.Foo).<span.class="tok-type">vo |
| 48d80 | 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 66 6f 6f 3b 0a 7d 3c 2f 63 6f 64 65 | id</span>.{....._.=.foo;.}</code |
| 48da0 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | ></pre></figure><figure><figcapt |
| 48dc0 | 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 | ion.class="shell-cap">Shell</fig |
| 48de0 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 | caption><pre><samp>$.<kbd>zig.bu |
| 48e00 | 69 6c 64 2d 6f 62 6a 20 65 6e 75 6d 5f 65 78 70 6f 72 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 2f | ild-obj.enum_export.zig</kbd>.</ |
| 48e20 | 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 | samp></pre></figure>............ |
| 48e40 | 20 20 20 20 3c 68 33 20 69 64 3d 22 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 | ....<h3.id="Enum-Literals"><a.hr |
| 48e60 | 65 66 3d 22 23 74 6f 63 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 45 6e 75 6d 20 4c 69 74 | ef="#toc-Enum-Literals">Enum.Lit |
| 48e80 | 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 22 23 | erals</a>.<a.class="hdr".href="# |
| 48ea0 | 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 | Enum-Literals">..</a></h3>...... |
| 48ec0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 6e 75 6d 20 6c 69 74 65 72 61 6c 73 20 61 6c 6c 6f 77 20 | ..<p>.......Enum.literals.allow. |
| 48ee0 | 73 70 65 63 69 66 79 69 6e 67 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 61 6e 20 65 6e 75 6d 20 66 | specifying.the.name.of.an.enum.f |
| 48f00 | 69 65 6c 64 20 77 69 74 68 6f 75 74 20 73 70 65 63 69 66 79 69 6e 67 20 74 68 65 20 65 6e 75 6d | ield.without.specifying.the.enum |
| 48f20 | 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 66 69 67 75 72 65 3e | .type:.......</p>.......<figure> |
| 48f40 | 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 | <figcaption.class="zig-cap"><cit |
| 48f60 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 65 6e 75 6d 5f 6c 69 74 65 72 61 6c | e.class="file">test_enum_literal |
| 48f80 | 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 | s.zig</cite></figcaption><pre><c |
| 48fa0 | 6f 64 65 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 | ode><span.class="tok-kw">const</ |
| 48fc0 | 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 |
| 48fe0 | 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 |
| 49000 | 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 |
| 49020 | 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</ |
| 49040 | 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 |
| 49060 | 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</ |
| 49080 | 73 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 | span>.Color.=.<span.class="tok-k |
| 490a0 | 77 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 | w">enum</span>.{.....auto,.....o |
| 490c0 | 66 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 | ff,.....on,.};..<span.class="tok |
| 490e0 | 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 |
| 49100 | 6b 2d 73 74 72 22 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 | k-str">"enum.literals" |
| 49120 | 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 |
| 49140 | 77 22 3e 63 6f 6e 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 | w">const</span>.color1:.Color.=. |
| 49160 | 2e 61 75 74 6f 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 | .auto;.....<span.class="tok-kw"> |
| 49180 | 63 6f 6e 73 74 3c 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 | const</span>.color2.=.Color.auto |
| 491a0 | 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</ |
| 491c0 | 73 70 61 6e 3e 20 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 | span>.expect(color1.==.color2);. |
| 491e0 | 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 |
| 49200 | 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">" |
| 49220 | 73 77 69 74 63 68 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 | switch.using.enum.literals" |
| 49240 | 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 |
| 49260 | 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 2e 6f 6e | w">const</span>.color.=.Color.on |
| 49280 | 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 74 | ;.....<span.class="tok-kw">const |
| 492a0 | 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 74 6f | </span>.result.=.<span.class="to |
| 492c0 | 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 7b 0a 20 20 | k-kw">switch</span>.(color).{... |
| 492e0 | 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 73 3d 22 74 | .......auto.=>.<span.class="t |
| 49300 | 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 20 20 20 2e | ok-null">false</span>,.......... |
| 49320 | 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 6c 6c 22 3e | on.=>.<span.class="tok-null"> |
| 49340 | 74 72 75 65 3c 2f 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 | true</span>,..........off.=>. |
| 49360 | 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 |
| 49380 | 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 |
| 493a0 | 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 3b 0a | -kw">try</span>.expect(result);. |
| 493c0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c | }</code></pre></figure><figure>< |
| 493e0 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 | figcaption.class="shell-cap">She |
| 49400 | 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 | ll</figcaption><pre><samp>$.<kbd |
| 49420 | 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 65 6e 75 6d 5f 6c 69 74 65 72 61 6c 73 2e 7a 69 67 | >zig.test.test_enum_literals.zig |
| 49440 | 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 65 6e 75 6d 5f 6c 69 74 65 72 61 6c 73 2e 74 65 | </kbd>.1/2.test_enum_literals.te |
| 49460 | 73 74 2e 65 6e 75 6d 20 6c 69 74 65 72 61 6c 73 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 65 | st.enum.literals...OK.2/2.test_e |
| 49480 | 6e 75 6d 5f 6c 69 74 65 72 61 6c 73 2e 74 65 73 74 2e 73 77 69 74 63 68 20 75 73 69 6e 67 20 65 | num_literals.test.switch.using.e |
| 494a0 | 6e 75 6d 20 6c 69 74 65 72 61 6c 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 | num.literals...OK.All.2.tests.pa |
| 494c0 | 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 | ssed..</samp></pre></figure>.... |
| 494e0 | 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 4e 6f 6e 2d 65 78 68 61 75 73 74 69 | ............<h3.id="Non-exhausti |
| 49500 | 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 78 68 61 75 | ve-enum"><a.href="#toc-Non-exhau |
| 49520 | 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 6e 75 6d 3c | stive-enum">Non-exhaustive.enum< |
| 49540 | 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 6e 2d 65 78 | /a>.<a.class="hdr".href="#Non-ex |
| 49560 | 68 61 75 73 74 69 76 65 2d 65 6e 75 6d 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 | haustive-enum">..</a></h3>...... |
| 49580 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 6e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 65 6e 75 | ..<p>.......A.non-exhaustive.enu |
| 495a0 | 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 20 74 72 61 | m.can.be.created.by.adding.a.tra |
| 495c0 | 69 6c 69 6e 67 20 3c 63 6f 64 65 3e 5f 3c 2f 63 6f 64 65 3e 20 66 69 65 6c 64 2e 0a 20 20 20 20 | iling.<code>_</code>.field...... |
| 495e0 | 20 20 54 68 65 20 65 6e 75 6d 20 6d 75 73 74 20 73 70 65 63 69 66 79 20 61 20 74 61 67 20 74 79 | ..The.enum.must.specify.a.tag.ty |
| 49600 | 70 65 20 61 6e 64 20 63 61 6e 6e 6f 74 20 63 6f 6e 73 75 6d 65 20 65 76 65 72 79 20 65 6e 75 6d | pe.and.cannot.consume.every.enum |
| 49620 | 65 72 61 74 69 6f 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 | eration.value........</p>....... |
| 49640 | 3c 70 3e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 46 72 6f 6d 49 6e 74 22 | <p>.......<a.href="#enumFromInt" |
| 49660 | 3e 40 65 6e 75 6d 46 72 6f 6d 49 6e 74 3c 2f 61 3e 20 6f 6e 20 61 20 6e 6f 6e 2d 65 78 68 61 75 | >@enumFromInt</a>.on.a.non-exhau |
| 49680 | 73 74 69 76 65 20 65 6e 75 6d 20 69 6e 76 6f 6c 76 65 73 20 74 68 65 20 73 61 66 65 74 79 20 73 | stive.enum.involves.the.safety.s |
| 496a0 | 65 6d 61 6e 74 69 63 73 0a 20 20 20 20 20 20 6f 66 20 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 43 | emantics.......of.<a.href="#intC |
| 496c0 | 61 73 74 22 3e 40 69 6e 74 43 61 73 74 3c 2f 61 3e 20 74 6f 20 74 68 65 20 69 6e 74 65 67 65 72 | ast">@intCast</a>.to.the.integer |
| 496e0 | 20 74 61 67 20 74 79 70 65 2c 20 62 75 74 20 62 65 79 6f 6e 64 20 74 68 61 74 20 61 6c 77 61 79 | .tag.type,.but.beyond.that.alway |
| 49700 | 73 20 72 65 73 75 6c 74 73 20 69 6e 0a 20 20 20 20 20 20 61 20 77 65 6c 6c 2d 64 65 66 69 6e 65 | s.results.in.......a.well-define |
| 49720 | 64 20 65 6e 75 6d 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 | d.enum.value........</p>.......< |
| 49740 | 70 3e 0a 20 20 20 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 | p>.......A.switch.on.a.non-exhau |
| 49760 | 73 74 69 76 65 20 65 6e 75 6d 20 63 61 6e 20 69 6e 63 6c 75 64 65 20 61 20 3c 63 6f 64 65 3e 5f | stive.enum.can.include.a.<code>_ |
| 49780 | 3c 2f 63 6f 64 65 3e 20 70 72 6f 6e 67 20 61 73 20 61 6e 20 61 6c 74 65 72 6e 61 74 69 76 65 20 | </code>.prong.as.an.alternative. |
| 497a0 | 74 6f 20 61 6e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | to.an.<code><span.class="tok-kw" |
| 497c0 | 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 70 72 6f 6e 67 2e 0a 20 20 20 20 20 | >else</span></code>.prong....... |
| 497e0 | 20 57 69 74 68 20 61 20 3c 63 6f 64 65 3e 5f 3c 2f 63 6f 64 65 3e 20 70 72 6f 6e 67 20 74 68 65 | .With.a.<code>_</code>.prong.the |
| 49800 | 20 63 6f 6d 70 69 6c 65 72 20 65 72 72 6f 72 73 20 69 66 20 61 6c 6c 20 74 68 65 20 6b 6e 6f 77 | .compiler.errors.if.all.the.know |
| 49820 | 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 20 62 79 20 74 | n.tag.names.are.not.handled.by.t |
| 49840 | 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 20 3c 66 69 67 | he.switch........</p>.......<fig |
| 49860 | 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e | ure><figcaption.class="zig-cap"> |
| 49880 | 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 77 69 74 63 68 5f 6e | <cite.class="file">test_switch_n |
| 498a0 | 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | on-exhaustive.zig</cite></figcap |
| 498c0 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tion><pre><code><span.class="tok |
| 498e0 | 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 |
| 49900 | 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> |
| 49920 | 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 |
| 49940 | 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 |
| 49960 | 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 |
| 49980 | 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 |
| 499a0 | 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 |
| 499c0 | 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 3c 73 70 61 | .class="tok-kw">enum</span>(<spa |
| 499e0 | 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 7b 0a | n.class="tok-type">u8</span>).{. |
| 49a00 | 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 20 20 20 | ....one,.....two,.....three,.... |
| 49a20 | 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 3e 74 65 73 | ._,.};..<span.class="tok-kw">tes |
| 49a40 | 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">& |
| 49a60 | 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 65 20 65 6e | quot;switch.on.non-exhaustive.en |
| 49a80 | 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 63 6c 61 73 | um"</span>.{.....<span.clas |
| 49aa0 | 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 65 72 20 3d | s="tok-kw">const</span>.number.= |
| 49ac0 | 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 3d 22 74 6f | .Number.one;.....<span.class="to |
| 49ae0 | 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 |
| 49b00 | 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>.( |
| 49b20 | 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 20 3c 73 70 | number).{..........one.=>.<sp |
| 49b40 | 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 2c | an.class="tok-null">true</span>, |
| 49b60 | 0a 20 20 20 20 20 20 20 20 2e 74 77 6f 2c 20 2e 74 68 72 65 65 20 3d 26 67 74 3b 20 3c 73 70 61 | ..........two,..three.=>.<spa |
| 49b80 | 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 2c | n.class="tok-null">false</span>, |
| 49ba0 | 0a 20 20 20 20 20 20 20 20 5f 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ........._.=>.<span.class="to |
| 49bc0 | 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 7d 3b 0a 20 20 20 | k-null">false</span>,.....};.... |
| 49be0 | 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> |
| 49c00 | 20 65 78 70 65 63 74 28 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .expect(result);.....<span.class |
| 49c20 | 3d 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 6f 6e 65 20 3d 20 | ="tok-kw">const</span>.is_one.=. |
| 49c40 | 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 |
| 49c60 | 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.=> |
| 49c80 | 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 |
| 49ca0 | 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 6b 77 | an>,.........<span.class="tok-kw |
| 49cc0 | 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= |
| 49ce0 | 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 7d 3b 0a | "tok-null">false</span>,.....};. |
| 49d00 | 20 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 |
| 49d20 | 61 6e 3e 20 65 78 70 65 63 74 28 69 73 5f 6f 6e 65 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | an>.expect(is_one);.}</code></pr |
| 49d40 | 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 | e></figure><figure><figcaption.c |
| 49d60 | 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 | lass="shell-cap">Shell</figcapti |
| 49d80 | 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 | on><pre><samp>$.<kbd>zig.test.te |
| 49da0 | 73 74 5f 73 77 69 74 63 68 5f 6e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 2e 7a 69 67 3c 2f 6b 62 | st_switch_non-exhaustive.zig</kb |
| 49dc0 | 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 77 69 74 63 68 5f 6e 6f 6e 2d 65 78 68 61 75 73 74 69 76 | d>.1/1.test_switch_non-exhaustiv |
| 49de0 | 65 2e 74 65 73 74 2e 73 77 69 74 63 68 20 6f 6e 20 6e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 | e.test.switch.on.non-exhaustive. |
| 49e00 | 65 6e 75 6d 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f | enum...OK.All.1.tests.passed..</ |
| 49e20 | 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 | samp></pre></figure>............ |
| 49e40 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 75 6e 69 6f 6e 22 3e 3c 61 20 68 72 65 | ...........<h2.id="union"><a.hre |
| 49e60 | 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 3c 61 20 63 6c 61 73 | f="#toc-union">union</a>.<a.clas |
| 49e80 | 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 2f 61 3e 3c 2f 68 32 | s="hdr".href="#union">..</a></h2 |
| 49ea0 | 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 20 3c 63 6f 64 65 3e | >........<p>.......A.bare.<code> |
| 49ec0 | 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 6e | <span.class="tok-kw">union</span |
| 49ee0 | 3e 3c 2f 63 6f 64 65 3e 20 64 65 66 69 6e 65 73 20 61 20 73 65 74 20 6f 66 20 70 6f 73 73 69 62 | ></code>.defines.a.set.of.possib |
| 49f00 | 6c 65 20 74 79 70 65 73 20 74 68 61 74 20 61 20 76 61 6c 75 65 0a 20 20 20 20 20 20 63 61 6e 20 | le.types.that.a.value.......can. |
| 49f20 | 62 65 20 61 73 20 61 20 6c 69 73 74 20 6f 66 20 66 69 65 6c 64 73 2e 20 4f 6e 6c 79 20 6f 6e 65 | be.as.a.list.of.fields..Only.one |
| 49f40 | 20 66 69 65 6c 64 20 63 61 6e 20 62 65 20 61 63 74 69 76 65 20 61 74 20 61 20 74 69 6d 65 2e 0a | .field.can.be.active.at.a.time.. |
| 49f60 | 20 20 20 20 20 20 54 68 65 20 69 6e 2d 6d 65 6d 6f 72 79 20 72 65 70 72 65 73 65 6e 74 61 74 69 | ......The.in-memory.representati |
| 49f80 | 6f 6e 20 6f 66 20 62 61 72 65 20 75 6e 69 6f 6e 73 20 69 73 20 6e 6f 74 20 67 75 61 72 61 6e 74 | on.of.bare.unions.is.not.guarant |
| 49fa0 | 65 65 64 2e 0a 20 20 20 20 20 20 42 61 72 65 20 75 6e 69 6f 6e 73 20 63 61 6e 6e 6f 74 20 62 65 | eed........Bare.unions.cannot.be |
| 49fc0 | 20 75 73 65 64 20 74 6f 20 72 65 69 6e 74 65 72 70 72 65 74 20 6d 65 6d 6f 72 79 2e 20 46 6f 72 | .used.to.reinterpret.memory..For |
| 49fe0 | 20 74 68 61 74 2c 20 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 | .that,.use.<a.href="#ptrCast">@p |
| 4a000 | 74 72 43 61 73 74 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 6f 72 20 75 73 65 20 61 6e 20 3c 61 20 68 | trCast</a>,.......or.use.an.<a.h |
| 4a020 | 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 6f 6e | ref="#extern-union">extern.union |
| 4a040 | 3c 2f 61 3e 20 6f 72 20 61 20 3c 61 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 75 6e 69 6f 6e | </a>.or.a.<a.href="#packed-union |
| 4a060 | 22 3e 70 61 63 6b 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 20 77 68 69 63 68 20 68 61 76 65 0a 20 20 | ">packed.union</a>.which.have... |
| 4a080 | 20 20 20 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 2e | ....guaranteed.in-memory.layout. |
| 4a0a0 | 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 | .......<a.href="#Wrong-Union-Fie |
| 4a0c0 | 6c 64 2d 41 63 63 65 73 73 22 3e 41 63 63 65 73 73 69 6e 67 20 74 68 65 20 6e 6f 6e 2d 61 63 74 | ld-Access">Accessing.the.non-act |
| 4a0e0 | 69 76 65 20 66 69 65 6c 64 3c 2f 61 3e 20 69 73 0a 20 20 20 20 20 20 73 61 66 65 74 79 2d 63 68 | ive.field</a>.is.......safety-ch |
| 4a100 | 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 | ecked.<a.href="#Illegal-Behavior |
| 4a120 | 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f | ">Illegal.Behavior</a>:.......</ |
| 4a140 | 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | p>.......<figure><figcaption.cla |
| 4a160 | 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | ss="zig-cap"><cite.class="file"> |
| 4a180 | 74 65 73 74 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 61 63 63 65 73 73 2e 7a 69 67 3c 2f 63 69 74 | test_wrong_union_access.zig</cit |
| 4a1a0 | 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | e></figcaption><pre><code><span. |
| 4a1c0 | 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 61 79 6c | class="tok-kw">const</span>.Payl |
| 4a1e0 | 6f 61 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 75 6e 69 6f 6e | oad.=.<span.class="tok-kw">union |
| 4a200 | 3c 2f 73 70 61 6e 3e 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 | </span>.{.....int:.<span.class=" |
| 4a220 | 74 6f 6b 2d 74 79 70 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 | tok-type">i64</span>,.....float: |
| 4a240 | 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 73 70 61 | .<span.class="tok-type">f64</spa |
| 4a260 | 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 61 73 73 3d 22 74 6f | n>,.....boolean:.<span.class="to |
| 4a280 | 6b 2d 74 79 70 65 22 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 | k-type">bool</span>,.};.<span.cl |
| 4a2a0 | 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 |
| 4a2c0 | 6c 61 73 73 3d 22 74 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 | lass="tok-str">"simple.unio |
| 4a2e0 | 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 20 63 6c 61 73 73 | n"</span>.{.....<span.class |
| 4a300 | 3d 22 74 6f 6b 2d 6b 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 | ="tok-kw">var</span>.payload.=.P |
| 4a320 | 61 79 6c 6f 61 64 7b 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 | ayload{..int.=.<span.class="tok- |
| 4a340 | 6e 75 6d 62 65 72 22 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 | number">1234</span>.};.....paylo |
| 4a360 | 61 64 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 6e 75 6d 62 | ad.float.=.<span.class="tok-numb |
| 4a380 | 65 72 22 3e 31 32 2e 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 | er">12.34</span>;.}</code></pre> |
| 4a3a0 | 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | </figure><figure><figcaption.cla |
| 4a3c0 | 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e | ss="shell-cap">Shell</figcaption |
| 4a3e0 | 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 | ><pre><samp>$.<kbd>zig.test.test |
| 4a400 | 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 61 63 63 65 73 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f | _wrong_union_access.zig</kbd>.1/ |
| 4a420 | 31 20 74 65 73 74 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 61 63 63 65 73 73 2e 74 65 73 74 2e 73 | 1.test_wrong_union_access.test.s |
| 4a440 | 69 6d 70 6c 65 20 75 6e 69 6f 6e 2e 2e 2e 74 68 72 65 61 64 20 32 31 30 39 31 35 20 70 61 6e 69 | imple.union...thread.210915.pani |
| 4a460 | 63 3a 20 61 63 63 65 73 73 20 6f 66 20 75 6e 69 6f 6e 20 66 69 65 6c 64 20 27 66 6c 6f 61 74 27 | c:.access.of.union.field.'float' |
| 4a480 | 20 77 68 69 6c 65 20 66 69 65 6c 64 20 27 69 6e 74 27 20 69 73 20 61 63 74 69 76 65 0a 3c 73 70 | .while.field.'int'.is.active.<sp |
| 4a4a0 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 | an.class="sgr-1m">/home/andy/dev |
| 4a4c0 | 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 77 72 6f 6e 67 5f 75 6e 69 6f | /zig/doc/langref/test_wrong_unio |
| 4a4e0 | 6e 5f 61 63 63 65 73 73 2e 7a 69 67 3a 38 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | n_access.zig:8:12</span>:.<span. |
| 4a500 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 38 61 35 66 20 69 6e 20 74 65 73 74 | class="sgr-2m">0x1048a5f.in.test |
| 4a520 | 2e 73 69 6d 70 6c 65 20 75 6e 69 6f 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | .simple.union.(test)</span>..... |
| 4a540 | 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 20 20 | payload.float.=.12.34;.......... |
| 4a560 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e | ..<span.class="sgr-32m">^</span> |
| 4a580 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 | .<span.class="sgr-1m">/home/andy |
| 4a5a0 | 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 | /dev/zig/lib/compiler/test_runne |
| 4a5c0 | 72 2e 7a 69 67 3a 32 31 34 3a 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | r.zig:214:25</span>:.<span.class |
| 4a5e0 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 66 32 65 35 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 | ="sgr-2m">0x10ef2e5.in.mainTermi |
| 4a600 | 6e 61 6c 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 65 | nal.(test)</span>.........if.(te |
| 4a620 | 73 74 5f 66 6e 2e 66 75 6e 63 28 29 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | st_fn.func()).|_|.{............. |
| 4a640 | 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 73 67 72 2d 33 32 6d | ............<span.class="sgr-32m |
| 4a660 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e | ">^</span>.<span.class="sgr-1m"> |
| 4a680 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f | /home/andy/dev/zig/lib/compiler/ |
| 4a6a0 | 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 36 32 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | test_runner.zig:62:28</span>:.<s |
| 4a6c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 37 36 63 64 20 69 6e 20 | pan.class="sgr-2m">0x10e76cd.in. |
| 4a6e0 | 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 72 65 74 75 72 | main.(test)</span>.........retur |
| 4a700 | 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | n.mainTerminal();............... |
| 4a720 | 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 73 67 72 2d 33 32 | .............<span.class="sgr-32 |
| 4a740 | 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 | m">^</span>.<span.class="sgr-1m" |
| 4a760 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 | >/home/andy/dev/zig/lib/std/star |
| 4a780 | 74 2e 7a 69 67 3a 36 35 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:651:22</span>:.<span.class |
| 4a7a0 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 36 62 34 32 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c | ="sgr-2m">0x10e6b42.in.posixCall |
| 4a7c0 | 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 20 20 | MainAndExit.(test)</span>....... |
| 4a7e0 | 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 20 20 | ......root.main();.............. |
| 4a800 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c | ........<span.class="sgr-32m">^< |
| 4a820 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d | /span>.<span.class="sgr-1m">/hom |
| 4a840 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 | e/andy/dev/zig/lib/std/start.zig |
| 4a860 | 3a 32 37 31 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | :271:5</span>:.<span.class="sgr- |
| 4a880 | 32 6d 22 3e 30 78 31 30 65 36 37 31 64 20 69 6e 20 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f | 2m">0x10e671d.in._start.(test)</ |
| 4a8a0 | 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 | span>.....asm.volatile.(switch.( |
| 4a8c0 | 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | native_arch).{.....<span.class=" |
| 4a8e0 | 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | sgr-32m">^</span>.<span.class="s |
| 4a900 | 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | gr-1m">???:?:?</span>:.<span.cla |
| 4a920 | 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 | ss="sgr-2m">0x0.in.???.(???)</sp |
| 4a940 | 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 20 63 6f | an>.error:.the.following.test.co |
| 4a960 | 6d 6d 61 6e 64 20 63 72 61 73 68 65 64 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | mmand.crashed:./home/andy/dev/zi |
| 4a980 | 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 30 65 32 61 64 31 38 33 37 65 65 33 66 65 32 36 37 | g/.zig-cache/o/0e2ad1837ee3fe267 |
| 4a9a0 | 38 36 63 64 34 31 38 33 34 33 63 62 61 39 65 2f 74 65 73 74 20 2d 2d 73 65 65 64 3d 30 78 64 65 | 86cd418343cba9e/test.--seed=0xde |
| 4a9c0 | 61 35 66 31 30 33 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 | a5f103.</samp></pre></figure>... |
| 4a9e0 | 20 20 20 20 20 3c 70 3e 59 6f 75 20 63 61 6e 20 61 63 74 69 76 61 74 65 20 61 6e 6f 74 68 65 72 | .....<p>You.can.activate.another |
| 4aa00 | 20 66 69 65 6c 64 20 62 79 20 61 73 73 69 67 6e 69 6e 67 20 74 68 65 20 65 6e 74 69 72 65 20 75 | .field.by.assigning.the.entire.u |
| 4aa20 | 6e 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | nion:</p>.......<figure><figcapt |
| 4aa40 | 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d | ion.class="zig-cap"><cite.class= |
| 4aa60 | 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 69 6d 70 6c 65 5f 75 6e 69 6f 6e 2e 7a 69 67 3c 2f 63 69 | "file">test_simple_union.zig</ci |
| 4aa80 | 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e | te></figcaption><pre><code><span |
| 4aaa0 | 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 |
| 4aac0 | 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 |
| 4aae0 | 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 |
| 4ab00 | 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 |
| 4ab20 | 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 |
| 4ab40 | 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 |
| 4ab60 | 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 61 79 | .class="tok-kw">const</span>.Pay |
| 4ab80 | 6c 6f 61 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 75 6e 69 6f | load.=.<span.class="tok-kw">unio |
| 4aba0 | 6e 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | n</span>.{.....int:.<span.class= |
| 4abc0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 69 36 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 66 6c 6f 61 74 | "tok-type">i64</span>,.....float |
| 4abe0 | 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 73 70 | :.<span.class="tok-type">f64</sp |
| 4ac00 | 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 61 73 73 3d 22 74 | an>,.....boolean:.<span.class="t |
| 4ac20 | 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 | ok-type">bool</span>,.};.<span.c |
| 4ac40 | 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. |
| 4ac60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 69 6d 70 6c 65 20 75 6e 69 | class="tok-str">"simple.uni |
| 4ac80 | 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 20 63 6c 61 73 | on"</span>.{.....<span.clas |
| 4aca0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 61 79 6c 6f 61 64 20 3d 20 | s="tok-kw">var</span>.payload.=. |
| 4acc0 | 50 61 79 6c 6f 61 64 7b 20 2e 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | Payload{..int.=.<span.class="tok |
| 4ace0 | 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 | -number">1234</span>.};.....<spa |
| 4ad00 | 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 |
| 4ad20 | 63 74 28 70 61 79 6c 6f 61 64 2e 69 6e 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ct(payload.int.==.<span.class="t |
| 4ad40 | 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 70 61 79 | ok-number">1234</span>);.....pay |
| 4ad60 | 6c 6f 61 64 20 3d 20 50 61 79 6c 6f 61 64 7b 20 2e 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 | load.=.Payload{..float.=.<span.c |
| 4ad80 | 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>.} |
| 4ada0 | 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</ |
| 4adc0 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 61 79 6c 6f 61 64 2e 66 6c 6f 61 74 20 3d 3d 20 3c 73 | span>.expect(payload.float.==.<s |
| 4ade0 | 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 73 70 | pan.class="tok-number">12.34</sp |
| 4ae00 | 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 | an>);.}</code></pre></figure><fi |
| 4ae20 | 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 | gure><figcaption.class="shell-ca |
| 4ae40 | 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e | p">Shell</figcaption><pre><samp> |
| 4ae60 | 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 73 69 6d 70 6c 65 5f 75 6e 69 6f | $.<kbd>zig.test.test_simple_unio |
| 4ae80 | 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 69 6d 70 6c 65 5f 75 6e 69 6f | n.zig</kbd>.1/1.test_simple_unio |
| 4aea0 | 6e 2e 74 65 73 74 2e 73 69 6d 70 6c 65 20 75 6e 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 | n.test.simple.union...OK.All.1.t |
| 4aec0 | 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | ests.passed..</samp></pre></figu |
| 4aee0 | 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 20 74 6f | re>........<p>.......In.order.to |
| 4af00 | 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 3c 2f 61 | .use.<a.href="#switch">switch</a |
| 4af20 | 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 3c 61 20 | >.with.a.union,.it.must.be.a.<a. |
| 4af40 | 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 69 6f | href="#Tagged-union">Tagged.unio |
| 4af60 | 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 20 | n</a>........</p>.......<p>..... |
| 4af80 | 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 74 68 65 | ..To.initialize.a.union.when.the |
| 4afa0 | 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 3e 63 6f | .tag.is.a.<a.href="#comptime">co |
| 4afc0 | 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 20 68 72 | mptime</a>-known.name,.see.<a.hr |
| 4afe0 | 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 3e 2e 0a | ef="#unionInit">@unionInit</a>.. |
| 4b000 | 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 54 61 67 67 65 64 | ......</p>........<h3.id="Tagged |
| 4b020 | 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 75 6e 69 | -union"><a.href="#toc-Tagged-uni |
| 4b040 | 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 3d 22 68 | on">Tagged.union</a>.<a.class="h |
| 4b060 | 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 61 3e 3c | dr".href="#Tagged-union">..</a>< |
| 4b080 | 2f 68 33 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 64 65 63 | /h3>........<p>Unions.can.be.dec |
| 4b0a0 | 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 20 20 20 | lared.with.an.enum.tag.type..... |
| 4b0c0 | 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 61 20 3c | ...This.turns.the.union.into.a.< |
| 4b0e0 | 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 61 6b 65 | em>tagged</em>.union,.which.make |
| 4b100 | 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 74 68 20 | s.it.eligible.......to.use.with. |
| 4b120 | 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 65 78 70 | <a.href="#switch">switch</a>.exp |
| 4b140 | 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 20 63 6f | ressions........Tagged.unions.co |
| 4b160 | 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 65 66 3d | erce.to.their.tag.type:.<a.href= |
| 4b180 | 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 55 6e 69 6f 6e 73 2d 61 6e 64 2d 45 6e 75 6d 73 | "#Type-Coercion-Unions-and-Enums |
| 4b1a0 | 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 55 6e 69 6f 6e 73 20 61 6e 64 20 45 6e 75 6d | ">Type.Coercion:.Unions.and.Enum |
| 4b1c0 | 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 66 69 67 75 72 65 3e | s</a>........</p>.......<figure> |
| 4b1e0 | 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 | <figcaption.class="zig-cap"><cit |
| 4b200 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 74 61 67 67 65 64 5f 75 6e 69 6f 6e | e.class="file">test_tagged_union |
| 4b220 | 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f | .zig</cite></figcaption><pre><co |
| 4b240 | 64 65 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 | de><span.class="tok-kw">const</s |
| 4b260 | 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 |
| 4b280 | 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= |
| 4b2a0 | 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> |
| 4b2c0 | 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 |
| 4b2e0 | 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 74 | pan>.expect.=.std.testing.expect |
| 4b300 | 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 73 | ;..<span.class="tok-kw">const</s |
| 4b320 | 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 73 | pan>.ComplexTypeTag.=.<span.clas |
| 4b340 | 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 2c | s="tok-kw">enum</span>.{.....ok, |
| 4b360 | 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 6b | .....not_ok,.};.<span.class="tok |
| 4b380 | 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 20 | -kw">const</span>.ComplexType.=. |
| 4b3a0 | 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 6e | <span.class="tok-kw">union</span |
| 4b3c0 | 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 61 | >(ComplexTypeTag).{.....ok:.<spa |
| 4b3e0 | 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 20 | n.class="tok-type">u8</span>,... |
| 4b400 | 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 22 | ..not_ok:.<span.class="tok-type" |
| 4b420 | 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 74 | >void</span>,.};..<span.class="t |
| 4b440 | 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=" |
| 4b460 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 77 69 74 63 68 20 6f 6e 20 74 61 67 67 65 64 20 | tok-str">"switch.on.tagged. |
| 4b480 | 75 6e 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 20 63 | union"</span>.{.....<span.c |
| 4b4a0 | 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 43 | lass="tok-kw">const</span>.c.=.C |
| 4b4c0 | 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 61 73 73 3d 22 74 | omplexType{..ok.=.<span.class="t |
| 4b4e0 | 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 3c 73 70 61 | ok-number">42</span>.};.....<spa |
| 4b500 | 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 |
| 4b520 | 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 61 73 | ct(<span.class="tok-builtin">@as |
| 4b540 | 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 20 3d 3d 20 43 6f | </span>(ComplexTypeTag,.c).==.Co |
| 4b560 | 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 61 6e 20 63 6c 61 | mplexTypeTag.ok);......<span.cla |
| 4b580 | 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 0a | ss="tok-kw">switch</span>.(c).{. |
| 4b5a0 | 20 20 20 20 20 20 20 20 2e 6f 6b 20 3d 26 67 74 3b 20 7c 76 61 6c 75 65 7c 20 3c 73 70 61 6e 20 | .........ok.=>.|value|.<span. |
| 4b5c0 | 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 |
| 4b5e0 | 28 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 | (value.==.<span.class="tok-numbe |
| 4b600 | 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 2e 6e 6f 74 5f 6f 6b 20 3d | r">42</span>),..........not_ok.= |
| 4b620 | 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 3e 75 6e 72 65 61 63 | >.<span.class="tok-kw">unreac |
| 4b640 | 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 70 61 6e 20 63 6c 61 | hable</span>,.....}.}..<span.cla |
| 4b660 | 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 |
| 4b680 | 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 61 67 20 74 79 70 65 | ass="tok-str">"get.tag.type |
| 4b6a0 | 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= |
| 4b6c0 | 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 |
| 4b6e0 | 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 6f 6d 70 6c 65 78 54 | eta.Tag(ComplexType).==.ComplexT |
| 4b700 | 79 70 65 54 61 67 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | ypeTag);.}</code></pre></figure> |
| 4b720 | 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | <figure><figcaption.class="shell |
| 4b740 | 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 | -cap">Shell</figcaption><pre><sa |
| 4b760 | 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 74 61 67 67 65 64 5f 75 | mp>$.<kbd>zig.test.test_tagged_u |
| 4b780 | 6e 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 74 61 67 67 65 64 5f 75 | nion.zig</kbd>.1/2.test_tagged_u |
| 4b7a0 | 6e 69 6f 6e 2e 74 65 73 74 2e 73 77 69 74 63 68 20 6f 6e 20 74 61 67 67 65 64 20 75 6e 69 6f 6e | nion.test.switch.on.tagged.union |
| 4b7c0 | 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 74 61 67 67 65 64 5f 75 6e 69 6f 6e 2e 74 65 73 74 | ...OK.2/2.test_tagged_union.test |
| 4b7e0 | 2e 67 65 74 20 74 61 67 20 74 79 70 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 | .get.tag.type...OK.All.2.tests.p |
| 4b800 | 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 | assed..</samp></pre></figure>... |
| 4b820 | 20 20 20 20 20 3c 70 3e 49 6e 20 6f 72 64 65 72 20 74 6f 20 6d 6f 64 69 66 79 20 74 68 65 20 70 | .....<p>In.order.to.modify.the.p |
| 4b840 | 61 79 6c 6f 61 64 20 6f 66 20 61 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 20 69 6e 20 61 20 73 77 | ayload.of.a.tagged.union.in.a.sw |
| 4b860 | 69 74 63 68 20 65 78 70 72 65 73 73 69 6f 6e 2c 0a 20 20 20 20 20 20 70 6c 61 63 65 20 61 20 3c | itch.expression,.......place.a.< |
| 4b880 | 63 6f 64 65 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 61 62 6c | code>*</code>.before.the.variabl |
| 4b8a0 | 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 20 20 20 | e.name.to.make.it.a.pointer:.... |
| 4b8c0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | ...</p>.......<figure><figcaptio |
| 4b8e0 | 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 | n.class="zig-cap"><cite.class="f |
| 4b900 | 69 6c 65 22 3e 74 65 73 74 5f 73 77 69 74 63 68 5f 6d 6f 64 69 66 79 5f 74 61 67 67 65 64 5f 75 | ile">test_switch_modify_tagged_u |
| 4b920 | 6e 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | nion.zig</cite></figcaption><pre |
| 4b940 | 3e 3c 63 6f 64 65 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 | ><code><span.class="tok-kw">cons |
| 4b960 | 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- |
| 4b980 | 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 |
| 4b9a0 | 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 |
| 4b9c0 | 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 |
| 4b9e0 | 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 |
| 4ba00 | 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 73 | pect;..<span.class="tok-kw">cons |
| 4ba20 | 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 20 3c 73 70 61 6e 20 | t</span>.ComplexTypeTag.=.<span. |
| 4ba40 | 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 20 20 20 | class="tok-kw">enum</span>.{.... |
| 4ba60 | 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 20 63 6c 61 73 73 3d | .ok,.....not_ok,.};.<span.class= |
| 4ba80 | 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 70 6c 65 78 54 79 70 | "tok-kw">const</span>.ComplexTyp |
| 4baa0 | 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 75 6e 69 6f 6e 3c 2f | e.=.<span.class="tok-kw">union</ |
| 4bac0 | 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 20 20 20 6f 6b 3a 20 | span>(ComplexTypeTag).{.....ok:. |
| 4bae0 | 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> |
| 4bb00 | 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 3d 22 74 6f 6b 2d 74 | ,.....not_ok:.<span.class="tok-t |
| 4bb20 | 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 61 6e 20 63 6c 61 73 | ype">void</span>,.};..<span.clas |
| 4bb40 | 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 |
| 4bb60 | 73 73 3d 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 | ss="tok-str">"modify.tagged |
| 4bb80 | 20 75 6e 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 | .union.in.switch"</span>.{. |
| 4bba0 | 20 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 |
| 4bbc0 | 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 61 6e | an>.c.=.ComplexType{..ok.=.<span |
| 4bbe0 | 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>.}; |
| 4bc00 | 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 73 77 69 74 63 | ......<span.class="tok-kw">switc |
| 4bc20 | 68 3c 2f 73 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 | h</span>.(c).{.........ComplexTy |
| 4bc40 | 70 65 54 61 67 2e 6f 6b 20 3d 26 67 74 3b 20 7c 2a 76 61 6c 75 65 7c 20 76 61 6c 75 65 2e 2a 20 | peTag.ok.=>.|*value|.value.*. |
| 4bc60 | 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 |
| 4bc80 | 70 61 6e 3e 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 6f 74 | pan>,.........ComplexTypeTag.not |
| 4bca0 | 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 3e 75 | _ok.=>.<span.class="tok-kw">u |
| 4bcc0 | 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 0a 20 20 20 20 3c 73 | nreachable</span>,.....}......<s |
| 4bce0 | 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 |
| 4bd00 | 70 65 63 74 28 63 2e 6f 6b 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | pect(c.ok.==.<span.class="tok-nu |
| 4bd20 | 6d 62 65 72 22 3e 34 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 | mber">43</span>);.}</code></pre> |
| 4bd40 | 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | </figure><figure><figcaption.cla |
| 4bd60 | 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e | ss="shell-cap">Shell</figcaption |
| 4bd80 | 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 | ><pre><samp>$.<kbd>zig.test.test |
| 4bda0 | 5f 73 77 69 74 63 68 5f 6d 6f 64 69 66 79 5f 74 61 67 67 65 64 5f 75 6e 69 6f 6e 2e 7a 69 67 3c | _switch_modify_tagged_union.zig< |
| 4bdc0 | 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 77 69 74 63 68 5f 6d 6f 64 69 66 79 5f 74 61 67 | /kbd>.1/1.test_switch_modify_tag |
| 4bde0 | 67 65 64 5f 75 6e 69 6f 6e 2e 74 65 73 74 2e 6d 6f 64 69 66 79 20 74 61 67 67 65 64 20 75 6e 69 | ged_union.test.modify.tagged.uni |
| 4be00 | 6f 6e 20 69 6e 20 73 77 69 74 63 68 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 | on.in.switch...OK.All.1.tests.pa |
| 4be20 | 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 | ssed..</samp></pre></figure>.... |
| 4be40 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 6e 69 6f 6e 73 20 63 61 6e 20 62 65 20 6d 61 64 65 | ....<p>.......Unions.can.be.made |
| 4be60 | 20 74 6f 20 69 6e 66 65 72 20 74 68 65 20 65 6e 75 6d 20 74 61 67 20 74 79 70 65 2e 0a 20 20 20 | .to.infer.the.enum.tag.type..... |
| 4be80 | 20 20 20 46 75 72 74 68 65 72 2c 20 75 6e 69 6f 6e 73 20 63 61 6e 20 68 61 76 65 20 6d 65 74 68 | ...Further,.unions.can.have.meth |
| 4bea0 | 6f 64 73 20 6a 75 73 74 20 6c 69 6b 65 20 73 74 72 75 63 74 73 20 61 6e 64 20 65 6e 75 6d 73 2e | ods.just.like.structs.and.enums. |
| 4bec0 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | .......</p>.......<figure><figca |
| 4bee0 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 | ption.class="zig-cap"><cite.clas |
| 4bf00 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 75 6e 69 6f 6e 5f 6d 65 74 68 6f 64 2e 7a 69 67 3c 2f | s="file">test_union_method.zig</ |
| 4bf20 | 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 | cite></figcaption><pre><code><sp |
| 4bf40 | 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 |
| 4bf60 | 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">@ |
| 4bf80 | 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 |
| 4bfa0 | 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 |
| 4bfc0 | 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 |
| 4bfe0 | 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 |
| 4c000 | 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 56 | an.class="tok-kw">const</span>.V |
| 4c020 | 61 72 69 61 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 75 6e | ariant.=.<span.class="tok-kw">un |
| 4c040 | 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 22 3e | ion</span>(<span.class="tok-kw"> |
| 4c060 | 65 6e 75 6d 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c | enum</span>).{.....int:.<span.cl |
| 4c080 | 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 |
| 4c0a0 | 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 |
| 4c0c0 | 6f 6f 6c 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 | ool</span>,......<span.class="to |
| 4c0e0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 6f 69 64 20 63 61 6e 20 62 65 20 6f 6d 69 74 74 65 | k-comment">//.void.can.be.omitte |
| 4c100 | 64 20 77 68 65 6e 20 69 6e 66 65 72 72 69 6e 67 20 65 6e 75 6d 20 74 61 67 20 74 79 70 65 2e 3c | d.when.inferring.enum.tag.type.< |
| 4c120 | 2f 73 70 61 6e 3e 0a 20 20 20 20 6e 6f 6e 65 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | /span>.....none,......<span.clas |
| 4c140 | 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 |
| 4c160 | 3d 22 74 6f 6b 2d 66 6e 22 3e 74 72 75 74 68 79 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 56 61 | ="tok-fn">truthy</span>(self:.Va |
| 4c180 | 72 69 61 6e 74 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 | riant).<span.class="tok-type">bo |
| 4c1a0 | 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 63 6c 61 73 73 3d | ol</span>.{.........<span.class= |
| 4c1c0 | 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 |
| 4c1e0 | 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 65 6c 66 29 | ss="tok-kw">switch</span>.(self) |
| 4c200 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 56 61 72 69 61 6e 74 2e 69 6e 74 20 3d 26 67 74 3b | .{.............Variant.int.=> |
| 4c220 | 20 7c 78 5f 69 6e 74 7c 20 78 5f 69 6e 74 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .|x_int|.x_int.!=.<span.class="t |
| 4c240 | 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 20 20 20 | ok-number">0</span>,............ |
| 4c260 | 20 56 61 72 69 61 6e 74 2e 62 6f 6f 6c 65 61 6e 20 3d 26 67 74 3b 20 7c 78 5f 62 6f 6f 6c 7c 20 | .Variant.boolean.=>.|x_bool|. |
| 4c280 | 78 5f 62 6f 6f 6c 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 56 61 72 69 61 6e 74 2e 6e 6f 6e 65 | x_bool,.............Variant.none |
| 4c2a0 | 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 61 | .=>.<span.class="tok-null">fa |
| 4c2c0 | 6c 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 7d 0a 7d 3b 0a | lse</span>,.........};.....}.};. |
| 4c2e0 | 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 |
| 4c300 | 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 75 6e | >.<span.class="tok-str">"un |
| 4c320 | 69 6f 6e 20 6d 65 74 68 6f 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | ion.method"</span>.{.....<s |
| 4c340 | 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 76 31 | pan.class="tok-kw">var</span>.v1 |
| 4c360 | 3a 20 56 61 72 69 61 6e 74 20 3d 20 2e 7b 20 2e 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | :.Variant.=..{..int.=.<span.clas |
| 4c380 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c | s="tok-number">1</span>.};.....< |
| 4c3a0 | 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 76 | span.class="tok-kw">var</span>.v |
| 4c3c0 | 32 3a 20 56 61 72 69 61 6e 74 20 3d 20 2e 7b 20 2e 62 6f 6f 6c 65 61 6e 20 3d 20 3c 73 70 61 6e | 2:.Variant.=..{..boolean.=.<span |
| 4c3e0 | 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 20 7d | .class="tok-null">false</span>.} |
| 4c400 | 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</ |
| 4c420 | 73 70 61 6e 3e 20 76 33 3a 20 56 61 72 69 61 6e 74 20 3d 20 2e 6e 6f 6e 65 3b 0a 0a 20 20 20 20 | span>.v3:.Variant.=..none;...... |
| 4c440 | 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>. |
| 4c460 | 65 78 70 65 63 74 28 76 31 2e 74 72 75 74 68 79 28 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | expect(v1.truthy());.....<span.c |
| 4c480 | 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( |
| 4c4a0 | 21 76 32 2e 74 72 75 74 68 79 28 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | !v2.truthy());.....<span.class=" |
| 4c4c0 | 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 76 33 2e 74 72 | tok-kw">try</span>.expect(!v3.tr |
| 4c4e0 | 75 74 68 79 28 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | uthy());.}</code></pre></figure> |
| 4c500 | 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | <figure><figcaption.class="shell |
| 4c520 | 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 | -cap">Shell</figcaption><pre><sa |
| 4c540 | 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 75 6e 69 6f 6e 5f 6d 65 | mp>$.<kbd>zig.test.test_union_me |
| 4c560 | 74 68 6f 64 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 75 6e 69 6f 6e 5f 6d 65 | thod.zig</kbd>.1/1.test_union_me |
| 4c580 | 74 68 6f 64 2e 74 65 73 74 2e 75 6e 69 6f 6e 20 6d 65 74 68 6f 64 2e 2e 2e 4f 4b 0a 41 6c 6c 20 | thod.test.union.method...OK.All. |
| 4c5a0 | 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 | 1.tests.passed..</samp></pre></f |
| 4c5c0 | 69 67 75 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 72 65 66 3d | igure>........<p>.......<a.href= |
| 4c5e0 | 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 62 65 20 75 | "#tagName">@tagName</a>.can.be.u |
| 4c600 | 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 6d 70 74 69 | sed.to.return.a.<a.href="#compti |
| 4c620 | 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 3e 5b 3a 3c | me">comptime</a>.......<code>[:< |
| 4c640 | 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> |
| 4c660 | 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 |
| 4c680 | 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 |
| 4c6a0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 61 6c 75 65 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 | an></code>.value.representing.th |
| 4c6c0 | 65 20 66 69 65 6c 64 20 6e 61 6d 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | e.field.name:.......</p>.......< |
| 4c6e0 | 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 | figure><figcaption.class="zig-ca |
| 4c700 | 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 74 61 67 4e 61 | p"><cite.class="file">test_tagNa |
| 4c720 | 6d 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c | me.zig</cite></figcaption><pre>< |
| 4c740 | 63 6f 64 65 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 | code><span.class="tok-kw">const< |
| 4c760 | 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 |
| 4c780 | 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 |
| 4c7a0 | 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 |
| 4c7c0 | 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< |
| 4c7e0 | 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 |
| 4c800 | 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 73 74 3c | ct;..<span.class="tok-kw">const< |
| 4c820 | 2f 73 70 61 6e 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 | /span>.Small2.=.<span.class="tok |
| 4c840 | 2d 6b 77 22 3e 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 | -kw">union</span>(<span.class="t |
| 4c860 | 6f 6b 2d 6b 77 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 | ok-kw">enum</span>).{.....a:.<sp |
| 4c880 | 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 2c 0a | an.class="tok-type">i32</span>,. |
| 4c8a0 | 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 79 70 65 22 3e 62 6f | ....b:.<span.class="tok-type">bo |
| 4c8c0 | 6f 6c 3c 2f 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 | ol</span>,.....c:.<span.class="t |
| 4c8e0 | 6f 6b 2d 74 79 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 | ok-type">u8</span>,.};.<span.cla |
| 4c900 | 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 |
| 4c920 | 61 73 73 3d 22 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 | ass="tok-str">"@tagName&quo |
| 4c940 | 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 |
| 4c960 | 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 6d 2e 65 | -kw">try</span>.expect(std.mem.e |
| 4c980 | 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 38 3c 2f 73 70 | ql(<span.class="tok-type">u8</sp |
| 4c9a0 | 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 69 6e 22 3e 40 | an>,.<span.class="tok-builtin">@ |
| 4c9c0 | 74 61 67 4e 61 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 | tagName</span>(Small2.a),.<span. |
| 4c9e0 | 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 75 6f 74 3b 3c 2f 73 | class="tok-str">"a"</s |
| 4ca00 | 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c | pan>));.}</code></pre></figure>< |
| 4ca20 | 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d | figure><figcaption.class="shell- |
| 4ca40 | 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d | cap">Shell</figcaption><pre><sam |
| 4ca60 | 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 74 61 67 4e 61 6d 65 2e 7a | p>$.<kbd>zig.test.test_tagName.z |
| 4ca80 | 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 74 61 67 4e 61 6d 65 2e 74 65 73 74 2e 40 | ig</kbd>.1/1.test_tagName.test.@ |
| 4caa0 | 74 61 67 4e 61 6d 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e | tagName...OK.All.1.tests.passed. |
| 4cac0 | 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a | .</samp></pre></figure>......... |
| 4cae0 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 3e 3c 61 20 | .......<h3.id="extern-union"><a. |
| 4cb00 | 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 3e 65 78 74 65 72 6e 20 | href="#toc-extern-union">extern. |
| 4cb20 | 75 6e 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 65 66 3d 22 23 | union</a>.<a.class="hdr".href="# |
| 4cb40 | 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | extern-union">..</a></h3>....... |
| 4cb60 | 20 3c 70 3e 0a 20 20 20 20 20 20 41 6e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .<p>.......An.<code><span.class= |
| 4cb80 | 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 |
| 4cba0 | 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 6f 64 65 3e 20 | ss="tok-kw">union</span></code>. |
| 4cbc0 | 68 61 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 | has.memory.layout.guaranteed.to. |
| 4cbe0 | 62 65 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 | be.compatible.with.......the.tar |
| 4cc00 | 67 65 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 | get.C.ABI........</p>.......<p>S |
| 4cc20 | 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 65 | ee.also:</p><ul>.<li><a.href="#e |
| 4cc40 | 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 61 3e 3c | xtern-struct">extern.struct</a>< |
| 4cc60 | 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 33 20 69 64 | /li>.</ul>................<h3.id |
| 4cc80 | 3d 22 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 | ="packed-union"><a.href="#toc-pa |
| 4cca0 | 63 6b 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 | cked-union">packed.union</a>.<a. |
| 4ccc0 | 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 75 6e 69 6f 6e 22 | class="hdr".href="#packed-union" |
| 4cce0 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 20 3c 63 6f 64 65 3e 3c | >..</a></h3>........<p>A.<code>< |
| 4cd00 | 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 2f 73 70 61 6e | span.class="tok-kw">packed</span |
| 4cd20 | 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 69 6f 6e 3c 2f 73 70 | >.<span.class="tok-kw">union</sp |
| 4cd40 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 77 65 6c 6c 2d 64 65 66 69 6e 65 64 20 69 6e 2d 6d | an></code>.has.well-defined.in-m |
| 4cd60 | 65 6d 6f 72 79 20 6c 61 79 6f 75 74 20 61 6e 64 20 69 73 20 65 6c 69 67 69 62 6c 65 0a 20 20 20 | emory.layout.and.is.eligible.... |
| 4cd80 | 20 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 22 23 70 61 63 6b | .......to.be.in.a.<a.href="#pack |
| 4cda0 | 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 2e 3c 2f 70 | ed-struct">packed.struct</a>.</p |
| 4cdc0 | 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 41 6e 6f 6e 79 6d 6f 75 | >...............<h3.id="Anonymou |
| 4cde0 | 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 63 2d | s-Union-Literals"><a.href="#toc- |
| 4ce00 | 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 79 6d | Anonymous-Union-Literals">Anonym |
| 4ce20 | 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 73 3d | ous.Union.Literals</a>.<a.class= |
| 4ce40 | 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 69 74 | "hdr".href="#Anonymous-Union-Lit |
| 4ce60 | 65 72 61 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 3e 3c 61 20 | erals">..</a></h3>........<p><a. |
| 4ce80 | 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 6c 73 | href="#Anonymous-Struct-Literals |
| 4cea0 | 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 3e 20 | ">Anonymous.Struct.Literals</a>. |
| 4cec0 | 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 7a 65 | syntax.can.be.used.to.initialize |
| 4cee0 | 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 20 20 | .unions.without.specifying...... |
| 4cf00 | 20 74 68 65 20 74 79 70 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 | .the.type:</p>.......<figure><fi |
| 4cf20 | 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 | gcaption.class="zig-cap"><cite.c |
| 4cf40 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 61 6e 6f 6e 79 6d 6f 75 73 5f 75 6e 69 6f 6e | lass="file">test_anonymous_union |
| 4cf60 | 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f | .zig</cite></figcaption><pre><co |
| 4cf80 | 64 65 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 | de><span.class="tok-kw">const</s |
| 4cfa0 | 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 |
| 4cfc0 | 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= |
| 4cfe0 | 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> |
| 4d000 | 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 |
| 4d020 | 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 74 | pan>.expect.=.std.testing.expect |
| 4d040 | 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 73 | ;..<span.class="tok-kw">const</s |
| 4d060 | 70 61 6e 3e 20 4e 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 6b | pan>.Number.=.<span.class="tok-k |
| 4d080 | 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 69 6e 74 3a 20 3c 73 70 61 6e | w">union</span>.{.....int:.<span |
| 4d0a0 | 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 20 20 | .class="tok-type">i32</span>,... |
| 4d0c0 | 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 65 22 3e | ..float:.<span.class="tok-type"> |
| 4d0e0 | 66 36 34 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 | f64</span>,.};..<span.class="tok |
| 4d100 | 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 |
| 4d120 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 6e 6f 6e 79 6d 6f 75 73 20 75 6e 69 6f 6e 20 6c 69 74 | k-str">"anonymous.union.lit |
| 4d140 | 65 72 61 6c 20 73 79 6e 74 61 78 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | eral.syntax"</span>.{.....< |
| 4d160 | 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> |
| 4d180 | 20 69 3a 20 4e 75 6d 62 65 72 20 3d 20 2e 7b 20 2e 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | .i:.Number.=..{..int.=.<span.cla |
| 4d1a0 | 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 20 | ss="tok-number">42</span>.};.... |
| 4d1c0 | 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 |
| 4d1e0 | 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 3c 73 70 61 6e 20 63 | n>.f.=.makeNumber();.....<span.c |
| 4d200 | 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( |
| 4d220 | 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 2d 6e 75 6d 62 65 72 | i.int.==.<span.class="tok-number |
| 4d240 | 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 6c 61 73 73 3d 22 74 | ">42</span>);.....<span.class="t |
| 4d260 | 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 2e 66 6c 6f 61 74 | ok-kw">try</span>.expect(f.float |
| 4d280 | 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 2e | .==.<span.class="tok-number">12. |
| 4d2a0 | 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 73 3d 22 74 6f 6b 2d | 34</span>);.}..<span.class="tok- |
| 4d2c0 | 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 |
| 4d2e0 | 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 6d 62 65 72 20 7b 0a | n">makeNumber</span>().Number.{. |
| 4d300 | 20 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< |
| 4d320 | 2f 73 70 61 6e 3e 20 2e 7b 20 2e 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>..{..float.=.<span.class=" |
| 4d340 | 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 7d 3c 2f 63 | tok-number">12.34</span>.};.}</c |
| 4d360 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | ode></pre></figure><figure><figc |
| 4d380 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f | aption.class="shell-cap">Shell</ |
| 4d3a0 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 | figcaption><pre><samp>$.<kbd>zig |
| 4d3c0 | 20 74 65 73 74 20 74 65 73 74 5f 61 6e 6f 6e 79 6d 6f 75 73 5f 75 6e 69 6f 6e 2e 7a 69 67 3c 2f | .test.test_anonymous_union.zig</ |
| 4d3e0 | 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 61 6e 6f 6e 79 6d 6f 75 73 5f 75 6e 69 6f 6e 2e 74 65 | kbd>.1/1.test_anonymous_union.te |
| 4d400 | 73 74 2e 61 6e 6f 6e 79 6d 6f 75 73 20 75 6e 69 6f 6e 20 6c 69 74 65 72 61 6c 20 73 79 6e 74 61 | st.anonymous.union.literal.synta |
| 4d420 | 78 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d | x...OK.All.1.tests.passed..</sam |
| 4d440 | 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 | p></pre></figure>............... |
| 4d460 | 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6f 70 61 71 75 65 22 3e 3c 61 20 68 72 65 66 | .........<h2.id="opaque"><a.href |
| 4d480 | 3d 22 23 74 6f 63 2d 6f 70 61 71 75 65 22 3e 6f 70 61 71 75 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 | ="#toc-opaque">opaque</a>.<a.cla |
| 4d4a0 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6f 70 61 71 75 65 22 3e c2 a7 3c 2f 61 3e 3c 2f | ss="hdr".href="#opaque">..</a></ |
| 4d4c0 | 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 3e 3c 73 70 61 6e | h2>........<p>.......<code><span |
| 4d4e0 | 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 7d | .class="tok-kw">opaque</span>.{} |
| 4d500 | 3c 2f 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 | </code>.declares.a.new.type.with |
| 4d520 | 20 61 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 | .an.unknown.(but.non-zero).size. |
| 4d540 | 61 6e 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 | and.alignment........It.can.cont |
| 4d560 | 61 69 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 | ain.declarations.the.same.as.<a. |
| 4d580 | 68 72 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 | href="#struct">structs</a>,.<a.h |
| 4d5a0 | 72 65 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 | ref="#union">unions</a>,.......a |
| 4d5c0 | 6e 64 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 | nd.<a.href="#enum">enums</a>.... |
| 4d5e0 | 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 69 73 | ....</p>.......<p>.......This.is |
| 4d600 | 20 74 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 | .typically.used.for.type.safety. |
| 4d620 | 77 68 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 | when.interacting.with.C.code.tha |
| 4d640 | 74 20 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 | t.does.not.expose.struct.details |
| 4d660 | 2e 0a 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 | ........Example:.......</p>..... |
| 4d680 | 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 | ..<figure><figcaption.class="zig |
| 4d6a0 | 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 6f 70 | -cap"><cite.class="file">test_op |
| 4d6c0 | 61 71 75 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | aque.zig</cite></figcaption><pre |
| 4d6e0 | 3e 3c 63 6f 64 65 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 | ><code><span.class="tok-kw">cons |
| 4d700 | 74 3c 2f 73 70 61 6e 3e 20 44 65 72 70 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | t</span>.Derp.=.<span.class="tok |
| 4d720 | 2d 6b 77 22 3e 6f 70 61 71 75 65 3c 2f 73 70 61 6e 3e 20 7b 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 | -kw">opaque</span>.{};.<span.cla |
| 4d740 | 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 57 61 74 20 3d 20 3c | ss="tok-kw">const</span>.Wat.=.< |
| 4d760 | 73 70 61 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 | span.class="tok-kw">opaque</span |
| 4d780 | 3e 20 7b 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 65 78 74 65 | >.{};..<span.class="tok-kw">exte |
| 4d7a0 | 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 66 | rn</span>.<span.class="tok-kw">f |
| 4d7c0 | 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 |
| 4d7e0 | 72 3c 2f 73 70 61 6e 3e 28 64 3a 20 2a 44 65 72 70 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | r</span>(d:.*Derp).<span.class=" |
| 4d800 | 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 | tok-type">void</span>;.<span.cla |
| 4d820 | 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 |
| 4d840 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 77 3a 20 2a 57 61 74 29 20 3c | s="tok-fn">foo</span>(w:.*Wat).< |
| 4d860 | 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 70 | span.class="tok-kw">callconv</sp |
| 4d880 | 61 6e 3e 28 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 | an>(.C).<span.class="tok-type">v |
| 4d8a0 | 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 62 61 72 28 77 29 3b 0a 7d 0a 0a 3c 73 70 61 | oid</span>.{.....bar(w);.}..<spa |
| 4d8c0 | 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 |
| 4d8e0 | 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 61 6c 6c 20 66 6f | an.class="tok-str">"call.fo |
| 4d900 | 6f 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 | o"</span>.{.....foo(<span.c |
| 4d920 | 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 61 6e 3e | lass="tok-null">undefined</span> |
| 4d940 | 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 | );.}</code></pre></figure><figur |
| 4d960 | 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e | e><figcaption.class="shell-cap"> |
| 4d980 | 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c | Shell</figcaption><pre><samp>$.< |
| 4d9a0 | 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 6f 70 61 71 75 65 2e 7a 69 67 3c 2f 6b 62 | kbd>zig.test.test_opaque.zig</kb |
| 4d9c0 | 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e | d>.<span.class="sgr-1m">/home/an |
| 4d9e0 | 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6f 70 61 71 | dy/dev/zig/doc/langref/test_opaq |
| 4da00 | 75 65 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 3d 22 | ue.zig:6:9:.</span><span.class=" |
| 4da20 | 73 67 72 2d 33 31 6d 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 | sgr-31m">error:.</span><span.cla |
| 4da40 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 65 78 70 65 63 74 65 64 20 74 79 70 65 20 27 2a 74 65 73 74 | ss="sgr-1m">expected.type.'*test |
| 4da60 | 5f 6f 70 61 71 75 65 2e 44 65 72 70 27 2c 20 66 6f 75 6e 64 20 27 2a 74 65 73 74 5f 6f 70 61 71 | _opaque.Derp',.found.'*test_opaq |
| 4da80 | 75 65 2e 57 61 74 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 62 61 72 28 77 29 3b 0a 20 20 20 20 20 | ue.Wat'.</span>....bar(w);...... |
| 4daa0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 0a 3c 2f 73 70 61 | ...<span.class="sgr-32m">^.</spa |
| 4dac0 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | n><span.class="sgr-1m">/home/and |
| 4dae0 | 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6f 70 61 71 75 | y/dev/zig/doc/langref/test_opaqu |
| 4db00 | 65 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 3d 22 73 | e.zig:6:9:.</span><span.class="s |
| 4db20 | 67 72 2d 33 36 6d 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 | gr-36m">note:.</span><span.class |
| 4db40 | 3d 22 73 67 72 2d 31 6d 22 3e 70 6f 69 6e 74 65 72 20 74 79 70 65 20 63 68 69 6c 64 20 27 74 65 | ="sgr-1m">pointer.type.child.'te |
| 4db60 | 73 74 5f 6f 70 61 71 75 65 2e 57 61 74 27 20 63 61 6e 6e 6f 74 20 63 61 73 74 20 69 6e 74 6f 20 | st_opaque.Wat'.cannot.cast.into. |
| 4db80 | 70 6f 69 6e 74 65 72 20 74 79 70 65 20 63 68 69 6c 64 20 27 74 65 73 74 5f 6f 70 61 71 75 65 2e | pointer.type.child.'test_opaque. |
| 4dba0 | 44 65 72 70 27 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d | Derp'.</span><span.class="sgr-1m |
| 4dbc0 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 | ">/home/andy/dev/zig/doc/langref |
| 4dbe0 | 2f 74 65 73 74 5f 6f 70 61 71 75 65 2e 7a 69 67 3a 32 3a 31 33 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | /test_opaque.zig:2:13:.</span><s |
| 4dc00 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e | pan.class="sgr-36m">note:.</span |
| 4dc20 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 6f 70 61 71 75 65 20 64 65 63 | ><span.class="sgr-1m">opaque.dec |
| 4dc40 | 6c 61 72 65 64 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 63 6f 6e 73 74 20 57 61 74 20 3d 20 6f 70 | lared.here.</span>const.Wat.=.op |
| 4dc60 | 61 71 75 65 20 7b 7d 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 | aque.{};.............<span.class |
| 4dc80 | 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 | ="sgr-32m">^~~~~~~~~.</span><spa |
| 4dca0 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f | n.class="sgr-1m">/home/andy/dev/ |
| 4dcc0 | 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6f 70 61 71 75 65 2e 7a 69 67 3a | zig/doc/langref/test_opaque.zig: |
| 4dce0 | 31 3a 31 34 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 | 1:14:.</span><span.class="sgr-36 |
| 4dd00 | 6d 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 73 67 72 | m">note:.</span><span.class="sgr |
| 4dd20 | 2d 31 6d 22 3e 6f 70 61 71 75 65 20 64 65 63 6c 61 72 65 64 20 68 65 72 65 0a 3c 2f 73 70 61 6e | -1m">opaque.declared.here.</span |
| 4dd40 | 3e 63 6f 6e 73 74 20 44 65 72 70 20 3d 20 6f 70 61 71 75 65 20 7b 7d 3b 0a 20 20 20 20 20 20 20 | >const.Derp.=.opaque.{};........ |
| 4dd60 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e | ......<span.class="sgr-32m">^~~~ |
| 4dd80 | 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d | ~~~~~.</span><span.class="sgr-1m |
| 4dda0 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 | ">/home/andy/dev/zig/doc/langref |
| 4ddc0 | 2f 74 65 73 74 5f 6f 70 61 71 75 65 2e 7a 69 67 3a 34 3a 31 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | /test_opaque.zig:4:18:.</span><s |
| 4dde0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e | pan.class="sgr-36m">note:.</span |
| 4de00 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 70 61 72 61 6d 65 74 65 72 20 | ><span.class="sgr-1m">parameter. |
| 4de20 | 74 79 70 65 20 64 65 63 6c 61 72 65 64 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 65 78 74 65 72 6e | type.declared.here.</span>extern |
| 4de40 | 20 66 6e 20 62 61 72 28 64 3a 20 2a 44 65 72 70 29 20 76 6f 69 64 3b 0a 20 20 20 20 20 20 20 20 | .fn.bar(d:.*Derp).void;......... |
| 4de60 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e | .........<span.class="sgr-32m">^ |
| 4de80 | 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 | ~~~~.</span><span.class="sgr-2m" |
| 4dea0 | 3e 72 65 66 65 72 65 6e 63 65 64 20 62 79 3a 0a 20 20 20 20 74 65 73 74 2e 63 61 6c 6c 20 66 6f | >referenced.by:.....test.call.fo |
| 4dec0 | 6f 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 | o:./home/andy/dev/zig/doc/langre |
| 4dee0 | 66 2f 74 65 73 74 5f 6f 70 61 71 75 65 2e 7a 69 67 3a 31 30 3a 38 0a 3c 2f 73 70 61 6e 3e 0a 3c | f/test_opaque.zig:10:8.</span>.< |
| 4df00 | 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 | /samp></pre></figure>........... |
| 4df20 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 42 6c 6f 63 6b 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | .....<h2.id="Blocks"><a.href="#t |
| 4df40 | 6f 63 2d 42 6c 6f 63 6b 73 22 3e 42 6c 6f 63 6b 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | oc-Blocks">Blocks</a>.<a.class=" |
| 4df60 | 68 64 72 22 20 68 72 65 66 3d 22 23 42 6c 6f 63 6b 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | hdr".href="#Blocks">..</a></h2>. |
| 4df80 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 42 6c 6f 63 6b 73 20 61 72 65 20 75 73 65 64 | .......<p>.......Blocks.are.used |
| 4dfa0 | 20 74 6f 20 6c 69 6d 69 74 20 74 68 65 20 73 63 6f 70 65 20 6f 66 20 76 61 72 69 61 62 6c 65 20 | .to.limit.the.scope.of.variable. |
| 4dfc0 | 64 65 63 6c 61 72 61 74 69 6f 6e 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | declarations:.......</p>.......< |
| 4dfe0 | 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 | figure><figcaption.class="zig-ca |
| 4e000 | 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 62 6c 6f 63 6b | p"><cite.class="file">test_block |
| 4e020 | 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 | s.zig</cite></figcaption><pre><c |
| 4e040 | 6f 64 65 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 | ode><span.class="tok-kw">test</s |
| 4e060 | 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">" |
| 4e080 | 3b 61 63 63 65 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 | ;access.variable.after.block.sco |
| 4e0a0 | 70 65 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 20 20 | pe"</span>.{.....{......... |
| 4e0c0 | 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>. |
| 4e0e0 | 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 2f 73 | x:.<span.class="tok-type">i32</s |
| 4e100 | 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"> |
| 4e120 | 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 78 3b 0a 20 20 | 1</span>;........._.=.&x;... |
| 4e140 | 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 22 74 6f 6b 2d 6e 75 | ..}.....x.+=.<span.class="tok-nu |
| 4e160 | 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 70 72 65 3e 3c 2f | mber">1</span>;.}</code></pre></ |
| 4e180 | 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | figure><figure><figcaption.class |
| 4e1a0 | 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | ="shell-cap">Shell</figcaption>< |
| 4e1c0 | 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 62 | pre><samp>$.<kbd>zig.test.test_b |
| 4e1e0 | 6c 6f 63 6b 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | locks.zig</kbd>.<span.class="sgr |
| 4e200 | 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 | -1m">/home/andy/dev/zig/doc/lang |
| 4e220 | 72 65 66 2f 74 65 73 74 5f 62 6c 6f 63 6b 73 2e 7a 69 67 3a 36 3a 35 3a 20 3c 2f 73 70 61 6e 3e | ref/test_blocks.zig:6:5:.</span> |
| 4e240 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 | <span.class="sgr-31m">error:.</s |
| 4e260 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 75 73 65 20 6f 66 20 | pan><span.class="sgr-1m">use.of. |
| 4e280 | 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 0a 3c 2f 73 70 61 6e | undeclared.identifier.'x'.</span |
| 4e2a0 | 3e 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 22 73 67 | >....x.+=.1;.....<span.class="sg |
| 4e2c0 | 72 2d 33 32 6d 22 3e 5e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f | r-32m">^.</span>.</samp></pre></ |
| 4e2e0 | 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 42 6c 6f 63 6b 73 20 61 72 65 20 65 78 70 | figure>........<p>Blocks.are.exp |
| 4e300 | 72 65 73 73 69 6f 6e 73 2e 20 57 68 65 6e 20 6c 61 62 65 6c 65 64 2c 20 3c 63 6f 64 65 3e 3c 73 | ressions..When.labeled,.<code><s |
| 4e320 | 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>< |
| 4e340 | 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 65 74 75 | /code>.can.be.used.......to.retu |
| 4e360 | 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 20 20 20 | rn.a.value.from.the.block:...... |
| 4e380 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | .</p>.......<figure><figcaption. |
| 4e3a0 | 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c | class="zig-cap"><cite.class="fil |
| 4e3c0 | 65 22 3e 74 65 73 74 5f 6c 61 62 65 6c 65 64 5f 62 72 65 61 6b 2e 7a 69 67 3c 2f 63 69 74 65 3e | e">test_labeled_break.zig</cite> |
| 4e3e0 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </figcaption><pre><code><span.cl |
| 4e400 | 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.=. |
| 4e420 | 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 |
| 4e440 | 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">& |
| 4e460 | 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 |
| 4e480 | 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 |
| 4e4a0 | 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 |
| 4e4c0 | 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 |
| 4e4e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6c 61 62 65 6c 65 64 20 62 72 65 | lass="tok-str">"labeled.bre |
| 4e500 | 61 6b 20 66 72 6f 6d 20 6c 61 62 65 6c 65 64 20 62 6c 6f 63 6b 20 65 78 70 72 65 73 73 69 6f 6e | ak.from.labeled.block.expression |
| 4e520 | 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= |
| 4e540 | 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 6c 61 | "tok-kw">var</span>.y:.<span.cla |
| 4e560 | 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 |
| 4e580 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 3c 2f 73 70 61 6e 3e 3b 0a | .class="tok-number">123</span>;. |
| 4e5a0 | 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< |
| 4e5c0 | 2f 73 70 61 6e 3e 20 78 20 3d 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 79 20 2b 3d 20 3c | /span>.x.=.blk:.{.........y.+=.< |
| 4e5e0 | 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> |
| 4e600 | 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 62 | ;.........<span.class="tok-kw">b |
| 4e620 | 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 79 3b 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c | reak</span>.:blk.y;.....};.....< |
| 4e640 | 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 |
| 4e660 | 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 6d 62 | xpect(x.==.<span.class="tok-numb |
| 4e680 | 65 72 22 3e 31 32 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 | er">124</span>);.....<span.class |
| 4e6a0 | 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 20 3d 3d | ="tok-kw">try</span>.expect(y.== |
| 4e6c0 | 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 34 3c 2f 73 | .<span.class="tok-number">124</s |
| 4e6e0 | 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 | pan>);.}</code></pre></figure><f |
| 4e700 | 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 | igure><figcaption.class="shell-c |
| 4e720 | 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 | ap">Shell</figcaption><pre><samp |
| 4e740 | 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 6c 61 62 65 6c 65 64 5f 62 72 | >$.<kbd>zig.test.test_labeled_br |
| 4e760 | 65 61 6b 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 6c 61 62 65 6c 65 64 5f 62 | eak.zig</kbd>.1/1.test_labeled_b |
| 4e780 | 72 65 61 6b 2e 74 65 73 74 2e 6c 61 62 65 6c 65 64 20 62 72 65 61 6b 20 66 72 6f 6d 20 6c 61 62 | reak.test.labeled.break.from.lab |
| 4e7a0 | 65 6c 65 64 20 62 6c 6f 63 6b 20 65 78 70 72 65 73 73 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 | eled.block.expression...OK.All.1 |
| 4e7c0 | 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | .tests.passed..</samp></pre></fi |
| 4e7e0 | 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 48 65 72 65 2c 20 3c 63 6f 64 65 3e 62 6c 6b 3c | gure>........<p>Here,.<code>blk< |
| 4e800 | 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 20 | /code>.can.be.any.name.</p>..... |
| 4e820 | 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 |
| 4e840 | 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 6c | ef="#Labeled-while">Labeled.whil |
| 4e860 | 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 64 | e</a></li>.<li><a.href="#Labeled |
| 4e880 | 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 3e | -for">Labeled.for</a></li>.</ul> |
| 4e8a0 | 0a 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 53 68 61 64 6f 77 69 6e 67 22 3e 3c 61 20 68 | .........<h3.id="Shadowing"><a.h |
| 4e8c0 | 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 2f | ref="#toc-Shadowing">Shadowing</ |
| 4e8e0 | 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 69 | a>.<a.class="hdr".href="#Shadowi |
| 4e900 | 6e 67 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 20 68 72 65 | ng">..</a></h3>........<p><a.hre |
| 4e920 | 66 3d 22 23 49 64 65 6e 74 69 66 69 65 72 73 22 3e 49 64 65 6e 74 69 66 69 65 72 73 3c 2f 61 3e | f="#Identifiers">Identifiers</a> |
| 4e940 | 20 61 72 65 20 6e 65 76 65 72 20 61 6c 6c 6f 77 65 64 20 74 6f 20 22 68 69 64 65 22 20 6f 74 68 | .are.never.allowed.to."hide".oth |
| 4e960 | 65 72 20 69 64 65 6e 74 69 66 69 65 72 73 20 62 79 20 75 73 69 6e 67 20 74 68 65 20 73 61 6d 65 | er.identifiers.by.using.the.same |
| 4e980 | 20 6e 61 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | .name:</p>.......<figure><figcap |
| 4e9a0 | 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 | tion.class="zig-cap"><cite.class |
| 4e9c0 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 68 61 64 6f 77 69 6e 67 2e 7a 69 67 3c 2f 63 69 74 65 | ="file">test_shadowing.zig</cite |
| 4e9e0 | 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></figcaption><pre><code><span.c |
| 4ea00 | 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 69 20 3d 20 | lass="tok-kw">const</span>.pi.=. |
| 4ea20 | 3c 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 31 34 3c 2f 73 | <span.class="tok-number">3.14</s |
| 4ea40 | 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 |
| 4ea60 | 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 |
| 4ea80 | 75 6f 74 3b 69 6e 73 69 64 65 20 74 65 73 74 20 62 6c 6f 63 6b 26 71 75 6f 74 3b 3c 2f 73 70 61 | uot;inside.test.block"</spa |
| 4eaa0 | 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 |
| 4eac0 | 74 22 3e 2f 2f 20 4c 65 74 27 73 20 65 76 65 6e 20 67 6f 20 69 6e 73 69 64 65 20 61 6e 6f 74 68 | t">//.Let's.even.go.inside.anoth |
| 4eae0 | 65 72 20 62 6c 6f 63 6b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 | er.block</span>.....{.........<s |
| 4eb00 | 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 69 | pan.class="tok-kw">var</span>.pi |
| 4eb20 | 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 |
| 4eb40 | 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 31 | an>.=.<span.class="tok-number">1 |
| 4eb60 | 32 33 34 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 3e | 234</span>;.....}.}</code></pre> |
| 4eb80 | 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | </figure><figure><figcaption.cla |
| 4eba0 | 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e | ss="shell-cap">Shell</figcaption |
| 4ebc0 | 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 | ><pre><samp>$.<kbd>zig.test.test |
| 4ebe0 | 5f 73 68 61 64 6f 77 69 6e 67 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | _shadowing.zig</kbd>.<span.class |
| 4ec00 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 | ="sgr-1m">/home/andy/dev/zig/doc |
| 4ec20 | 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 73 68 61 64 6f 77 69 6e 67 2e 7a 69 67 3a 36 3a 31 33 | /langref/test_shadowing.zig:6:13 |
| 4ec40 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 | :.</span><span.class="sgr-31m">e |
| 4ec60 | 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 73 67 72 2d 31 6d | rror:.</span><span.class="sgr-1m |
| 4ec80 | 22 3e 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 20 73 68 61 64 6f 77 73 20 64 65 63 6c 61 72 61 | ">local.variable.shadows.declara |
| 4eca0 | 74 69 6f 6e 20 6f 66 20 27 70 69 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 20 20 20 20 76 61 72 20 | tion.of.'pi'.</span>........var. |
| 4ecc0 | 70 69 3a 20 69 33 32 20 3d 20 31 32 33 34 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | pi:.i32.=.1234;.............<spa |
| 4ece0 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 | n.class="sgr-32m">^~.</span><spa |
| 4ed00 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f | n.class="sgr-1m">/home/andy/dev/ |
| 4ed20 | 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 73 68 61 64 6f 77 69 6e 67 2e 7a | zig/doc/langref/test_shadowing.z |
| 4ed40 | 69 67 3a 31 3a 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | ig:1:1:.</span><span.class="sgr- |
| 4ed60 | 33 36 6d 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 73 | 36m">note:.</span><span.class="s |
| 4ed80 | 67 72 2d 31 6d 22 3e 64 65 63 6c 61 72 65 64 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 63 6f 6e 73 | gr-1m">declared.here.</span>cons |
| 4eda0 | 74 20 70 69 20 3d 20 33 2e 31 34 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 | t.pi.=.3.14;.<span.class="sgr-32 |
| 4edc0 | 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d | m">^~~~~~~~~~~~~~~.</span>.</sam |
| 4ede0 | 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | p></pre></figure>........<p>.... |
| 4ee00 | 20 20 20 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 | ...Because.of.this,.when.you.rea |
| 4ee20 | 64 20 5a 69 67 20 63 6f 64 65 20 79 6f 75 20 63 61 6e 20 61 6c 77 61 79 73 20 72 65 6c 79 20 6f | d.Zig.code.you.can.always.rely.o |
| 4ee40 | 6e 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 20 74 6f 20 63 6f 6e 73 69 73 74 65 6e 74 6c 79 20 | n.an.identifier.to.consistently. |
| 4ee60 | 6d 65 61 6e 0a 20 20 20 20 20 20 74 68 65 20 73 61 6d 65 20 74 68 69 6e 67 20 77 69 74 68 69 6e | mean.......the.same.thing.within |
| 4ee80 | 20 74 68 65 20 73 63 6f 70 65 20 69 74 20 69 73 20 64 65 66 69 6e 65 64 2e 20 4e 6f 74 65 20 74 | .the.scope.it.is.defined..Note.t |
| 4eea0 | 68 61 74 20 79 6f 75 20 63 61 6e 2c 20 68 6f 77 65 76 65 72 2c 20 75 73 65 20 74 68 65 20 73 61 | hat.you.can,.however,.use.the.sa |
| 4eec0 | 6d 65 20 6e 61 6d 65 20 69 66 0a 20 20 20 20 20 20 74 68 65 20 73 63 6f 70 65 73 20 61 72 65 20 | me.name.if.......the.scopes.are. |
| 4eee0 | 73 65 70 61 72 61 74 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 | separate:.......</p>.......<figu |
| 4ef00 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c | re><figcaption.class="zig-cap">< |
| 4ef20 | 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 63 6f 70 65 73 2e 7a 69 | cite.class="file">test_scopes.zi |
| 4ef40 | 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e | g</cite></figcaption><pre><code> |
| 4ef60 | 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> |
| 4ef80 | 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 65 70 | .<span.class="tok-str">"sep |
| 4efa0 | 61 72 61 74 65 20 73 63 6f 70 65 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | arate.scopes"</span>.{..... |
| 4efc0 | 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 |
| 4efe0 | 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 74 6f | onst</span>.pi.=.<span.class="to |
| 4f000 | 6b 2d 6e 75 6d 62 65 72 22 3e 33 2e 31 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 5f | k-number">3.14</span>;........._ |
| 4f020 | 20 3d 20 70 69 3b 0a 20 20 20 20 7d 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | .=.pi;.....}.....{.........<span |
| 4f040 | 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 69 3a 20 3c | .class="tok-kw">var</span>.pi:.< |
| 4f060 | 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 |
| 4f080 | 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 74 72 75 65 3c | >.=.<span.class="tok-null">true< |
| 4f0a0 | 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 70 69 3b 0a 20 20 20 | /span>;........._.=.&pi;.... |
| 4f0c0 | 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 | .}.}</code></pre></figure><figur |
| 4f0e0 | 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e | e><figcaption.class="shell-cap"> |
| 4f100 | 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c | Shell</figcaption><pre><samp>$.< |
| 4f120 | 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 73 63 6f 70 65 73 2e 7a 69 67 3c 2f 6b 62 | kbd>zig.test.test_scopes.zig</kb |
| 4f140 | 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 63 6f 70 65 73 2e 74 65 73 74 2e 73 65 70 61 72 61 74 65 | d>.1/1.test_scopes.test.separate |
| 4f160 | 20 73 63 6f 70 65 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e | .scopes...OK.All.1.tests.passed. |
| 4f180 | 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a | .</samp></pre></figure>......... |
| 4f1a0 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 45 6d 70 74 79 2d 42 6c 6f 63 6b 73 22 3e 3c 61 20 | .......<h3.id="Empty-Blocks"><a. |
| 4f1c0 | 68 72 65 66 3d 22 23 74 6f 63 2d 45 6d 70 74 79 2d 42 6c 6f 63 6b 73 22 3e 45 6d 70 74 79 20 42 | href="#toc-Empty-Blocks">Empty.B |
| 4f1e0 | 6c 6f 63 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 | locks</a>.<a.class="hdr".href="# |
| 4f200 | 45 6d 70 74 79 2d 42 6c 6f 63 6b 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | Empty-Blocks">..</a></h3>....... |
| 4f220 | 20 3c 70 3e 41 6e 20 65 6d 70 74 79 20 62 6c 6f 63 6b 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 | .<p>An.empty.block.is.equivalent |
| 4f240 | 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | .to.<code><span.class="tok-type" |
| 4f260 | 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 7b 7d 3c 2f 63 6f 64 65 3e 3a 3c 2f 70 3e 0a 20 20 20 20 20 | >void</span>{}</code>:</p>...... |
| 4f280 | 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d | .<figure><figcaption.class="zig- |
| 4f2a0 | 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 65 6d 70 | cap"><cite.class="file">test_emp |
| 4f2c0 | 74 79 5f 62 6c 6f 63 6b 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | ty_block.zig</cite></figcaption> |
| 4f2e0 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | <pre><code><span.class="tok-kw"> |
| 4f300 | 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=" |
| 4f320 | 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 |
| 4f340 | 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" |
| 4f360 | 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"> |
| 4f380 | 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 |
| 4f3a0 | 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"> |
| 4f3c0 | 74 65 73 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 | test</span>.{.....<span.class="t |
| 4f3e0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 20 3d 20 7b 7d 3b 0a 20 20 20 20 | ok-kw">const</span>.a.=.{};..... |
| 4f400 | 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 |
| 4f420 | 3e 20 62 20 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 76 6f 69 | >.b.=.<span.class="tok-type">voi |
| 4f440 | 64 3c 2f 73 70 61 6e 3e 7b 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | d</span>{};.....<span.class="tok |
| 4f460 | 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 |
| 4f480 | 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>( |
| 4f4a0 | 61 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 76 6f 69 | a).==.<span.class="tok-type">voi |
| 4f4c0 | 64 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 | d</span>);.....<span.class="tok- |
| 4f4e0 | 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 |
| 4f500 | 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 62 | s="tok-builtin">@TypeOf</span>(b |
| 4f520 | 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 76 6f 69 64 | ).==.<span.class="tok-type">void |
| 4f540 | 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 |
| 4f560 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 20 3d 3d 20 62 29 3b 0a 7d 3c | w">try</span>.expect(a.==.b);.}< |
| 4f580 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 | /code></pre></figure><figure><fi |
| 4f5a0 | 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c | gcaption.class="shell-cap">Shell |
| 4f5c0 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a | </figcaption><pre><samp>$.<kbd>z |
| 4f5e0 | 69 67 20 74 65 73 74 20 74 65 73 74 5f 65 6d 70 74 79 5f 62 6c 6f 63 6b 2e 7a 69 67 3c 2f 6b 62 | ig.test.test_empty_block.zig</kb |
| 4f600 | 64 3e 0a 31 2f 31 20 74 65 73 74 5f 65 6d 70 74 79 5f 62 6c 6f 63 6b 2e 74 65 73 74 5f 30 2e 2e | d>.1/1.test_empty_block.test_0.. |
| 4f620 | 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c | .OK.All.1.tests.passed..</samp>< |
| 4f640 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 | /pre></figure>.................. |
| 4f660 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 77 69 74 63 68 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | .....<h2.id="switch"><a.href="#t |
| 4f680 | 6f 63 2d 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | oc-switch">switch</a>.<a.class=" |
| 4f6a0 | 68 64 72 22 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | hdr".href="#switch">..</a></h2>. |
| 4f6c0 | 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | .......<figure><figcaption.class |
| 4f6e0 | 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 | ="zig-cap"><cite.class="file">te |
| 4f700 | 73 74 5f 73 77 69 74 63 68 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e | st_switch.zig</cite></figcaption |
| 4f720 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ><pre><code><span.class="tok-kw" |
| 4f740 | 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= |
| 4f760 | 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 |
| 4f780 | 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 |
| 4f7a0 | 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" |
| 4f7c0 | 3e 63 6f 6e 73 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 | >const</span>.builtin.=.<span.cl |
| 4f7e0 | 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> |
| 4f800 | 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 62 75 69 | (<span.class="tok-str">"bui |
| 4f820 | 6c 74 69 6e 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 | ltin"</span>);.<span.class= |
| 4f840 | 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 |
| 4f860 | 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= |
| 4f880 | 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 |
| 4f8a0 | 3d 22 74 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 | ="tok-str">"switch.simple&q |
| 4f8c0 | 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 |
| 4f8e0 | 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 63 6c 61 | ok-kw">const</span>.a:.<span.cla |
| 4f900 | 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 3d 20 3c 73 70 61 6e | ss="tok-type">u64</span>.=.<span |
| 4f920 | 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>;.. |
| 4f940 | 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 |
| 4f960 | 70 61 6e 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 | pan>.zz:.<span.class="tok-type"> |
| 4f980 | 75 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 6f 6b 2d 6e 75 | u64</span>.=.<span.class="tok-nu |
| 4f9a0 | 6d 62 65 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 | mber">103</span>;......<span.cla |
| 4f9c0 | 73 73 3d 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 | ss="tok-comment">//.All.branches |
| 4f9e0 | 20 6f 66 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 | .of.a.switch.expression.must.be. |
| 4fa00 | 61 62 6c 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 | able.to.be.coerced.to.a</span>.. |
| 4fa20 | 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">//. |
| 4fa40 | 63 6f 6d 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 | common.type.</span>.....<span.cl |
| 4fa60 | 61 73 73 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 | ass="tok-comment">//</span>..... |
| 4fa80 | 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 42 72 61 | <span.class="tok-comment">//.Bra |
| 4faa0 | 6e 63 68 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 | nches.cannot.fallthrough..If.fal |
| 4fac0 | 6c 74 68 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 | lthrough.behavior.is.desired,.co |
| 4fae0 | 6d 62 69 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 | mbine</span>.....<span.class="to |
| 4fb00 | 6b 2d 63 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 | k-comment">//.the.cases.and.use. |
| 4fb20 | 61 6e 20 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 | an.if.</span>.....<span.class="t |
| 4fb40 | 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 |
| 4fb60 | 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 61 29 20 7b | ass="tok-kw">switch</span>.(a).{ |
| 4fb80 | 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 |
| 4fba0 | 74 22 3e 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 | t">//.Multiple.cases.can.be.comb |
| 4fbc0 | 69 6e 65 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 | ined.via.a.','</span>.........<s |
| 4fbe0 | 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 2c | pan.class="tok-number">1</span>, |
| 4fc00 | 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 |
| 4fc20 | 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 3c 2f | n>,.<span.class="tok-number">3</ |
| 4fc40 | 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 6e 75 6d | span>.=>.<span.class="tok-num |
| 4fc60 | 62 65 72 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 | ber">0</span>,..........<span.cl |
| 4fc80 | 61 73 73 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 | ass="tok-comment">//.Ranges.can. |
| 4fca0 | 62 65 20 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 | be.specified.using.the.....synta |
| 4fcc0 | 78 2e 20 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 | x..These.are.inclusive</span>... |
| 4fce0 | 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"> |
| 4fd00 | 2f 2f 20 6f 66 20 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 | //.of.both.ends.</span>......... |
| 4fd20 | 3c 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 | <span.class="tok-number">5</span |
| 4fd40 | 3e 2e 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 30 30 | >...<span.class="tok-number">100 |
| 4fd60 | 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 6e | </span>.=>.<span.class="tok-n |
| 4fd80 | 75 6d 62 65 72 22 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 | umber">1</span>,..........<span. |
| 4fda0 | 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 65 73 20 | class="tok-comment">//.Branches. |
| 4fdc0 | 63 61 6e 20 62 65 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 | can.be.arbitrarily.complex.</spa |
| 4fde0 | 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 6e 75 6d 62 | n>.........<span.class="tok-numb |
| 4fe00 | 65 72 22 3e 31 30 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 | er">101</span>.=>.blk:.{..... |
| 4fe20 | 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 6f 6e | ........<span.class="tok-kw">con |
| 4fe40 | 73 74 3c 2f 73 70 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 | st</span>.c:.<span.class="tok-ty |
| 4fe60 | 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 61 73 73 3d 22 74 6f | pe">u64</span>.=.<span.class="to |
| 4fe80 | 6b 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 | k-number">5</span>;............. |
| 4fea0 | 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 6e | <span.class="tok-kw">break</span |
| 4fec0 | 3e 20 3a 62 6c 6b 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 | >.:blk.c.*.<span.class="tok-numb |
| 4fee0 | 65 72 22 3e 32 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 | er">2</span>.+.<span.class="tok- |
| 4ff00 | 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 2c 0a 0a 20 20 | number">1</span>;.........},.... |
| 4ff20 | 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"> |
| 4ff40 | 2f 2f 20 53 77 69 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 | //.Switching.on.arbitrary.expres |
| 4ff60 | 73 69 6f 6e 73 20 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 | sions.is.allowed.as.long.as.the< |
| 4ff80 | 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 6b 2d | /span>.........<span.class="tok- |
| 4ffa0 | 63 6f 6d 6d 65 6e 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 | comment">//.expression.is.known. |
| 4ffc0 | 61 74 20 63 6f 6d 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 | at.compile-time.</span>......... |
| 4ffe0 | 7a 7a 20 3d 26 67 74 3b 20 7a 7a 2c 0a 20 20 20 20 20 20 20 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 | zz.=>.zz,.........blk:.{..... |
| 50000 | 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 6f 6e | ........<span.class="tok-kw">con |
| 50020 | 73 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 | st</span>.d:.<span.class="tok-ty |
| 50040 | 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 6f | pe">u32</span>.=.<span.class="to |
| 50060 | 6b 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 | k-number">5</span>;............. |
| 50080 | 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 |
| 500a0 | 3e 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 | >.e:.<span.class="tok-type">u32< |
| 500c0 | 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 |
| 500e0 | 22 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 | ">100</span>;.............<span. |
| 50100 | 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 |
| 50120 | 20 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 | .d.+.e;.........}.=>.<span.cl |
| 50140 | 61 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 | ass="tok-number">107</span>,.... |
| 50160 | 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"> |
| 50180 | 2f 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 | //.The.else.branch.catches.every |
| 501a0 | 74 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 | thing.not.already.captured.</spa |
| 501c0 | 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 6f 6d 6d | n>.........<span.class="tok-comm |
| 501e0 | 65 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 | ent">//.Else.branches.are.mandat |
| 50200 | 6f 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 | ory.unless.the.entire.range.of.v |
| 50220 | 61 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 | alues</span>.........<span.class |
| 50240 | 3d 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 | ="tok-comment">//.is.handled.</s |
| 50260 | 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 6b 77 | pan>.........<span.class="tok-kw |
| 50280 | 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= |
| 502a0 | 22 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 | "tok-number">9</span>,.....};... |
| 502c0 | 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 |
| 502e0 | 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 2d | n>.expect(b.==.<span.class="tok- |
| 50300 | 6e 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 | number">1</span>);.}..<span.clas |
| 50320 | 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 20 65 78 70 72 65 73 | s="tok-comment">//.Switch.expres |
| 50340 | 73 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 | sions.can.be.used.outside.a.func |
| 50360 | 74 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 | tion:</span>.<span.class="tok-kw |
| 50380 | 22 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 | ">const</span>.os_msg.=.<span.cl |
| 503a0 | 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 62 75 69 6c | ass="tok-kw">switch</span>.(buil |
| 503c0 | 74 69 6e 2e 74 61 72 67 65 74 2e 6f 73 2e 74 61 67 29 20 7b 0a 20 20 20 20 2e 6c 69 6e 75 78 20 | tin.target.os.tag).{......linux. |
| 503e0 | 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 71 75 6f | =>.<span.class="tok-str">&quo |
| 50400 | 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 3c 2f 73 | t;we.found.a.linux.user"</s |
| 50420 | 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 22 3e 65 | pan>,.....<span.class="tok-kw">e |
| 50440 | 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 74 6f | lse</span>.=>.<span.class="to |
| 50460 | 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 26 71 75 | k-str">"not.a.linux.user&qu |
| 50480 | 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 74 6f 6b | ot;</span>,.};..<span.class="tok |
| 504a0 | 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 6e 2c 20 | -comment">//.Inside.a.function,. |
| 504c0 | 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 61 72 65 | switch.statements.implicitly.are |
| 504e0 | 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 61 73 73 | .compile-time</span>.<span.class |
| 50500 | 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 66 20 74 | ="tok-comment">//.evaluated.if.t |
| 50520 | 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 6c 65 2d | he.target.expression.is.compile- |
| 50540 | 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 73 3d 22 | time.known.</span>.<span.class=" |
| 50560 | 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= |
| 50580 | 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 20 66 75 | "tok-str">"switch.inside.fu |
| 505a0 | 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 61 6e 20 | nction"</span>.{.....<span. |
| 505c0 | 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 62 75 | class="tok-kw">switch</span>.(bu |
| 505e0 | 69 6c 74 69 6e 2e 74 61 72 67 65 74 2e 6f 73 2e 74 61 67 29 20 7b 0a 20 20 20 20 20 20 20 20 2e | iltin.target.os.tag).{.......... |
| 50600 | 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 20 20 20 3c 73 70 61 | fuchsia.=>.{.............<spa |
| 50620 | 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 4f 6e 20 61 6e 20 4f | n.class="tok-comment">//.On.an.O |
| 50640 | 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 63 6b 20 69 73 20 6e | S.other.than.fuchsia,.block.is.n |
| 50660 | 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 20 20 20 20 20 20 20 | ot.even.analyzed,</span>........ |
| 50680 | 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">/ |
| 506a0 | 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 73 20 6e 6f 74 20 74 | /.so.this.compile.error.is.not.t |
| 506c0 | 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 20 20 20 20 3c 73 70 | riggered.</span>.............<sp |
| 506e0 | 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 4f 6e 20 66 75 63 | an.class="tok-comment">//.On.fuc |
| 50700 | 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 6f 75 6c 64 20 62 65 | hsia.this.compile.error.would.be |
| 50720 | 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 20 20 20 20 3c | .triggered.</span>.............< |
| 50740 | 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 |
| 50760 | 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 |
| 50780 | 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 70 6f 72 74 65 64 26 | tr">"fuchsia.not.supported& |
| 507a0 | 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 0a 20 20 20 20 20 20 | quot;</span>);.........},....... |
| 507c0 | 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 2f 73 70 61 | ..<span.class="tok-kw">else</spa |
| 507e0 | 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 65 3e 3c 2f 70 72 65 | n>.=>.{},.....}.}</code></pre |
| 50800 | 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | ></figure><figure><figcaption.cl |
| 50820 | 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f | ass="shell-cap">Shell</figcaptio |
| 50840 | 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 | n><pre><samp>$.<kbd>zig.test.tes |
| 50860 | 74 5f 73 77 69 74 63 68 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 73 77 69 74 | t_switch.zig</kbd>.1/2.test_swit |
| 50880 | 63 68 2e 74 65 73 74 2e 73 77 69 74 63 68 20 73 69 6d 70 6c 65 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 | ch.test.switch.simple...OK.2/2.t |
| 508a0 | 65 73 74 5f 73 77 69 74 63 68 2e 74 65 73 74 2e 73 77 69 74 63 68 20 69 6e 73 69 64 65 20 66 75 | est_switch.test.switch.inside.fu |
| 508c0 | 6e 63 74 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a | nction...OK.All.2.tests.passed.. |
| 508e0 | 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 | </samp></pre></figure>........<p |
| 50900 | 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | >.......<code><span.class="tok-k |
| 50920 | 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 | w">switch</span></code>.can.be.u |
| 50940 | 73 65 64 20 74 6f 20 63 61 70 74 75 72 65 20 74 68 65 20 66 69 65 6c 64 20 76 61 6c 75 65 73 0a | sed.to.capture.the.field.values. |
| 50960 | 20 20 20 20 20 20 6f 66 20 61 20 3c 61 20 68 72 65 66 3d 22 23 54 61 67 67 65 64 2d 75 6e 69 6f | ......of.a.<a.href="#Tagged-unio |
| 50980 | 6e 22 3e 54 61 67 67 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 2e 20 4d 6f 64 69 66 69 63 61 74 69 6f | n">Tagged.union</a>..Modificatio |
| 509a0 | 6e 73 20 74 6f 20 74 68 65 20 66 69 65 6c 64 20 76 61 6c 75 65 73 20 63 61 6e 20 62 65 0a 20 20 | ns.to.the.field.values.can.be... |
| 509c0 | 20 20 20 20 64 6f 6e 65 20 62 79 20 70 6c 61 63 69 6e 67 20 61 20 3c 63 6f 64 65 3e 2a 3c 2f 63 | ....done.by.placing.a.<code>*</c |
| 509e0 | 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 |
| 50a00 | 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 |
| 50a20 | 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 66 69 67 75 72 65 | ointer........</p>.......<figure |
| 50a40 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 | ><figcaption.class="zig-cap"><ci |
| 50a60 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 77 69 74 63 68 5f 74 61 67 67 | te.class="file">test_switch_tagg |
| 50a80 | 65 64 5f 75 6e 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | ed_union.zig</cite></figcaption> |
| 50aa0 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | <pre><code><span.class="tok-kw"> |
| 50ac0 | 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 |
| 50ae0 | 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>(< |
| 50b00 | 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 |
| 50b20 | 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 |
| 50b40 | 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>.< |
| 50b60 | 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 63 | span.class="tok-str">"switc |
| 50b80 | 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 7b | h.on.tagged.union"</span>.{ |
| 50ba0 | 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< |
| 50bc0 | 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 2d | /span>.Point.=.<span.class="tok- |
| 50be0 | 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 3c | kw">struct</span>.{.........x:.< |
| 50c00 | 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>, |
| 50c20 | 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 70 | .........y:.<span.class="tok-typ |
| 50c40 | 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 63 | e">u8</span>,.....};.....<span.c |
| 50c60 | 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 20 | lass="tok-kw">const</span>.Item. |
| 50c80 | 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 70 | =.<span.class="tok-kw">union</sp |
| 50ca0 | 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 73 | an>(<span.class="tok-kw">enum</s |
| 50cc0 | 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 22 | pan>).{.........a:.<span.class=" |
| 50ce0 | 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 3a | tok-type">u32</span>,.........c: |
| 50d00 | 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 73 | .Point,.........d,.........e:.<s |
| 50d20 | 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 2c | pan.class="tok-type">u32</span>, |
| 50d40 | 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 77 | .....};......<span.class="tok-kw |
| 50d60 | 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 6e | ">var</span>.a.=.Item{..c.=.Poin |
| 50d80 | 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 22 | t{..x.=.<span.class="tok-number" |
| 50da0 | 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 6b | >1</span>,..y.=.<span.class="tok |
| 50dc0 | 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 61 | -number">2</span>.}.};......<spa |
| 50de0 | 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 69 | n.class="tok-comment">//.Switchi |
| 50e00 | 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 6f | ng.on.more.complex.enums.is.allo |
| 50e20 | 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 6b | wed.</span>.....<span.class="tok |
| 50e40 | 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 73 | -kw">const</span>.b.=.<span.clas |
| 50e60 | 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 20 | s="tok-kw">switch</span>.(a).{.. |
| 50e80 | 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" |
| 50ea0 | 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 6f | >//.A.capture.group.is.allowed.o |
| 50ec0 | 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 65 | n.a.match,.and.will.return.the.e |
| 50ee0 | 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 22 | num</span>.........<span.class=" |
| 50f00 | 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 49 | tok-comment">//.value.matched..I |
| 50f20 | 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 65 | f.the.payload.types.of.both.case |
| 50f40 | 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 73 | s.are.the.same</span>.........<s |
| 50f60 | 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 20 | pan.class="tok-comment">//.they. |
| 50f80 | 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 20 | can.be.put.into.the.same.switch. |
| 50fa0 | 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 74 | prong.</span>.........Item.a,.It |
| 50fc0 | 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 20 | em.e.=>.|item|.item,......... |
| 50fe0 | 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 20 | .<span.class="tok-comment">//.A. |
| 51000 | 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 63 | reference.to.the.matched.value.c |
| 51020 | 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 2e | an.be.obtained.using.`*`.syntax. |
| 51040 | 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 69 | </span>.........Item.c.=>.|*i |
| 51060 | 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 78 | tem|.blk:.{.............item.*.x |
| 51080 | 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</ |
| 510a0 | 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=" |
| 510c0 | 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 20 | tok-kw">break</span>.:blk.<span. |
| 510e0 | 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 20 | class="tok-number">6</span>;.... |
| 51100 | 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 6f | .....},..........<span.class="to |
| 51120 | 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 65 | k-comment">//.No.else.is.require |
| 51140 | 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 74 | d.if.the.types.cases.was.exhaust |
| 51160 | 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 65 | ively.handled</span>.........Ite |
| 51180 | 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 65 | m.d.=>.<span.class="tok-numbe |
| 511a0 | 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 63 | r">8</span>,.....};......<span.c |
| 511c0 | 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( |
| 511e0 | 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 3c | b.==.<span.class="tok-number">6< |
| 51200 | 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 |
| 51220 | 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 70 | ">try</span>.expect(a.c.x.==.<sp |
| 51240 | 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>); |
| 51260 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e | .}</code></pre></figure><figure> |
| 51280 | 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 | <figcaption.class="shell-cap">Sh |
| 512a0 | 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 | ell</figcaption><pre><samp>$.<kb |
| 512c0 | 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 73 77 69 74 63 68 5f 74 61 67 67 65 64 5f 75 6e | d>zig.test.test_switch_tagged_un |
| 512e0 | 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 77 69 74 63 68 5f 74 61 | ion.zig</kbd>.1/1.test_switch_ta |
| 51300 | 67 67 65 64 5f 75 6e 69 6f 6e 2e 74 65 73 74 2e 73 77 69 74 63 68 20 6f 6e 20 74 61 67 67 65 64 | gged_union.test.switch.on.tagged |
| 51320 | 20 75 6e 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a | .union...OK.All.1.tests.passed.. |
| 51340 | 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 | </samp></pre></figure>........<p |
| 51360 | 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=" |
| 51380 | 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 |
| 513a0 | 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>.< |
| 513c0 | 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 |
| 513e0 | 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="# |
| 51400 | 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 |
| 51420 | 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 33 20 | bles</a></li>.</ul>.........<h3. |
| 51440 | 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 |
| 51460 | 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 |
| 51480 | 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= |
| 514a0 | 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 |
| 514c0 | 67 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 | g">..</a></h3>........<p>....... |
| 514e0 | 57 68 65 6e 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | When.a.<code><span.class="tok-kw |
| 51500 | 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 72 65 73 73 69 6f | ">switch</span></code>.expressio |
| 51520 | 6e 20 64 6f 65 73 20 6e 6f 74 20 68 61 76 65 20 61 6e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | n.does.not.have.an.<code><span.c |
| 51540 | 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 3e | lass="tok-kw">else</span></code> |
| 51560 | 20 63 6c 61 75 73 65 2c 0a 20 20 20 20 20 20 69 74 20 6d 75 73 74 20 65 78 68 61 75 73 74 69 76 | .clause,.......it.must.exhaustiv |
| 51580 | 65 6c 79 20 6c 69 73 74 20 61 6c 6c 20 74 68 65 20 70 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 73 | ely.list.all.the.possible.values |
| 515a0 | 2e 20 46 61 69 6c 75 72 65 20 74 6f 20 64 6f 20 73 6f 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 20 | ..Failure.to.do.so.is.a.compile. |
| 515c0 | 65 72 72 6f 72 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e | error:.......</p>.......<figure> |
| 515e0 | 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 | <figcaption.class="zig-cap"><cit |
| 51600 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 75 6e 68 61 6e 64 6c 65 64 5f 65 6e | e.class="file">test_unhandled_en |
| 51620 | 75 6d 65 72 61 74 69 6f 6e 5f 76 61 6c 75 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 | umeration_value.zig</cite></figc |
| 51640 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | aption><pre><code><span.class="t |
| 51660 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 6f 6c 6f 72 20 3d 20 3c 73 70 61 | ok-kw">const</span>.Color.=.<spa |
| 51680 | 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 20 | n.class="tok-kw">enum</span>.{.. |
| 516a0 | 20 20 20 61 75 74 6f 2c 0a 20 20 20 20 6f 66 66 2c 0a 20 20 20 20 6f 6e 2c 0a 7d 3b 0a 0a 3c 73 | ...auto,.....off,.....on,.};..<s |
| 516c0 | 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>.< |
| 516e0 | 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 78 68 61 75 | span.class="tok-str">"exhau |
| 51700 | 73 74 69 76 65 20 73 77 69 74 63 68 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | stive.switching"</span>.{.. |
| 51720 | 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 |
| 51740 | 70 61 6e 3e 20 63 6f 6c 6f 72 20 3d 20 43 6f 6c 6f 72 2e 6f 66 66 3b 0a 20 20 20 20 3c 73 70 61 | pan>.color.=.Color.off;.....<spa |
| 51760 | 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>.( |
| 51780 | 63 6f 6c 6f 72 29 20 7b 0a 20 20 20 20 20 20 20 20 43 6f 6c 6f 72 2e 61 75 74 6f 20 3d 26 67 74 | color).{.........Color.auto.=> |
| 517a0 | 3b 20 7b 7d 2c 0a 20 20 20 20 20 20 20 20 43 6f 6c 6f 72 2e 6f 6e 20 3d 26 67 74 3b 20 7b 7d 2c | ;.{},.........Color.on.=>.{}, |
| 517c0 | 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 | .....}.}</code></pre></figure><f |
| 517e0 | 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 | igure><figcaption.class="shell-c |
| 51800 | 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 | ap">Shell</figcaption><pre><samp |
| 51820 | 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 75 6e 68 61 6e 64 6c 65 64 5f | >$.<kbd>zig.test.test_unhandled_ |
| 51840 | 65 6e 75 6d 65 72 61 74 69 6f 6e 5f 76 61 6c 75 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 | enumeration_value.zig</kbd>.<spa |
| 51860 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f | n.class="sgr-1m">/home/andy/dev/ |
| 51880 | 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 75 6e 68 61 6e 64 6c 65 64 5f 65 | zig/doc/langref/test_unhandled_e |
| 518a0 | 6e 75 6d 65 72 61 74 69 6f 6e 5f 76 61 6c 75 65 2e 7a 69 67 3a 39 3a 35 3a 20 3c 2f 73 70 61 6e | numeration_value.zig:9:5:.</span |
| 518c0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f | ><span.class="sgr-31m">error:.</ |
| 518e0 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 73 77 69 74 63 68 | span><span.class="sgr-1m">switch |
| 51900 | 20 6d 75 73 74 20 68 61 6e 64 6c 65 20 61 6c 6c 20 70 6f 73 73 69 62 69 6c 69 74 69 65 73 0a 3c | .must.handle.all.possibilities.< |
| 51920 | 2f 73 70 61 6e 3e 20 20 20 20 73 77 69 74 63 68 20 28 63 6f 6c 6f 72 29 20 7b 0a 20 20 20 20 3c | /span>....switch.(color).{.....< |
| 51940 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 | span.class="sgr-32m">^~~~~~.</sp |
| 51960 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e | an><span.class="sgr-1m">/home/an |
| 51980 | 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 75 6e 68 61 | dy/dev/zig/doc/langref/test_unha |
| 519a0 | 6e 64 6c 65 64 5f 65 6e 75 6d 65 72 61 74 69 6f 6e 5f 76 61 6c 75 65 2e 7a 69 67 3a 33 3a 35 3a | ndled_enumeration_value.zig:3:5: |
| 519c0 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f | .</span><span.class="sgr-36m">no |
| 519e0 | 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e | te:.</span><span.class="sgr-1m"> |
| 51a00 | 75 6e 68 61 6e 64 6c 65 64 20 65 6e 75 6d 65 72 61 74 69 6f 6e 20 76 61 6c 75 65 3a 20 27 6f 66 | unhandled.enumeration.value:.'of |
| 51a20 | 66 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 6f 66 66 2c 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | f'.</span>....off,.....<span.cla |
| 51a40 | 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | ss="sgr-32m">^~~.</span><span.cl |
| 51a60 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | ass="sgr-1m">/home/andy/dev/zig/ |
| 51a80 | 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 75 6e 68 61 6e 64 6c 65 64 5f 65 6e 75 6d 65 | doc/langref/test_unhandled_enume |
| 51aa0 | 72 61 74 69 6f 6e 5f 76 61 6c 75 65 2e 7a 69 67 3a 31 3a 31 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | ration_value.zig:1:15:.</span><s |
| 51ac0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e | pan.class="sgr-36m">note:.</span |
| 51ae0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 65 6e 75 6d 20 27 74 65 73 74 | ><span.class="sgr-1m">enum.'test |
| 51b00 | 5f 75 6e 68 61 6e 64 6c 65 64 5f 65 6e 75 6d 65 72 61 74 69 6f 6e 5f 76 61 6c 75 65 2e 43 6f 6c | _unhandled_enumeration_value.Col |
| 51b20 | 6f 72 27 20 64 65 63 6c 61 72 65 64 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 63 6f 6e 73 74 20 43 | or'.declared.here.</span>const.C |
| 51b40 | 6f 6c 6f 72 20 3d 20 65 6e 75 6d 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | olor.=.enum.{...............<spa |
| 51b60 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c | n.class="sgr-32m">^~~~.</span>.< |
| 51b80 | 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 | /samp></pre></figure>........... |
| 51ba0 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 53 77 69 74 63 68 69 6e 67 2d 77 69 74 68 2d 45 6e 75 6d | .....<h3.id="Switching-with-Enum |
| 51bc0 | 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 53 77 69 74 63 68 69 | -Literals"><a.href="#toc-Switchi |
| 51be0 | 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 74 63 68 69 6e 67 | ng-with-Enum-Literals">Switching |
| 51c00 | 20 77 69 74 68 20 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | .with.Enum.Literals</a>.<a.class |
| 51c20 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 77 69 74 63 68 69 6e 67 2d 77 69 74 68 2d 45 6e 75 | ="hdr".href="#Switching-with-Enu |
| 51c40 | 6d 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c | m-Literals">..</a></h3>........< |
| 51c60 | 70 3e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 | p>.......<a.href="#Enum-Literals |
| 51c80 | 22 3e 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 63 61 6e 20 62 65 20 75 73 65 66 75 | ">Enum.Literals</a>.can.be.usefu |
| 51ca0 | 6c 20 74 6f 20 75 73 65 20 77 69 74 68 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | l.to.use.with.<code><span.class= |
| 51cc0 | 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 20 74 6f | "tok-kw">switch</span></code>.to |
| 51ce0 | 20 61 76 6f 69 64 0a 20 20 20 20 20 20 72 65 70 65 74 69 74 69 76 65 6c 79 20 73 70 65 63 69 66 | .avoid.......repetitively.specif |
| 51d00 | 79 69 6e 67 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 20 6f 72 | ying.<a.href="#enum">enum</a>.or |
| 51d20 | 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 20 74 79 70 65 | .<a.href="#union">union</a>.type |
| 51d40 | 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 | s:.......</p>.......<figure><fig |
| 51d60 | 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c | caption.class="zig-cap"><cite.cl |
| 51d80 | 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 65 78 68 61 75 73 74 69 76 65 5f 73 77 69 74 63 | ass="file">test_exhaustive_switc |
| 51da0 | 68 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 | h.zig</cite></figcaption><pre><c |
| 51dc0 | 6f 64 65 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 | ode><span.class="tok-kw">const</ |
| 51de0 | 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 |
| 51e00 | 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 |
| 51e20 | 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 |
| 51e40 | 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</ |
| 51e60 | 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 |
| 51e80 | 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</ |
| 51ea0 | 73 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 | span>.Color.=.<span.class="tok-k |
| 51ec0 | 77 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 | w">enum</span>.{.....auto,.....o |
| 51ee0 | 66 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 | ff,.....on,.};..<span.class="tok |
| 51f00 | 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 |
| 51f20 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 6e 75 6d 20 6c 69 74 65 72 61 6c 73 20 77 69 74 68 20 | k-str">"enum.literals.with. |
| 51f40 | 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 20 3c 73 70 61 6e 20 | switch"</span>.{.....<span. |
| 51f60 | 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 6f 6c 6f | class="tok-kw">const</span>.colo |
| 51f80 | 72 20 3d 20 43 6f 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 | r.=.Color.off;.....<span.class=" |
| 51fa0 | 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 3c 73 | tok-kw">const</span>.result.=.<s |
| 51fc0 | 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> |
| 51fe0 | 20 28 63 6f 6c 6f 72 29 20 7b 0a 20 20 20 20 20 20 20 20 2e 61 75 74 6f 20 3d 26 67 74 3b 20 3c | .(color).{..........auto.=>.< |
| 52000 | 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 |
| 52020 | 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 6f 6e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 | n>,..........on.=>.<span.clas |
| 52040 | 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>,...... |
| 52060 | 20 20 20 2e 6f 66 66 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 | ....off.=>.<span.class="tok-n |
| 52080 | 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 | ull">true</span>,.....};.....<sp |
| 520a0 | 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 |
| 520c0 | 65 63 74 28 72 65 73 75 6c 74 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | ect(result);.}</code></pre></fig |
| 520e0 | 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 | ure><figure><figcaption.class="s |
| 52100 | 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | hell-cap">Shell</figcaption><pre |
| 52120 | 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 65 78 68 61 | ><samp>$.<kbd>zig.test.test_exha |
| 52140 | 75 73 74 69 76 65 5f 73 77 69 74 63 68 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 | ustive_switch.zig</kbd>.1/1.test |
| 52160 | 5f 65 78 68 61 75 73 74 69 76 65 5f 73 77 69 74 63 68 2e 74 65 73 74 2e 65 6e 75 6d 20 6c 69 74 | _exhaustive_switch.test.enum.lit |
| 52180 | 65 72 61 6c 73 20 77 69 74 68 20 73 77 69 74 63 68 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 | erals.with.switch...OK.All.1.tes |
| 521a0 | 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | ts.passed..</samp></pre></figure |
| 521c0 | 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 4c 61 62 65 6c 65 64 | >................<h3.id="Labeled |
| 521e0 | 2d 73 77 69 74 63 68 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4c 61 62 65 6c 65 64 2d 73 | -switch"><a.href="#toc-Labeled-s |
| 52200 | 77 69 74 63 68 22 3e 4c 61 62 65 6c 65 64 20 73 77 69 74 63 68 3c 2f 61 3e 20 3c 61 20 63 6c 61 | witch">Labeled.switch</a>.<a.cla |
| 52220 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4c 61 62 65 6c 65 64 2d 73 77 69 74 63 68 22 3e | ss="hdr".href="#Labeled-switch"> |
| 52240 | 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 57 68 65 | ..</a></h3>........<p>.......Whe |
| 52260 | 6e 20 61 20 73 77 69 74 63 68 20 73 74 61 74 65 6d 65 6e 74 20 69 73 20 6c 61 62 65 6c 65 64 2c | n.a.switch.statement.is.labeled, |
| 52280 | 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 20 61 0a 20 20 20 | .it.can.be.referenced.from.a.... |
| 522a0 | 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 | ...<code><span.class="tok-kw">br |
| 522c0 | 65 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | eak</span></code>.or.<code><span |
| 522e0 | 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 3c | .class="tok-kw">continue</span>< |
| 52300 | 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | /code>........<code><span.class= |
| 52320 | 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 20 77 69 6c | "tok-kw">break</span></code>.wil |
| 52340 | 6c 20 72 65 74 75 72 6e 20 61 20 76 61 6c 75 65 20 66 72 6f 6d 20 74 68 65 20 3c 63 6f 64 65 3e | l.return.a.value.from.the.<code> |
| 52360 | 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 |
| 52380 | 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>. |
| 523a0 | 20 20 20 20 20 20 41 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ......A.<code><span.class="tok-k |
| 523c0 | 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 74 61 72 67 65 74 | w">continue</span></code>.target |
| 523e0 | 69 6e 67 20 61 20 73 77 69 74 63 68 20 6d 75 73 74 20 68 61 76 65 20 61 6e 0a 20 20 20 20 20 20 | ing.a.switch.must.have.an....... |
| 52400 | 6f 70 65 72 61 6e 64 2e 20 57 68 65 6e 20 65 78 65 63 75 74 65 64 2c 20 69 74 20 77 69 6c 6c 20 | operand..When.executed,.it.will. |
| 52420 | 6a 75 6d 70 20 74 6f 20 74 68 65 20 6d 61 74 63 68 69 6e 67 20 70 72 6f 6e 67 2c 20 61 73 20 69 | jump.to.the.matching.prong,.as.i |
| 52440 | 66 20 74 68 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | f.the.......<code><span.class="t |
| 52460 | 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 77 65 72 65 | ok-kw">switch</span></code>.were |
| 52480 | 20 65 78 65 63 75 74 65 64 20 61 67 61 69 6e 20 77 69 74 68 20 74 68 65 20 3c 63 6f 64 65 3e 3c | .executed.again.with.the.<code>< |
| 524a0 | 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 73 70 | span.class="tok-kw">continue</sp |
| 524c0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 27 73 20 6f 70 65 72 61 6e 64 20 72 65 70 6c 61 63 69 6e 67 20 74 | an></code>'s.operand.replacing.t |
| 524e0 | 68 65 20 69 6e 69 74 69 61 6c 20 73 77 69 74 63 68 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c | he.initial.switch.value........< |
| 52500 | 2f 70 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 | /p>........<figure><figcaption.c |
| 52520 | 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 | lass="zig-cap"><cite.class="file |
| 52540 | 22 3e 74 65 73 74 5f 73 77 69 74 63 68 5f 63 6f 6e 74 69 6e 75 65 2e 7a 69 67 3c 2f 63 69 74 65 | ">test_switch_continue.zig</cite |
| 52560 | 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></figcaption><pre><code><span.c |
| 52580 | 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.= |
| 525a0 | 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 |
| 525c0 | 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"> |
| 525e0 | 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. |
| 52600 | 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 |
| 52620 | 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 20 63 6f | .class="tok-str">"switch.co |
| 52640 | 6e 74 69 6e 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 73 77 3a 20 3c 73 | ntinue"</span>.{.....sw:.<s |
| 52660 | 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> |
| 52680 | 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 73 3c | .(<span.class="tok-builtin">@as< |
| 526a0 | 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 69 33 | /span>(<span.class="tok-type">i3 |
| 526c0 | 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 65 | 2</span>,.<span.class="tok-numbe |
| 526e0 | 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | r">5</span>)).{.........<span.cl |
| 52700 | 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 3d 26 67 74 3b 20 | ass="tok-number">5</span>.=>. |
| 52720 | 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 73 | <span.class="tok-kw">continue</s |
| 52740 | 70 61 6e 3e 20 3a 73 77 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>.:sw.<span.class="tok-number |
| 52760 | 22 3e 34 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 | ">4</span>,..........<span.class |
| 52780 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 60 63 6f 6e 74 69 6e 75 65 60 20 63 61 6e | ="tok-comment">//.`continue`.can |
| 527a0 | 20 6f 63 63 75 72 20 6d 75 6c 74 69 70 6c 65 20 74 69 6d 65 73 20 77 69 74 68 69 6e 20 61 20 73 | .occur.multiple.times.within.a.s |
| 527c0 | 69 6e 67 6c 65 20 73 77 69 74 63 68 20 70 72 6f 6e 67 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 | ingle.switch.prong.</span>...... |
| 527e0 | 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 32 3c 2f 73 | ...<span.class="tok-number">2</s |
| 52800 | 70 61 6e 3e 2e 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 | pan>...<span.class="tok-number"> |
| 52820 | 34 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7c 76 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | 4</span>.=>.|v|.{............ |
| 52840 | 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>. |
| 52860 | 28 76 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 | (v.>.<span.class="tok-number" |
| 52880 | 3e 33 3c 2f 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 3c 73 70 | >3</span>).{.................<sp |
| 528a0 | 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 73 70 61 6e | an.class="tok-kw">continue</span |
| 528c0 | 3e 20 3a 73 77 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 | >.:sw.<span.class="tok-number">2 |
| 528e0 | 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 | </span>;.............}.<span.cla |
| 52900 | 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 63 6c | ss="tok-kw">else</span>.<span.cl |
| 52920 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 76 20 3d 3d 20 3c 73 70 | ass="tok-kw">if</span>.(v.==.<sp |
| 52940 | 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 20 | an.class="tok-number">3</span>). |
| 52960 | 7b 0a 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 | {..................<span.class=" |
| 52980 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 60 62 72 65 61 6b 60 20 63 61 6e 20 74 61 72 67 | tok-comment">//.`break`.can.targ |
| 529a0 | 65 74 20 6c 61 62 65 6c 65 64 20 6c 6f 6f 70 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 | et.labeled.loops.</span>........ |
| 529c0 | 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 62 72 | .........<span.class="tok-kw">br |
| 529e0 | 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 73 77 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 0a 20 | eak</span>.:sw;.............}... |
| 52a00 | 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"> |
| 52a20 | 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 20 3a 73 77 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | continue</span>.:sw.<span.class= |
| 52a40 | 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>;.........} |
| 52a60 | 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 6e 75 6d 62 | ,..........<span.class="tok-numb |
| 52a80 | 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=" |
| 52aa0 | 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 20 20 20 20 | tok-kw">return</span>,.......... |
| 52ac0 | 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> |
| 52ae0 | 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 3e 75 6e 72 65 | .=>.<span.class="tok-kw">unre |
| 52b00 | 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | achable</span>,.....}.}</code></ |
| 52b20 | 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e | pre></figure><figure><figcaption |
| 52b40 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 | .class="shell-cap">Shell</figcap |
| 52b60 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 | tion><pre><samp>$.<kbd>zig.test. |
| 52b80 | 74 65 73 74 5f 73 77 69 74 63 68 5f 63 6f 6e 74 69 6e 75 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 | test_switch_continue.zig</kbd>.1 |
| 52ba0 | 2f 31 20 74 65 73 74 5f 73 77 69 74 63 68 5f 63 6f 6e 74 69 6e 75 65 2e 74 65 73 74 2e 73 77 69 | /1.test_switch_continue.test.swi |
| 52bc0 | 74 63 68 20 63 6f 6e 74 69 6e 75 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 | tch.continue...OK.All.1.tests.pa |
| 52be0 | 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 | ssed..</samp></pre></figure>.... |
| 52c00 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 65 6d 61 6e 74 69 63 61 6c 6c 79 2c 20 74 68 69 73 | ....<p>.......Semantically,.this |
| 52c20 | 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 | .is.equivalent.to.the.following. |
| 52c40 | 6c 6f 6f 70 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | loop:.......</p>.......<figure>< |
| 52c60 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 | figcaption.class="zig-cap"><cite |
| 52c80 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 77 69 74 63 68 5f 63 6f 6e 74 69 6e | .class="file">test_switch_contin |
| 52ca0 | 75 65 5f 65 71 75 69 76 61 6c 65 6e 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | ue_equivalent.zig</cite></figcap |
| 52cc0 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tion><pre><code><span.class="tok |
| 52ce0 | 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 |
| 52d00 | 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> |
| 52d20 | 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 |
| 52d40 | 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 |
| 52d60 | 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 |
| 52d80 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 77 69 74 63 68 20 63 6f 6e 74 69 6e 75 65 2c 20 65 | ok-str">"switch.continue,.e |
| 52da0 | 71 75 69 76 61 6c 65 6e 74 20 6c 6f 6f 70 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | quivalent.loop"</span>.{... |
| 52dc0 | 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 |
| 52de0 | 3e 20 73 77 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 | >.sw:.<span.class="tok-type">i32 |
| 52e00 | 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 |
| 52e20 | 72 22 3e 35 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">5</span>;.....<span.class="to |
| 52e40 | 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 63 6c 61 73 73 3d | k-kw">while</span>.(<span.class= |
| 52e60 | 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 0a 20 20 20 20 20 20 | "tok-null">true</span>).{....... |
| 52e80 | 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 |
| 52ea0 | 70 61 6e 3e 20 28 73 77 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | pan>.(sw).{.............<span.cl |
| 52ec0 | 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 3d 26 67 74 3b 20 | ass="tok-number">5</span>.=>. |
| 52ee0 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 77 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | {.................sw.=.<span.cla |
| 52f00 | 73 73 3d 22 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 20 20 | ss="tok-number">4</span>;....... |
| 52f20 | 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 63 | ..........<span.class="tok-kw">c |
| 52f40 | 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 | ontinue</span>;.............},.. |
| 52f60 | 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 |
| 52f80 | 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | er">2</span>...<span.class="tok- |
| 52fa0 | 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7c 76 7c 20 7b 0a 20 20 20 | number">4</span>.=>.|v|.{.... |
| 52fc0 | 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 6b 77 | .............<span.class="tok-kw |
| 52fe0 | 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 76 20 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">if</span>.(v.>.<span.class= |
| 53000 | 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 20 20 20 | "tok-number">3</span>).{........ |
| 53020 | 20 20 20 20 20 20 20 20 20 20 20 20 20 73 77 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .............sw.=.<span.class="t |
| 53040 | 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 20 20 20 20 20 20 20 | ok-number">2</span>;............ |
| 53060 | 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 63 6f | .........<span.class="tok-kw">co |
| 53080 | 6e 74 69 6e 75 65 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 7d | ntinue</span>;.................} |
| 530a0 | 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 |
| 530c0 | 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> |
| 530e0 | 20 28 76 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 | .(v.==.<span.class="tok-number"> |
| 53100 | 33 3c 2f 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 20 20 20 20 | 3</span>).{..................... |
| 53120 | 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 6e | <span.class="tok-kw">break</span |
| 53140 | 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 20 20 | >;.................}............ |
| 53160 | 20 20 20 20 20 20 73 77 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | ......sw.=.<span.class="tok-numb |
| 53180 | 65 72 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 3c 73 | er">1</span>;.................<s |
| 531a0 | 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 73 70 61 | pan.class="tok-kw">continue</spa |
| 531c0 | 6e 3e 3b 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 3c | n>;.............},.............< |
| 531e0 | 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> |
| 53200 | 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 3e 72 65 74 75 | .=>.<span.class="tok-kw">retu |
| 53220 | 72 6e 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 61 | rn</span>,.............<span.cla |
| 53240 | 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 3c 73 | ss="tok-kw">else</span>.=>.<s |
| 53260 | 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 3c 2f | pan.class="tok-kw">unreachable</ |
| 53280 | 73 70 61 6e 3e 2c 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 3c | span>,.........}.....}.}</code>< |
| 532a0 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | /pre></figure><figure><figcaptio |
| 532c0 | 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 | n.class="shell-cap">Shell</figca |
| 532e0 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 | ption><pre><samp>$.<kbd>zig.test |
| 53300 | 20 74 65 73 74 5f 73 77 69 74 63 68 5f 63 6f 6e 74 69 6e 75 65 5f 65 71 75 69 76 61 6c 65 6e 74 | .test_switch_continue_equivalent |
| 53320 | 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 77 69 74 63 68 5f 63 6f 6e 74 69 | .zig</kbd>.1/1.test_switch_conti |
| 53340 | 6e 75 65 5f 65 71 75 69 76 61 6c 65 6e 74 2e 74 65 73 74 2e 73 77 69 74 63 68 20 63 6f 6e 74 69 | nue_equivalent.test.switch.conti |
| 53360 | 6e 75 65 2c 20 65 71 75 69 76 61 6c 65 6e 74 20 6c 6f 6f 70 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 | nue,.equivalent.loop...OK.All.1. |
| 53380 | 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | tests.passed..</samp></pre></fig |
| 533a0 | 75 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 61 6e 20 69 | ure>........<p>.......This.can.i |
| 533c0 | 6d 70 72 6f 76 65 20 63 6c 61 72 69 74 79 20 6f 66 20 28 66 6f 72 20 65 78 61 6d 70 6c 65 29 20 | mprove.clarity.of.(for.example). |
| 533e0 | 73 74 61 74 65 20 6d 61 63 68 69 6e 65 73 2c 20 77 68 65 72 65 20 74 68 65 20 73 79 6e 74 61 78 | state.machines,.where.the.syntax |
| 53400 | 20 3c 63 6f 64 65 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 | .<code><span.class="tok-kw">cont |
| 53420 | 69 6e 75 65 3c 2f 73 70 61 6e 3e 20 3a 73 77 20 2e 6e 65 78 74 5f 73 74 61 74 65 3c 2f 63 6f 64 | inue</span>.:sw..next_state</cod |
| 53440 | 65 3e 20 69 73 20 75 6e 61 6d 62 69 67 75 6f 75 73 2c 20 65 78 70 6c 69 63 69 74 2c 20 61 6e 64 | e>.is.unambiguous,.explicit,.and |
| 53460 | 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 75 6e 64 65 72 73 74 61 6e 64 61 62 6c 65 2e 0a 20 20 20 | .immediately.understandable..... |
| 53480 | 20 20 20 3c 2f 70 3e 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 | ...</p>.......<p>.......However, |
| 534a0 | 20 74 68 65 20 6d 6f 74 69 76 61 74 69 6e 67 20 65 78 61 6d 70 6c 65 20 69 73 20 61 20 73 77 69 | .the.motivating.example.is.a.swi |
| 534c0 | 74 63 68 20 6f 6e 20 65 61 63 68 20 65 6c 65 6d 65 6e 74 20 6f 66 20 61 6e 20 61 72 72 61 79 2c | tch.on.each.element.of.an.array, |
| 534e0 | 20 77 68 65 72 65 20 75 73 69 6e 67 20 61 20 73 69 6e 67 6c 65 20 73 77 69 74 63 68 20 63 61 6e | .where.using.a.single.switch.can |
| 53500 | 20 69 6d 70 72 6f 76 65 20 63 6c 61 72 69 74 79 20 61 6e 64 20 70 65 72 66 6f 72 6d 61 6e 63 65 | .improve.clarity.and.performance |
| 53520 | 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | :.......</p>.......<figure><figc |
| 53540 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 | aption.class="zig-cap"><cite.cla |
| 53560 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 77 69 74 63 68 5f 64 69 73 70 61 74 63 68 5f 6c | ss="file">test_switch_dispatch_l |
| 53580 | 6f 6f 70 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | oop.zig</cite></figcaption><pre> |
| 535a0 | 3c 63 6f 64 65 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 | <code><span.class="tok-kw">const |
| 535c0 | 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 |
| 535e0 | 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 |
| 53600 | 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 |
| 53620 | 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 |
| 53640 | 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 45 71 75 61 6c 20 3d 20 73 74 64 2e 74 65 73 74 69 6e | </span>.expectEqual.=.std.testin |
| 53660 | 67 2e 65 78 70 65 63 74 45 71 75 61 6c 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | g.expectEqual;..<span.class="tok |
| 53680 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 49 6e 73 74 72 75 63 74 69 6f 6e 20 3d 20 | -kw">const</span>.Instruction.=. |
| 536a0 | 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 3e | <span.class="tok-kw">enum</span> |
| 536c0 | 20 7b 0a 20 20 20 20 61 64 64 2c 0a 20 20 20 20 6d 75 6c 2c 0a 20 20 20 20 65 6e 64 2c 0a 7d 3b | .{.....add,.....mul,.....end,.}; |
| 536e0 | 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> |
| 53700 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 76 61 6c 75 61 74 65 3c 2f | .<span.class="tok-fn">evaluate</ |
| 53720 | 73 70 61 6e 3e 28 69 6e 69 74 69 61 6c 5f 73 74 61 63 6b 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 | span>(initial_stack:.[]<span.cla |
| 53740 | 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 |
| 53760 | 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 63 6f 64 65 | lass="tok-type">i32</span>,.code |
| 53780 | 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 74 3c 2f | :.[]<span.class="tok-kw">const</ |
| 537a0 | 73 70 61 6e 3e 20 49 6e 73 74 72 75 63 74 69 6f 6e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d | span>.Instruction).!<span.class= |
| 537c0 | 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 |
| 537e0 | 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 74 61 63 | n.class="tok-kw">var</span>.stac |
| 53800 | 6b 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 | k.=.<span.class="tok-kw">try</sp |
| 53820 | 61 6e 3e 20 73 74 64 2e 42 6f 75 6e 64 65 64 41 72 72 61 79 28 3c 73 70 61 6e 20 63 6c 61 73 73 | an>.std.BoundedArray(<span.class |
| 53840 | 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 6c | ="tok-type">i32</span>,.<span.cl |
| 53860 | 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 29 2e 66 72 6f 6d 53 | ass="tok-number">8</span>).fromS |
| 53880 | 6c 69 63 65 28 69 6e 69 74 69 61 6c 5f 73 74 61 63 6b 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | lice(initial_stack);.....<span.c |
| 538a0 | 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 70 3a 20 3c 73 70 | lass="tok-kw">var</span>.ip:.<sp |
| 538c0 | 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> |
| 538e0 | 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 73 | .=.<span.class="tok-number">0</s |
| 53900 | 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 22 3e | pan>;......<span.class="tok-kw"> |
| 53920 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 76 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | return</span>.vm:.<span.class="t |
| 53940 | 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 63 6f 64 65 5b 69 70 5d 29 20 | ok-kw">switch</span>.(code[ip]). |
| 53960 | 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 |
| 53980 | 6e 74 22 3e 2f 2f 20 42 65 63 61 75 73 65 20 61 6c 6c 20 63 6f 64 65 20 61 66 74 65 72 20 60 63 | nt">//.Because.all.code.after.`c |
| 539a0 | 6f 6e 74 69 6e 75 65 60 20 69 73 20 75 6e 72 65 61 63 68 61 62 6c 65 2c 20 74 68 69 73 20 62 72 | ontinue`.is.unreachable,.this.br |
| 539c0 | 61 6e 63 68 20 64 6f 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 | anch.does</span>.........<span.c |
| 539e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6e 6f 74 20 70 72 6f 76 69 64 | lass="tok-comment">//.not.provid |
| 53a00 | 65 20 61 20 72 65 73 75 6c 74 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 2e 61 64 64 20 | e.a.result.</span>..........add. |
| 53a20 | 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 73 3d | =>.{.............<span.class= |
| 53a40 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 61 63 6b 2e 61 70 70 65 6e 64 | "tok-kw">try</span>.stack.append |
| 53a60 | 28 73 74 61 63 6b 2e 70 6f 70 28 29 2e 3f 20 2b 20 73 74 61 63 6b 2e 70 6f 70 28 29 2e 3f 29 3b | (stack.pop().?.+.stack.pop().?); |
| 53a80 | 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 70 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ..............ip.+=.<span.class= |
| 53aa0 | 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 20 | "tok-number">1</span>;.......... |
| 53ac0 | 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 74 69 6e 75 65 | ...<span.class="tok-kw">continue |
| 53ae0 | 3c 2f 73 70 61 6e 3e 20 3a 76 6d 20 63 6f 64 65 5b 69 70 5d 3b 0a 20 20 20 20 20 20 20 20 7d 2c | </span>.:vm.code[ip];.........}, |
| 53b00 | 0a 20 20 20 20 20 20 20 20 2e 6d 75 6c 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | ..........mul.=>.{........... |
| 53b20 | 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 |
| 53b40 | 3e 20 73 74 61 63 6b 2e 61 70 70 65 6e 64 28 73 74 61 63 6b 2e 70 6f 70 28 29 2e 3f 20 2a 20 73 | >.stack.append(stack.pop().?.*.s |
| 53b60 | 74 61 63 6b 2e 70 6f 70 28 29 2e 3f 29 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 70 20 2b | tack.pop().?);..............ip.+ |
| 53b80 | 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 |
| 53ba0 | 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 6f | an>;.............<span.class="to |
| 53bc0 | 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 20 3a 76 6d 20 63 6f 64 65 5b 69 | k-kw">continue</span>.:vm.code[i |
| 53be0 | 70 5d 3b 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 2e 65 6e 64 20 3d 26 67 74 | p];.........},..........end.=> |
| 53c00 | 3b 20 73 74 61 63 6b 2e 70 6f 70 28 29 2e 3f 2c 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e | ;.stack.pop().?,.....};.}..<span |
| 53c20 | 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 |
| 53c40 | 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 76 61 6c 75 61 74 65 | n.class="tok-str">"evaluate |
| 53c60 | 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= |
| 53c80 | 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 3c | "tok-kw">const</span>.result.=.< |
| 53ca0 | 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 |
| 53cc0 | 76 61 6c 75 61 74 65 28 26 61 6d 70 3b 2e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | valuate(&.{.<span.class="tok |
| 53ce0 | 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 73 3d 22 | -number">7</span>,.<span.class=" |
| 53d00 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 2d 3c 73 70 61 6e 20 63 6c 61 | tok-number">2</span>,.-<span.cla |
| 53d20 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 20 7d 2c 20 26 61 6d 70 | ss="tok-number">3</span>.},.& |
| 53d40 | 3b 2e 7b 20 2e 6d 75 6c 2c 20 2e 61 64 64 2c 20 2e 65 6e 64 20 7d 29 3b 0a 20 20 20 20 3c 73 70 | ;.{..mul,..add,..end.});.....<sp |
| 53d60 | 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 |
| 53d80 | 65 63 74 45 71 75 61 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | ectEqual(<span.class="tok-number |
| 53da0 | 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 72 65 73 75 6c 74 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | ">1</span>,.result);.}</code></p |
| 53dc0 | 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | re></figure><figure><figcaption. |
| 53de0 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 | class="shell-cap">Shell</figcapt |
| 53e00 | 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 | ion><pre><samp>$.<kbd>zig.test.t |
| 53e20 | 65 73 74 5f 73 77 69 74 63 68 5f 64 69 73 70 61 74 63 68 5f 6c 6f 6f 70 2e 7a 69 67 3c 2f 6b 62 | est_switch_dispatch_loop.zig</kb |
| 53e40 | 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 77 69 74 63 68 5f 64 69 73 70 61 74 63 68 5f 6c 6f 6f 70 | d>.1/1.test_switch_dispatch_loop |
| 53e60 | 2e 74 65 73 74 2e 65 76 61 6c 75 61 74 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 | .test.evaluate...OK.All.1.tests. |
| 53e80 | 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a | passed..</samp></pre></figure>.. |
| 53ea0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 20 6f 70 65 72 61 6e 64 20 74 | ......<p>.......If.the.operand.t |
| 53ec0 | 6f 20 3c 63 6f 64 65 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 | o.<code><span.class="tok-kw">con |
| 53ee0 | 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 0a 20 20 20 20 20 20 3c 61 20 | tinue</span></code>.is.......<a. |
| 53f00 | 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 2d 6b 6e | href="#comptime">comptime</a>-kn |
| 53f20 | 6f 77 6e 2c 20 74 68 65 6e 20 69 74 20 63 61 6e 20 62 65 20 6c 6f 77 65 72 65 64 20 74 6f 20 61 | own,.then.it.can.be.lowered.to.a |
| 53f40 | 6e 20 75 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 20 62 72 61 6e 63 68 0a 20 20 20 20 20 20 74 6f 20 | n.unconditional.branch.......to. |
| 53f60 | 74 68 65 20 72 65 6c 65 76 61 6e 74 20 63 61 73 65 2e 20 53 75 63 68 20 61 20 62 72 61 6e 63 68 | the.relevant.case..Such.a.branch |
| 53f80 | 20 69 73 20 70 65 72 66 65 63 74 6c 79 20 70 72 65 64 69 63 74 65 64 2c 20 61 6e 64 20 68 65 6e | .is.perfectly.predicted,.and.hen |
| 53fa0 | 63 65 0a 20 20 20 20 20 20 74 79 70 69 63 61 6c 6c 79 20 76 65 72 79 20 66 61 73 74 20 74 6f 20 | ce.......typically.very.fast.to. |
| 53fc0 | 65 78 65 63 75 74 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 | execute........</p>........<p>.. |
| 53fe0 | 20 20 20 20 20 49 66 20 74 68 65 20 6f 70 65 72 61 6e 64 20 69 73 20 72 75 6e 74 69 6d 65 2d 6b | .....If.the.operand.is.runtime-k |
| 54000 | 6e 6f 77 6e 2c 20 65 61 63 68 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | nown,.each.<code><span.class="to |
| 54020 | 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 3e 20 63 61 6e | k-kw">continue</span></code>.can |
| 54040 | 0a 20 20 20 20 20 20 65 6d 62 65 64 20 61 20 63 6f 6e 64 69 74 69 6f 6e 61 6c 20 62 72 61 6e 63 | .......embed.a.conditional.branc |
| 54060 | 68 20 69 6e 6c 69 6e 65 20 28 69 64 65 61 6c 6c 79 20 74 68 72 6f 75 67 68 20 61 20 6a 75 6d 70 | h.inline.(ideally.through.a.jump |
| 54080 | 20 74 61 62 6c 65 29 2c 20 77 68 69 63 68 0a 20 20 20 20 20 20 61 6c 6c 6f 77 73 20 61 20 43 50 | .table),.which.......allows.a.CP |
| 540a0 | 55 20 74 6f 20 70 72 65 64 69 63 74 20 69 74 73 20 74 61 72 67 65 74 20 69 6e 64 65 70 65 6e 64 | U.to.predict.its.target.independ |
| 540c0 | 65 6e 74 6c 79 20 6f 66 20 61 6e 79 20 6f 74 68 65 72 20 70 72 6f 6e 67 2e 20 41 0a 20 20 20 20 | ently.of.any.other.prong..A..... |
| 540e0 | 20 20 6c 6f 6f 70 2d 62 61 73 65 64 20 6c 6f 77 65 72 69 6e 67 20 77 6f 75 6c 64 20 66 6f 72 63 | ..loop-based.lowering.would.forc |
| 54100 | 65 20 65 76 65 72 79 20 62 72 61 6e 63 68 20 74 68 72 6f 75 67 68 20 74 68 65 20 73 61 6d 65 20 | e.every.branch.through.the.same. |
| 54120 | 64 69 73 70 61 74 63 68 0a 20 20 20 20 20 20 70 6f 69 6e 74 2c 20 68 69 6e 64 65 72 69 6e 67 20 | dispatch.......point,.hindering. |
| 54140 | 62 72 61 6e 63 68 20 70 72 65 64 69 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a 0a | branch.prediction........</p>... |
| 54160 | 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 6e 6c 69 6e 65 2d 53 77 69 | ..............<h3.id="Inline-Swi |
| 54180 | 74 63 68 2d 50 72 6f 6e 67 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 6c 69 6e 65 | tch-Prongs"><a.href="#toc-Inline |
| 541a0 | 2d 53 77 69 74 63 68 2d 50 72 6f 6e 67 73 22 3e 49 6e 6c 69 6e 65 20 53 77 69 74 63 68 20 50 72 | -Switch-Prongs">Inline.Switch.Pr |
| 541c0 | 6f 6e 67 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 | ongs</a>.<a.class="hdr".href="#I |
| 541e0 | 6e 6c 69 6e 65 2d 53 77 69 74 63 68 2d 50 72 6f 6e 67 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e | nline-Switch-Prongs">..</a></h3> |
| 54200 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 77 69 74 63 68 20 70 72 6f 6e 67 73 20 | ........<p>.......Switch.prongs. |
| 54220 | 63 61 6e 20 62 65 20 6d 61 72 6b 65 64 20 61 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | can.be.marked.as.<code><span.cla |
| 54240 | 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> |
| 54260 | 20 74 6f 20 67 65 6e 65 72 61 74 65 0a 20 20 20 20 20 20 74 68 65 20 70 72 6f 6e 67 27 73 20 62 | .to.generate.......the.prong's.b |
| 54280 | 6f 64 79 20 66 6f 72 20 65 61 63 68 20 70 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 20 69 74 20 63 | ody.for.each.possible.value.it.c |
| 542a0 | 6f 75 6c 64 20 68 61 76 65 2c 20 6d 61 6b 69 6e 67 20 74 68 65 0a 20 20 20 20 20 20 63 61 70 74 | ould.have,.making.the.......capt |
| 542c0 | 75 72 65 64 20 76 61 6c 75 65 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 | ured.value.<a.href="#comptime">c |
| 542e0 | 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 20 20 20 3c 66 | omptime</a>........</p>.......<f |
| 54300 | 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 | igure><figcaption.class="zig-cap |
| 54320 | 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 69 6e 6c 69 6e 65 | "><cite.class="file">test_inline |
| 54340 | 5f 73 77 69 74 63 68 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | _switch.zig</cite></figcaption>< |
| 54360 | 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | pre><code><span.class="tok-kw">c |
| 54380 | 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 |
| 543a0 | 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 |
| 543c0 | 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" |
| 543e0 | 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 |
| 54400 | 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 |
| 54420 | 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 |
| 54440 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 45 72 72 6f 72 20 3d 20 73 74 64 2e 74 65 73 | nst</span>.expectError.=.std.tes |
| 54460 | 74 69 6e 67 2e 65 78 70 65 63 74 45 72 72 6f 72 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ting.expectError;..<span.class=" |
| 54480 | 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 |
| 544a0 | 6f 6b 2d 66 6e 22 3e 69 73 46 69 65 6c 64 4f 70 74 69 6f 6e 61 6c 3c 2f 73 70 61 6e 3e 28 3c 73 | ok-fn">isFieldOptional</span>(<s |
| 544c0 | 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 |
| 544e0 | 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 |
| 54500 | 65 3c 2f 73 70 61 6e 3e 2c 20 66 69 65 6c 64 5f 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 | e</span>,.field_index:.<span.cla |
| 54520 | 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 21 3c 73 70 | ss="tok-type">usize</span>).!<sp |
| 54540 | 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 20 | an.class="tok-type">bool</span>. |
| 54560 | 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 |
| 54580 | 3c 2f 73 70 61 6e 3e 20 66 69 65 6c 64 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>.fields.=.<span.class="to |
| 545a0 | 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 54 29 2e 40 | k-builtin">@typeInfo</span>(T).@ |
| 545c0 | 26 71 75 6f 74 3b 73 74 72 75 63 74 26 71 75 6f 74 3b 2e 66 69 65 6c 64 73 3b 0a 20 20 20 20 3c | "struct".fields;.....< |
| 545e0 | 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 |
| 54600 | 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 63 68 3c 2f 73 | >.<span.class="tok-kw">switch</s |
| 54620 | 70 61 6e 3e 20 28 66 69 65 6c 64 5f 69 6e 64 65 78 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 | pan>.(field_index).{.........<sp |
| 54640 | 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 20 70 | an.class="tok-comment">//.This.p |
| 54660 | 72 6f 6e 67 20 69 73 20 61 6e 61 6c 79 7a 65 64 20 74 77 69 63 65 20 77 69 74 68 20 60 69 64 78 | rong.is.analyzed.twice.with.`idx |
| 54680 | 60 20 62 65 69 6e 67 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 | `.being.a</span>.........<span.c |
| 546a0 | 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 74 69 6d 65 2d 6b | lass="tok-comment">//.comptime-k |
| 546c0 | 6e 6f 77 6e 20 76 61 6c 75 65 20 65 61 63 68 20 74 69 6d 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | nown.value.each.time.</span>.... |
| 546e0 | 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 6e 6c 69 6e 65 | .....<span.class="tok-kw">inline |
| 54700 | 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" |
| 54720 | 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 |
| 54740 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7c 69 64 78 7c 20 3c 73 70 61 6e 20 63 | er">1</span>.=>.|idx|.<span.c |
| 54760 | 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 6f 3c 2f 73 70 | lass="tok-builtin">@typeInfo</sp |
| 54780 | 61 6e 3e 28 66 69 65 6c 64 73 5b 69 64 78 5d 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | an>(fields[idx].<span.class="tok |
| 547a0 | 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 2e 6f 70 74 69 6f 6e 61 6c | -type">type</span>).==..optional |
| 547c0 | 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 22 3e 65 | ,.........<span.class="tok-kw">e |
| 547e0 | 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 74 6f | lse</span>.=>.<span.class="to |
| 54800 | 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= |
| 54820 | 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 49 6e 64 65 78 4f 75 74 4f 66 | "tok-kw">error</span>.IndexOutOf |
| 54840 | 42 6f 75 6e 64 73 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 | Bounds,.....};.}..<span.class="t |
| 54860 | 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 74 31 20 3d 20 3c 73 | ok-kw">const</span>.Struct1.=.<s |
| 54880 | 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> |
| 548a0 | 20 7b 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 | .{.a:.<span.class="tok-type">u32 |
| 548c0 | 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | </span>,.b:.?<span.class="tok-ty |
| 548e0 | 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pe">u32</span>.};..<span.class=" |
| 54900 | 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= |
| 54920 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 75 73 69 6e 67 20 40 74 79 70 65 49 6e 66 6f 20 | "tok-str">"using.@typeInfo. |
| 54940 | 77 69 74 68 20 72 75 6e 74 69 6d 65 20 76 61 6c 75 65 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | with.runtime.values"</span> |
| 54960 | 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< |
| 54980 | 2f 73 70 61 6e 3e 20 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 | /span>.index:.<span.class="tok-t |
| 549a0 | 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= |
| 549c0 | 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 |
| 549e0 | 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 |
| 54a00 | 74 28 21 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 |
| 54a20 | 6e 3e 20 69 73 46 69 65 6c 64 4f 70 74 69 6f 6e 61 6c 28 53 74 72 75 63 74 31 2c 20 69 6e 64 65 | n>.isFieldOptional(Struct1,.inde |
| 54a40 | 78 29 29 3b 0a 20 20 20 20 69 6e 64 65 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | x));.....index.+=.<span.class="t |
| 54a60 | 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 20 63 | ok-number">1</span>;.....<span.c |
| 54a80 | 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( |
| 54aa0 | 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>. |
| 54ac0 | 69 73 46 69 65 6c 64 4f 70 74 69 6f 6e 61 6c 28 53 74 72 75 63 74 31 2c 20 69 6e 64 65 78 29 29 | isFieldOptional(Struct1,.index)) |
| 54ae0 | 3b 0a 20 20 20 20 69 6e 64 65 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ;.....index.+=.<span.class="tok- |
| 54b00 | 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 73 | number">1</span>;.....<span.clas |
| 54b20 | 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 45 72 72 6f | s="tok-kw">try</span>.expectErro |
| 54b40 | 72 28 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 | r(<span.class="tok-kw">error</sp |
| 54b60 | 61 6e 3e 2e 49 6e 64 65 78 4f 75 74 4f 66 42 6f 75 6e 64 73 2c 20 69 73 46 69 65 6c 64 4f 70 74 | an>.IndexOutOfBounds,.isFieldOpt |
| 54b80 | 69 6f 6e 61 6c 28 53 74 72 75 63 74 31 2c 20 69 6e 64 65 78 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e | ional(Struct1,.index));.}..<span |
| 54ba0 | 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 61 6c 6c 73 20 74 6f | .class="tok-comment">//.Calls.to |
| 54bc0 | 20 60 69 73 46 69 65 6c 64 4f 70 74 69 6f 6e 61 6c 60 20 6f 6e 20 60 53 74 72 75 63 74 31 60 20 | .`isFieldOptional`.on.`Struct1`. |
| 54be0 | 67 65 74 20 75 6e 72 6f 6c 6c 65 64 20 74 6f 20 61 6e 20 65 71 75 69 76 61 6c 65 6e 74 3c 2f 73 | get.unrolled.to.an.equivalent</s |
| 54c00 | 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">/ |
| 54c20 | 2f 20 6f 66 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | /.of.this.function:</span>.<span |
| 54c40 | 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. |
| 54c60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 69 73 46 69 65 6c 64 4f 70 74 69 6f 6e 61 6c 55 6e | class="tok-fn">isFieldOptionalUn |
| 54c80 | 72 6f 6c 6c 65 64 3c 2f 73 70 61 6e 3e 28 66 69 65 6c 64 5f 69 6e 64 65 78 3a 20 3c 73 70 61 6e | rolled</span>(field_index:.<span |
| 54ca0 | 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 20 | .class="tok-type">usize</span>). |
| 54cc0 | 21 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 |
| 54ce0 | 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 72 | an>.{.....<span.class="tok-kw">r |
| 54d00 | 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 |
| 54d20 | 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 66 69 65 6c 64 5f 69 6e 64 65 78 29 20 7b 0a | ">switch</span>.(field_index).{. |
| 54d40 | 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 65 72 22 | ........<span.class="tok-number" |
| 54d60 | 3e 30 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 | >0</span>.=>.<span.class="tok |
| 54d80 | 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 20 20 20 3c 73 70 | -null">false</span>,.........<sp |
| 54da0 | 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>.= |
| 54dc0 | 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 |
| 54de0 | 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 22 74 6f | </span>,.........<span.class="to |
| 54e00 | 6b 2d 6b 77 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 | k-kw">else</span>.=>.<span.cl |
| 54e20 | 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 |
| 54e40 | 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 49 6e 64 | .class="tok-kw">error</span>.Ind |
| 54e60 | 65 78 4f 75 74 4f 66 42 6f 75 6e 64 73 2c 0a 20 20 20 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | exOutOfBounds,.....};.}</code></ |
| 54e80 | 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e | pre></figure><figure><figcaption |
| 54ea0 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 | .class="shell-cap">Shell</figcap |
| 54ec0 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 | tion><pre><samp>$.<kbd>zig.test. |
| 54ee0 | 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 73 77 69 74 63 68 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 | test_inline_switch.zig</kbd>.1/1 |
| 54f00 | 20 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 73 77 69 74 63 68 2e 74 65 73 74 2e 75 73 69 6e 67 20 40 | .test_inline_switch.test.using.@ |
| 54f20 | 74 79 70 65 49 6e 66 6f 20 77 69 74 68 20 72 75 6e 74 69 6d 65 20 76 61 6c 75 65 73 2e 2e 2e 4f | typeInfo.with.runtime.values...O |
| 54f40 | 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 | K.All.1.tests.passed..</samp></p |
| 54f60 | 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 20 3c 63 6f 64 65 | re></figure>........<p>The.<code |
| 54f80 | 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 70 | ><span.class="tok-kw">inline</sp |
| 54fa0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 6d 61 79 20 61 6c 73 6f 20 62 65 20 63 | an></code>.keyword.may.also.be.c |
| 54fc0 | 6f 6d 62 69 6e 65 64 20 77 69 74 68 20 72 61 6e 67 65 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | ombined.with.ranges:</p>.......< |
| 54fe0 | 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 | figure><figcaption.class="zig-ca |
| 55000 | 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 69 6e 6c 69 6e 65 5f 70 72 6f | p"><cite.class="file">inline_pro |
| 55020 | 6e 67 5f 72 61 6e 67 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | ng_range.zig</cite></figcaption> |
| 55040 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | <pre><code><span.class="tok-kw"> |
| 55060 | 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 69 | fn</span>.<span.class="tok-fn">i |
| 55080 | 73 46 69 65 6c 64 4f 70 74 69 6f 6e 61 6c 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | sFieldOptional</span>(<span.clas |
| 550a0 | 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 73 | s="tok-kw">comptime</span>.T:.<s |
| 550c0 | 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> |
| 550e0 | 2c 20 66 69 65 6c 64 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 | ,.field_index:.<span.class="tok- |
| 55100 | 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 | type">usize</span>).!<span.class |
| 55120 | 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 3c 73 | ="tok-type">bool</span>.{.....<s |
| 55140 | 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>. |
| 55160 | 66 69 65 6c 64 73 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 | fields.=.<span.class="tok-builti |
| 55180 | 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 54 29 2e 40 26 71 75 6f 74 3b 73 74 | n">@typeInfo</span>(T).@"st |
| 551a0 | 72 75 63 74 26 71 75 6f 74 3b 2e 66 69 65 6c 64 73 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ruct".fields;.....<span.cla |
| 551c0 | 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. |
| 551e0 | 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 66 69 | class="tok-kw">switch</span>.(fi |
| 55200 | 65 6c 64 5f 69 6e 64 65 78 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | eld_index).{.........<span.class |
| 55220 | 3d 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 | ="tok-kw">inline</span>.<span.cl |
| 55240 | 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 2e 66 69 65 6c | ass="tok-number">0</span>...fiel |
| 55260 | 64 73 2e 6c 65 6e 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 | ds.len.-.<span.class="tok-number |
| 55280 | 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7c 69 64 78 7c 20 3c 73 70 61 6e 20 63 6c 61 | ">1</span>.=>.|idx|.<span.cla |
| 552a0 | 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 6e | ss="tok-builtin">@typeInfo</span |
| 552c0 | 3e 28 66 69 65 6c 64 73 5b 69 64 78 5d 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | >(fields[idx].<span.class="tok-t |
| 552e0 | 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 2e 6f 70 74 69 6f 6e 61 6c 2c 0a | ype">type</span>).==..optional,. |
| 55300 | 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 |
| 55320 | 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- |
| 55340 | 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 |
| 55360 | 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 49 6e 64 65 78 4f 75 74 4f 66 42 6f | ok-kw">error</span>.IndexOutOfBo |
| 55380 | 75 6e 64 73 2c 0a 20 20 20 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | unds,.....};.}</code></pre></fig |
| 553a0 | 75 72 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 3e 3c 73 70 61 | ure>........<p>.......<code><spa |
| 553c0 | 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 70 61 6e 3e 20 3c | n.class="tok-kw">inline</span>.< |
| 553e0 | 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 3c | span.class="tok-kw">else</span>< |
| 55400 | 2f 63 6f 64 65 3e 20 70 72 6f 6e 67 73 20 63 61 6e 20 62 65 20 75 73 65 64 20 61 73 20 61 20 74 | /code>.prongs.can.be.used.as.a.t |
| 55420 | 79 70 65 20 73 61 66 65 0a 20 20 20 20 20 20 61 6c 74 65 72 6e 61 74 69 76 65 20 74 6f 20 3c 63 | ype.safe.......alternative.to.<c |
| 55440 | 6f 64 65 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 | ode><span.class="tok-kw">inline< |
| 55460 | 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 6f 72 3c | /span>.<span.class="tok-kw">for< |
| 55480 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 6f 6f 70 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | /span></code>.loops:.......</p>. |
| 554a0 | 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | ......<figure><figcaption.class= |
| 554c0 | 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | "zig-cap"><cite.class="file">tes |
| 554e0 | 74 5f 69 6e 6c 69 6e 65 5f 65 6c 73 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | t_inline_else.zig</cite></figcap |
| 55500 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tion><pre><code><span.class="tok |
| 55520 | 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 |
| 55540 | 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> |
| 55560 | 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 |
| 55580 | 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 |
| 555a0 | 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 |
| 555c0 | 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 |
| 555e0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 6c 69 63 65 54 79 70 65 41 20 3d 20 3c | -kw">const</span>.SliceTypeA.=.< |
| 55600 | 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 |
| 55620 | 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 63 74 3c 2f 73 | >.<span.class="tok-kw">struct</s |
| 55640 | 70 61 6e 3e 20 7b 0a 20 20 20 20 6c 65 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>.{.....len:.<span.class="tok |
| 55660 | 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 70 74 72 3a 20 5b 2a | -type">usize</span>,.....ptr:.[* |
| 55680 | 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 33 32 3c 2f 73 70 61 | ]<span.class="tok-type">u32</spa |
| 556a0 | 6e 3e 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 63 6f 6e 73 | n>,.};.<span.class="tok-kw">cons |
| 556c0 | 74 3c 2f 73 70 61 6e 3e 20 53 6c 69 63 65 54 79 70 65 42 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | t</span>.SliceTypeB.=.<span.clas |
| 556e0 | 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 |
| 55700 | 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>.{... |
| 55720 | 20 20 70 74 72 3a 20 5b 2a 5d 53 6c 69 63 65 54 79 70 65 41 2c 0a 20 20 20 20 6c 65 6e 3a 20 3c | ..ptr:.[*]SliceTypeA,.....len:.< |
| 55740 | 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 |
| 55760 | 6e 3e 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 63 6f 6e 73 | n>,.};.<span.class="tok-kw">cons |
| 55780 | 74 3c 2f 73 70 61 6e 3e 20 41 6e 79 53 6c 69 63 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t</span>.AnySlice.=.<span.class= |
| 557a0 | 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 20 63 6c 61 73 | "tok-kw">union</span>(<span.clas |
| 557c0 | 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 20 20 20 61 3a | s="tok-kw">enum</span>).{.....a: |
| 557e0 | 20 53 6c 69 63 65 54 79 70 65 41 2c 0a 20 20 20 20 62 3a 20 53 6c 69 63 65 54 79 70 65 42 2c 0a | .SliceTypeA,.....b:.SliceTypeB,. |
| 55800 | 20 20 20 20 63 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 | ....c:.[]<span.class="tok-kw">co |
| 55820 | 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 |
| 55840 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 64 3a 20 5b 5d 41 6e 79 53 6c 69 63 65 2c 0a | ">u8</span>,.....d:.[]AnySlice,. |
| 55860 | 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 66 6e 3c 2f 73 70 61 | };..<span.class="tok-kw">fn</spa |
| 55880 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 77 69 74 68 46 6f 72 3c | n>.<span.class="tok-fn">withFor< |
| 558a0 | 2f 73 70 61 6e 3e 28 61 6e 79 3a 20 41 6e 79 53 6c 69 63 65 29 20 3c 73 70 61 6e 20 63 6c 61 73 | /span>(any:.AnySlice).<span.clas |
| 558c0 | 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>.{..... |
| 558e0 | 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 |
| 55900 | 3e 20 54 61 67 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 | >.Tag.=.<span.class="tok-builtin |
| 55920 | 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 41 6e 79 53 6c 69 63 65 29 2e 40 26 71 | ">@typeInfo</span>(AnySlice).@&q |
| 55940 | 75 6f 74 3b 75 6e 69 6f 6e 26 71 75 6f 74 3b 2e 74 61 67 5f 74 79 70 65 2e 3f 3b 0a 20 20 20 20 | uot;union".tag_type.?;..... |
| 55960 | 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 70 61 | <span.class="tok-kw">inline</spa |
| 55980 | 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 6f 72 3c 2f 73 70 61 | n>.<span.class="tok-kw">for</spa |
| 559a0 | 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 74 | n>.(<span.class="tok-builtin">@t |
| 559c0 | 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 54 61 67 29 2e 40 26 71 75 6f 74 3b 65 6e 75 6d 26 | ypeInfo</span>(Tag).@"enum& |
| 559e0 | 71 75 6f 74 3b 2e 66 69 65 6c 64 73 29 20 7c 66 69 65 6c 64 7c 20 7b 0a 20 20 20 20 20 20 20 20 | quot;.fields).|field|.{......... |
| 55a00 | 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 |
| 55a20 | 68 20 60 69 6e 6c 69 6e 65 20 66 6f 72 60 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 73 | h.`inline.for`.the.function.gets |
| 55a40 | 20 67 65 6e 65 72 61 74 65 64 20 61 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 | .generated.as</span>.........<sp |
| 55a60 | 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 20 73 65 72 69 | an.class="tok-comment">//.a.seri |
| 55a80 | 65 73 20 6f 66 20 60 69 66 60 20 73 74 61 74 65 6d 65 6e 74 73 20 72 65 6c 79 69 6e 67 20 6f 6e | es.of.`if`.statements.relying.on |
| 55aa0 | 20 74 68 65 20 6f 70 74 69 6d 69 7a 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 | .the.optimizer</span>.........<s |
| 55ac0 | 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 63 6f | pan.class="tok-comment">//.to.co |
| 55ae0 | 6e 76 65 72 74 20 69 74 20 74 6f 20 61 20 73 77 69 74 63 68 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | nvert.it.to.a.switch.</span>.... |
| 55b00 | 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 |
| 55b20 | 61 6e 3e 20 28 66 69 65 6c 64 2e 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | an>.(field.value.==.<span.class= |
| 55b40 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 45 6e 75 6d 3c 2f 73 70 61 6e | "tok-builtin">@intFromEnum</span |
| 55b60 | 3e 28 61 6e 79 29 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 | >(any)).{.............<span.clas |
| 55b80 | 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 |
| 55ba0 | 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> |
| 55bc0 | 28 61 6e 79 2c 20 66 69 65 6c 64 2e 6e 61 6d 65 29 2e 6c 65 6e 3b 0a 20 20 20 20 20 20 20 20 7d | (any,.field.name).len;.........} |
| 55be0 | 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 63 6f 6d 6d | .....}.....<span.class="tok-comm |
| 55c00 | 65 6e 74 22 3e 2f 2f 20 57 68 65 6e 20 75 73 69 6e 67 20 60 69 6e 6c 69 6e 65 20 66 6f 72 60 20 | ent">//.When.using.`inline.for`. |
| 55c20 | 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 64 6f 65 73 6e 27 74 20 6b 6e 6f 77 20 74 68 61 74 20 65 | the.compiler.doesn't.know.that.e |
| 55c40 | 76 65 72 79 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 | very</span>.....<span.class="tok |
| 55c60 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 70 6f 73 73 69 62 6c 65 20 63 61 73 65 20 68 61 73 20 62 | -comment">//.possible.case.has.b |
| 55c80 | 65 65 6e 20 68 61 6e 64 6c 65 64 20 72 65 71 75 69 72 69 6e 67 20 61 6e 20 65 78 70 6c 69 63 69 | een.handled.requiring.an.explici |
| 55ca0 | 74 20 60 75 6e 72 65 61 63 68 61 62 6c 65 60 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | t.`unreachable`.</span>.....<spa |
| 55cc0 | 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 |
| 55ce0 | 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 22 3e 66 6e 3c | an>;.}..<span.class="tok-kw">fn< |
| 55d00 | 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 77 69 74 68 | /span>.<span.class="tok-fn">with |
| 55d20 | 53 77 69 74 63 68 3c 2f 73 70 61 6e 3e 28 61 6e 79 3a 20 41 6e 79 53 6c 69 63 65 29 20 3c 73 70 | Switch</span>(any:.AnySlice).<sp |
| 55d40 | 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> |
| 55d60 | 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 |
| 55d80 | 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 73 | rn</span>.<span.class="tok-kw">s |
| 55da0 | 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 61 6e 79 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 | witch</span>.(any).{.........<sp |
| 55dc0 | 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 68 20 60 | an.class="tok-comment">//.With.` |
| 55de0 | 69 6e 6c 69 6e 65 20 65 6c 73 65 60 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 65 78 70 | inline.else`.the.function.is.exp |
| 55e00 | 6c 69 63 69 74 6c 79 20 67 65 6e 65 72 61 74 65 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 | licitly.generated</span>........ |
| 55e20 | 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 73 | .<span.class="tok-comment">//.as |
| 55e40 | 20 74 68 65 20 64 65 73 69 72 65 64 20 73 77 69 74 63 68 20 61 6e 64 20 74 68 65 20 63 6f 6d 70 | .the.desired.switch.and.the.comp |
| 55e60 | 69 6c 65 72 20 63 61 6e 20 63 68 65 63 6b 20 74 68 61 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 | iler.can.check.that</span>...... |
| 55e80 | 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">//. |
| 55ea0 | 65 76 65 72 79 20 70 6f 73 73 69 62 6c 65 20 63 61 73 65 20 69 73 20 68 61 6e 64 6c 65 64 2e 3c | every.possible.case.is.handled.< |
| 55ec0 | 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 6b 2d | /span>.........<span.class="tok- |
| 55ee0 | 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 3d 22 74 | kw">inline</span>.<span.class="t |
| 55f00 | 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 7c 73 6c 69 63 65 7c | ok-kw">else</span>.=>.|slice| |
| 55f20 | 20 73 6c 69 63 65 2e 6c 65 6e 2c 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | .slice.len,.....};.}..<span.clas |
| 55f40 | 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 |
| 55f60 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 6c 69 6e 65 20 66 6f 72 20 61 6e | ss="tok-str">"inline.for.an |
| 55f80 | 64 20 69 6e 6c 69 6e 65 20 65 6c 73 65 20 73 69 6d 69 6c 61 72 69 74 79 26 71 75 6f 74 3b 3c 2f | d.inline.else.similarity"</ |
| 55fa0 | 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" |
| 55fc0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6e 79 20 3d 20 41 6e 79 53 6c 69 63 65 7b 20 2e 63 | >const</span>.any.=.AnySlice{..c |
| 55fe0 | 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 3b 68 | .=.<span.class="tok-str">"h |
| 56000 | 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ello"</span>.};.....<span.c |
| 56020 | 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( |
| 56040 | 77 69 74 68 46 6f 72 28 61 6e 79 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | withFor(any).==.<span.class="tok |
| 56060 | 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 63 6c | -number">5</span>);.....<span.cl |
| 56080 | 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 77 | ass="tok-kw">try</span>.expect(w |
| 560a0 | 69 74 68 53 77 69 74 63 68 28 61 6e 79 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ithSwitch(any).==.<span.class="t |
| 560c0 | 6f 6b 2d 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 | ok-number">5</span>);.}</code></ |
| 560e0 | 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e | pre></figure><figure><figcaption |
| 56100 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 | .class="shell-cap">Shell</figcap |
| 56120 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 | tion><pre><samp>$.<kbd>zig.test. |
| 56140 | 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 65 6c 73 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 | test_inline_else.zig</kbd>.1/1.t |
| 56160 | 65 73 74 5f 69 6e 6c 69 6e 65 5f 65 6c 73 65 2e 74 65 73 74 2e 69 6e 6c 69 6e 65 20 66 6f 72 20 | est_inline_else.test.inline.for. |
| 56180 | 61 6e 64 20 69 6e 6c 69 6e 65 20 65 6c 73 65 20 73 69 6d 69 6c 61 72 69 74 79 2e 2e 2e 4f 4b 0a | and.inline.else.similarity...OK. |
| 561a0 | 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 | All.1.tests.passed..</samp></pre |
| 561c0 | 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e | ></figure>........<p>.......When |
| 561e0 | 20 75 73 69 6e 67 20 61 6e 20 69 6e 6c 69 6e 65 20 70 72 6f 6e 67 20 73 77 69 74 63 68 69 6e 67 | .using.an.inline.prong.switching |
| 56200 | 20 6f 6e 20 61 6e 20 75 6e 69 6f 6e 20 61 6e 20 61 64 64 69 74 69 6f 6e 61 6c 0a 20 20 20 20 20 | .on.an.union.an.additional...... |
| 56220 | 20 63 61 70 74 75 72 65 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 6f 62 74 61 69 6e 20 74 | .capture.can.be.used.to.obtain.t |
| 56240 | 68 65 20 75 6e 69 6f 6e 27 73 20 65 6e 75 6d 20 74 61 67 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 | he.union's.enum.tag.value....... |
| 56260 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | .</p>.......<figure><figcaption. |
| 56280 | 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c | class="zig-cap"><cite.class="fil |
| 562a0 | 65 22 3e 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 73 77 69 74 63 68 5f 75 6e 69 6f 6e 5f 74 61 67 2e | e">test_inline_switch_union_tag. |
| 562c0 | 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 | zig</cite></figcaption><pre><cod |
| 562e0 | 65 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 | e><span.class="tok-kw">const</sp |
| 56300 | 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 |
| 56320 | 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=" |
| 56340 | 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>) |
| 56360 | 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 |
| 56380 | 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; |
| 563a0 | 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 |
| 563c0 | 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 |
| 563e0 | 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 22 3e 65 | on</span>(<span.class="tok-kw">e |
| 56400 | 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 61 73 73 | num</span>).{.....a:.<span.class |
| 56420 | 3d 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 62 3a 20 3c | ="tok-type">u32</span>,.....b:.< |
| 56440 | 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 3e | span.class="tok-type">f32</span> |
| 56460 | 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 66 6e 3c 2f 73 | ,.};..<span.class="tok-kw">fn</s |
| 56480 | 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 67 65 74 4e 75 6d | pan>.<span.class="tok-fn">getNum |
| 564a0 | 3c 2f 73 70 61 6e 3e 28 75 3a 20 55 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | </span>(u:.U).<span.class="tok-t |
| 564c0 | 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 |
| 564e0 | 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 75 29 20 7b 0a 20 | s="tok-kw">switch</span>.(u).{.. |
| 56500 | 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" |
| 56520 | 3e 2f 2f 20 48 65 72 65 20 60 6e 75 6d 60 20 69 73 20 61 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 | >//.Here.`num`.is.a.runtime-know |
| 56540 | 6e 20 76 61 6c 75 65 20 74 68 61 74 20 69 73 20 65 69 74 68 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 | n.value.that.is.either</span>... |
| 56560 | 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"> |
| 56580 | 2f 2f 20 60 75 2e 61 60 20 6f 72 20 60 75 2e 62 60 20 61 6e 64 20 60 74 61 67 60 20 69 73 20 60 | //.`u.a`.or.`u.b`.and.`tag`.is.` |
| 565a0 | 75 60 27 73 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 74 61 67 20 76 61 6c 75 65 2e 3c 2f | u`'s.comptime-known.tag.value.</ |
| 565c0 | 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 6b | span>.........<span.class="tok-k |
| 565e0 | 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 |
| 56600 | 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7c 6e 75 6d 2c 20 74 61 | k-kw">else</span>.=>.|num,.ta |
| 56620 | 67 7c 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 | g|.{.............<span.class="to |
| 56640 | 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 74 61 67 20 3d 3d 20 2e 62 29 20 7b 0a 20 20 | k-kw">if</span>.(tag.==..b).{... |
| 56660 | 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 6b | ..............<span.class="tok-k |
| 56680 | 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 |
| 566a0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 3c 2f 73 70 61 6e 3e 28 | k-builtin">@intFromFloat</span>( |
| 566c0 | 6e 75 6d 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 20 20 20 20 | num);.............}............. |
| 566e0 | 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 |
| 56700 | 6e 3e 20 6e 75 6d 3b 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 | n>.num;.........},.....}.}..<spa |
| 56720 | 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 |
| 56740 | 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 65 73 74 26 71 75 | an.class="tok-str">"test&qu |
| 56760 | 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 |
| 56780 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 20 3d 20 55 7b 20 2e 62 20 3d 20 3c | k-kw">const</span>.u.=.U{..b.=.< |
| 567a0 | 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 61 6e | span.class="tok-number">42</span |
| 567c0 | 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 3e 74 72 | >.};.....<span.class="tok-kw">tr |
| 567e0 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 67 65 74 4e 75 6d 28 75 29 20 3d 3d 20 3c 73 70 | y</span>.expect(getNum(u).==.<sp |
| 56800 | 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 29 | an.class="tok-number">42</span>) |
| 56820 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 | ;.}</code></pre></figure><figure |
| 56840 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 | ><figcaption.class="shell-cap">S |
| 56860 | 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b | hell</figcaption><pre><samp>$.<k |
| 56880 | 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 73 77 69 74 63 68 5f 75 | bd>zig.test.test_inline_switch_u |
| 568a0 | 6e 69 6f 6e 5f 74 61 67 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 69 6e 6c 69 | nion_tag.zig</kbd>.1/1.test_inli |
| 568c0 | 6e 65 5f 73 77 69 74 63 68 5f 75 6e 69 6f 6e 5f 74 61 67 2e 74 65 73 74 2e 74 65 73 74 2e 2e 2e | ne_switch_union_tag.test.test... |
| 568e0 | 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f | OK.All.1.tests.passed..</samp></ |
| 56900 | 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f | pre></figure>........<p>See.also |
| 56920 | 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 6c 69 6e 65 2d 77 | :</p><ul>.<li><a.href="#inline-w |
| 56940 | 68 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 | hile">inline.while</a></li>.<li> |
| 56960 | 3c 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 | <a.href="#inline-for">inline.for |
| 56980 | 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 0a 0a | </a></li>.</ul>................. |
| 569a0 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 77 68 69 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | ......<h2.id="while"><a.href="#t |
| 569c0 | 6f 63 2d 77 68 69 6c 65 22 3e 77 68 69 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | oc-while">while</a>.<a.class="hd |
| 569e0 | 72 22 20 68 72 65 66 3d 22 23 77 68 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | r".href="#while">..</a></h2>.... |
| 56a00 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 77 68 69 6c 65 20 6c 6f 6f 70 20 69 73 20 75 73 | ....<p>.......A.while.loop.is.us |
| 56a20 | 65 64 20 74 6f 20 72 65 70 65 61 74 65 64 6c 79 20 65 78 65 63 75 74 65 20 61 6e 20 65 78 70 72 | ed.to.repeatedly.execute.an.expr |
| 56a40 | 65 73 73 69 6f 6e 20 75 6e 74 69 6c 0a 20 20 20 20 20 20 73 6f 6d 65 20 63 6f 6e 64 69 74 69 6f | ession.until.......some.conditio |
| 56a60 | 6e 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 74 72 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | n.is.no.longer.true........</p>. |
| 56a80 | 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | ......<figure><figcaption.class= |
| 56aa0 | 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | "zig-cap"><cite.class="file">tes |
| 56ac0 | 74 5f 77 68 69 6c 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | t_while.zig</cite></figcaption>< |
| 56ae0 | 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | pre><code><span.class="tok-kw">c |
| 56b00 | 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 |
| 56b20 | 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 |
| 56b40 | 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 |
| 56b60 | 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 |
| 56b80 | 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 |
| 56ba0 | 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 20 | pan.class="tok-str">"while. |
| 56bc0 | 62 61 73 69 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 | basic"</span>.{.....<span.c |
| 56be0 | 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 3a 20 3c 73 70 61 | lass="tok-kw">var</span>.i:.<spa |
| 56c00 | 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 20 | n.class="tok-type">usize</span>. |
| 56c20 | 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 |
| 56c40 | 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 77 68 | an>;.....<span.class="tok-kw">wh |
| 56c60 | 69 6c 65 3c 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 | ile</span>.(i.<.<span.class=" |
| 56c80 | 74 6f 6b 2d 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 | tok-number">10</span>).{........ |
| 56ca0 | 20 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 | .i.+=.<span.class="tok-number">1 |
| 56cc0 | 3c 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 | </span>;.....}.....<span.class=" |
| 56ce0 | 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 20 3d 3d 20 3c | tok-kw">try</span>.expect(i.==.< |
| 56d00 | 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 61 6e | span.class="tok-number">10</span |
| 56d20 | 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 | >);.}</code></pre></figure><figu |
| 56d40 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 | re><figcaption.class="shell-cap" |
| 56d60 | 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 | >Shell</figcaption><pre><samp>$. |
| 56d80 | 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 77 68 69 6c 65 2e 7a 69 67 3c 2f 6b 62 | <kbd>zig.test.test_while.zig</kb |
| 56da0 | 64 3e 0a 31 2f 31 20 74 65 73 74 5f 77 68 69 6c 65 2e 74 65 73 74 2e 77 68 69 6c 65 20 62 61 73 | d>.1/1.test_while.test.while.bas |
| 56dc0 | 69 63 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 | ic...OK.All.1.tests.passed..</sa |
| 56de0 | 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | mp></pre></figure>........<p>... |
| 56e00 | 20 20 20 20 55 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ....Use.<code><span.class="tok-k |
| 56e20 | 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 69 74 20 61 | w">break</span></code>.to.exit.a |
| 56e40 | 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 3e 0a 20 20 | .while.loop.early........</p>... |
| 56e60 | 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a | ....<figure><figcaption.class="z |
| 56e80 | 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f | ig-cap"><cite.class="file">test_ |
| 56ea0 | 77 68 69 6c 65 5f 62 72 65 61 6b 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | while_break.zig</cite></figcapti |
| 56ec0 | 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | on><pre><code><span.class="tok-k |
| 56ee0 | 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 20 63 | w">const</span>.expect.=.<span.c |
| 56f00 | 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 |
| 56f20 | 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 |
| 56f40 | 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 3b 0a | d"</span>).testing.expect;. |
| 56f60 | 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 |
| 56f80 | 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 77 68 | >.<span.class="tok-str">"wh |
| 56fa0 | 69 6c 65 20 62 72 65 61 6b 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | ile.break"</span>.{.....<sp |
| 56fc0 | 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 69 3a 20 | an.class="tok-kw">var</span>.i:. |
| 56fe0 | 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 70 | <span.class="tok-type">usize</sp |
| 57000 | 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 |
| 57020 | 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 |
| 57040 | 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 6b | ">while</span>.(<span.class="tok |
| 57060 | 2d 6e 75 6c 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 | -null">true</span>).{.........<s |
| 57080 | 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 69 20 | pan.class="tok-kw">if</span>.(i. |
| 570a0 | 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 3c 2f | ==.<span.class="tok-number">10</ |
| 570c0 | 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 73 73 3d 22 | span>).............<span.class=" |
| 570e0 | 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 20 20 20 20 69 20 | tok-kw">break</span>;.........i. |
| 57100 | 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 |
| 57120 | 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 6f 6b | pan>;.....}.....<span.class="tok |
| 57140 | 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 70 61 | -kw">try</span>.expect(i.==.<spa |
| 57160 | 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 29 3b | n.class="tok-number">10</span>); |
| 57180 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e | .}</code></pre></figure><figure> |
| 571a0 | 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 | <figcaption.class="shell-cap">Sh |
| 571c0 | 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 | ell</figcaption><pre><samp>$.<kb |
| 571e0 | 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 77 68 69 6c 65 5f 62 72 65 61 6b 2e 7a 69 67 3c | d>zig.test.test_while_break.zig< |
| 57200 | 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 77 68 69 6c 65 5f 62 72 65 61 6b 2e 74 65 73 74 2e | /kbd>.1/1.test_while_break.test. |
| 57220 | 77 68 69 6c 65 20 62 72 65 61 6b 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 | while.break...OK.All.1.tests.pas |
| 57240 | 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 | sed..</samp></pre></figure>..... |
| 57260 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | ...<p>.......Use.<code><span.cla |
| 57280 | 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 64 | ss="tok-kw">continue</span></cod |
| 572a0 | 65 3e 20 74 6f 20 6a 75 6d 70 20 62 61 63 6b 20 74 6f 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 | e>.to.jump.back.to.the.beginning |
| 572c0 | 20 6f 66 20 74 68 65 20 6c 6f 6f 70 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | .of.the.loop........</p>.......< |
| 572e0 | 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 | figure><figcaption.class="zig-ca |
| 57300 | 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 77 68 69 6c 65 | p"><cite.class="file">test_while |
| 57320 | 5f 63 6f 6e 74 69 6e 75 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e | _continue.zig</cite></figcaption |
| 57340 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ><pre><code><span.class="tok-kw" |
| 57360 | 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 |
| 57380 | 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>( |
| 573a0 | 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& |
| 573c0 | 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;..< |
| 573e0 | 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>. |
| 57400 | 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 77 68 69 6c | <span.class="tok-str">"whil |
| 57420 | 65 20 63 6f 6e 74 69 6e 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | e.continue"</span>.{.....<s |
| 57440 | 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 69 3a | pan.class="tok-kw">var</span>.i: |
| 57460 | 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 |
| 57480 | 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"> |
| 574a0 | 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 |
| 574c0 | 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 |
| 574e0 | 6b 2d 6e 75 6c 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 69 | k-null">true</span>).{.........i |
| 57500 | 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</ |
| 57520 | 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 6f 6b 2d | span>;.........<span.class="tok- |
| 57540 | 6b 77 22 3e 69 66 3c 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 | kw">if</span>.(i.<.<span.clas |
| 57560 | 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 0a 20 20 20 20 20 20 | s="tok-number">10</span>)....... |
| 57580 | 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 74 69 | ......<span.class="tok-kw">conti |
| 575a0 | 6e 75 65 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 | nue</span>;.........<span.class= |
| 575c0 | 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 7d 0a 20 20 20 | "tok-kw">break</span>;.....}.... |
| 575e0 | 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> |
| 57600 | 20 65 78 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 | .expect(i.==.<span.class="tok-nu |
| 57620 | 6d 62 65 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 | mber">10</span>);.}</code></pre> |
| 57640 | 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | </figure><figure><figcaption.cla |
| 57660 | 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e | ss="shell-cap">Shell</figcaption |
| 57680 | 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 | ><pre><samp>$.<kbd>zig.test.test |
| 576a0 | 5f 77 68 69 6c 65 5f 63 6f 6e 74 69 6e 75 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 | _while_continue.zig</kbd>.1/1.te |
| 576c0 | 73 74 5f 77 68 69 6c 65 5f 63 6f 6e 74 69 6e 75 65 2e 74 65 73 74 2e 77 68 69 6c 65 20 63 6f 6e | st_while_continue.test.while.con |
| 576e0 | 74 69 6e 75 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c | tinue...OK.All.1.tests.passed..< |
| 57700 | 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | /samp></pre></figure>........<p> |
| 57720 | 0a 20 20 20 20 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 | .......While.loops.support.a.con |
| 57740 | 74 69 6e 75 65 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 | tinue.expression.which.is.execut |
| 57760 | 65 64 20 77 68 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 | ed.when.the.loop.......is.contin |
| 57780 | 75 65 64 2e 20 54 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ued..The.<code><span.class="tok- |
| 577a0 | 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 3e 20 6b 65 79 77 6f | kw">continue</span></code>.keywo |
| 577c0 | 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 6f 6e 2e 0a 20 20 20 | rd.respects.this.expression..... |
| 577e0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | ...</p>.......<figure><figcaptio |
| 57800 | 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 | n.class="zig-cap"><cite.class="f |
| 57820 | 69 6c 65 22 3e 74 65 73 74 5f 77 68 69 6c 65 5f 63 6f 6e 74 69 6e 75 65 5f 65 78 70 72 65 73 73 | ile">test_while_continue_express |
| 57840 | 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | ion.zig</cite></figcaption><pre> |
| 57860 | 3c 63 6f 64 65 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 | <code><span.class="tok-kw">const |
| 57880 | 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 |
| 578a0 | 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. |
| 578c0 | 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"< |
| 578e0 | 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 |
| 57900 | 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. |
| 57920 | 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 6f 6f 70 | class="tok-str">"while.loop |
| 57940 | 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 70 61 6e | .continue.expression"</span |
| 57960 | 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 |
| 57980 | 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 79 70 65 | </span>.i:.<span.class="tok-type |
| 579a0 | 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 22 74 6f | ">usize</span>.=.<span.class="to |
| 579c0 | 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 63 6c | k-number">0</span>;.....<span.cl |
| 579e0 | 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 26 6c 74 | ass="tok-kw">while</span>.(i.< |
| 57a00 | 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 3c 2f 73 | ;.<span.class="tok-number">10</s |
| 57a20 | 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 6b 2d 6e | pan>).:.(i.+=.<span.class="tok-n |
| 57a40 | 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 20 63 6c | umber">1</span>).{}.....<span.cl |
| 57a60 | 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 69 | ass="tok-kw">try</span>.expect(i |
| 57a80 | 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 3c | .==.<span.class="tok-number">10< |
| 57aa0 | 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 22 | /span>);.}..<span.class="tok-kw" |
| 57ac0 | 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 |
| 57ae0 | 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 65 78 70 | r">"while.loop.continue.exp |
| 57b00 | 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 74 3b 3c | ression,.more.complicated"< |
| 57b20 | 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 |
| 57b40 | 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 6f 6b | ">var</span>.i:.<span.class="tok |
| 57b60 | 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 |
| 57b80 | 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 70 | s="tok-number">1</span>;.....<sp |
| 57ba0 | 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 6a 3a 20 | an.class="tok-kw">var</span>.j:. |
| 57bc0 | 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 70 | <span.class="tok-type">usize</sp |
| 57be0 | 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 31 | an>.=.<span.class="tok-number">1 |
| 57c00 | 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 |
| 57c20 | 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 70 61 6e | ">while</span>.(i.*.j.<.<span |
| 57c40 | 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 6e 3e 29 | .class="tok-number">2000</span>) |
| 57c60 | 20 3a 20 28 7b 0a 20 20 20 20 20 20 20 20 69 20 2a 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .:.({.........i.*=.<span.class=" |
| 57c80 | 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 20 20 20 20 6a 20 | tok-number">2</span>;.........j. |
| 57ca0 | 2a 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 |
| 57cc0 | 70 61 6e 3e 3b 0a 20 20 20 20 7d 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | pan>;.....}).{.........<span.cla |
| 57ce0 | 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 79 5f 69 6a 20 3d | ss="tok-kw">const</span>.my_ij.= |
| 57d00 | 20 69 20 2a 20 6a 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 | .i.*.j;.........<span.class="tok |
| 57d20 | 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 69 6a 20 26 6c 74 | -kw">try</span>.expect(my_ij.< |
| 57d40 | 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 30 30 30 3c | ;.<span.class="tok-number">2000< |
| 57d60 | 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 2f 66 | /span>);.....}.}</code></pre></f |
| 57d80 | 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | igure><figure><figcaption.class= |
| 57da0 | 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | "shell-cap">Shell</figcaption><p |
| 57dc0 | 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 77 68 | re><samp>$.<kbd>zig.test.test_wh |
| 57de0 | 69 6c 65 5f 63 6f 6e 74 69 6e 75 65 5f 65 78 70 72 65 73 73 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 | ile_continue_expression.zig</kbd |
| 57e00 | 3e 0a 31 2f 32 20 74 65 73 74 5f 77 68 69 6c 65 5f 63 6f 6e 74 69 6e 75 65 5f 65 78 70 72 65 73 | >.1/2.test_while_continue_expres |
| 57e20 | 73 69 6f 6e 2e 74 65 73 74 2e 77 68 69 6c 65 20 6c 6f 6f 70 20 63 6f 6e 74 69 6e 75 65 20 65 78 | sion.test.while.loop.continue.ex |
| 57e40 | 70 72 65 73 73 69 6f 6e 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 77 68 69 6c 65 5f 63 6f 6e | pression...OK.2/2.test_while_con |
| 57e60 | 74 69 6e 75 65 5f 65 78 70 72 65 73 73 69 6f 6e 2e 74 65 73 74 2e 77 68 69 6c 65 20 6c 6f 6f 70 | tinue_expression.test.while.loop |
| 57e80 | 20 63 6f 6e 74 69 6e 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 | .continue.expression,.more.compl |
| 57ea0 | 69 63 61 74 65 64 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a | icated...OK.All.2.tests.passed.. |
| 57ec0 | 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 | </samp></pre></figure>........<p |
| 57ee0 | 3e 0a 20 20 20 20 20 20 57 68 69 6c 65 20 6c 6f 6f 70 73 20 61 72 65 20 65 78 70 72 65 73 73 69 | >.......While.loops.are.expressi |
| 57f00 | 6f 6e 73 2e 20 54 68 65 20 72 65 73 75 6c 74 20 6f 66 20 74 68 65 20 65 78 70 72 65 73 73 69 6f | ons..The.result.of.the.expressio |
| 57f20 | 6e 20 69 73 20 74 68 65 0a 20 20 20 20 20 20 72 65 73 75 6c 74 20 6f 66 20 74 68 65 20 3c 63 6f | n.is.the.......result.of.the.<co |
| 57f40 | 64 65 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 73 70 | de><span.class="tok-kw">else</sp |
| 57f60 | 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 6f 6f | an></code>.clause.of.a.while.loo |
| 57f80 | 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 20 20 | p,.which.is.executed.when....... |
| 57fa0 | 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 70 20 | the.condition.of.the.while.loop. |
| 57fc0 | 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 0a 20 | is.tested.as.false........</p>.. |
| 57fe0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | .....<p>.......<code><span.class |
| 58000 | 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 2c 20 6c | ="tok-kw">break</span></code>,.l |
| 58020 | 69 6b 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 | ike.<code><span.class="tok-kw">r |
| 58040 | 65 74 75 72 6e 3c 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 | eturn</span></code>,.accepts.a.v |
| 58060 | 61 6c 75 65 0a 20 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 | alue...............parameter..Th |
| 58080 | 69 73 20 69 73 20 74 68 65 20 72 65 73 75 6c 74 20 6f 66 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 | is.is.the.result.of.the.<code><s |
| 580a0 | 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 3c | pan.class="tok-kw">while</span>< |
| 580c0 | 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 20 20 20 20 20 20 | /code>.expression............... |
| 580e0 | 20 20 20 20 20 57 68 65 6e 20 79 6f 75 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .....When.you.<code><span.class= |
| 58100 | 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 20 66 72 6f | "tok-kw">break</span></code>.fro |
| 58120 | 6d 20 61 20 77 68 69 6c 65 20 6c 6f 6f 70 2c 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | m.a.while.loop,.the.<code><span. |
| 58140 | 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 |
| 58160 | 3e 20 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 | >.branch.is.not.......evaluated. |
| 58180 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | .......</p>.......<figure><figca |
| 581a0 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 | ption.class="zig-cap"><cite.clas |
| 581c0 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 77 68 69 6c 65 5f 65 6c 73 65 2e 7a 69 67 3c 2f 63 69 | s="file">test_while_else.zig</ci |
| 581e0 | 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e | te></figcaption><pre><code><span |
| 58200 | 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 |
| 58220 | 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 3e | ect.=.<span.class="tok-builtin"> |
| 58240 | 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- |
| 58260 | 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 73 | str">"std"</span>).tes |
| 58280 | 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 |
| 582a0 | 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- |
| 582c0 | 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 65 6c 73 65 26 71 75 6f 74 3b 3c 2f 73 70 61 | str">"while.else"</spa |
| 582e0 | 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 |
| 58300 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 72 61 6e 67 65 48 61 73 4e 75 6d 62 65 72 28 3c | y</span>.expect(rangeHasNumber(< |
| 58320 | 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> |
| 58340 | 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 73 | ,.<span.class="tok-number">10</s |
| 58360 | 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 |
| 58380 | 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- |
| 583a0 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 21 72 61 6e 67 65 48 61 73 4e | kw">try</span>.expect(!rangeHasN |
| 583c0 | 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 3e 30 | umber(<span.class="tok-number">0 |
| 583e0 | 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 |
| 58400 | 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 6e 75 | ">10</span>,.<span.class="tok-nu |
| 58420 | 6d 62 65 72 22 3e 31 35 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | mber">15</span>));.}..<span.clas |
| 58440 | 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 |
| 58460 | 3d 22 74 6f 6b 2d 66 6e 22 3e 72 61 6e 67 65 48 61 73 4e 75 6d 62 65 72 3c 2f 73 70 61 6e 3e 28 | ="tok-fn">rangeHasNumber</span>( |
| 58480 | 62 65 67 69 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 75 73 | begin:.<span.class="tok-type">us |
| 584a0 | 69 7a 65 3c 2f 73 70 61 6e 3e 2c 20 65 6e 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ize</span>,.end:.<span.class="to |
| 584c0 | 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 20 6e 75 6d 62 65 72 3a 20 3c 73 | k-type">usize</span>,.number:.<s |
| 584e0 | 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 |
| 58500 | 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 2f | >).<span.class="tok-type">bool</ |
| 58520 | 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" |
| 58540 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 20 3d 20 62 65 67 69 6e 3b 0a 20 20 20 20 3c 73 70 61 6e | >var</span>.i.=.begin;.....<span |
| 58560 | 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 |
| 58580 | 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 20 | pan.class="tok-kw">while</span>. |
| 585a0 | 28 69 20 26 6c 74 3b 20 65 6e 64 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | (i.<.end).:.(i.+=.<span.class |
| 585c0 | 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 20 20 20 20 | ="tok-number">1</span>).{....... |
| 585e0 | 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> |
| 58600 | 20 28 69 20 3d 3d 20 6e 75 6d 62 65 72 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | .(i.==.number).{.............<sp |
| 58620 | 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 20 3c | an.class="tok-kw">break</span>.< |
| 58640 | 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 |
| 58660 | 3e 3b 0a 20 20 20 20 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 | >;.........}.....}.<span.class=" |
| 58680 | 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 63 6c 61 73 73 3d | tok-kw">else</span>.<span.class= |
| 586a0 | 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 7d 3c 2f 63 6f 64 65 | "tok-null">false</span>;.}</code |
| 586c0 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | ></pre></figure><figure><figcapt |
| 586e0 | 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 | ion.class="shell-cap">Shell</fig |
| 58700 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 | caption><pre><samp>$.<kbd>zig.te |
| 58720 | 73 74 20 74 65 73 74 5f 77 68 69 6c 65 5f 65 6c 73 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 | st.test_while_else.zig</kbd>.1/1 |
| 58740 | 20 74 65 73 74 5f 77 68 69 6c 65 5f 65 6c 73 65 2e 74 65 73 74 2e 77 68 69 6c 65 20 65 6c 73 65 | .test_while_else.test.while.else |
| 58760 | 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 | ...OK.All.1.tests.passed..</samp |
| 58780 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 | ></pre></figure>........<h3.id=" |
| 587a0 | 4c 61 62 65 6c 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 | Labeled-while"><a.href="#toc-Lab |
| 587c0 | 65 6c 65 64 2d 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 | eled-while">Labeled.while</a>.<a |
| 587e0 | 20 63 6c 61 73 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 | .class="hdr".href="#Labeled-whil |
| 58800 | 65 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 20 | e">..</a></h3>........<p>When.a. |
| 58820 | 3c 63 6f 64 65 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 | <code><span.class="tok-kw">while |
| 58840 | 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 62 65 6c 65 64 2c 20 | </span></code>.loop.is.labeled,. |
| 58860 | 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 20 61 20 3c 63 6f 64 | it.can.be.referenced.from.a.<cod |
| 58880 | 65 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 | e><span.class="tok-kw">break</sp |
| 588a0 | 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 |
| 588c0 | 65 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 | e><span.class="tok-kw">continue< |
| 588e0 | 2f 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 | /span></code>.from.within.a.nest |
| 58900 | 65 64 20 6c 6f 6f 70 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | ed.loop:</p>.......<figure><figc |
| 58920 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 | aption.class="zig-cap"><cite.cla |
| 58940 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 77 68 69 6c 65 5f 6e 65 73 74 65 64 5f 62 72 65 61 | ss="file">test_while_nested_brea |
| 58960 | 6b 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 | k.zig</cite></figcaption><pre><c |
| 58980 | 6f 64 65 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 | ode><span.class="tok-kw">test</s |
| 589a0 | 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">" |
| 589c0 | 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 20 | ;nested.break"</span>.{.... |
| 589e0 | 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 69 | .outer:.<span.class="tok-kw">whi |
| 58a00 | 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 6c | le</span>.(<span.class="tok-null |
| 58a20 | 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 63 | ">true</span>).{.........<span.c |
| 58a40 | 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 61 | lass="tok-kw">while</span>.(<spa |
| 58a60 | 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 20 | n.class="tok-null">true</span>). |
| 58a80 | 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 6b | {.............<span.class="tok-k |
| 58aa0 | 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 20 | w">break</span>.:outer;......... |
| 58ac0 | 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 3e | }.....}.}..<span.class="tok-kw"> |
| 58ae0 | 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 |
| 58b00 | 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 73 | ">"nested.continue"</s |
| 58b20 | 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"> |
| 58b40 | 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 |
| 58b60 | 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= |
| 58b80 | 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 |
| 58ba0 | 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 70 | :.<span.class="tok-kw">while</sp |
| 58bc0 | 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 6d | an>.(i.<.<span.class="tok-num |
| 58be0 | 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 6c | ber">10</span>).:.(i.+=.<span.cl |
| 58c00 | 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 20 | ass="tok-number">1</span>).{.... |
| 58c20 | 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 3c | .....<span.class="tok-kw">while< |
| 58c40 | 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 74 | /span>.(<span.class="tok-null">t |
| 58c60 | 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 20 | rue</span>).{.............<span. |
| 58c80 | 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 3a | class="tok-kw">continue</span>.: |
| 58ca0 | 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 3c | outer;.........}.....}.}</code>< |
| 58cc0 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | /pre></figure><figure><figcaptio |
| 58ce0 | 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 | n.class="shell-cap">Shell</figca |
| 58d00 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 | ption><pre><samp>$.<kbd>zig.test |
| 58d20 | 20 74 65 73 74 5f 77 68 69 6c 65 5f 6e 65 73 74 65 64 5f 62 72 65 61 6b 2e 7a 69 67 3c 2f 6b 62 | .test_while_nested_break.zig</kb |
| 58d40 | 64 3e 0a 31 2f 32 20 74 65 73 74 5f 77 68 69 6c 65 5f 6e 65 73 74 65 64 5f 62 72 65 61 6b 2e 74 | d>.1/2.test_while_nested_break.t |
| 58d60 | 65 73 74 2e 6e 65 73 74 65 64 20 62 72 65 61 6b 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 77 | est.nested.break...OK.2/2.test_w |
| 58d80 | 68 69 6c 65 5f 6e 65 73 74 65 64 5f 62 72 65 61 6b 2e 74 65 73 74 2e 6e 65 73 74 65 64 20 63 6f | hile_nested_break.test.nested.co |
| 58da0 | 6e 74 69 6e 75 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a | ntinue...OK.All.2.tests.passed.. |
| 58dc0 | 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 | </samp></pre></figure>.......... |
| 58de0 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 77 68 69 6c 65 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c | .....<h3.id="while-with-Optional |
| 58e00 | 73 22 3e 3c 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 | s"><a.href="#toc-while-with-Opti |
| 58e20 | 6f 6e 61 6c 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 | onals">while.with.Optionals</a>. |
| 58e40 | 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 2d 77 69 74 68 | <a.class="hdr".href="#while-with |
| 58e60 | 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 20 20 20 3c | -Optionals">..</a></h3>........< |
| 58e80 | 70 3e 0a 20 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 | p>.......Just.like.<a.href="#if" |
| 58ea0 | 3e 69 66 3c 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 | >if</a>.expressions,.while.loops |
| 58ec0 | 20 63 61 6e 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 | .can.take.an.optional.as.the.... |
| 58ee0 | 20 20 20 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 | ...condition.and.capture.the.pay |
| 58f00 | 6c 6f 61 64 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 | load..When.<a.href="#null">null< |
| 58f20 | 2f 61 3e 20 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 | /a>.is.encountered.the.loop..... |
| 58f40 | 20 20 65 78 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 | ..exits........</p>.......<p>... |
| 58f60 | 20 20 20 20 57 68 65 6e 20 74 68 65 20 3c 63 6f 64 65 3e 7c 78 7c 3c 2f 63 6f 64 65 3e 20 73 79 | ....When.the.<code>|x|</code>.sy |
| 58f80 | 6e 74 61 78 20 69 73 20 70 72 65 73 65 6e 74 20 6f 6e 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | ntax.is.present.on.a.<code><span |
| 58fa0 | 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 |
| 58fc0 | 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 2c 0a 20 20 20 20 20 20 74 68 65 20 77 68 69 6c 65 20 | de>.expression,.......the.while. |
| 58fe0 | 63 6f 6e 64 69 74 69 6f 6e 20 6d 75 73 74 20 68 61 76 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 | condition.must.have.an.<a.href=" |
| 59000 | 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 2f 61 | #Optional-Type">Optional.Type</a |
| 59020 | 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 |
| 59040 | 65 20 3c 63 6f 64 65 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 | e.<code><span.class="tok-kw">els |
| 59060 | 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 |
| 59080 | 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 |
| 590a0 | 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 |
| 590c0 | 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 |
| 590e0 | 65 72 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | ered........</p>.......<figure>< |
| 59100 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 | figcaption.class="zig-cap"><cite |
| 59120 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 77 68 69 6c 65 5f 6e 75 6c 6c 5f 63 61 | .class="file">test_while_null_ca |
| 59140 | 70 74 75 72 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 | pture.zig</cite></figcaption><pr |
| 59160 | 65 3e 3c 63 6f 64 65 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 | e><code><span.class="tok-kw">con |
| 59180 | 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=" |
| 591a0 | 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 |
| 591c0 | 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" |
| 591e0 | 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 6e | ;</span>).testing.expect;..<span |
| 59200 | 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 |
| 59220 | 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 6e 75 | n.class="tok-str">"while.nu |
| 59240 | 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 20 3c 73 | ll.capture"</span>.{.....<s |
| 59260 | 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 75 | pan.class="tok-kw">var</span>.su |
| 59280 | 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 2f | m1:.<span.class="tok-type">u32</ |
| 592a0 | 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" |
| 592c0 | 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 73 | >0</span>;.....numbers_left.=.<s |
| 592e0 | 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>; |
| 59300 | 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< |
| 59320 | 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 65 28 29 | /span>.(eventuallyNullSequence() |
| 59340 | 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 6c 75 | ).|value|.{.........sum1.+=.valu |
| 59360 | 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 6b 77 | e;.....}.....<span.class="tok-kw |
| 59380 | 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 73 70 61 | ">try</span>.expect(sum1.==.<spa |
| 593a0 | 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 3b 0a | n.class="tok-number">3</span>);. |
| 593c0 | 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">/ |
| 593e0 | 2f 20 6e 75 6c 6c 20 63 61 70 74 75 72 65 20 77 69 74 68 20 61 6e 20 65 6c 73 65 20 62 6c 6f 63 | /.null.capture.with.an.else.bloc |
| 59400 | 6b 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 | k</span>.....<span.class="tok-kw |
| 59420 | 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 73 73 3d 22 | ">var</span>.sum2:.<span.class=" |
| 59440 | 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 20 63 6c 61 | tok-type">u32</span>.=.<span.cla |
| 59460 | 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 6e 75 | ss="tok-number">0</span>;.....nu |
| 59480 | 6d 62 65 72 73 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 | mbers_left.=.<span.class="tok-nu |
| 594a0 | 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 3d | mber">3</span>;.....<span.class= |
| 594c0 | 22 74 6f 6b 2d 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 | "tok-kw">while</span>.(eventuall |
| 594e0 | 79 4e 75 6c 6c 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 | yNullSequence()).|value|.{...... |
| 59500 | 20 20 20 73 75 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 | ...sum2.+=.value;.....}.<span.cl |
| 59520 | 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 0a 20 20 20 20 20 | ass="tok-kw">else</span>.{...... |
| 59540 | 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 |
| 59560 | 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 3d 22 74 | n>.expect(sum2.==.<span.class="t |
| 59580 | 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 0a 20 20 20 | ok-number">3</span>);.....}..... |
| 595a0 | 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 6e 75 | .<span.class="tok-comment">//.nu |
| 595c0 | 6c 6c 20 63 61 70 74 75 72 65 20 77 69 74 68 20 61 20 63 6f 6e 74 69 6e 75 65 20 65 78 70 72 65 | ll.capture.with.a.continue.expre |
| 595e0 | 73 73 69 6f 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 | ssion</span>.....<span.class="to |
| 59600 | 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 61 73 73 3d | k-kw">var</span>.i:.<span.class= |
| 59620 | 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 20 63 6c | "tok-type">u32</span>.=.<span.cl |
| 59640 | 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>;.....< |
| 59660 | 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 |
| 59680 | 75 6d 33 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 | um3:.<span.class="tok-type">u32< |
| 596a0 | 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 |
| 596c0 | 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.=.< |
| 596e0 | 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> |
| 59700 | 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 |
| 59720 | 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 65 28 | </span>.(eventuallyNullSequence( |
| 59740 | 29 29 20 7c 76 61 6c 75 65 7c 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | )).|value|.:.(i.+=.<span.class=" |
| 59760 | 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 20 20 20 20 20 20 | tok-number">1</span>).{......... |
| 59780 | 73 75 6d 33 20 2b 3d 20 76 61 6c 75 65 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 | sum3.+=.value;.....}.....<span.c |
| 597a0 | 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( |
| 597c0 | 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 33 3c | i.==.<span.class="tok-number">3< |
| 597e0 | 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 22 | /span>);.}..<span.class="tok-kw" |
| 59800 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 3a 20 3c 73 70 61 6e 20 | >var</span>.numbers_left:.<span. |
| 59820 | 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 |
| 59840 | 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 2f | pan.class="tok-null">undefined</ |
| 59860 | 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 66 6e 3c 2f | span>;.<span.class="tok-kw">fn</ |
| 59880 | 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 76 65 6e 74 | span>.<span.class="tok-fn">event |
| 598a0 | 75 61 6c 6c 79 4e 75 6c 6c 53 65 71 75 65 6e 63 65 3c 2f 73 70 61 6e 3e 28 29 20 3f 3c 73 70 61 | uallyNullSequence</span>().?<spa |
| 598c0 | 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 7b 0a | n.class="tok-type">u32</span>.{. |
| 598e0 | 20 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< |
| 59900 | 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 2f | /span>.<span.class="tok-kw">if</ |
| 59920 | 73 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 | span>.(numbers_left.==.<span.cla |
| 59940 | 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 3c 73 70 61 6e 20 | ss="tok-number">0</span>).<span. |
| 59960 | 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 73 70 | class="tok-null">null</span>.<sp |
| 59980 | 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 62 6c | an.class="tok-kw">else</span>.bl |
| 599a0 | 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 2d 3d 20 3c 73 70 | k:.{.........numbers_left.-=.<sp |
| 599c0 | 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>;. |
| 599e0 | 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 62 72 65 | ........<span.class="tok-kw">bre |
| 59a00 | 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 3b 0a 20 20 20 | ak</span>.:blk.numbers_left;.... |
| 59a20 | 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 | .};.}</code></pre></figure><figu |
| 59a40 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 | re><figcaption.class="shell-cap" |
| 59a60 | 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 | >Shell</figcaption><pre><samp>$. |
| 59a80 | 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 77 68 69 6c 65 5f 6e 75 6c 6c 5f 63 61 | <kbd>zig.test.test_while_null_ca |
| 59aa0 | 70 74 75 72 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 77 68 69 6c 65 5f 6e | pture.zig</kbd>.1/1.test_while_n |
| 59ac0 | 75 6c 6c 5f 63 61 70 74 75 72 65 2e 74 65 73 74 2e 77 68 69 6c 65 20 6e 75 6c 6c 20 63 61 70 74 | ull_capture.test.while.null.capt |
| 59ae0 | 75 72 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 | ure...OK.All.1.tests.passed..</s |
| 59b00 | 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 | amp></pre></figure>............. |
| 59b20 | 20 20 20 3c 68 33 20 69 64 3d 22 77 68 69 6c 65 2d 77 69 74 68 2d 45 72 72 6f 72 2d 55 6e 69 6f | ...<h3.id="while-with-Error-Unio |
| 59b40 | 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 77 68 69 6c 65 2d 77 69 74 68 2d 45 72 72 | ns"><a.href="#toc-while-with-Err |
| 59b60 | 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 20 55 6e 69 6f | or-Unions">while.with.Error.Unio |
| 59b80 | 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 77 68 69 | ns</a>.<a.class="hdr".href="#whi |
| 59ba0 | 6c 65 2d 77 69 74 68 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 | le-with-Error-Unions">..</a></h3 |
| 59bc0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4a 75 73 74 20 6c 69 6b 65 20 3c 61 20 | >........<p>.......Just.like.<a. |
| 59be0 | 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 2c 20 77 | href="#if">if</a>.expressions,.w |
| 59c00 | 68 69 6c 65 20 6c 6f 6f 70 73 20 63 61 6e 20 74 61 6b 65 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 | hile.loops.can.take.an.error.uni |
| 59c20 | 6f 6e 20 61 73 0a 20 20 20 20 20 20 74 68 65 20 63 6f 6e 64 69 74 69 6f 6e 20 61 6e 64 20 63 61 | on.as.......the.condition.and.ca |
| 59c40 | 70 74 75 72 65 20 74 68 65 20 70 61 79 6c 6f 61 64 20 6f 72 20 74 68 65 20 65 72 72 6f 72 20 63 | pture.the.payload.or.the.error.c |
| 59c60 | 6f 64 65 2e 20 57 68 65 6e 20 74 68 65 0a 20 20 20 20 20 20 63 6f 6e 64 69 74 69 6f 6e 20 72 65 | ode..When.the.......condition.re |
| 59c80 | 73 75 6c 74 73 20 69 6e 20 61 6e 20 65 72 72 6f 72 20 63 6f 64 65 20 74 68 65 20 65 6c 73 65 20 | sults.in.an.error.code.the.else. |
| 59ca0 | 62 72 61 6e 63 68 20 69 73 20 65 76 61 6c 75 61 74 65 64 20 61 6e 64 0a 20 20 20 20 20 20 74 68 | branch.is.evaluated.and.......th |
| 59cc0 | 65 20 6c 6f 6f 70 20 69 73 20 66 69 6e 69 73 68 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | e.loop.is.finished........</p>.. |
| 59ce0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 | .....<p>.......When.the.<code><s |
| 59d00 | 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>.| |
| 59d20 | 78 7c 3c 2f 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 | x|</code>.syntax.is.present.on.a |
| 59d40 | 20 3c 63 6f 64 65 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 | .<code><span.class="tok-kw">whil |
| 59d60 | 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 2c 0a 20 20 20 20 | e</span></code>.expression,..... |
| 59d80 | 20 20 74 68 65 20 77 68 69 6c 65 20 63 6f 6e 64 69 74 69 6f 6e 20 6d 75 73 74 20 68 61 76 65 20 | ..the.while.condition.must.have. |
| 59da0 | 61 6e 20 3c 61 20 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 | an.<a.href="#Error-Union-Type">E |
| 59dc0 | 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | rror.Union.Type</a>........</p>. |
| 59de0 | 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | ......<figure><figcaption.class= |
| 59e00 | 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | "zig-cap"><cite.class="file">tes |
| 59e20 | 74 5f 77 68 69 6c 65 5f 65 72 72 6f 72 5f 63 61 70 74 75 72 65 2e 7a 69 67 3c 2f 63 69 74 65 3e | t_while_error_capture.zig</cite> |
| 59e40 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </figcaption><pre><code><span.cl |
| 59e60 | 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 |
| 59e80 | 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 |
| 59ea0 | 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 |
| 59ec0 | 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 |
| 59ee0 | 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"> |
| 59f00 | 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 |
| 59f20 | 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 63 61 70 74 75 72 | ">"while.error.union.captur |
| 59f40 | 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 |
| 59f60 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 31 3a 20 3c 73 70 61 6e | ="tok-kw">var</span>.sum1:.<span |
| 59f80 | 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 20 3c | .class="tok-type">u32</span>.=.< |
| 59fa0 | 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> |
| 59fc0 | 3b 0a 20 20 20 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ;.....numbers_left.=.<span.class |
| 59fe0 | 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 |
| 5a000 | 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 20 28 65 | n.class="tok-kw">while</span>.(e |
| 5a020 | 76 65 6e 74 75 61 6c 6c 79 45 72 72 6f 72 53 65 71 75 65 6e 63 65 28 29 29 20 7c 76 61 6c 75 65 | ventuallyErrorSequence()).|value |
| 5a040 | 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 31 20 2b 3d 20 76 61 6c 75 65 3b 0a 20 20 20 20 7d | |.{.........sum1.+=.value;.....} |
| 5a060 | 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 |
| 5a080 | 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 |
| 5a0a0 | 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 3d 20 | ok-kw">try</span>.expect(err.==. |
| 5a0c0 | 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 |
| 5a0e0 | 3e 2e 52 65 61 63 68 65 64 5a 65 72 6f 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | >.ReachedZero);.....}.}..<span.c |
| 5a100 | 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 73 | lass="tok-kw">var</span>.numbers |
| 5a120 | 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 33 | _left:.<span.class="tok-type">u3 |
| 5a140 | 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 |
| 5a160 | 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ">undefined</span>;..<span.class |
| 5a180 | 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= |
| 5a1a0 | 22 74 6f 6b 2d 66 6e 22 3e 65 76 65 6e 74 75 61 6c 6c 79 45 72 72 6f 72 53 65 71 75 65 6e 63 65 | "tok-fn">eventuallyErrorSequence |
| 5a1c0 | 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" |
| 5a1e0 | 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 74 6f | >anyerror</span>!<span.class="to |
| 5a200 | 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 61 6e 20 63 | k-type">u32</span>.{.....<span.c |
| 5a220 | 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 |
| 5a240 | 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 6e 75 6d 62 | n.class="tok-kw">if</span>.(numb |
| 5a260 | 65 72 73 5f 6c 65 66 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 | ers_left.==.<span.class="tok-num |
| 5a280 | 62 65 72 22 3e 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 | ber">0</span>).<span.class="tok- |
| 5a2a0 | 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 52 65 61 63 68 65 64 5a 65 72 6f 20 3c 73 70 | kw">error</span>.ReachedZero.<sp |
| 5a2c0 | 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 62 6c | an.class="tok-kw">else</span>.bl |
| 5a2e0 | 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 2d 3d 20 3c 73 70 | k:.{.........numbers_left.-=.<sp |
| 5a300 | 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>;. |
| 5a320 | 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 62 72 65 | ........<span.class="tok-kw">bre |
| 5a340 | 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 3b 0a 20 20 20 | ak</span>.:blk.numbers_left;.... |
| 5a360 | 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 | .};.}</code></pre></figure><figu |
| 5a380 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 | re><figcaption.class="shell-cap" |
| 5a3a0 | 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 | >Shell</figcaption><pre><samp>$. |
| 5a3c0 | 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 77 68 69 6c 65 5f 65 72 72 6f 72 5f 63 | <kbd>zig.test.test_while_error_c |
| 5a3e0 | 61 70 74 75 72 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 77 68 69 6c 65 5f | apture.zig</kbd>.1/1.test_while_ |
| 5a400 | 65 72 72 6f 72 5f 63 61 70 74 75 72 65 2e 74 65 73 74 2e 77 68 69 6c 65 20 65 72 72 6f 72 20 75 | error_capture.test.while.error.u |
| 5a420 | 6e 69 6f 6e 20 63 61 70 74 75 72 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 | nion.capture...OK.All.1.tests.pa |
| 5a440 | 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 | ssed..</samp></pre></figure>.... |
| 5a460 | 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 69 6e 6c 69 6e 65 2d 77 68 69 6c 65 | ............<h3.id="inline-while |
| 5a480 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 6c 69 6e 65 2d 77 68 69 6c 65 22 3e 69 6e | "><a.href="#toc-inline-while">in |
| 5a4a0 | 6c 69 6e 65 20 77 68 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 | line.while</a>.<a.class="hdr".hr |
| 5a4c0 | 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 77 68 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a | ef="#inline-while">..</a></h3>.. |
| 5a4e0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 69 6c 65 20 6c 6f 6f 70 73 20 63 61 6e 20 | ......<p>.......While.loops.can. |
| 5a500 | 62 65 20 69 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 | be.inlined..This.causes.the.loop |
| 5a520 | 20 74 6f 20 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 | .to.be.unrolled,.which.......all |
| 5a540 | 6f 77 73 20 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 | ows.the.code.to.do.some.things.w |
| 5a560 | 68 69 63 68 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 | hich.only.work.at.compile.time,. |
| 5a580 | 20 20 20 20 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 | ......such.as.use.types.as.first |
| 5a5a0 | 20 63 6c 61 73 73 20 76 61 6c 75 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | .class.values........</p>....... |
| 5a5c0 | 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 | <figure><figcaption.class="zig-c |
| 5a5e0 | 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 69 6e 6c 69 | ap"><cite.class="file">test_inli |
| 5a600 | 6e 65 5f 77 68 69 6c 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | ne_while.zig</cite></figcaption> |
| 5a620 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | <pre><code><span.class="tok-kw"> |
| 5a640 | 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 |
| 5a660 | 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>(< |
| 5a680 | 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 |
| 5a6a0 | 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 |
| 5a6c0 | 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>.< |
| 5a6e0 | 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 69 6e | span.class="tok-str">"inlin |
| 5a700 | 65 20 77 68 69 6c 65 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 | e.while.loop"</span>.{..... |
| 5a720 | 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 |
| 5a740 | 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 61 72 3c 2f 73 | pan>.<span.class="tok-kw">var</s |
| 5a760 | 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 |
| 5a780 | 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 6b | ">0</span>;.....<span.class="tok |
| 5a7a0 | 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 63 6c 61 73 73 | -kw">var</span>.sum:.<span.class |
| 5a7c0 | 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 6e | ="tok-type">usize</span>.=.<span |
| 5a7e0 | 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>;... |
| 5a800 | 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 73 | ..<span.class="tok-kw">inline</s |
| 5a820 | 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 3c | pan>.<span.class="tok-kw">while< |
| 5a840 | 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- |
| 5a860 | 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 | number">3</span>).:.(i.+=.<span. |
| 5a880 | 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 0a 20 | class="tok-number">1</span>).{.. |
| 5a8a0 | 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 |
| 5a8c0 | 74 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 | t</span>.T.=.<span.class="tok-kw |
| 5a8e0 | 22 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 | ">switch</span>.(i).{........... |
| 5a900 | 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 30 3c 2f 73 70 | ..<span.class="tok-number">0</sp |
| 5a920 | 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 74 79 70 65 22 | an>.=>.<span.class="tok-type" |
| 5a940 | 3e 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 | >f32</span>,.............<span.c |
| 5a960 | 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 26 67 74 3b | lass="tok-number">1</span>.=> |
| 5a980 | 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 61 6e | .<span.class="tok-type">i8</span |
| 5a9a0 | 3e 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 | >,.............<span.class="tok- |
| 5a9c0 | 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 | number">2</span>.=>.<span.cla |
| 5a9e0 | 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 20 20 20 20 20 | ss="tok-type">bool</span>,...... |
| 5aa00 | 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 65 | .......<span.class="tok-kw">else |
| 5aa20 | 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 6b | </span>.=>.<span.class="tok-k |
| 5aa40 | 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 20 20 20 20 7d | w">unreachable</span>,.........} |
| 5aa60 | 3b 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 | ;.........sum.+=.typeNameLength( |
| 5aa80 | 54 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 | T);.....}.....<span.class="tok-k |
| 5aaa0 | 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 61 | w">try</span>.expect(sum.==.<spa |
| 5aac0 | 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 29 3b 0a | n.class="tok-number">9</span>);. |
| 5aae0 | 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 |
| 5ab00 | 3e 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 | >.<span.class="tok-fn">typeNameL |
| 5ab20 | 65 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 | ength</span>(<span.class="tok-kw |
| 5ab40 | 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 |
| 5ab60 | 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 70 61 6e 20 63 | ="tok-type">type</span>).<span.c |
| 5ab80 | 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 0a 20 | lass="tok-type">usize</span>.{.. |
| 5aba0 | 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</ |
| 5abc0 | 73 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 | span>.<span.class="tok-builtin"> |
| 5abe0 | 40 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 | @typeName</span>(T).len;.}</code |
| 5ac00 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | ></pre></figure><figure><figcapt |
| 5ac20 | 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 | ion.class="shell-cap">Shell</fig |
| 5ac40 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 | caption><pre><samp>$.<kbd>zig.te |
| 5ac60 | 73 74 20 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 77 68 69 6c 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 | st.test_inline_while.zig</kbd>.1 |
| 5ac80 | 2f 31 20 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 77 68 69 6c 65 2e 74 65 73 74 2e 69 6e 6c 69 6e 65 | /1.test_inline_while.test.inline |
| 5aca0 | 20 77 68 69 6c 65 20 6c 6f 6f 70 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 | .while.loop...OK.All.1.tests.pas |
| 5acc0 | 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 | sed..</samp></pre></figure>..... |
| 5ace0 | 20 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 | ...<p>.......It.is.recommended.t |
| 5ad00 | 6f 20 75 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | o.use.<code><span.class="tok-kw" |
| 5ad20 | 3e 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 6f 6e 6c 79 | >inline</span></code>.loops.only |
| 5ad40 | 20 66 6f 72 20 6f 6e 65 20 6f 66 20 74 68 65 73 65 20 72 65 61 73 6f 6e 73 3a 0a 20 20 20 20 20 | .for.one.of.these.reasons:...... |
| 5ad60 | 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 59 6f 75 | .</p>.......<ul>.........<li>You |
| 5ad80 | 20 6e 65 65 64 20 74 68 65 20 6c 6f 6f 70 20 74 6f 20 65 78 65 63 75 74 65 20 61 74 20 3c 61 20 | .need.the.loop.to.execute.at.<a. |
| 5ada0 | 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 20 66 6f | href="#comptime">comptime</a>.fo |
| 5adc0 | 72 20 74 68 65 20 73 65 6d 61 6e 74 69 63 73 20 74 6f 20 77 6f 72 6b 2e 3c 2f 6c 69 3e 0a 20 20 | r.the.semantics.to.work.</li>... |
| 5ade0 | 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 59 6f 75 20 68 61 76 65 20 61 20 62 65 | ......<li>.........You.have.a.be |
| 5ae00 | 6e 63 68 6d 61 72 6b 20 74 6f 20 70 72 6f 76 65 20 74 68 61 74 20 66 6f 72 63 69 62 6c 79 20 75 | nchmark.to.prove.that.forcibly.u |
| 5ae20 | 6e 72 6f 6c 6c 69 6e 67 20 74 68 65 20 6c 6f 6f 70 20 69 6e 20 74 68 69 73 20 77 61 79 20 69 73 | nrolling.the.loop.in.this.way.is |
| 5ae40 | 20 6d 65 61 73 75 72 61 62 6c 79 20 66 61 73 74 65 72 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 | .measurably.faster..........</li |
| 5ae60 | 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 53 65 | >.......</ul>..............<p>Se |
| 5ae80 | 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 66 | e.also:</p><ul>.<li><a.href="#if |
| 5aea0 | 22 3e 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 4f 70 74 69 | ">if</a></li>.<li><a.href="#Opti |
| 5aec0 | 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 69 3e 3c 61 | onals">Optionals</a></li>.<li><a |
| 5aee0 | 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 69 3e 0a | .href="#Errors">Errors</a></li>. |
| 5af00 | 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 70 74 69 6d 65 | <li><a.href="#comptime">comptime |
| 5af20 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 75 6e 72 65 61 63 68 61 | </a></li>.<li><a.href="#unreacha |
| 5af40 | 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 3c 2f 75 6c 3e 0a | ble">unreachable</a></li>.</ul>. |
| 5af60 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 66 6f 72 22 3e 3c 61 20 68 72 | ..............<h2.id="for"><a.hr |
| 5af80 | 65 66 3d 22 23 74 6f 63 2d 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | ef="#toc-for">for</a>.<a.class=" |
| 5afa0 | 68 64 72 22 20 68 72 65 66 3d 22 23 66 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | hdr".href="#for">..</a></h2>.... |
| 5afc0 | 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a | ....<figure><figcaption.class="z |
| 5afe0 | 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f | ig-cap"><cite.class="file">test_ |
| 5b000 | 66 6f 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | for.zig</cite></figcaption><pre> |
| 5b020 | 3c 63 6f 64 65 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 | <code><span.class="tok-kw">const |
| 5b040 | 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 |
| 5b060 | 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. |
| 5b080 | 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"< |
| 5b0a0 | 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 |
| 5b0c0 | 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. |
| 5b0e0 | 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 62 61 73 69 63 73 | class="tok-str">"for.basics |
| 5b100 | 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= |
| 5b120 | 22 74 6f 6b 2d 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 | "tok-kw">const</span>.items.=.[_ |
| 5b140 | 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 |
| 5b160 | 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 34 3c 2f | n>{.<span.class="tok-number">4</ |
| 5b180 | 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"> |
| 5b1a0 | 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 |
| 5b1c0 | 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 |
| 5b1e0 | 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 |
| 5b200 | 2d 6e 75 6d 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 | -number">0</span>.};.....<span.c |
| 5b220 | 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 20 3c 73 | lass="tok-kw">var</span>.sum:.<s |
| 5b240 | 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>. |
| 5b260 | 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 |
| 5b280 | 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 63 6f 6d 6d 65 | an>;......<span.class="tok-comme |
| 5b2a0 | 6e 74 22 3e 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 | nt">//.For.loops.iterate.over.sl |
| 5b2c0 | 69 63 65 73 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 | ices.and.arrays.</span>.....<spa |
| 5b2e0 | 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 69 74 65 | n.class="tok-kw">for</span>.(ite |
| 5b300 | 6d 73 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 61 73 | ms).|value|.{.........<span.clas |
| 5b320 | 73 3d 22 74 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 | s="tok-comment">//.Break.and.con |
| 5b340 | 74 69 6e 75 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 | tinue.are.supported.</span>..... |
| 5b360 | 20 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 |
| 5b380 | 6e 3e 20 28 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 | n>.(value.==.<span.class="tok-nu |
| 5b3a0 | 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 20 20 20 20 3c 73 | mber">0</span>).{.............<s |
| 5b3c0 | 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 73 70 61 | pan.class="tok-kw">continue</spa |
| 5b3e0 | 6e 3e 3b 0a 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 | n>;.........}.........sum.+=.val |
| 5b400 | 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 2d 6b | ue;.....}.....<span.class="tok-k |
| 5b420 | 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 61 | w">try</span>.expect(sum.==.<spa |
| 5b440 | 6e 20 63 6c 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 | n.class="tok-number">16</span>); |
| 5b460 | 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"> |
| 5b480 | 2f 2f 20 54 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 | //.To.iterate.over.a.portion.of. |
| 5b4a0 | 61 20 73 6c 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 | a.slice,.reslice.</span>.....<sp |
| 5b4c0 | 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 69 74 | an.class="tok-kw">for</span>.(it |
| 5b4e0 | 65 6d 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 | ems[<span.class="tok-number">0</ |
| 5b500 | 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 22 3e | span>..<span.class="tok-number"> |
| 5b520 | 31 3c 2f 73 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 | 1</span>]).|value|.{.........sum |
| 5b540 | 20 2b 3d 20 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 | .+=.value;.....}.....<span.class |
| 5b560 | 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 75 6d 20 | ="tok-kw">try</span>.expect(sum. |
| 5b580 | 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 30 3c 2f | ==.<span.class="tok-number">20</ |
| 5b5a0 | 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 |
| 5b5c0 | 6d 6d 65 6e 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 | mment">//.To.access.the.index.of |
| 5b5e0 | 20 69 74 65 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 6f 6e | .iteration,.specify.a.second.con |
| 5b600 | 64 69 74 69 6f 6e 20 61 73 20 77 65 6c 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | dition.as.well</span>.....<span. |
| 5b620 | 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 20 61 20 73 65 63 6f | class="tok-comment">//.as.a.seco |
| 5b640 | 6e 64 20 63 61 70 74 75 72 65 20 76 61 6c 75 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | nd.capture.value.</span>.....<sp |
| 5b660 | 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 75 6d | an.class="tok-kw">var</span>.sum |
| 5b680 | 32 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 | 2:.<span.class="tok-type">i32</s |
| 5b6a0 | 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"> |
| 5b6c0 | 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 |
| 5b6e0 | 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 74 65 6d 73 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | w">for</span>.(items,.<span.clas |
| 5b700 | 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 29 20 7c 5f 2c 20 69 | s="tok-number">0</span>..).|_,.i |
| 5b720 | 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" |
| 5b740 | 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=" |
| 5b760 | 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 69 29 20 3d | tok-builtin">@TypeOf</span>(i).= |
| 5b780 | 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 73 69 7a 65 3c 2f | =.<span.class="tok-type">usize</ |
| 5b7a0 | 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 73 75 6d 32 20 2b 3d 20 3c 73 70 61 6e 20 63 6c | span>);.........sum2.+=.<span.cl |
| 5b7c0 | 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 3c 73 70 | ass="tok-builtin">@as</span>(<sp |
| 5b7e0 | 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 2c 20 | an.class="tok-type">i32</span>,. |
| 5b800 | 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 43 61 | <span.class="tok-builtin">@intCa |
| 5b820 | 73 74 3c 2f 73 70 61 6e 3e 28 69 29 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 | st</span>(i));.....}.....<span.c |
| 5b840 | 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( |
| 5b860 | 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 6d 62 65 72 22 | sum2.==.<span.class="tok-number" |
| 5b880 | 3e 31 30 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 | >10</span>);......<span.class="t |
| 5b8a0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 6f 20 69 74 65 72 61 74 65 20 6f 76 65 72 20 63 | ok-comment">//.To.iterate.over.c |
| 5b8c0 | 6f 6e 73 65 63 75 74 69 76 65 20 69 6e 74 65 67 65 72 73 2c 20 75 73 65 20 74 68 65 20 72 61 6e | onsecutive.integers,.use.the.ran |
| 5b8e0 | 67 65 20 73 79 6e 74 61 78 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ge.syntax.</span>.....<span.clas |
| 5b900 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 55 6e 62 6f 75 6e 64 65 64 20 72 61 6e | s="tok-comment">//.Unbounded.ran |
| 5b920 | 67 65 20 69 73 20 61 6c 77 61 79 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 3c 2f 73 | ge.is.always.a.compile.error.</s |
| 5b940 | 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 76 61 | pan>.....<span.class="tok-kw">va |
| 5b960 | 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 33 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | r</span>.sum3:.<span.class="tok- |
| 5b980 | 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 |
| 5b9a0 | 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 |
| 5b9c0 | 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 3c 73 70 | n.class="tok-kw">for</span>.(<sp |
| 5b9e0 | 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 2e | an.class="tok-number">0</span>.. |
| 5ba00 | 3c 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 | <span.class="tok-number">5</span |
| 5ba20 | 3e 29 20 7c 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 33 20 2b 3d 20 69 3b 0a 20 20 20 20 | >).|i|.{.........sum3.+=.i;..... |
| 5ba40 | 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</ |
| 5ba60 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 75 6d 33 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | span>.expect(sum3.==.<span.class |
| 5ba80 | 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 |
| 5baa0 | 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 |
| 5bac0 | 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 75 6c 74 69 20 | pan.class="tok-str">"multi. |
| 5bae0 | 6f 62 6a 65 63 74 20 66 6f 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | object.for"</span>.{.....<s |
| 5bb00 | 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>. |
| 5bb20 | 69 74 65 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 65 | items.=.[_]<span.class="tok-type |
| 5bb40 | 22 3e 75 73 69 7a 65 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 | ">usize</span>{.<span.class="tok |
| 5bb60 | 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 22 | -number">1</span>,.<span.class=" |
| 5bb80 | 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 73 | tok-number">2</span>,.<span.clas |
| 5bba0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c | s="tok-number">3</span>.};.....< |
| 5bbc0 | 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> |
| 5bbe0 | 20 69 74 65 6d 73 32 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 | .items2.=.[_]<span.class="tok-ty |
| 5bc00 | 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pe">usize</span>{.<span.class="t |
| 5bc20 | 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 |
| 5bc40 | 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 |
| 5bc60 | 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 20 7d 3b 0a 20 20 20 | ass="tok-number">6</span>.};.... |
| 5bc80 | 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> |
| 5bca0 | 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 79 70 65 22 3e 75 | .count:.<span.class="tok-type">u |
| 5bcc0 | 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 |
| 5bce0 | 75 6d 62 65 72 22 3e 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 | umber">0</span>;......<span.clas |
| 5bd00 | 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 76 65 72 20 | s="tok-comment">//.Iterate.over. |
| 5bd20 | 6d 75 6c 74 69 70 6c 65 20 6f 62 6a 65 63 74 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | multiple.objects.</span>.....<sp |
| 5bd40 | 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 6c 6c 20 6c 65 | an.class="tok-comment">//.All.le |
| 5bd60 | 6e 67 74 68 73 20 6d 75 73 74 20 62 65 20 65 71 75 61 6c 20 61 74 20 74 68 65 20 73 74 61 72 74 | ngths.must.be.equal.at.the.start |
| 5bd80 | 20 6f 66 20 74 68 65 20 6c 6f 6f 70 2c 20 6f 74 68 65 72 77 69 73 65 20 64 65 74 65 63 74 61 62 | .of.the.loop,.otherwise.detectab |
| 5bda0 | 6c 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 | le</span>.....<span.class="tok-c |
| 5bdc0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6c 6c 65 67 61 6c 20 62 65 68 61 76 69 6f 72 20 6f 63 63 75 | omment">//.illegal.behavior.occu |
| 5bde0 | 72 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 74 6f 6b 2d | rs.</span>.....<span.class="tok- |
| 5be00 | 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 74 65 6d 73 2c 20 69 74 65 6d 73 32 29 20 7c | kw">for</span>.(items,.items2).| |
| 5be20 | 69 2c 20 6a 7c 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 75 6e 74 20 2b 3d 20 69 20 2b 20 6a 3b 0a | i,.j|.{.........count.+=.i.+.j;. |
| 5be40 | 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 3e | ....}......<span.class="tok-kw"> |
| 5be60 | 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 3c 73 70 61 6e | try</span>.expect(count.==.<span |
| 5be80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 31 3c 2f 73 70 61 6e 3e 29 3b 0a | .class="tok-number">21</span>);. |
| 5bea0 | 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 |
| 5bec0 | 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">" |
| 5bee0 | 66 6f 72 20 72 65 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 | for.reference"</span>.{.... |
| 5bf00 | 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> |
| 5bf20 | 20 69 74 65 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 | .items.=.[_]<span.class="tok-typ |
| 5bf40 | 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 6b 2d | e">i32</span>{.<span.class="tok- |
| 5bf60 | 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 |
| 5bf80 | 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 |
| 5bfa0 | 3d 22 74 6f 6b 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 | ="tok-number">2</span>.};......< |
| 5bfc0 | 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 74 65 72 | span.class="tok-comment">//.Iter |
| 5bfe0 | 61 74 65 20 6f 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 | ate.over.the.slice.by.reference. |
| 5c000 | 62 79 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 | by</span>.....<span.class="tok-c |
| 5c020 | 6f 6d 6d 65 6e 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 | omment">//.specifying.that.the.c |
| 5c040 | 61 70 74 75 72 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 | apture.value.is.a.pointer.</span |
| 5c060 | 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 66 6f 72 3c 2f | >.....<span.class="tok-kw">for</ |
| 5c080 | 73 70 61 6e 3e 20 28 26 61 6d 70 3b 69 74 65 6d 73 29 20 7c 2a 76 61 6c 75 65 7c 20 7b 0a 20 20 | span>.(&items).|*value|.{... |
| 5c0a0 | 20 20 20 20 20 20 76 61 6c 75 65 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ......value.*.+=.<span.class="to |
| 5c0c0 | 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 0a 20 20 20 20 3c | k-number">1</span>;.....}......< |
| 5c0e0 | 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 |
| 5c100 | 78 70 65 63 74 28 69 74 65 6d 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | xpect(items[<span.class="tok-num |
| 5c120 | 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 22 74 | ber">0</span>].==.<span.class="t |
| 5c140 | 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 20 | ok-number">4</span>);.....<span. |
| 5c160 | 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 |
| 5c180 | 28 69 74 65 6d 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 | (items[<span.class="tok-number"> |
| 5c1a0 | 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 6e 75 | 1</span>].==.<span.class="tok-nu |
| 5c1c0 | 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 63 6c 61 73 73 | mber">5</span>);.....<span.class |
| 5c1e0 | 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 |
| 5c200 | 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 32 3c 2f 73 70 | s[<span.class="tok-number">2</sp |
| 5c220 | 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" |
| 5c240 | 3e 33 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 | >3</span>);.}..<span.class="tok- |
| 5c260 | 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 |
| 5c280 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 72 20 65 6c 73 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | -str">"for.else"</span |
| 5c2a0 | 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 74 | >.{.....<span.class="tok-comment |
| 5c2c0 | 22 3e 2f 2f 20 46 6f 72 20 61 6c 6c 6f 77 73 20 61 6e 20 65 6c 73 65 20 61 74 74 61 63 68 65 64 | ">//.For.allows.an.else.attached |
| 5c2e0 | 20 74 6f 20 69 74 2c 20 74 68 65 20 73 61 6d 65 20 61 73 20 61 20 77 68 69 6c 65 20 6c 6f 6f 70 | .to.it,.the.same.as.a.while.loop |
| 5c300 | 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 |
| 5c320 | 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 3f 3c 73 70 61 6e | ">const</span>.items.=.[_]?<span |
| 5c340 | 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 20 3c 73 | .class="tok-type">i32</span>{.<s |
| 5c360 | 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>, |
| 5c380 | 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 |
| 5c3a0 | 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 6c 6c 3c | n>,.<span.class="tok-null">null< |
| 5c3c0 | 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" |
| 5c3e0 | 3e 35 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 | >5</span>.};......<span.class="t |
| 5c400 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 6f 72 20 6c 6f 6f 70 73 20 63 61 6e 20 61 6c 73 | ok-comment">//.For.loops.can.als |
| 5c420 | 6f 20 62 65 20 75 73 65 64 20 61 73 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 3c 2f 73 70 61 6e 3e | o.be.used.as.expressions.</span> |
| 5c440 | 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">/ |
| 5c460 | 2f 20 53 69 6d 69 6c 61 72 20 74 6f 20 77 68 69 6c 65 20 6c 6f 6f 70 73 2c 20 77 68 65 6e 20 79 | /.Similar.to.while.loops,.when.y |
| 5c480 | 6f 75 20 62 72 65 61 6b 20 66 72 6f 6d 20 61 20 66 6f 72 20 6c 6f 6f 70 2c 20 74 68 65 20 65 6c | ou.break.from.a.for.loop,.the.el |
| 5c4a0 | 73 65 20 62 72 61 6e 63 68 20 69 73 20 6e 6f 74 20 65 76 61 6c 75 61 74 65 64 2e 3c 2f 73 70 61 | se.branch.is.not.evaluated.</spa |
| 5c4c0 | 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< |
| 5c4e0 | 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 2d 74 79 70 | /span>.sum:.<span.class="tok-typ |
| 5c500 | 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 |
| 5c520 | 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 63 6c 61 | -number">0</span>;.....<span.cla |
| 5c540 | 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. |
| 5c560 | 3d 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 |
| 5c580 | 3e 20 28 69 74 65 6d 73 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | >.(items).|value|.{.........<spa |
| 5c5a0 | 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 76 61 6c 75 | n.class="tok-kw">if</span>.(valu |
| 5c5c0 | 65 20 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 | e.!=.<span.class="tok-null">null |
| 5c5e0 | 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 76 61 | </span>).{.............sum.+=.va |
| 5c600 | 6c 75 65 2e 3f 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 | lue.?;.........}.....}.<span.cla |
| 5c620 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 62 6c 6b 3a 20 7b 0a 20 | ss="tok-kw">else</span>.blk:.{.. |
| 5c640 | 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< |
| 5c660 | 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 61 73 73 | /span>.expect(sum.==.<span.class |
| 5c680 | 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 20 20 20 20 20 20 | ="tok-number">12</span>);....... |
| 5c6a0 | 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 2f 73 70 | ..<span.class="tok-kw">break</sp |
| 5c6c0 | 61 6e 3e 20 3a 62 6c 6b 20 73 75 6d 3b 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | an>.:blk.sum;.....};.....<span.c |
| 5c6e0 | 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( |
| 5c700 | 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 65 | result.==.<span.class="tok-numbe |
| 5c720 | 72 22 3e 31 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 3c 2f 66 | r">12</span>);.}</code></pre></f |
| 5c740 | 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | igure><figure><figcaption.class= |
| 5c760 | 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | "shell-cap">Shell</figcaption><p |
| 5c780 | 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 66 6f | re><samp>$.<kbd>zig.test.test_fo |
| 5c7a0 | 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 34 20 74 65 73 74 5f 66 6f 72 2e 74 65 73 74 2e 66 6f | r.zig</kbd>.1/4.test_for.test.fo |
| 5c7c0 | 72 20 62 61 73 69 63 73 2e 2e 2e 4f 4b 0a 32 2f 34 20 74 65 73 74 5f 66 6f 72 2e 74 65 73 74 2e | r.basics...OK.2/4.test_for.test. |
| 5c7e0 | 6d 75 6c 74 69 20 6f 62 6a 65 63 74 20 66 6f 72 2e 2e 2e 4f 4b 0a 33 2f 34 20 74 65 73 74 5f 66 | multi.object.for...OK.3/4.test_f |
| 5c800 | 6f 72 2e 74 65 73 74 2e 66 6f 72 20 72 65 66 65 72 65 6e 63 65 2e 2e 2e 4f 4b 0a 34 2f 34 20 74 | or.test.for.reference...OK.4/4.t |
| 5c820 | 65 73 74 5f 66 6f 72 2e 74 65 73 74 2e 66 6f 72 20 65 6c 73 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 34 | est_for.test.for.else...OK.All.4 |
| 5c840 | 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | .tests.passed..</samp></pre></fi |
| 5c860 | 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 4c 61 62 65 6c 65 64 2d 66 6f 72 | gure>........<h3.id="Labeled-for |
| 5c880 | 22 3e 3c 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 | "><a.href="#toc-Labeled-for">Lab |
| 5c8a0 | 65 6c 65 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 | eled.for</a>.<a.class="hdr".href |
| 5c8c0 | 3d 22 23 4c 61 62 65 6c 65 64 2d 66 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 | ="#Labeled-for">..</a></h3>..... |
| 5c8e0 | 20 20 20 3c 70 3e 57 68 65 6e 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ...<p>When.a.<code><span.class=" |
| 5c900 | 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 6c 6f 6f 70 20 69 | tok-kw">for</span></code>.loop.i |
| 5c920 | 73 20 6c 61 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 | s.labeled,.it.can.be.referenced. |
| 5c940 | 66 72 6f 6d 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | from.a.<code><span.class="tok-kw |
| 5c960 | 22 3e 62 72 65 61 6b 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 | ">break</span></code>........... |
| 5c980 | 20 20 20 20 6f 72 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ....or.<code><span.class="tok-kw |
| 5c9a0 | 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 69 | ">continue</span></code>.from.wi |
| 5c9c0 | 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 66 | thin.a.nested.loop:</p>.......<f |
| 5c9e0 | 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 | igure><figcaption.class="zig-cap |
| 5ca00 | 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 66 6f 72 5f 6e 65 | "><cite.class="file">test_for_ne |
| 5ca20 | 73 74 65 64 5f 62 72 65 61 6b 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | sted_break.zig</cite></figcaptio |
| 5ca40 | 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n><pre><code><span.class="tok-kw |
| 5ca60 | 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 |
| 5ca80 | 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 |
| 5caa0 | 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 |
| 5cac0 | 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 |
| 5cae0 | 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 |
| 5cb00 | 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 |
| 5cb20 | 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 |
| 5cb40 | 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 3b 3c 2f 73 70 | tr">"nested.break"</sp |
| 5cb60 | 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 |
| 5cb80 | 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 73 3d 22 74 6f | ar</span>.count:.<span.class="to |
| 5cba0 | 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 61 | k-type">usize</span>.=.<span.cla |
| 5cbc0 | 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 6f 75 | ss="tok-number">0</span>;.....ou |
| 5cbe0 | 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 6f 72 3c 2f 73 | ter:.<span.class="tok-kw">for</s |
| 5cc00 | 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 6d 62 65 72 22 3e 31 | pan>.(<span.class="tok-number">1 |
| 5cc20 | 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 |
| 5cc40 | 22 3e 36 3c 2f 73 70 61 6e 3e 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | ">6</span>).|_|.{.........<span. |
| 5cc60 | 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 3c 73 70 61 6e | class="tok-kw">for</span>.(<span |
| 5cc80 | 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 73 | .class="tok-number">1</span>..<s |
| 5cca0 | 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 3e 29 | pan.class="tok-number">6</span>) |
| 5ccc0 | 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 2b 3d 20 3c 73 70 61 | .|_|.{.............count.+=.<spa |
| 5cce0 | 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 20 | n.class="tok-number">1</span>;.. |
| 5cd00 | 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"> |
| 5cd20 | 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 20 7d 0a 20 | break</span>.:outer;.........}.. |
| 5cd40 | 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 72 | ...}.....<span.class="tok-kw">tr |
| 5cd60 | 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 3c 73 70 61 6e 20 63 | y</span>.expect(count.==.<span.c |
| 5cd80 | 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 7d 0a 0a | lass="tok-number">1</span>);.}.. |
| 5cda0 | 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> |
| 5cdc0 | 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 6e 65 73 | .<span.class="tok-str">"nes |
| 5cde0 | 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 20 7b 0a 20 20 20 20 | ted.continue"</span>.{..... |
| 5ce00 | 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>. |
| 5ce20 | 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 79 70 65 22 3e 75 73 | count:.<span.class="tok-type">us |
| 5ce40 | 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 |
| 5ce60 | 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 3a 20 3c 73 70 61 6e | mber">0</span>;.....outer:.<span |
| 5ce80 | 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 3c 73 70 61 | .class="tok-kw">for</span>.(<spa |
| 5cea0 | 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>..< |
| 5cec0 | 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> |
| 5cee0 | 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 |
| 5cf00 | 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -kw">for</span>.(<span.class="to |
| 5cf20 | 6b 2d 6e 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 | k-number">1</span>..<span.class= |
| 5cf40 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 29 20 7c 5f 7c 20 7b 0a 20 20 20 | "tok-number">6</span>).|_|.{.... |
| 5cf60 | 20 20 20 20 20 20 20 20 20 63 6f 75 6e 74 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .........count.+=.<span.class="t |
| 5cf80 | 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 20 20 20 | ok-number">1</span>;............ |
| 5cfa0 | 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 74 69 6e 75 65 3c 2f | .<span.class="tok-kw">continue</ |
| 5cfc0 | 73 70 61 6e 3e 20 3a 6f 75 74 65 72 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 | span>.:outer;.........}.....}... |
| 5cfe0 | 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 |
| 5d000 | 6e 3e 20 65 78 70 65 63 74 28 63 6f 75 6e 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>.expect(count.==.<span.class=" |
| 5d020 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | tok-number">8</span>);.}</code>< |
| 5d040 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | /pre></figure><figure><figcaptio |
| 5d060 | 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 | n.class="shell-cap">Shell</figca |
| 5d080 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 | ption><pre><samp>$.<kbd>zig.test |
| 5d0a0 | 20 74 65 73 74 5f 66 6f 72 5f 6e 65 73 74 65 64 5f 62 72 65 61 6b 2e 7a 69 67 3c 2f 6b 62 64 3e | .test_for_nested_break.zig</kbd> |
| 5d0c0 | 0a 31 2f 32 20 74 65 73 74 5f 66 6f 72 5f 6e 65 73 74 65 64 5f 62 72 65 61 6b 2e 74 65 73 74 2e | .1/2.test_for_nested_break.test. |
| 5d0e0 | 6e 65 73 74 65 64 20 62 72 65 61 6b 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 66 6f 72 5f 6e | nested.break...OK.2/2.test_for_n |
| 5d100 | 65 73 74 65 64 5f 62 72 65 61 6b 2e 74 65 73 74 2e 6e 65 73 74 65 64 20 63 6f 6e 74 69 6e 75 65 | ested_break.test.nested.continue |
| 5d120 | 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 | ...OK.All.2.tests.passed..</samp |
| 5d140 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c | ></pre></figure>...............< |
| 5d160 | 68 33 20 69 64 3d 22 69 6e 6c 69 6e 65 2d 66 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | h3.id="inline-for"><a.href="#toc |
| 5d180 | 2d 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 20 3c 61 20 63 | -inline-for">inline.for</a>.<a.c |
| 5d1a0 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 66 6f 72 22 3e c2 a7 | lass="hdr".href="#inline-for">.. |
| 5d1c0 | 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 46 6f 72 20 6c | </a></h3>........<p>.......For.l |
| 5d1e0 | 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 73 | oops.can.be.inlined..This.causes |
| 5d200 | 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 0a | .the.loop.to.be.unrolled,.which. |
| 5d220 | 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 65 | ......allows.the.code.to.do.some |
| 5d240 | 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 69 | .things.which.only.work.at.compi |
| 5d260 | 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 73 | le.time,.......such.as.use.types |
| 5d280 | 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 54 68 | .as.first.class.values........Th |
| 5d2a0 | 65 20 63 61 70 74 75 72 65 20 76 61 6c 75 65 20 61 6e 64 20 69 74 65 72 61 74 6f 72 20 76 61 6c | e.capture.value.and.iterator.val |
| 5d2c0 | 75 65 20 6f 66 20 69 6e 6c 69 6e 65 64 20 66 6f 72 20 6c 6f 6f 70 73 20 61 72 65 0a 20 20 20 20 | ue.of.inlined.for.loops.are..... |
| 5d2e0 | 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | ..compile-time.known........</p> |
| 5d300 | 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | .......<figure><figcaption.class |
| 5d320 | 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 | ="zig-cap"><cite.class="file">te |
| 5d340 | 73 74 5f 69 6e 6c 69 6e 65 5f 66 6f 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | st_inline_for.zig</cite></figcap |
| 5d360 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tion><pre><code><span.class="tok |
| 5d380 | 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 |
| 5d3a0 | 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 |
| 5d3c0 | 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">" |
| 5d3e0 | 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 |
| 5d400 | 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 |
| 5d420 | 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">" |
| 5d440 | 69 6e 6c 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 | inline.for.loop"</span>.{.. |
| 5d460 | 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 |
| 5d480 | 70 61 6e 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 | pan>.nums.=.[_]<span.class="tok- |
| 5d4a0 | 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 |
| 5d4c0 | 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 73 73 | ok-number">2</span>,.<span.class |
| 5d4e0 | 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 6c | ="tok-number">4</span>,.<span.cl |
| 5d500 | 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 20 7d 3b 0a 20 20 20 | ass="tok-number">6</span>.};.... |
| 5d520 | 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> |
| 5d540 | 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 69 | .sum:.<span.class="tok-type">usi |
| 5d560 | 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 6d | ze</span>.=.<span.class="tok-num |
| 5d580 | 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 22 | ber">0</span>;.....<span.class=" |
| 5d5a0 | 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 73 | tok-kw">inline</span>.<span.clas |
| 5d5c0 | 73 3d 22 74 6f 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 | s="tok-kw">for</span>.(nums).|i| |
| 5d5e0 | 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"> |
| 5d600 | 63 6f 6e 73 74 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 | const</span>.T.=.<span.class="to |
| 5d620 | 6b 2d 6b 77 22 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 | k-kw">switch</span>.(i).{....... |
| 5d640 | 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 65 72 22 3e 32 | ......<span.class="tok-number">2 |
| 5d660 | 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 74 | </span>.=>.<span.class="tok-t |
| 5d680 | 79 70 65 22 3e 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 | ype">f32</span>,.............<sp |
| 5d6a0 | 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 20 3d | an.class="tok-number">4</span>.= |
| 5d6c0 | 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 69 38 3c 2f | >.<span.class="tok-type">i8</ |
| 5d6e0 | 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 61 73 73 3d 22 | span>,.............<span.class=" |
| 5d700 | 74 6f 6b 2d 6e 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 | tok-number">6</span>.=>.<span |
| 5d720 | 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 2c 0a 20 | .class="tok-type">bool</span>,.. |
| 5d740 | 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"> |
| 5d760 | 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 74 | else</span>.=>.<span.class="t |
| 5d780 | 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 20 | ok-kw">unreachable</span>,...... |
| 5d7a0 | 20 20 20 7d 3b 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 | ...};.........sum.+=.typeNameLen |
| 5d7c0 | 67 74 68 28 54 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 | gth(T);.....}.....<span.class="t |
| 5d7e0 | 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 75 6d 20 3d 3d 20 | ok-kw">try</span>.expect(sum.==. |
| 5d800 | 3c 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 |
| 5d820 | 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</ |
| 5d840 | 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 79 70 65 4e | span>.<span.class="tok-fn">typeN |
| 5d860 | 61 6d 65 4c 65 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 | ameLength</span>(<span.class="to |
| 5d880 | 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 63 | k-kw">comptime</span>.T:.<span.c |
| 5d8a0 | 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 70 | lass="tok-type">type</span>).<sp |
| 5d8c0 | 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> |
| 5d8e0 | 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 |
| 5d900 | 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 62 75 69 6c 74 | rn</span>.<span.class="tok-built |
| 5d920 | 69 6e 22 3e 40 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 | in">@typeName</span>(T).len;.}</ |
| 5d940 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 | code></pre></figure><figure><fig |
| 5d960 | 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c | caption.class="shell-cap">Shell< |
| 5d980 | 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 | /figcaption><pre><samp>$.<kbd>zi |
| 5d9a0 | 67 20 74 65 73 74 20 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 66 6f 72 2e 7a 69 67 3c 2f 6b 62 64 3e | g.test.test_inline_for.zig</kbd> |
| 5d9c0 | 0a 31 2f 31 20 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 66 6f 72 2e 74 65 73 74 2e 69 6e 6c 69 6e 65 | .1/1.test_inline_for.test.inline |
| 5d9e0 | 20 66 6f 72 20 6c 6f 6f 70 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 | .for.loop...OK.All.1.tests.passe |
| 5da00 | 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 | d..</samp></pre></figure>....... |
| 5da20 | 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 20 | .<p>.......It.is.recommended.to. |
| 5da40 | 75 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 | use.<code><span.class="tok-kw">i |
| 5da60 | 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 6f 6e 6c 79 20 66 | nline</span></code>.loops.only.f |
| 5da80 | 6f 72 20 6f 6e 65 20 6f 66 20 74 68 65 73 65 20 72 65 61 73 6f 6e 73 3a 0a 20 20 20 20 20 20 3c | or.one.of.these.reasons:.......< |
| 5daa0 | 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 59 6f 75 20 6e | /p>.......<ul>.........<li>You.n |
| 5dac0 | 65 65 64 20 74 68 65 20 6c 6f 6f 70 20 74 6f 20 65 78 65 63 75 74 65 20 61 74 20 3c 61 20 68 72 | eed.the.loop.to.execute.at.<a.hr |
| 5dae0 | 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 20 66 6f 72 20 | ef="#comptime">comptime</a>.for. |
| 5db00 | 74 68 65 20 73 65 6d 61 6e 74 69 63 73 20 74 6f 20 77 6f 72 6b 2e 3c 2f 6c 69 3e 0a 20 20 20 20 | the.semantics.to.work.</li>..... |
| 5db20 | 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 59 6f 75 20 68 61 76 65 20 61 20 62 65 6e 63 | ....<li>.........You.have.a.benc |
| 5db40 | 68 6d 61 72 6b 20 74 6f 20 70 72 6f 76 65 20 74 68 61 74 20 66 6f 72 63 69 62 6c 79 20 75 6e 72 | hmark.to.prove.that.forcibly.unr |
| 5db60 | 6f 6c 6c 69 6e 67 20 74 68 65 20 6c 6f 6f 70 20 69 6e 20 74 68 69 73 20 77 61 79 20 69 73 20 6d | olling.the.loop.in.this.way.is.m |
| 5db80 | 65 61 73 75 72 61 62 6c 79 20 66 61 73 74 65 72 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a | easurably.faster..........</li>. |
| 5dba0 | 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 53 65 65 20 | ......</ul>..............<p>See. |
| 5dbc0 | 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 77 68 69 6c | also:</p><ul>.<li><a.href="#whil |
| 5dbe0 | 65 22 3e 77 68 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 | e">while</a></li>.<li><a.href="# |
| 5dc00 | 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 3e | comptime">comptime</a></li>.<li> |
| 5dc20 | 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 |
| 5dc40 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e 53 6c 69 63 65 73 3c 2f | >.<li><a.href="#Slices">Slices</ |
| 5dc60 | 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. |
| 5dc80 | 69 64 3d 22 69 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 66 22 3e 69 66 3c 2f 61 3e | id="if"><a.href="#toc-if">if</a> |
| 5dca0 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 69 66 22 3e c2 a7 3c 2f 61 | .<a.class="hdr".href="#if">..</a |
| 5dcc0 | 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | ></h2>........<figure><figcaptio |
| 5dce0 | 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 | n.class="zig-cap"><cite.class="f |
| 5dd00 | 69 6c 65 22 3e 74 65 73 74 5f 69 66 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 | ile">test_if.zig</cite></figcapt |
| 5dd20 | 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ion><pre><code><span.class="tok- |
| 5dd40 | 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 68 61 76 65 20 | comment">//.If.expressions.have. |
| 5dd60 | 74 68 72 65 65 20 75 73 65 73 2c 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 74 68 65 | three.uses,.corresponding.to.the |
| 5dd80 | 20 74 68 72 65 65 20 74 79 70 65 73 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | .three.types:</span>.<span.class |
| 5dda0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2a 20 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 0a | ="tok-comment">//.*.bool</span>. |
| 5ddc0 | 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 2a 20 3f | <span.class="tok-comment">//.*.? |
| 5dde0 | 54 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 | T</span>.<span.class="tok-commen |
| 5de00 | 74 22 3e 2f 2f 20 2a 20 61 6e 79 65 72 72 6f 72 21 54 3c 2f 73 70 61 6e 3e 0a 0a 3c 73 70 61 6e | t">//.*.anyerror!T</span>..<span |
| 5de20 | 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 |
| 5de40 | 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 3e | ect.=.<span.class="tok-builtin"> |
| 5de60 | 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- |
| 5de80 | 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 73 | str">"std"</span>).tes |
| 5dea0 | 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 |
| 5dec0 | 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- |
| 5dee0 | 73 74 72 22 3e 26 71 75 6f 74 3b 69 66 20 65 78 70 72 65 73 73 69 6f 6e 26 71 75 6f 74 3b 3c 2f | str">"if.expression"</ |
| 5df00 | 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 6f 6d | span>.{.....<span.class="tok-com |
| 5df20 | 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 65 78 70 72 65 73 73 69 6f 6e 73 20 61 72 65 20 75 73 65 64 | ment">//.If.expressions.are.used |
| 5df40 | 20 69 6e 73 74 65 61 64 20 6f 66 20 61 20 74 65 72 6e 61 72 79 20 65 78 70 72 65 73 73 69 6f 6e | .instead.of.a.ternary.expression |
| 5df60 | 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 |
| 5df80 | 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 22 74 | ">const</span>.a:.<span.class="t |
| 5dfa0 | 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 |
| 5dfc0 | 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 |
| 5dfe0 | 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 |
| 5e000 | 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 |
| 5e020 | 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 34 | an>.=.<span.class="tok-number">4 |
| 5e040 | 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 |
| 5e060 | 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 6e 20 63 6c | ">const</span>.result.=.<span.cl |
| 5e080 | 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 29 20 | ass="tok-kw">if</span>.(a.!=.b). |
| 5e0a0 | 3c 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 37 3c 2f 73 70 61 | <span.class="tok-number">47</spa |
| 5e0c0 | 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 6c 73 65 3c 2f 73 70 | n>.<span.class="tok-kw">else</sp |
| 5e0e0 | 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 33 30 38 | an>.<span.class="tok-number">308 |
| 5e100 | 39 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 | 9</span>;.....<span.class="tok-k |
| 5e120 | 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.==.< |
| 5e140 | 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 37 3c 2f 73 70 61 6e | span.class="tok-number">47</span |
| 5e160 | 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 |
| 5e180 | 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 |
| 5e1a0 | 75 6f 74 3b 69 66 20 62 6f 6f 6c 65 61 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | uot;if.boolean"</span>.{... |
| 5e1c0 | 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 49 | ..<span.class="tok-comment">//.I |
| 5e1e0 | 66 20 65 78 70 72 65 73 73 69 6f 6e 73 20 74 65 73 74 20 62 6f 6f 6c 65 61 6e 20 63 6f 6e 64 69 | f.expressions.test.boolean.condi |
| 5e200 | 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 74 | tions.</span>.....<span.class="t |
| 5e220 | 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 63 6c 61 | ok-kw">const</span>.a:.<span.cla |
| 5e240 | 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 |
| 5e260 | 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 0a 20 20 | .class="tok-number">5</span>;... |
| 5e280 | 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 |
| 5e2a0 | 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 75 33 | an>.b:.<span.class="tok-type">u3 |
| 5e2c0 | 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 |
| 5e2e0 | 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 3d 22 74 | er">4</span>;.....<span.class="t |
| 5e300 | 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 21 3d 20 62 29 20 7b 0a 20 20 20 20 | ok-kw">if</span>.(a.!=.b).{..... |
| 5e320 | 20 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 |
| 5e340 | 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 6c | an>.expect(<span.class="tok-null |
| 5e360 | 22 3e 74 72 75 65 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 | ">true</span>);.....}.<span.clas |
| 5e380 | 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 63 6c 61 | s="tok-kw">else</span>.<span.cla |
| 5e3a0 | 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 3d 3d 20 3c 73 70 61 | ss="tok-kw">if</span>.(a.==.<spa |
| 5e3c0 | 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 29 20 7b | n.class="tok-number">9</span>).{ |
| 5e3e0 | 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 75 6e | .........<span.class="tok-kw">un |
| 5e400 | 72 65 61 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 | reachable</span>;.....}.<span.cl |
| 5e420 | 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 0a 20 20 20 20 20 | ass="tok-kw">else</span>.{...... |
| 5e440 | 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 61 | ...<span.class="tok-kw">unreacha |
| 5e460 | 62 6c 65 3c 2f 73 70 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 | ble</span>;.....}.}..<span.class |
| 5e480 | 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 |
| 5e4a0 | 73 3d 22 74 6f 6b 2d 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 | s="tok-str">"if.error.union |
| 5e4c0 | 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= |
| 5e4e0 | 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. |
| 5e500 | 74 65 73 74 20 66 6f 72 20 65 72 72 6f 72 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | test.for.errors.</span>.....<spa |
| 5e520 | 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 20 74 68 | n.class="tok-comment">//.Note.th |
| 5e540 | 65 20 7c 65 72 72 7c 20 63 61 70 74 75 72 65 20 6f 6e 20 74 68 65 20 65 6c 73 65 2e 3c 2f 73 70 | e.|err|.capture.on.the.else.</sp |
| 5e560 | 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 77 22 3e 63 6f | an>......<span.class="tok-kw">co |
| 5e580 | 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 22 74 6f 6b 2d 74 | nst</span>.a:.<span.class="tok-t |
| 5e5a0 | 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 6c 61 73 73 | ype">anyerror</span>!<span.class |
| 5e5c0 | 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 20 63 | ="tok-type">u32</span>.=.<span.c |
| 5e5e0 | 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>;..... |
| 5e600 | 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>.( |
| 5e620 | 61 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 61 73 73 | a).|value|.{.........<span.class |
| 5e640 | 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 |
| 5e660 | 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 22 3e 30 3c | e.==.<span.class="tok-number">0< |
| 5e680 | 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 2d | /span>);.....}.<span.class="tok- |
| 5e6a0 | 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 20 | kw">else</span>.|err|.{......... |
| 5e6c0 | 5f 20 3d 20 65 72 72 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 | _.=.err;.........<span.class="to |
| 5e6e0 | 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 0a | k-kw">unreachable</span>;.....}. |
| 5e700 | 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< |
| 5e720 | 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" |
| 5e740 | 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 74 6f | >anyerror</span>!<span.class="to |
| 5e760 | 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 |
| 5e780 | 3d 22 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 | ="tok-kw">error</span>.BadValue; |
| 5e7a0 | 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 70 | .....<span.class="tok-kw">if</sp |
| 5e7c0 | 61 6e 3e 20 28 62 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 76 61 | an>.(b).|value|.{........._.=.va |
| 5e7e0 | 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 6b 2d 6b 77 | lue;.........<span.class="tok-kw |
| 5e800 | 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 3c 73 70 61 | ">unreachable</span>;.....}.<spa |
| 5e820 | 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 65 72 | n.class="tok-kw">else</span>.|er |
| 5e840 | 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 6b 77 | r|.{.........<span.class="tok-kw |
| 5e860 | 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 3d 20 3c 73 70 61 6e | ">try</span>.expect(err.==.<span |
| 5e880 | 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 42 61 64 | .class="tok-kw">error</span>.Bad |
| 5e8a0 | 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 63 6c 61 73 73 3d 22 | Value);.....}......<span.class=" |
| 5e8c0 | 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 61 6e 64 20 7c 65 72 | tok-comment">//.The.else.and.|er |
| 5e8e0 | 72 7c 20 63 61 70 74 75 72 65 20 69 73 20 73 74 72 69 63 74 6c 79 20 72 65 71 75 69 72 65 64 2e | r|.capture.is.strictly.required. |
| 5e900 | 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 22 | </span>.....<span.class="tok-kw" |
| 5e920 | 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 20 20 20 | >if</span>.(a).|value|.{........ |
| 5e940 | 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> |
| 5e960 | 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 22 74 6f | .expect(value.==.<span.class="to |
| 5e980 | 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 70 61 6e | k-number">0</span>);.....}.<span |
| 5e9a0 | 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 5f 7c 20 | .class="tok-kw">else</span>.|_|. |
| 5e9c0 | 7b 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 6d 6d 65 6e 74 | {}......<span.class="tok-comment |
| 5e9e0 | 22 3e 2f 2f 20 54 6f 20 63 68 65 63 6b 20 6f 6e 6c 79 20 74 68 65 20 65 72 72 6f 72 20 76 61 6c | ">//.To.check.only.the.error.val |
| 5ea00 | 75 65 2c 20 75 73 65 20 61 6e 20 65 6d 70 74 79 20 62 6c 6f 63 6b 20 65 78 70 72 65 73 73 69 6f | ue,.use.an.empty.block.expressio |
| 5ea20 | 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 74 6f 6b 2d 6b | n.</span>.....<span.class="tok-k |
| 5ea40 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 29 20 7c 5f 7c 20 7b 7d 20 3c 73 70 61 6e 20 63 6c | w">if</span>.(b).|_|.{}.<span.cl |
| 5ea60 | 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 65 72 72 7c 20 7b | ass="tok-kw">else</span>.|err|.{ |
| 5ea80 | 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 |
| 5eaa0 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 65 72 72 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | y</span>.expect(err.==.<span.cla |
| 5eac0 | 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 42 61 64 56 61 6c 75 | ss="tok-kw">error</span>.BadValu |
| 5eae0 | 65 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 2d | e);.....}......<span.class="tok- |
| 5eb00 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 63 63 65 73 73 20 74 68 65 20 76 61 6c 75 65 20 62 79 20 | comment">//.Access.the.value.by. |
| 5eb20 | 72 65 66 65 72 65 6e 63 65 20 75 73 69 6e 67 20 61 20 70 6f 69 6e 74 65 72 20 63 61 70 74 75 72 | reference.using.a.pointer.captur |
| 5eb40 | 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 6b | e.</span>.....<span.class="tok-k |
| 5eb60 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | w">var</span>.c:.<span.class="to |
| 5eb80 | 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 6c | k-type">anyerror</span>!<span.cl |
| 5eba0 | 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 61 | ass="tok-type">u32</span>.=.<spa |
| 5ebc0 | 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 20 | n.class="tok-number">3</span>;.. |
| 5ebe0 | 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 |
| 5ec00 | 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 76 61 6c 75 65 2e 2a | >.(c).|*value|.{.........value.* |
| 5ec20 | 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 39 3c 2f 73 | .=.<span.class="tok-number">9</s |
| 5ec40 | 70 61 6e 3e 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 | pan>;.....}.<span.class="tok-kw" |
| 5ec60 | 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | >else</span>.|_|.{.........<span |
| 5ec80 | 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 61 | .class="tok-kw">unreachable</spa |
| 5eca0 | 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 3d 22 74 6f 6b 2d | n>;.....}......<span.class="tok- |
| 5ecc0 | 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 | kw">if</span>.(c).|value|.{..... |
| 5ece0 | 20 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 |
| 5ed00 | 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= |
| 5ed20 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 | "tok-number">9</span>);.....}.<s |
| 5ed40 | 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>.| |
| 5ed60 | 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 2d 6b 77 | _|.{.........<span.class="tok-kw |
| 5ed80 | 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 7d 3c 2f 63 | ">unreachable</span>;.....}.}</c |
| 5eda0 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | ode></pre></figure><figure><figc |
| 5edc0 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f | aption.class="shell-cap">Shell</ |
| 5ede0 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 | figcaption><pre><samp>$.<kbd>zig |
| 5ee00 | 20 74 65 73 74 20 74 65 73 74 5f 69 66 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 33 20 74 65 73 74 | .test.test_if.zig</kbd>.1/3.test |
| 5ee20 | 5f 69 66 2e 74 65 73 74 2e 69 66 20 65 78 70 72 65 73 73 69 6f 6e 2e 2e 2e 4f 4b 0a 32 2f 33 20 | _if.test.if.expression...OK.2/3. |
| 5ee40 | 74 65 73 74 5f 69 66 2e 74 65 73 74 2e 69 66 20 62 6f 6f 6c 65 61 6e 2e 2e 2e 4f 4b 0a 33 2f 33 | test_if.test.if.boolean...OK.3/3 |
| 5ee60 | 20 74 65 73 74 5f 69 66 2e 74 65 73 74 2e 69 66 20 65 72 72 6f 72 20 75 6e 69 6f 6e 2e 2e 2e 4f | .test_if.test.if.error.union...O |
| 5ee80 | 4b 0a 41 6c 6c 20 33 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 | K.All.3.tests.passed..</samp></p |
| 5eea0 | 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 69 66 2d 77 | re></figure>........<h3.id="if-w |
| 5eec0 | 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 66 2d | ith-Optionals"><a.href="#toc-if- |
| 5eee0 | 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 69 66 20 77 69 74 68 20 4f 70 74 69 6f 6e 61 6c | with-Optionals">if.with.Optional |
| 5ef00 | 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 69 66 2d 77 | s</a>.<a.class="hdr".href="#if-w |
| 5ef20 | 69 74 68 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 0a 20 20 20 | ith-Optionals">..</a></h3>...... |
| 5ef40 | 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 | ...<figure><figcaption.class="zi |
| 5ef60 | 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 69 | g-cap"><cite.class="file">test_i |
| 5ef80 | 66 5f 6f 70 74 69 6f 6e 61 6c 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | f_optionals.zig</cite></figcapti |
| 5efa0 | 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | on><pre><code><span.class="tok-k |
| 5efc0 | 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 20 63 | w">const</span>.expect.=.<span.c |
| 5efe0 | 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 |
| 5f000 | 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 |
| 5f020 | 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 3b 0a | d"</span>).testing.expect;. |
| 5f040 | 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 |
| 5f060 | 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 66 | >.<span.class="tok-str">"if |
| 5f080 | 20 6f 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 | .optional"</span>.{.....<sp |
| 5f0a0 | 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 65 78 70 | an.class="tok-comment">//.If.exp |
| 5f0c0 | 72 65 73 73 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 | ressions.test.for.null.</span>.. |
| 5f0e0 | 20 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</ |
| 5f100 | 73 70 61 6e 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 | span>.a:.?<span.class="tok-type" |
| 5f120 | 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 |
| 5f140 | 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 |
| 5f160 | 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 7c 20 | ="tok-kw">if</span>.(a).|value|. |
| 5f180 | 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 74 | {.........<span.class="tok-kw">t |
| 5f1a0 | 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. |
| 5f1c0 | 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 20 | class="tok-number">0</span>);... |
| 5f1e0 | 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 2f 73 | ..}.<span.class="tok-kw">else</s |
| 5f200 | 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- |
| 5f220 | 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>;.....}... |
| 5f240 | 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 |
| 5f260 | 70 61 6e 3e 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 | pan>.b:.?<span.class="tok-type"> |
| 5f280 | 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 |
| 5f2a0 | 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 20 63 6c 61 73 73 | ll">null</span>;.....<span.class |
| 5f2c0 | 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 7b 0a 20 20 | ="tok-kw">if</span>.(b).|_|.{... |
| 5f2e0 | 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 |
| 5f300 | 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 |
| 5f320 | 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>.{......... |
| 5f340 | 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>. |
| 5f360 | 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 |
| 5f380 | 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 |
| 5f3a0 | 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. |
| 5f3c0 | 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 |
| 5f3e0 | 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 |
| 5f400 | 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 |
| 5f420 | 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 |
| 5f440 | 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>) |
| 5f460 | 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 |
| 5f480 | 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 |
| 5f4a0 | 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 |
| 5f4c0 | 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 |
| 5f4e0 | 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 |
| 5f500 | 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>).{.... |
| 5f520 | 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 |
| 5f540 | 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 |
| 5f560 | 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 |
| 5f580 | 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. |
| 5f5a0 | 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 |
| 5f5c0 | 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 |
| 5f5e0 | 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:.?< |
| 5f600 | 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> |
| 5f620 | 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 |
| 5f640 | 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 |
| 5f660 | 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|.{......... |
| 5f680 | 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 |
| 5f6a0 | 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 |
| 5f6c0 | 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 |
| 5f6e0 | 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 |
| 5f700 | 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 |
| 5f720 | 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>); |
| 5f740 | 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 |
| 5f760 | 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 |
| 5f780 | 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>;.....} |
| 5f7a0 | 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 |
| 5f7c0 | 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">" |
| 5f7e0 | 3b 69 66 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 77 69 74 68 20 6f 70 74 69 6f 6e 61 6c 26 71 75 | ;if.error.union.with.optional&qu |
| 5f800 | 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 |
| 5f820 | 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 74 65 73 | k-comment">//.If.expressions.tes |
| 5f840 | 74 20 66 6f 72 20 65 72 72 6f 72 73 20 62 65 66 6f 72 65 20 75 6e 77 72 61 70 70 69 6e 67 20 6f | t.for.errors.before.unwrapping.o |
| 5f860 | 70 74 69 6f 6e 61 6c 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 | ptionals.</span>.....<span.class |
| 5f880 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 7c 6f 70 74 69 6f 6e 61 6c 5f | ="tok-comment">//.The.|optional_ |
| 5f8a0 | 76 61 6c 75 65 7c 20 63 61 70 74 75 72 65 27 73 20 74 79 70 65 20 69 73 20 3f 75 33 32 2e 3c 2f | value|.capture's.type.is.?u32.</ |
| 5f8c0 | 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 77 22 3e | span>......<span.class="tok-kw"> |
| 5f8e0 | 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 22 74 6f 6b | const</span>.a:.<span.class="tok |
| 5f900 | 2d 74 79 70 65 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 | -type">anyerror</span>!?<span.cl |
| 5f920 | 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 61 | ass="tok-type">u32</span>.=.<spa |
| 5f940 | 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>;.. |
| 5f960 | 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 |
| 5f980 | 3e 20 28 61 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 20 20 20 | >.(a).|optional_value|.{........ |
| 5f9a0 | 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> |
| 5f9c0 | 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 73 70 61 | .expect(optional_value.?.==.<spa |
| 5f9e0 | 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>);. |
| 5fa00 | 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< |
| 5fa20 | 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 65 72 72 3b 0a | /span>.|err|.{........._.=.err;. |
| 5fa40 | 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 |
| 5fa60 | 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 |
| 5fa80 | 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 3a | n.class="tok-kw">const</span>.b: |
| 5faa0 | 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 72 72 6f 72 | .<span.class="tok-type">anyerror |
| 5fac0 | 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 79 70 65 22 3e | </span>!?<span.class="tok-type"> |
| 5fae0 | 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 |
| 5fb00 | 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 20 63 6c 61 73 73 | ll">null</span>;.....<span.class |
| 5fb20 | 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 6f 70 74 69 6f 6e 61 | ="tok-kw">if</span>.(b).|optiona |
| 5fb40 | 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 22 | l_value|.{.........<span.class=" |
| 5fb60 | 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 6f 70 74 69 6f 6e | tok-kw">try</span>.expect(option |
| 5fb80 | 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 6f 6b 2d 6e 75 6c | al_value.==.<span.class="tok-nul |
| 5fba0 | 6c 22 3e 6e 75 6c 6c 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 | l">null</span>);.....}.<span.cla |
| 5fbc0 | 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 5f 7c 20 7b 0a 20 20 | ss="tok-kw">else</span>.|_|.{... |
| 5fbe0 | 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 |
| 5fc00 | 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 6e 20 | chable</span>;.....}......<span. |
| 5fc20 | 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 3a 20 3c | class="tok-kw">const</span>.c:.< |
| 5fc40 | 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 72 3c 2f | span.class="tok-type">anyerror</ |
| 5fc60 | 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 79 70 65 22 3e 75 33 | span>!?<span.class="tok-type">u3 |
| 5fc80 | 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 6b 77 22 3e | 2</span>.=.<span.class="tok-kw"> |
| 5fca0 | 65 72 72 6f 72 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 | error</span>.BadValue;.....<span |
| 5fcc0 | 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 6f | .class="tok-kw">if</span>.(c).|o |
| 5fce0 | 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 5f 20 3d 20 6f 70 74 | ptional_value|.{........._.=.opt |
| 5fd00 | 69 6f 6e 61 6c 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 | ional_value;.........<span.class |
| 5fd20 | 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 0a 20 20 | ="tok-kw">unreachable</span>;... |
| 5fd40 | 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 2f 73 | ..}.<span.class="tok-kw">else</s |
| 5fd60 | 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 61 73 73 | pan>.|err|.{.........<span.class |
| 5fd80 | 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 72 72 20 | ="tok-kw">try</span>.expect(err. |
| 5fda0 | 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 3c 2f 73 | ==.<span.class="tok-kw">error</s |
| 5fdc0 | 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 70 61 6e | pan>.BadValue);.....}......<span |
| 5fde0 | 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 74 | .class="tok-comment">//.Access.t |
| 5fe00 | 68 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 | he.value.by.reference.by.using.a |
| 5fe20 | 20 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 | .pointer.capture.each.time.</spa |
| 5fe40 | 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< |
| 5fe60 | 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" |
| 5fe80 | 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 74 | >anyerror</span>!?<span.class="t |
| 5fea0 | 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 |
| 5fec0 | 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 |
| 5fee0 | 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 64 29 20 | an.class="tok-kw">if</span>.(d). |
| 5ff00 | 7c 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 | |*optional_value|.{.........<spa |
| 5ff20 | 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 6f 70 74 69 | n.class="tok-kw">if</span>.(opti |
| 5ff40 | 6f 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 | onal_value.*).|*value|.{........ |
| 5ff60 | 20 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 | .....value.*.=.<span.class="tok- |
| 5ff80 | 6e 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 | number">9</span>;.........}..... |
| 5ffa0 | 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 |
| 5ffc0 | 6e 3e 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 | n>.|_|.{.........<span.class="to |
| 5ffe0 | 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 0a | k-kw">unreachable</span>;.....}. |
| 60000 | 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 70 | .....<span.class="tok-kw">if</sp |
| 60020 | 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 20 | an>.(d).|optional_value|.{...... |
| 60040 | 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 |
| 60060 | 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 73 | n>.expect(optional_value.?.==.<s |
| 60080 | 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 29 | pan.class="tok-number">9</span>) |
| 600a0 | 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 |
| 600c0 | 65 3c 2f 73 70 61 6e 3e 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | e</span>.|_|.{.........<span.cla |
| 600e0 | 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 0a | ss="tok-kw">unreachable</span>;. |
| 60100 | 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 | ....}.}</code></pre></figure><fi |
| 60120 | 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 | gure><figcaption.class="shell-ca |
| 60140 | 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e | p">Shell</figcaption><pre><samp> |
| 60160 | 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 69 66 5f 6f 70 74 69 6f 6e 61 6c | $.<kbd>zig.test.test_if_optional |
| 60180 | 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 69 66 5f 6f 70 74 69 6f 6e 61 6c | s.zig</kbd>.1/2.test_if_optional |
| 601a0 | 73 2e 74 65 73 74 2e 69 66 20 6f 70 74 69 6f 6e 61 6c 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 | s.test.if.optional...OK.2/2.test |
| 601c0 | 5f 69 66 5f 6f 70 74 69 6f 6e 61 6c 73 2e 74 65 73 74 2e 69 66 20 65 72 72 6f 72 20 75 6e 69 6f | _if_optionals.test.if.error.unio |
| 601e0 | 6e 20 77 69 74 68 20 6f 70 74 69 6f 6e 61 6c 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 | n.with.optional...OK.All.2.tests |
| 60200 | 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a | .passed..</samp></pre></figure>. |
| 60220 | 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 3c 75 | ..............<p>See.also:</p><u |
| 60240 | 6c 3e 0a 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 | l>.<li><a.href="#Optionals">Opti |
| 60260 | 6f 6e 61 6c 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 45 72 72 | onals</a></li>.<li><a.href="#Err |
| 60280 | 6f 72 73 22 3e 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 | ors">Errors</a></li>.</ul>...... |
| 602a0 | 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 64 65 66 65 72 22 3e 3c 61 20 68 72 65 66 3d | .........<h2.id="defer"><a.href= |
| 602c0 | 22 23 74 6f 63 2d 64 65 66 65 72 22 3e 64 65 66 65 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | "#toc-defer">defer</a>.<a.class= |
| 602e0 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 64 65 66 65 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | "hdr".href="#defer">..</a></h2>. |
| 60300 | 0a 20 20 20 20 20 20 3c 70 3e 45 78 65 63 75 74 65 73 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e | .......<p>Executes.an.expression |
| 60320 | 20 75 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 20 61 74 20 73 63 6f 70 65 20 65 78 69 74 2e 3c | .unconditionally.at.scope.exit.< |
| 60340 | 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | /p>.......<figure><figcaption.cl |
| 60360 | 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ass="zig-cap"><cite.class="file" |
| 60380 | 3e 74 65 73 74 5f 64 65 66 65 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | >test_defer.zig</cite></figcapti |
| 603a0 | 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | on><pre><code><span.class="tok-k |
| 603c0 | 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 |
| 603e0 | 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>(< |
| 60400 | 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 |
| 60420 | 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 |
| 60440 | 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 |
| 60460 | 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 6b 77 | ting.expect;.<span.class="tok-kw |
| 60480 | 22 3e 63 6f 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 | ">const</span>.print.=.std.debug |
| 604a0 | 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 3e 66 6e | .print;..<span.class="tok-kw">fn |
| 604c0 | 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 65 66 | </span>.<span.class="tok-fn">def |
| 604e0 | 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 73 3d | erExample</span>().!<span.class= |
| 60500 | 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 3c 73 | "tok-type">usize</span>.{.....<s |
| 60520 | 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: |
| 60540 | 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 |
| 60560 | 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"> |
| 60580 | 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 20 63 | 1</span>;......{.........<span.c |
| 605a0 | 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 20 3c | lass="tok-kw">defer</span>.a.=.< |
| 605c0 | 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> |
| 605e0 | 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 2d 6e | ;.........a.=.<span.class="tok-n |
| 60600 | 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 61 6e | umber">1</span>;.....}.....<span |
| 60620 | 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 |
| 60640 | 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 22 3e | t(a.==.<span.class="tok-number"> |
| 60660 | 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 73 3d | 2</span>);......a.=.<span.class= |
| 60680 | 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 61 6e | "tok-number">5</span>;.....<span |
| 606a0 | 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 61 3b | .class="tok-kw">return</span>.a; |
| 606c0 | 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 |
| 606e0 | 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">" |
| 60700 | 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 20 20 | ;defer.basics"</span>.{.... |
| 60720 | 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> |
| 60740 | 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 74 72 | .expect((<span.class="tok-kw">tr |
| 60760 | 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 70 61 | y</span>.deferExample()).==.<spa |
| 60780 | 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>);. |
| 607a0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c | }</code></pre></figure><figure>< |
| 607c0 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 | figcaption.class="shell-cap">She |
| 607e0 | 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 | ll</figcaption><pre><samp>$.<kbd |
| 60800 | 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 64 65 66 65 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 | >zig.test.test_defer.zig</kbd>.1 |
| 60820 | 2f 31 20 74 65 73 74 5f 64 65 66 65 72 2e 74 65 73 74 2e 64 65 66 65 72 20 62 61 73 69 63 73 2e | /1.test_defer.test.defer.basics. |
| 60840 | 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e | ..OK.All.1.tests.passed..</samp> |
| 60860 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 44 65 66 65 72 20 | </pre></figure>........<p>Defer. |
| 60880 | 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 20 69 6e 20 72 65 76 | expressions.are.evaluated.in.rev |
| 608a0 | 65 72 73 65 20 6f 72 64 65 72 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 | erse.order.</p>.......<figure><f |
| 608c0 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 | igcaption.class="zig-cap"><cite. |
| 608e0 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 64 65 66 65 72 5f 75 6e 77 69 6e 64 2e 7a 69 67 3c 2f 63 | class="file">defer_unwind.zig</c |
| 60900 | 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 | ite></figcaption><pre><code><spa |
| 60920 | 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 |
| 60940 | 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 |
| 60960 | 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 |
| 60980 | 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 |
| 609a0 | 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 |
| 609c0 | 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 |
| 609e0 | 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 72 69 | .class="tok-kw">const</span>.pri |
| 60a00 | 6e 74 20 3d 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | nt.=.std.debug.print;..<span.cla |
| 60a20 | 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 |
| 60a40 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 65 66 65 72 20 75 6e 77 69 6e 64 | ass="tok-str">"defer.unwind |
| 60a60 | 69 6e 67 26 71 75 6f 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 | ing"</span>.{.....print(<sp |
| 60a80 | 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 26 71 75 6f 74 | an.class="tok-str">"\n" |
| 60aa0 | 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 6e 20 63 6c 61 73 73 | ;</span>,..{});......<span.class |
| 60ac0 | 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 20 20 20 20 | ="tok-kw">defer</span>.{........ |
| 60ae0 | 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 |
| 60b00 | 6f 74 3b 31 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 7d 0a | ot;1."</span>,..{});.....}. |
| 60b20 | 20 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 | ....<span.class="tok-kw">defer</ |
| 60b40 | 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 20 63 6c 61 73 | span>.{.........print(<span.clas |
| 60b60 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 32 20 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | s="tok-str">"2."</span |
| 60b80 | 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 6c 61 73 73 3d 22 | >,..{});.....}.....<span.class=" |
| 60ba0 | 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=" |
| 60bc0 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 | tok-null">false</span>).{....... |
| 60be0 | 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 64 | ..<span.class="tok-comment">//.d |
| 60c00 | 65 66 65 72 73 20 61 72 65 20 6e 6f 74 20 72 75 6e 20 69 66 20 74 68 65 79 20 61 72 65 20 6e 65 | efers.are.not.run.if.they.are.ne |
| 60c20 | 76 65 72 20 65 78 65 63 75 74 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 | ver.executed.</span>.........<sp |
| 60c40 | 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 7b | an.class="tok-kw">defer</span>.{ |
| 60c60 | 0a 20 20 20 20 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 | .............print(<span.class=" |
| 60c80 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 33 20 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 | tok-str">"3."</span>,. |
| 60ca0 | 2e 7b 7d 29 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 3c 2f | .{});.........}.....}.}</code></ |
| 60cc0 | 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e | pre></figure><figure><figcaption |
| 60ce0 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 | .class="shell-cap">Shell</figcap |
| 60d00 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 | tion><pre><samp>$.<kbd>zig.test. |
| 60d20 | 64 65 66 65 72 5f 75 6e 77 69 6e 64 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 64 65 66 65 72 | defer_unwind.zig</kbd>.1/1.defer |
| 60d40 | 5f 75 6e 77 69 6e 64 2e 74 65 73 74 2e 64 65 66 65 72 20 75 6e 77 69 6e 64 69 6e 67 2e 2e 2e 0a | _unwind.test.defer.unwinding.... |
| 60d60 | 32 20 31 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d | 2.1.OK.All.1.tests.passed..</sam |
| 60d80 | 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 6e 73 69 | p></pre></figure>........<p>Insi |
| 60da0 | 64 65 20 61 20 64 65 66 65 72 20 65 78 70 72 65 73 73 69 6f 6e 20 74 68 65 20 72 65 74 75 72 6e | de.a.defer.expression.the.return |
| 60dc0 | 20 73 74 61 74 65 6d 65 6e 74 20 69 73 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 2e 3c 2f 70 3e 0a 20 | .statement.is.not.allowed.</p>.. |
| 60de0 | 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 | .....<figure><figcaption.class=" |
| 60e00 | 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 | zig-cap"><cite.class="file">test |
| 60e20 | 5f 69 6e 76 61 6c 69 64 5f 64 65 66 65 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | _invalid_defer.zig</cite></figca |
| 60e40 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ption><pre><code><span.class="to |
| 60e60 | 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 |
| 60e80 | 2d 66 6e 22 3e 64 65 66 65 72 49 6e 76 61 6c 69 64 45 78 61 6d 70 6c 65 3c 2f 73 70 61 6e 3e 28 | -fn">deferInvalidExample</span>( |
| 60ea0 | 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</ |
| 60ec0 | 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" |
| 60ee0 | 3e 64 65 66 65 72 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 | >defer</span>.{.........<span.cl |
| 60f00 | 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 |
| 60f20 | 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 44 65 66 | .class="tok-kw">error</span>.Def |
| 60f40 | 65 72 45 72 72 6f 72 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 | erError;.....}......<span.class= |
| 60f60 | 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 |
| 60f80 | 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 44 65 66 65 72 45 72 | ss="tok-kw">error</span>.DeferEr |
| 60fa0 | 72 6f 72 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 | ror;.}</code></pre></figure><fig |
| 60fc0 | 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 | ure><figcaption.class="shell-cap |
| 60fe0 | 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 | ">Shell</figcaption><pre><samp>$ |
| 61000 | 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 69 6e 76 61 6c 69 64 5f 64 65 66 65 | .<kbd>zig.test.test_invalid_defe |
| 61020 | 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 | r.zig</kbd>.<span.class="sgr-1m" |
| 61040 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f | >/home/andy/dev/zig/doc/langref/ |
| 61060 | 74 65 73 74 5f 69 6e 76 61 6c 69 64 5f 64 65 66 65 72 2e 7a 69 67 3a 33 3a 39 3a 20 3c 2f 73 70 | test_invalid_defer.zig:3:9:.</sp |
| 61080 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 | an><span.class="sgr-31m">error:. |
| 610a0 | 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 63 61 6e 6e | </span><span.class="sgr-1m">cann |
| 610c0 | 6f 74 20 72 65 74 75 72 6e 20 66 72 6f 6d 20 64 65 66 65 72 20 65 78 70 72 65 73 73 69 6f 6e 0a | ot.return.from.defer.expression. |
| 610e0 | 3c 2f 73 70 61 6e 3e 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 6f 72 2e 44 65 66 65 | </span>........return.error.Defe |
| 61100 | 72 45 72 72 6f 72 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | rError;.........<span.class="sgr |
| 61120 | 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f | -32m">^~~~~~~~~~~~~~~~~~~~~~~.</ |
| 61140 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f | span><span.class="sgr-1m">/home/ |
| 61160 | 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 69 6e | andy/dev/zig/doc/langref/test_in |
| 61180 | 76 61 6c 69 64 5f 64 65 66 65 72 2e 7a 69 67 3a 32 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | valid_defer.zig:2:5:.</span><spa |
| 611a0 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c | n.class="sgr-36m">note:.</span>< |
| 611c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 65 66 65 72 20 65 78 70 72 65 73 | span.class="sgr-1m">defer.expres |
| 611e0 | 73 69 6f 6e 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 64 65 66 65 72 20 7b 0a 20 20 20 | sion.here.</span>....defer.{.... |
| 61200 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 0a 3c 2f 73 | .<span.class="sgr-32m">^~~~~.</s |
| 61220 | 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 | pan>.</samp></pre></figure>..... |
| 61240 | 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 |
| 61260 | 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 69 3e 0a 3c 2f | ref="#Errors">Errors</a></li>.</ |
| 61280 | 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 75 6e 72 65 61 63 | ul>...............<h2.id="unreac |
| 612a0 | 68 61 62 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 75 6e 72 65 61 63 68 61 62 6c 65 | hable"><a.href="#toc-unreachable |
| 612c0 | 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | ">unreachable</a>.<a.class="hdr" |
| 612e0 | 20 68 72 65 66 3d 22 23 75 6e 72 65 61 63 68 61 62 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e | .href="#unreachable">..</a></h2> |
| 61300 | 0a 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 22 23 44 | ........<p>.......In.<a.href="#D |
| 61320 | 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 66 3d 22 23 52 65 | ebug">Debug</a>.and.<a.href="#Re |
| 61340 | 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 6d 6f 64 65 0a | leaseSafe">ReleaseSafe</a>.mode. |
| 61360 | 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ......<code><span.class="tok-kw" |
| 61380 | 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 20 65 6d 69 74 73 | >unreachable</span></code>.emits |
| 613a0 | 20 61 20 63 61 6c 6c 20 74 6f 20 3c 63 6f 64 65 3e 70 61 6e 69 63 3c 2f 63 6f 64 65 3e 20 77 69 | .a.call.to.<code>panic</code>.wi |
| 613c0 | 74 68 20 74 68 65 20 6d 65 73 73 61 67 65 20 3c 63 6f 64 65 3e 72 65 61 63 68 65 64 20 75 6e 72 | th.the.message.<code>reached.unr |
| 613e0 | 65 61 63 68 61 62 6c 65 20 63 6f 64 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | eachable.code</code>........</p> |
| 61400 | 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 22 23 52 65 | .......<p>.......In.<a.href="#Re |
| 61420 | 6c 65 61 73 65 46 61 73 74 22 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 61 3e 20 61 6e 64 20 3c | leaseFast">ReleaseFast</a>.and.< |
| 61440 | 61 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 | a.href="#ReleaseSmall">ReleaseSm |
| 61460 | 61 6c 6c 3c 2f 61 3e 20 6d 6f 64 65 2c 20 74 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 75 73 65 73 | all</a>.mode,.the.optimizer.uses |
| 61480 | 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 3e 3c 73 70 61 6e | .the.assumption.that.<code><span |
| 614a0 | 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 61 | .class="tok-kw">unreachable</spa |
| 614c0 | 6e 3e 3c 2f 63 6f 64 65 3e 20 63 6f 64 65 0a 20 20 20 20 20 20 77 69 6c 6c 20 6e 65 76 65 72 20 | n></code>.code.......will.never. |
| 614e0 | 62 65 20 68 69 74 20 74 6f 20 70 65 72 66 6f 72 6d 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 2e | be.hit.to.perform.optimizations. |
| 61500 | 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 42 61 73 69 63 73 | .......</p>.......<h3.id="Basics |
| 61520 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 42 61 73 69 63 73 22 3e 42 61 73 69 63 73 3c 2f | "><a.href="#toc-Basics">Basics</ |
| 61540 | 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 61 73 69 63 73 22 | a>.<a.class="hdr".href="#Basics" |
| 61560 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 | >..</a></h3>........<figure><fig |
| 61580 | 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c | caption.class="zig-cap"><cite.cl |
| 615a0 | 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3c | ass="file">test_unreachable.zig< |
| 615c0 | 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 | /cite></figcaption><pre><code><s |
| 615e0 | 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 75 6e 72 65 61 | pan.class="tok-comment">//.unrea |
| 61600 | 63 68 61 62 6c 65 20 69 73 20 75 73 65 64 20 74 6f 20 61 73 73 65 72 74 20 74 68 61 74 20 63 6f | chable.is.used.to.assert.that.co |
| 61620 | 6e 74 72 6f 6c 20 66 6c 6f 77 20 77 69 6c 6c 20 6e 65 76 65 72 20 72 65 61 63 68 20 61 3c 2f 73 | ntrol.flow.will.never.reach.a</s |
| 61640 | 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">/ |
| 61660 | 2f 20 70 61 72 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 | /.particular.location:</span>.<s |
| 61680 | 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>.< |
| 616a0 | 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 61 73 69 63 | span.class="tok-str">"basic |
| 616c0 | 20 6d 61 74 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 | .math"</span>.{.....<span.c |
| 616e0 | 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.=.< |
| 61700 | 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> |
| 61720 | 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 74 | ;.....<span.class="tok-kw">const |
| 61740 | 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 74 6f 6b 2d 6e 75 6d | </span>.y.=.<span.class="tok-num |
| 61760 | 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 3d 22 | ber">2</span>;.....<span.class=" |
| 61780 | 74 6f 6b 2d 6b 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 | tok-kw">if</span>.(x.+.y.!=.<spa |
| 617a0 | 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 20 7b | n.class="tok-number">3</span>).{ |
| 617c0 | 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 75 6e | .........<span.class="tok-kw">un |
| 617e0 | 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 3c 2f 63 6f 64 65 3e | reachable</span>;.....}.}</code> |
| 61800 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | </pre></figure><figure><figcapti |
| 61820 | 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 | on.class="shell-cap">Shell</figc |
| 61840 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 | aption><pre><samp>$.<kbd>zig.tes |
| 61860 | 74 20 74 65 73 74 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 | t.test_unreachable.zig</kbd>.1/1 |
| 61880 | 20 74 65 73 74 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 74 65 73 74 2e 62 61 73 69 63 20 6d 61 74 | .test_unreachable.test.basic.mat |
| 618a0 | 68 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d | h...OK.All.1.tests.passed..</sam |
| 618c0 | 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 6e 20 66 | p></pre></figure>........<p>In.f |
| 618e0 | 61 63 74 2c 20 74 68 69 73 20 69 73 20 68 6f 77 20 3c 63 6f 64 65 3e 73 74 64 2e 64 65 62 75 67 | act,.this.is.how.<code>std.debug |
| 61900 | 2e 61 73 73 65 72 74 3c 2f 63 6f 64 65 3e 20 69 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 3a 3c 2f | .assert</code>.is.implemented:</ |
| 61920 | 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | p>.......<figure><figcaption.cla |
| 61940 | 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | ss="zig-cap"><cite.class="file"> |
| 61960 | 74 65 73 74 5f 61 73 73 65 72 74 69 6f 6e 5f 66 61 69 6c 75 72 65 2e 7a 69 67 3c 2f 63 69 74 65 | test_assertion_failure.zig</cite |
| 61980 | 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></figcaption><pre><code><span.c |
| 619a0 | 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 69 73 20 68 6f | lass="tok-comment">//.This.is.ho |
| 619c0 | 77 20 73 74 64 2e 64 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 | w.std.debug.assert.is.implemente |
| 619e0 | 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 6b 77 22 3e 66 6e | d</span>.<span.class="tok-kw">fn |
| 61a00 | 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 73 73 | </span>.<span.class="tok-fn">ass |
| 61a20 | 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 6f 6b 2d | ert</span>(ok:.<span.class="tok- |
| 61a40 | 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 73 3d 22 | type">bool</span>).<span.class=" |
| 61a60 | 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 |
| 61a80 | 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 6f 6b 29 | n.class="tok-kw">if</span>.(!ok) |
| 61aa0 | 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 |
| 61ac0 | 65 3c 2f 73 70 61 6e 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 | e</span>;.<span.class="tok-comme |
| 61ae0 | 6e 74 22 3e 2f 2f 20 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 | nt">//.assertion.failure</span>. |
| 61b00 | 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">//. |
| 61b20 | 54 68 69 73 20 74 65 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 | This.test.will.fail.because.we.h |
| 61b40 | 69 74 20 75 6e 72 65 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 | it.unreachable.</span>.<span.cla |
| 61b60 | 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 |
| 61b80 | 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 77 69 6c 6c 20 66 61 | ass="tok-str">"this.will.fa |
| 61ba0 | 69 6c 26 71 75 6f 74 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 | il"</span>.{.....assert(<sp |
| 61bc0 | 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> |
| 61be0 | 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 | );.}</code></pre></figure><figur |
| 61c00 | 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e | e><figcaption.class="shell-cap"> |
| 61c20 | 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c | Shell</figcaption><pre><samp>$.< |
| 61c40 | 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 61 73 73 65 72 74 69 6f 6e 5f 66 61 69 6c | kbd>zig.test.test_assertion_fail |
| 61c60 | 75 72 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 61 73 73 65 72 74 69 6f 6e | ure.zig</kbd>.1/1.test_assertion |
| 61c80 | 5f 66 61 69 6c 75 72 65 2e 74 65 73 74 2e 74 68 69 73 20 77 69 6c 6c 20 66 61 69 6c 2e 2e 2e 74 | _failure.test.this.will.fail...t |
| 61ca0 | 68 72 65 61 64 20 32 30 39 35 39 37 20 70 61 6e 69 63 3a 20 72 65 61 63 68 65 64 20 75 6e 72 65 | hread.209597.panic:.reached.unre |
| 61cc0 | 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 73 67 72 2d 31 6d | achable.code.<span.class="sgr-1m |
| 61ce0 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 | ">/home/andy/dev/zig/doc/langref |
| 61d00 | 2f 74 65 73 74 5f 61 73 73 65 72 74 69 6f 6e 5f 66 61 69 6c 75 72 65 2e 7a 69 67 3a 33 3a 31 34 | /test_assertion_failure.zig:3:14 |
| 61d20 | 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 | </span>:.<span.class="sgr-2m">0x |
| 61d40 | 31 30 34 38 39 32 64 20 69 6e 20 61 73 73 65 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a | 104892d.in.assert.(test)</span>. |
| 61d60 | 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 73 | ....if.(!ok).unreachable;.//.ass |
| 61d80 | 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 61 | ertion.failure..............<spa |
| 61da0 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | n.class="sgr-32m">^</span>.<span |
| 61dc0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a | .class="sgr-1m">/home/andy/dev/z |
| 61de0 | 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 61 73 73 65 72 74 69 6f 6e 5f 66 61 | ig/doc/langref/test_assertion_fa |
| 61e00 | 69 6c 75 72 65 2e 7a 69 67 3a 38 3a 31 31 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | ilure.zig:8:11</span>:.<span.cla |
| 61e20 | 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 38 38 66 61 20 69 6e 20 74 65 73 74 2e 74 68 | ss="sgr-2m">0x10488fa.in.test.th |
| 61e40 | 69 73 20 77 69 6c 6c 20 66 61 69 6c 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 | is.will.fail.(test)</span>.....a |
| 61e60 | 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 73 70 61 6e 20 63 6c | ssert(false);...........<span.cl |
| 61e80 | 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | ass="sgr-32m">^</span>.<span.cla |
| 61ea0 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c | ss="sgr-1m">/home/andy/dev/zig/l |
| 61ec0 | 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 32 31 34 3a | ib/compiler/test_runner.zig:214: |
| 61ee0 | 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e | 25</span>:.<span.class="sgr-2m"> |
| 61f00 | 30 78 31 30 65 66 30 63 35 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 20 28 74 65 73 74 29 | 0x10ef0c5.in.mainTerminal.(test) |
| 61f20 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 65 73 74 5f 66 6e 2e 66 75 6e 63 | </span>.........if.(test_fn.func |
| 61f40 | 28 29 29 20 7c 5f 7c 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 | ()).|_|.{....................... |
| 61f60 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e | ..<span.class="sgr-32m">^</span> |
| 61f80 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 | .<span.class="sgr-1m">/home/andy |
| 61fa0 | 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 | /dev/zig/lib/compiler/test_runne |
| 61fc0 | 72 2e 7a 69 67 3a 36 32 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | r.zig:62:28</span>:.<span.class= |
| 61fe0 | 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 37 34 61 64 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 | "sgr-2m">0x10e74ad.in.main.(test |
| 62000 | 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 61 69 6e 54 65 72 6d | )</span>.........return.mainTerm |
| 62020 | 69 6e 61 6c 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 | inal();......................... |
| 62040 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e | ...<span.class="sgr-32m">^</span |
| 62060 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | >.<span.class="sgr-1m">/home/and |
| 62080 | 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 35 31 3a | y/dev/zig/lib/std/start.zig:651: |
| 620a0 | 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e | 22</span>:.<span.class="sgr-2m"> |
| 620c0 | 30 78 31 30 65 36 39 32 32 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 | 0x10e6922.in.posixCallMainAndExi |
| 620e0 | 74 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 | t.(test)</span>.............root |
| 62100 | 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 |
| 62120 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | pan.class="sgr-32m">^</span>.<sp |
| 62140 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 | an.class="sgr-1m">/home/andy/dev |
| 62160 | 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f 73 70 | /zig/lib/std/start.zig:271:5</sp |
| 62180 | 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 36 | an>:.<span.class="sgr-2m">0x10e6 |
| 621a0 | 34 66 64 20 69 6e 20 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 | 4fd.in._start.(test)</span>..... |
| 621c0 | 61 73 6d 20 76 6f 6c 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 | asm.volatile.(switch.(native_arc |
| 621e0 | 68 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e | h).{.....<span.class="sgr-32m">^ |
| 62200 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f | </span>.<span.class="sgr-1m">??? |
| 62220 | 3a 3f 3a 3f 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d | :?:?</span>:.<span.class="sgr-2m |
| 62240 | 22 3e 30 78 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 65 72 72 6f 72 3a | ">0x0.in.???.(???)</span>.error: |
| 62260 | 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 73 | .the.following.test.command.cras |
| 62280 | 68 65 64 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 | hed:./home/andy/dev/zig/.zig-cac |
| 622a0 | 68 65 2f 6f 2f 30 35 39 34 66 37 33 38 31 30 36 33 36 62 31 34 38 63 35 65 34 32 39 33 65 66 64 | he/o/0594f73810636b148c5e4293efd |
| 622c0 | 31 66 61 66 36 2f 74 65 73 74 20 2d 2d 73 65 65 64 3d 30 78 32 61 33 37 37 36 36 63 0a 3c 2f 73 | 1faf6/test.--seed=0x2a37766c.</s |
| 622e0 | 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 | amp></pre></figure>............. |
| 62300 | 20 20 3c 68 33 20 69 64 3d 22 41 74 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 22 3e 3c 61 20 68 72 | ..<h3.id="At-Compile-Time"><a.hr |
| 62320 | 65 66 3d 22 23 74 6f 63 2d 41 74 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 22 3e 41 74 20 43 6f 6d | ef="#toc-At-Compile-Time">At.Com |
| 62340 | 70 69 6c 65 2d 54 69 6d 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | pile-Time</a>.<a.class="hdr".hre |
| 62360 | 66 3d 22 23 41 74 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e | f="#At-Compile-Time">..</a></h3> |
| 62380 | 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 | ........<figure><figcaption.clas |
| 623a0 | 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | s="zig-cap"><cite.class="file">t |
| 623c0 | 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3c 2f 63 69 | est_comptime_unreachable.zig</ci |
| 623e0 | 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e | te></figcaption><pre><code><span |
| 62400 | 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 73 73 | .class="tok-kw">const</span>.ass |
| 62420 | 65 72 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 | ert.=.<span.class="tok-builtin"> |
| 62440 | 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- |
| 62460 | 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 62 | str">"std"</span>).deb |
| 62480 | 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 77 22 | ug.assert;..<span.class="tok-kw" |
| 624a0 | 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 |
| 624c0 | 72 22 3e 26 71 75 6f 74 3b 74 79 70 65 20 6f 66 20 75 6e 72 65 61 63 68 61 62 6c 65 26 71 75 6f | r">"type.of.unreachable&quo |
| 624e0 | 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 |
| 62500 | 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 20 3c | -kw">comptime</span>.{.........< |
| 62520 | 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. |
| 62540 | 74 79 70 65 20 6f 66 20 75 6e 72 65 61 63 68 61 62 6c 65 20 69 73 20 6e 6f 72 65 74 75 72 6e 2e | type.of.unreachable.is.noreturn. |
| 62560 | 3c 2f 73 70 61 6e 3e 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 |
| 62580 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 48 6f 77 65 76 65 72 20 74 68 69 73 20 61 73 73 65 72 | k-comment">//.However.this.asser |
| 625a0 | 74 69 6f 6e 20 77 69 6c 6c 20 73 74 69 6c 6c 20 66 61 69 6c 20 74 6f 20 63 6f 6d 70 69 6c 65 20 | tion.will.still.fail.to.compile. |
| 625c0 | 62 65 63 61 75 73 65 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 | because</span>.........<span.cla |
| 625e0 | 73 73 3d 22 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 | ss="tok-comment">//.unreachable. |
| 62600 | 65 78 70 72 65 73 73 69 6f 6e 73 20 61 72 65 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 73 2e 3c | expressions.are.compile.errors.< |
| 62620 | 2f 73 70 61 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 | /span>..........assert(<span.cla |
| 62640 | 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>( |
| 62660 | 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 |
| 62680 | 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 74 79 70 | </span>).==.<span.class="tok-typ |
| 626a0 | 65 22 3e 6e 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 | e">noreturn</span>);.....}.}</co |
| 626c0 | 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | de></pre></figure><figure><figca |
| 626e0 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 | ption.class="shell-cap">Shell</f |
| 62700 | 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 | igcaption><pre><samp>$.<kbd>zig. |
| 62720 | 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a | test.test_comptime_unreachable.z |
| 62740 | 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 | ig</kbd>.<span.class="sgr-1m">/h |
| 62760 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 | ome/andy/dev/zig/doc/langref/tes |
| 62780 | 74 5f 63 6f 6d 70 74 69 6d 65 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3a 31 30 3a 31 36 | t_comptime_unreachable.zig:10:16 |
| 627a0 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 | :.</span><span.class="sgr-31m">e |
| 627c0 | 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 73 67 72 2d 31 6d | rror:.</span><span.class="sgr-1m |
| 627e0 | 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 20 20 | ">unreachable.code.</span>...... |
| 62800 | 20 20 61 73 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 | ..assert(@TypeOf(unreachable).== |
| 62820 | 20 6e 6f 72 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 | .noreturn);................<span |
| 62840 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e | .class="sgr-32m">^~~~~~~~~~~~~~~ |
| 62860 | 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d | ~~~~~.</span><span.class="sgr-1m |
| 62880 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 | ">/home/andy/dev/zig/doc/langref |
| 628a0 | 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3a 31 | /test_comptime_unreachable.zig:1 |
| 628c0 | 30 3a 32 34 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 | 0:24:.</span><span.class="sgr-36 |
| 628e0 | 6d 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 73 67 72 | m">note:.</span><span.class="sgr |
| 62900 | 2d 31 6d 22 3e 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 69 73 20 64 69 76 65 72 74 65 64 20 68 65 | -1m">control.flow.is.diverted.he |
| 62920 | 72 65 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 40 54 79 70 65 4f 66 | re.</span>........assert(@TypeOf |
| 62940 | 28 75 6e 72 65 61 63 68 61 62 6c 65 29 20 3d 3d 20 6e 6f 72 65 74 75 72 6e 29 3b 0a 20 20 20 20 | (unreachable).==.noreturn);..... |
| 62960 | 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=" |
| 62980 | 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 | sgr-32m">^~~~~~~~~~~.</span>.</s |
| 629a0 | 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 | amp></pre></figure>........<p>Se |
| 629c0 | 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 5a 69 | e.also:</p><ul>.<li><a.href="#Zi |
| 629e0 | 67 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 3c 6c 69 3e 3c 61 | g-Test">Zig.Test</a></li>.<li><a |
| 62a00 | 20 68 72 65 66 3d 22 23 42 75 69 6c 64 2d 4d 6f 64 65 22 3e 42 75 69 6c 64 20 4d 6f 64 65 3c 2f | .href="#Build-Mode">Build.Mode</ |
| 62a20 | 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 22 3e | a></li>.<li><a.href="#comptime"> |
| 62a40 | 63 6f 6d 70 74 69 6d 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 | comptime</a></li>.</ul>......... |
| 62a60 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6e 6f 72 65 74 75 72 6e 22 3e 3c | .............<h2.id="noreturn">< |
| 62a80 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6e 6f 72 65 74 75 72 6e 22 3e 6e 6f 72 65 74 75 72 6e 3c | a.href="#toc-noreturn">noreturn< |
| 62aa0 | 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 6f 72 65 74 75 | /a>.<a.class="hdr".href="#noretu |
| 62ac0 | 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 3e 0a 20 20 20 20 20 | rn">..</a></h2>........<p>...... |
| 62ae0 | 20 3c 63 6f 64 65 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 | .<code><span.class="tok-type">no |
| 62b00 | 72 65 74 75 72 6e 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 | return</span></code>.is.the.type |
| 62b20 | 20 6f 66 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 | .of:.......</p>.......<ul>...... |
| 62b40 | 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .....<li><code><span.class="tok- |
| 62b60 | 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 69 3e 0a 20 20 20 | kw">break</span></code></li>.... |
| 62b80 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .......<li><code><span.class="to |
| 62ba0 | 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 3e 3c 2f 6c 69 | k-kw">continue</span></code></li |
| 62bc0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | >...........<li><code><span.clas |
| 62be0 | 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 3e 3c | s="tok-kw">return</span></code>< |
| 62c00 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | /li>...........<li><code><span.c |
| 62c20 | 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> |
| 62c40 | 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 |
| 62c60 | 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 73 70 61 | ><span.class="tok-kw">while</spa |
| 62c80 | 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 74 72 75 65 3c | n>.(<span.class="tok-null">true< |
| 62ca0 | 2f 73 70 61 6e 3e 29 20 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 | /span>).{}</code></li>.......</u |
| 62cc0 | 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 57 68 65 6e 20 72 65 73 6f 6c 76 69 6e 67 20 74 79 70 65 73 | l>.......<p>When.resolving.types |
| 62ce0 | 20 74 6f 67 65 74 68 65 72 2c 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | .together,.such.as.<code><span.c |
| 62d00 | 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 20 63 | lass="tok-kw">if</span></code>.c |
| 62d20 | 6c 61 75 73 65 73 20 6f 72 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | lauses.or.<code><span.class="tok |
| 62d40 | 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 70 72 6f 6e 67 73 | -kw">switch</span></code>.prongs |
| 62d60 | 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | ,...............the.<code><span. |
| 62d80 | 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> |
| 62da0 | 3c 2f 63 6f 64 65 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 | </code>.type.is.compatible.with. |
| 62dc0 | 65 76 65 72 79 20 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 | every.other.type..Consider:..... |
| 62de0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e | ..</p>.......<figure><figcaption |
| 62e00 | 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 | .class="zig-cap"><cite.class="fi |
| 62e20 | 6c 65 22 3e 74 65 73 74 5f 6e 6f 72 65 74 75 72 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 | le">test_noreturn.zig</cite></fi |
| 62e40 | 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | gcaption><pre><code><span.class= |
| 62e60 | 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=" |
| 62e80 | 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 6f 6e 3a 20 3c 73 | tok-fn">foo</span>(condition:.<s |
| 62ea0 | 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> |
| 62ec0 | 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 33 32 3c | ,.b:.<span.class="tok-type">u32< |
| 62ee0 | 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 |
| 62f00 | 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 |
| 62f20 | 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 61 6e 20 63 6c 61 | k-kw">const</span>.a.=.<span.cla |
| 62f40 | 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 64 69 74 69 6f 6e | ss="tok-kw">if</span>.(condition |
| 62f60 | 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 6c 73 65 3c 2f 73 | ).b.<span.class="tok-kw">else</s |
| 62f80 | 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 75 72 6e | pan>.<span.class="tok-kw">return |
| 62fa0 | 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 61 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | </span>;....._.=.a;.....<span.cl |
| 62fc0 | 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 61 6e 3e 28 | ass="tok-builtin">@panic</span>( |
| 62fe0 | 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 6f 20 73 | <span.class="tok-str">"do.s |
| 63000 | 6f 6d 65 74 68 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 | omething.with.a"</span>);.} |
| 63020 | 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 |
| 63040 | 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 6e 6f | >.<span.class="tok-str">"no |
| 63060 | 72 65 74 75 72 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 | return"</span>.{.....foo(<s |
| 63080 | 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 |
| 630a0 | 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 |
| 630c0 | 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 | pan>);.}</code></pre></figure><f |
| 630e0 | 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 | igure><figcaption.class="shell-c |
| 63100 | 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 | ap">Shell</figcaption><pre><samp |
| 63120 | 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 6e 6f 72 65 74 75 72 6e 2e 7a | >$.<kbd>zig.test.test_noreturn.z |
| 63140 | 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 6e 6f 72 65 74 75 72 6e 2e 74 65 73 74 2e | ig</kbd>.1/1.test_noreturn.test. |
| 63160 | 6e 6f 72 65 74 75 72 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 | noreturn...OK.All.1.tests.passed |
| 63180 | 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 | ..</samp></pre></figure>........ |
| 631a0 | 3c 70 3e 41 6e 6f 74 68 65 72 20 75 73 65 20 63 61 73 65 20 66 6f 72 20 3c 63 6f 64 65 3e 3c 73 | <p>Another.use.case.for.<code><s |
| 631c0 | 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 3c 2f 73 | pan.class="tok-type">noreturn</s |
| 631e0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 74 68 65 20 3c 63 6f 64 65 3e 65 78 69 74 3c 2f 63 | pan></code>.is.the.<code>exit</c |
| 63200 | 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 | ode>.function:</p>.......<figure |
| 63220 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 | ><figcaption.class="zig-cap"><ci |
| 63240 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 6e 6f 72 65 74 75 72 6e 5f 66 72 | te.class="file">test_noreturn_fr |
| 63260 | 6f 6d 5f 65 78 69 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | om_exit.zig</cite></figcaption>< |
| 63280 | 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | pre><code><span.class="tok-kw">c |
| 632a0 | 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 |
| 632c0 | 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 |
| 632e0 | 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" |
| 63300 | 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 |
| 63320 | 6f 6e 73 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 | onst</span>.builtin.=.<span.clas |
| 63340 | 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>(< |
| 63360 | 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 74 | span.class="tok-str">"built |
| 63380 | 69 6e 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 | in"</span>);.<span.class="t |
| 633a0 | 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 5f 61 72 63 68 20 | ok-kw">const</span>.native_arch. |
| 633c0 | 3d 20 62 75 69 6c 74 69 6e 2e 63 70 75 2e 61 72 63 68 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | =.builtin.cpu.arch;.<span.class= |
| 633e0 | 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 |
| 63400 | 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= |
| 63420 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 57 49 4e 41 50 49 3a 20 73 74 | "tok-kw">const</span>.WINAPI:.st |
| 63440 | 64 2e 62 75 69 6c 74 69 6e 2e 43 61 6c 6c 69 6e 67 43 6f 6e 76 65 6e 74 69 6f 6e 20 3d 20 3c 73 | d.builtin.CallingConvention.=.<s |
| 63460 | 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 6e 61 | pan.class="tok-kw">if</span>.(na |
| 63480 | 74 69 76 65 5f 61 72 63 68 20 3d 3d 20 2e 78 38 36 29 20 2e 53 74 64 63 61 6c 6c 20 3c 73 70 61 | tive_arch.==..x86)..Stdcall.<spa |
| 634a0 | 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 2e 43 3b | n.class="tok-kw">else</span>..C; |
| 634c0 | 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 3c 2f 73 70 | .<span.class="tok-kw">extern</sp |
| 634e0 | 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">" |
| 63500 | 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 63 6c 61 73 | kernel32"</span>.<span.clas |
| 63520 | 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 |
| 63540 | 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 28 65 78 69 | ="tok-fn">ExitProcess</span>(exi |
| 63560 | 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 65 22 3e 63 | t_code:.<span.class="tok-type">c |
| 63580 | 5f 75 69 6e 74 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 | _uint</span>).<span.class="tok-k |
| 635a0 | 77 22 3e 63 61 6c 6c 63 6f 6e 76 3c 2f 73 70 61 6e 3e 28 57 49 4e 41 50 49 29 20 3c 73 70 61 6e | w">callconv</span>(WINAPI).<span |
| 635c0 | 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 3c 2f 73 70 61 6e | .class="tok-type">noreturn</span |
| 635e0 | 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 |
| 63600 | 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">" |
| 63620 | 3b 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 | ;foo"</span>.{.....<span.cl |
| 63640 | 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 20 | ass="tok-kw">const</span>.value. |
| 63660 | 3d 20 62 61 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 63 61 74 | =.bar().<span.class="tok-kw">cat |
| 63680 | 63 68 3c 2f 73 70 61 6e 3e 20 45 78 69 74 50 72 6f 63 65 73 73 28 3c 73 70 61 6e 20 63 6c 61 73 | ch</span>.ExitProcess(<span.clas |
| 636a0 | 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 20 20 20 20 3c 73 | s="tok-number">1</span>);.....<s |
| 636c0 | 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 |
| 636e0 | 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 22 74 6f 6b 2d 6e | pect(value.==.<span.class="tok-n |
| 63700 | 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | umber">1234</span>);.}..<span.cl |
| 63720 | 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 |
| 63740 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 72 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 | ss="tok-fn">bar</span>().<span.c |
| 63760 | 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>! |
| 63780 | 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 |
| 637a0 | 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 |
| 637c0 | 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 6d 62 | urn</span>.<span.class="tok-numb |
| 637e0 | 65 72 22 3e 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 | er">1234</span>;.}</code></pre>< |
| 63800 | 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 | /figure><figure><figcaption.clas |
| 63820 | 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | s="shell-cap">Shell</figcaption> |
| 63840 | 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f | <pre><samp>$.<kbd>zig.test.test_ |
| 63860 | 6e 6f 72 65 74 75 72 6e 5f 66 72 6f 6d 5f 65 78 69 74 2e 7a 69 67 20 2d 74 61 72 67 65 74 20 78 | noreturn_from_exit.zig.-target.x |
| 63880 | 38 36 5f 36 34 2d 77 69 6e 64 6f 77 73 20 2d 2d 74 65 73 74 2d 6e 6f 2d 65 78 65 63 3c 2f 6b 62 | 86_64-windows.--test-no-exec</kb |
| 638a0 | 64 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 | d>.</samp></pre></figure>....... |
| 638c0 | 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 46 75 6e 63 74 69 6f 6e 73 22 3e 3c 61 20 68 | .........<h2.id="Functions"><a.h |
| 638e0 | 72 65 66 3d 22 23 74 6f 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f | ref="#toc-Functions">Functions</ |
| 63900 | 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 46 75 6e 63 74 69 6f | a>.<a.class="hdr".href="#Functio |
| 63920 | 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | ns">..</a></h2>........<figure>< |
| 63940 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 | figcaption.class="zig-cap"><cite |
| 63960 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 66 75 6e 63 74 69 6f 6e 73 2e 7a 69 67 | .class="file">test_functions.zig |
| 63980 | 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | </cite></figcaption><pre><code>< |
| 639a0 | 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> |
| 639c0 | 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" |
| 639e0 | 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 |
| 63a00 | 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>);.< |
| 63a20 | 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> |
| 63a40 | 20 62 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 | .builtin.=.<span.class="tok-buil |
| 63a60 | 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= |
| 63a80 | 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 2f 73 | "tok-str">"builtin"</s |
| 63aa0 | 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 |
| 63ac0 | 74 3c 2f 73 70 61 6e 3e 20 6e 61 74 69 76 65 5f 61 72 63 68 20 3d 20 62 75 69 6c 74 69 6e 2e 63 | t</span>.native_arch.=.builtin.c |
| 63ae0 | 70 75 2e 61 72 63 68 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 | pu.arch;.<span.class="tok-kw">co |
| 63b00 | 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. |
| 63b20 | 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 63 6f 6d 6d 65 6e | expect;..<span.class="tok-commen |
| 63b40 | 74 22 3e 2f 2f 20 46 75 6e 63 74 69 6f 6e 73 20 61 72 65 20 64 65 63 6c 61 72 65 64 20 6c 69 6b | t">//.Functions.are.declared.lik |
| 63b60 | 65 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 6b | e.this</span>.<span.class="tok-k |
| 63b80 | 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 |
| 63ba0 | 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 6b | ">add</span>(a:.<span.class="tok |
| 63bc0 | 2d 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 | -type">i8</span>,.b:.<span.class |
| 63be0 | 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 63 6c 61 | ="tok-type">i8</span>).<span.cla |
| 63c00 | 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 20 3c 73 | ss="tok-type">i8</span>.{.....<s |
| 63c20 | 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 20 | pan.class="tok-kw">if</span>.(a. |
| 63c40 | 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 |
| 63c60 | 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 6b | pan>).{.........<span.class="tok |
| 63c80 | 2d 6b 77 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 0a 20 20 20 | -kw">return</span>.b;.....}..... |
| 63ca0 | 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 |
| 63cc0 | 61 6e 3e 20 61 20 2b 20 62 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | an>.a.+.b;.}..<span.class="tok-c |
| 63ce0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 65 78 70 6f 72 74 20 73 70 65 63 69 66 69 65 72 20 | omment">//.The.export.specifier. |
| 63d00 | 6d 61 6b 65 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 65 72 6e 61 6c 6c 79 20 76 69 73 69 | makes.a.function.externally.visi |
| 63d20 | 62 6c 65 20 69 6e 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | ble.in.the.generated</span>.<spa |
| 63d40 | 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 62 6a 65 63 74 20 | n.class="tok-comment">//.object. |
| 63d60 | 66 69 6c 65 2c 20 61 6e 64 20 6d 61 6b 65 73 20 69 74 20 75 73 65 20 74 68 65 20 43 20 41 42 49 | file,.and.makes.it.use.the.C.ABI |
| 63d80 | 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 65 78 | .</span>.<span.class="tok-kw">ex |
| 63da0 | 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" |
| 63dc0 | 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"> |
| 63de0 | 73 75 62 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 74 | sub</span>(a:.<span.class="tok-t |
| 63e00 | 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 22 | ype">i8</span>,.b:.<span.class=" |
| 63e20 | 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 73 | tok-type">i8</span>).<span.class |
| 63e40 | 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 20 3c 73 70 61 | ="tok-type">i8</span>.{.....<spa |
| 63e60 | 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 61 | n.class="tok-kw">return</span>.a |
| 63e80 | 20 2d 20 62 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 | .-.b;.}..<span.class="tok-commen |
| 63ea0 | 74 22 3e 2f 2f 20 54 68 65 20 65 78 74 65 72 6e 20 73 70 65 63 69 66 69 65 72 20 69 73 20 75 73 | t">//.The.extern.specifier.is.us |
| 63ec0 | 65 64 20 74 6f 20 64 65 63 6c 61 72 65 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 77 69 | ed.to.declare.a.function.that.wi |
| 63ee0 | 6c 6c 20 62 65 20 72 65 73 6f 6c 76 65 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | ll.be.resolved</span>.<span.clas |
| 63f00 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 74 20 6c 69 6e 6b 20 74 69 6d 65 2c | s="tok-comment">//.at.link.time, |
| 63f20 | 20 77 68 65 6e 20 6c 69 6e 6b 69 6e 67 20 73 74 61 74 69 63 61 6c 6c 79 2c 20 6f 72 20 61 74 20 | .when.linking.statically,.or.at. |
| 63f40 | 72 75 6e 74 69 6d 65 2c 20 77 68 65 6e 20 6c 69 6e 6b 69 6e 67 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | runtime,.when.linking</span>.<sp |
| 63f60 | 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 79 6e 61 6d 69 | an.class="tok-comment">//.dynami |
| 63f80 | 63 61 6c 6c 79 2e 20 54 68 65 20 71 75 6f 74 65 64 20 69 64 65 6e 74 69 66 69 65 72 20 61 66 74 | cally..The.quoted.identifier.aft |
| 63fa0 | 65 72 20 74 68 65 20 65 78 74 65 72 6e 20 6b 65 79 77 6f 72 64 20 73 70 65 63 69 66 69 65 73 3c | er.the.extern.keyword.specifies< |
| 63fc0 | 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" |
| 63fe0 | 3e 2f 2f 20 74 68 65 20 6c 69 62 72 61 72 79 20 74 68 61 74 20 68 61 73 20 74 68 65 20 66 75 6e | >//.the.library.that.has.the.fun |
| 64000 | 63 74 69 6f 6e 2e 20 28 65 2e 67 2e 20 26 71 75 6f 74 3b 63 26 71 75 6f 74 3b 20 2d 26 67 74 3b | ction..(e.g.."c".-> |
| 64020 | 20 6c 69 62 63 2e 73 6f 29 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .libc.so)</span>.<span.class="to |
| 64040 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 63 61 6c 6c 63 6f 6e 76 20 73 70 65 63 69 | k-comment">//.The.callconv.speci |
| 64060 | 66 69 65 72 20 63 68 61 6e 67 65 73 20 74 68 65 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 | fier.changes.the.calling.convent |
| 64080 | 69 6f 6e 20 6f 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | ion.of.the.function.</span>.<spa |
| 640a0 | 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 57 49 | n.class="tok-kw">const</span>.WI |
| 640c0 | 4e 41 50 49 3a 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 43 61 6c 6c 69 6e 67 43 6f 6e 76 65 6e 74 | NAPI:.std.builtin.CallingConvent |
| 640e0 | 69 6f 6e 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 | ion.=.<span.class="tok-kw">if</s |
| 64100 | 70 61 6e 3e 20 28 6e 61 74 69 76 65 5f 61 72 63 68 20 3d 3d 20 2e 78 38 36 29 20 2e 53 74 64 63 | pan>.(native_arch.==..x86)..Stdc |
| 64120 | 61 6c 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 | all.<span.class="tok-kw">else</s |
| 64140 | 70 61 6e 3e 20 2e 43 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 | pan>..C;.<span.class="tok-kw">ex |
| 64160 | 74 65 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 73 74 72 | tern</span>.<span.class="tok-str |
| 64180 | 22 3e 26 71 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 | ">"kernel32"</span>.<s |
| 641a0 | 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 |
| 641c0 | 61 6e 20 63 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 | an.class="tok-fn">ExitProcess</s |
| 641e0 | 70 61 6e 3e 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 | pan>(exit_code:.<span.class="tok |
| 64200 | 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 3d 22 | -type">u32</span>).<span.class=" |
| 64220 | 74 6f 6b 2d 6b 77 22 3e 63 61 6c 6c 63 6f 6e 76 3c 2f 73 70 61 6e 3e 28 57 49 4e 41 50 49 29 20 | tok-kw">callconv</span>(WINAPI). |
| 64240 | 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 3c | <span.class="tok-type">noreturn< |
| 64260 | 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 65 78 74 | /span>;.<span.class="tok-kw">ext |
| 64280 | 65 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 73 74 72 22 | ern</span>.<span.class="tok-str" |
| 642a0 | 3e 26 71 75 6f 74 3b 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | >"c"</span>.<span.clas |
| 642c0 | 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 |
| 642e0 | 3d 22 74 6f 6b 2d 66 6e 22 3e 61 74 61 6e 32 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 | ="tok-fn">atan2</span>(a:.<span. |
| 64300 | 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 20 62 3a 20 | class="tok-type">f64</span>,.b:. |
| 64320 | 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 73 70 61 6e | <span.class="tok-type">f64</span |
| 64340 | 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 34 3c 2f 73 | >).<span.class="tok-type">f64</s |
| 64360 | 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 22 | pan>;..<span.class="tok-comment" |
| 64380 | 3e 2f 2f 20 54 68 65 20 40 62 72 61 6e 63 68 48 69 6e 74 20 62 75 69 6c 74 69 6e 20 63 61 6e 20 | >//.The.@branchHint.builtin.can. |
| 643a0 | 62 65 20 75 73 65 64 20 74 6f 20 74 65 6c 6c 20 74 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 74 68 | be.used.to.tell.the.optimizer.th |
| 643c0 | 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 65 64 20 28 | at.a.function.is.rarely.called.( |
| 643e0 | 26 71 75 6f 74 3b 63 6f 6c 64 26 71 75 6f 74 3b 29 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | "cold").</span>.<span. |
| 64400 | 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 |
| 64420 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 62 6f 72 74 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 | lass="tok-fn">abort</span>().<sp |
| 64440 | 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 3c 2f 73 70 | an.class="tok-type">noreturn</sp |
| 64460 | 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 62 75 69 6c 74 | an>.{.....<span.class="tok-built |
| 64480 | 69 6e 22 3e 40 62 72 61 6e 63 68 48 69 6e 74 3c 2f 73 70 61 6e 3e 28 2e 63 6f 6c 64 29 3b 0a 20 | in">@branchHint</span>(.cold);.. |
| 644a0 | 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 73 | ...<span.class="tok-kw">while</s |
| 644c0 | 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 74 72 75 | pan>.(<span.class="tok-null">tru |
| 644e0 | 65 3c 2f 73 70 61 6e 3e 29 20 7b 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | e</span>).{}.}..<span.class="tok |
| 64500 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 6e 61 6b 65 64 20 63 61 6c 6c 69 6e 67 20 63 | -comment">//.The.naked.calling.c |
| 64520 | 6f 6e 76 65 6e 74 69 6f 6e 20 6d 61 6b 65 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 74 20 68 | onvention.makes.a.function.not.h |
| 64540 | 61 76 65 20 61 6e 79 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 6c 6f 67 75 65 20 6f 72 20 65 70 69 | ave.any.function.prologue.or.epi |
| 64560 | 6c 6f 67 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 63 | logue.</span>.<span.class="tok-c |
| 64580 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c 20 77 68 | omment">//.This.can.be.useful.wh |
| 645a0 | 65 6e 20 69 6e 74 65 67 72 61 74 69 6e 67 20 77 69 74 68 20 61 73 73 65 6d 62 6c 79 2e 3c 2f 73 | en.integrating.with.assembly.</s |
| 645c0 | 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 70 | pan>.<span.class="tok-kw">fn</sp |
| 645e0 | 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 73 74 61 72 74 3c | an>.<span.class="tok-fn">_start< |
| 64600 | 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 77 22 3e 63 61 | /span>().<span.class="tok-kw">ca |
| 64620 | 6c 6c 63 6f 6e 76 3c 2f 73 70 61 6e 3e 28 2e 4e 61 6b 65 64 29 20 3c 73 70 61 6e 20 63 6c 61 73 | llconv</span>(.Naked).<span.clas |
| 64640 | 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 20 7b 0a 20 | s="tok-type">noreturn</span>.{.. |
| 64660 | 20 20 20 61 62 6f 72 74 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ...abort();.}..<span.class="tok- |
| 64680 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 69 6e 6c 69 6e 65 20 63 61 6c 6c 69 6e 67 20 63 | comment">//.The.inline.calling.c |
| 646a0 | 6f 6e 76 65 6e 74 69 6f 6e 20 66 6f 72 63 65 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 62 | onvention.forces.a.function.to.b |
| 646c0 | 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 3c 2f 73 70 | e.inlined.at.all.call.sites.</sp |
| 646e0 | 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">// |
| 64700 | 20 49 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 6e 6f 74 20 62 65 20 69 6e 6c 69 6e | .If.the.function.cannot.be.inlin |
| 64720 | 65 64 2c 20 69 74 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 65 72 72 6f 72 2e 3c | ed,.it.is.a.compile-time.error.< |
| 64740 | 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 69 6e 6c 69 | /span>.<span.class="tok-kw">inli |
| 64760 | 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 2d 6b 77 22 3e 66 | ne</span>.<span.class="tok-kw">f |
| 64780 | 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 73 68 | n</span>.<span.class="tok-fn">sh |
| 647a0 | 69 66 74 4c 65 66 74 4f 6e 65 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | iftLeftOne</span>(a:.<span.class |
| 647c0 | 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 63 6c | ="tok-type">u32</span>).<span.cl |
| 647e0 | 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 20 20 | ass="tok-type">u32</span>.{..... |
| 64800 | 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 |
| 64820 | 6e 3e 20 61 20 26 6c 74 3b 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | n>.a.<<.<span.class="tok-n |
| 64840 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | umber">1</span>;.}..<span.class= |
| 64860 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 70 75 62 20 73 70 65 63 69 66 69 | "tok-comment">//.The.pub.specifi |
| 64880 | 65 72 20 61 6c 6c 6f 77 73 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 62 65 20 76 69 73 | er.allows.the.function.to.be.vis |
| 648a0 | 69 62 6c 65 20 77 68 65 6e 20 69 6d 70 6f 72 74 69 6e 67 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | ible.when.importing.</span>.<spa |
| 648c0 | 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 6e 6f 74 68 65 72 | n.class="tok-comment">//.Another |
| 648e0 | 20 66 69 6c 65 20 63 61 6e 20 75 73 65 20 40 69 6d 70 6f 72 74 20 61 6e 64 20 63 61 6c 6c 20 73 | .file.can.use.@import.and.call.s |
| 64900 | 75 62 32 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 | ub2</span>.<span.class="tok-kw"> |
| 64920 | 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"> |
| 64940 | 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 73 | fn</span>.<span.class="tok-fn">s |
| 64960 | 75 62 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 74 | ub2</span>(a:.<span.class="tok-t |
| 64980 | 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 22 | ype">i8</span>,.b:.<span.class=" |
| 649a0 | 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 73 | tok-type">i8</span>).<span.class |
| 649c0 | 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 20 3c 73 70 61 | ="tok-type">i8</span>.{.....<spa |
| 649e0 | 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 61 | n.class="tok-kw">return</span>.a |
| 64a00 | 20 2d 20 62 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 | .-.b;.}..<span.class="tok-commen |
| 64a20 | 74 22 3e 2f 2f 20 46 75 6e 63 74 69 6f 6e 20 70 6f 69 6e 74 65 72 73 20 61 72 65 20 70 72 65 66 | t">//.Function.pointers.are.pref |
| 64a40 | 69 78 65 64 20 77 69 74 68 20 60 2a 63 6f 6e 73 74 20 60 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | ixed.with.`*const.`.</span>.<spa |
| 64a60 | 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 43 61 | n.class="tok-kw">const</span>.Ca |
| 64a80 | 6c 6c 32 4f 70 20 3d 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 | ll2Op.=.*<span.class="tok-kw">co |
| 64aa0 | 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 6b 77 22 3e | nst</span>.<span.class="tok-kw"> |
| 64ac0 | 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 74 | fn</span>.(a:.<span.class="tok-t |
| 64ae0 | 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 22 | ype">i8</span>,.b:.<span.class=" |
| 64b00 | 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 73 | tok-type">i8</span>).<span.class |
| 64b20 | 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 61 | ="tok-type">i8</span>;.<span.cla |
| 64b40 | 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 |
| 64b60 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 4f 70 3c 2f 73 70 61 6e 3e 28 66 6e 43 61 6c 6c 3a 20 43 | s="tok-fn">doOp</span>(fnCall:.C |
| 64b80 | 61 6c 6c 32 4f 70 2c 20 6f 70 31 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | all2Op,.op1:.<span.class="tok-ty |
| 64ba0 | 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 61 73 73 3d | pe">i8</span>,.op2:.<span.class= |
| 64bc0 | 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 |
| 64be0 | 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 20 3c 73 70 | s="tok-type">i8</span>.{.....<sp |
| 64c00 | 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>. |
| 64c20 | 66 6e 43 61 6c 6c 28 6f 70 31 2c 20 6f 70 32 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | fnCall(op1,.op2);.}..<span.class |
| 64c40 | 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 |
| 64c60 | 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 71 75 6f 74 3b | s="tok-str">"function" |
| 64c80 | 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 |
| 64ca0 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 64 6f 4f 70 28 61 64 64 2c 20 3c | w">try</span>.expect(doOp(add,.< |
| 64cc0 | 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> |
| 64ce0 | 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 36 3c 2f 73 70 | ,.<span.class="tok-number">6</sp |
| 64d00 | 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 72 22 | an>).==.<span.class="tok-number" |
| 64d20 | 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 73 3d 22 74 6f | >11</span>);.....<span.class="to |
| 64d40 | 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 4f 70 28 73 75 62 | k-kw">try</span>.expect(doOp(sub |
| 64d60 | 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 72 22 3e 35 3c 2f 73 | 2,.<span.class="tok-number">5</s |
| 64d80 | 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 36 | pan>,.<span.class="tok-number">6 |
| 64da0 | 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 22 74 6f 6b 2d 6e 75 | </span>).==.-<span.class="tok-nu |
| 64dc0 | 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>< |
| 64de0 | 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 | /figure><figure><figcaption.clas |
| 64e00 | 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | s="shell-cap">Shell</figcaption> |
| 64e20 | 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f | <pre><samp>$.<kbd>zig.test.test_ |
| 64e40 | 66 75 6e 63 74 69 6f 6e 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 66 75 6e | functions.zig</kbd>.1/1.test_fun |
| 64e60 | 63 74 69 6f 6e 73 2e 74 65 73 74 2e 66 75 6e 63 74 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 | ctions.test.function...OK.All.1. |
| 64e80 | 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | tests.passed..</samp></pre></fig |
| 64ea0 | 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 72 65 20 69 73 20 61 20 64 69 66 66 65 72 | ure>........<p>There.is.a.differ |
| 64ec0 | 65 6e 63 65 20 62 65 74 77 65 65 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 3c 65 6d 3e 62 6f 64 79 | ence.between.a.function.<em>body |
| 64ee0 | 3c 2f 65 6d 3e 20 61 6e 64 20 61 20 66 75 6e 63 74 69 6f 6e 20 3c 65 6d 3e 70 6f 69 6e 74 65 72 | </em>.and.a.function.<em>pointer |
| 64f00 | 3c 2f 65 6d 3e 2e 0a 20 20 20 20 20 20 46 75 6e 63 74 69 6f 6e 20 62 6f 64 69 65 73 20 61 72 65 | </em>........Function.bodies.are |
| 64f20 | 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 61 | .<a.href="#comptime">comptime</a |
| 64f40 | 3e 2d 6f 6e 6c 79 20 74 79 70 65 73 20 77 68 69 6c 65 20 66 75 6e 63 74 69 6f 6e 20 3c 61 20 68 | >-only.types.while.function.<a.h |
| 64f60 | 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 20 6d 61 79 | ref="#Pointers">Pointers</a>.may |
| 64f80 | 20 62 65 0a 20 20 20 20 20 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 2e 3c 2f 70 3e 0a 20 20 20 | .be.......runtime-known.</p>.... |
| 64fa0 | 20 20 20 3c 68 33 20 69 64 3d 22 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 2d 50 61 72 61 6d 65 74 | ...<h3.id="Pass-by-value-Paramet |
| 64fc0 | 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 | ers"><a.href="#toc-Pass-by-value |
| 64fe0 | 2d 50 61 72 61 6d 65 74 65 72 73 22 3e 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 20 50 61 72 61 6d | -Parameters">Pass-by-value.Param |
| 65000 | 65 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 66 3d 22 23 | eters</a>.<a.class="hdr".href="# |
| 65020 | 50 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 c2 a7 3c 2f 61 3e | Pass-by-value-Parameters">..</a> |
| 65040 | 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 72 69 6d 69 74 69 76 65 | </h3>........<p>.......Primitive |
| 65060 | 20 74 79 70 65 73 20 73 75 63 68 20 61 73 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 | .types.such.as.<a.href="#Integer |
| 65080 | 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 46 6c | s">Integers</a>.and.<a.href="#Fl |
| 650a0 | 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 70 61 73 73 65 64 20 61 73 20 70 61 72 61 6d | oats">Floats</a>.passed.as.param |
| 650c0 | 65 74 65 72 73 0a 20 20 20 20 20 20 61 72 65 20 63 6f 70 69 65 64 2c 20 61 6e 64 20 74 68 65 6e | eters.......are.copied,.and.then |
| 650e0 | 20 74 68 65 20 63 6f 70 79 20 69 73 20 61 76 61 69 6c 61 62 6c 65 20 69 6e 20 74 68 65 20 66 75 | .the.copy.is.available.in.the.fu |
| 65100 | 6e 63 74 69 6f 6e 20 62 6f 64 79 2e 20 54 68 69 73 20 69 73 20 63 61 6c 6c 65 64 20 22 70 61 73 | nction.body..This.is.called."pas |
| 65120 | 73 69 6e 67 20 62 79 20 76 61 6c 75 65 22 2e 0a 20 20 20 20 20 20 43 6f 70 79 69 6e 67 20 61 20 | sing.by.value"........Copying.a. |
| 65140 | 70 72 69 6d 69 74 69 76 65 20 74 79 70 65 20 69 73 20 65 73 73 65 6e 74 69 61 6c 6c 79 20 66 72 | primitive.type.is.essentially.fr |
| 65160 | 65 65 20 61 6e 64 20 74 79 70 69 63 61 6c 6c 79 20 69 6e 76 6f 6c 76 65 73 20 6e 6f 74 68 69 6e | ee.and.typically.involves.nothin |
| 65180 | 67 20 6d 6f 72 65 20 74 68 61 6e 0a 20 20 20 20 20 20 73 65 74 74 69 6e 67 20 61 20 72 65 67 69 | g.more.than.......setting.a.regi |
| 651a0 | 73 74 65 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 20 20 | ster........</p>.......<p>...... |
| 651c0 | 20 53 74 72 75 63 74 73 2c 20 75 6e 69 6f 6e 73 2c 20 61 6e 64 20 61 72 72 61 79 73 20 63 61 6e | .Structs,.unions,.and.arrays.can |
| 651e0 | 20 73 6f 6d 65 74 69 6d 65 73 20 62 65 20 6d 6f 72 65 20 65 66 66 69 63 69 65 6e 74 6c 79 20 70 | .sometimes.be.more.efficiently.p |
| 65200 | 61 73 73 65 64 20 61 73 20 61 20 72 65 66 65 72 65 6e 63 65 2c 20 73 69 6e 63 65 20 61 20 63 6f | assed.as.a.reference,.since.a.co |
| 65220 | 70 79 0a 20 20 20 20 20 20 63 6f 75 6c 64 20 62 65 20 61 72 62 69 74 72 61 72 69 6c 79 20 65 78 | py.......could.be.arbitrarily.ex |
| 65240 | 70 65 6e 73 69 76 65 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 73 69 7a 65 2e 20 57 | pensive.depending.on.the.size..W |
| 65260 | 68 65 6e 20 74 68 65 73 65 20 74 79 70 65 73 20 61 72 65 20 70 61 73 73 65 64 0a 20 20 20 20 20 | hen.these.types.are.passed...... |
| 65280 | 20 61 73 20 70 61 72 61 6d 65 74 65 72 73 2c 20 5a 69 67 20 6d 61 79 20 63 68 6f 6f 73 65 20 74 | .as.parameters,.Zig.may.choose.t |
| 652a0 | 6f 20 63 6f 70 79 20 61 6e 64 20 70 61 73 73 20 62 79 20 76 61 6c 75 65 2c 20 6f 72 20 70 61 73 | o.copy.and.pass.by.value,.or.pas |
| 652c0 | 73 20 62 79 20 72 65 66 65 72 65 6e 63 65 2c 20 77 68 69 63 68 65 76 65 72 20 77 61 79 0a 20 20 | s.by.reference,.whichever.way... |
| 652e0 | 20 20 20 20 5a 69 67 20 64 65 63 69 64 65 73 20 77 69 6c 6c 20 62 65 20 66 61 73 74 65 72 2e 20 | ....Zig.decides.will.be.faster.. |
| 65300 | 54 68 69 73 20 69 73 20 6d 61 64 65 20 70 6f 73 73 69 62 6c 65 2c 20 69 6e 20 70 61 72 74 2c 20 | This.is.made.possible,.in.part,. |
| 65320 | 62 79 20 74 68 65 20 66 61 63 74 20 74 68 61 74 20 70 61 72 61 6d 65 74 65 72 73 20 61 72 65 20 | by.the.fact.that.parameters.are. |
| 65340 | 69 6d 6d 75 74 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 | immutable........</p>.......<fig |
| 65360 | 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e | ure><figcaption.class="zig-cap"> |
| 65380 | 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 70 61 73 73 5f 62 79 5f | <cite.class="file">test_pass_by_ |
| 653a0 | 72 65 66 65 72 65 6e 63 65 5f 6f 72 5f 76 61 6c 75 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 | reference_or_value.zig</cite></f |
| 653c0 | 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | igcaption><pre><code><span.class |
| 653e0 | 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 3c | ="tok-kw">const</span>.Point.=.< |
| 65400 | 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 6e | span.class="tok-kw">struct</span |
| 65420 | 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 65 | >.{.....x:.<span.class="tok-type |
| 65440 | 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 20 63 6c 61 73 73 | ">i32</span>,.....y:.<span.class |
| 65460 | 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 0a 3c 73 70 61 | ="tok-type">i32</span>,.};..<spa |
| 65480 | 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 |
| 654a0 | 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 70 6f 69 6e 74 | .class="tok-fn">foo</span>(point |
| 654c0 | 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 74 79 70 65 22 3e | :.Point).<span.class="tok-type"> |
| 654e0 | 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 |
| 65500 | 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 60 20 63 6f 75 6c | k-comment">//.Here,.`point`.coul |
| 65520 | 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 79 2e 20 54 68 65 | d.be.a.reference,.or.a.copy..The |
| 65540 | 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 3c 73 70 61 6e 20 | .function.body</span>.....<span. |
| 65560 | 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 20 69 67 6e 6f 72 | class="tok-comment">//.can.ignor |
| 65580 | 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 20 69 74 20 61 73 | e.the.difference.and.treat.it.as |
| 655a0 | 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 2f 73 70 61 6e 3e | .a.value..Be.very.careful</span> |
| 655c0 | 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">/ |
| 655e0 | 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 65 20 70 61 72 61 | /.taking.the.address.of.the.para |
| 65600 | 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 65 64 20 61 73 20 | meter.-.it.should.be.treated.as. |
| 65620 | 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 22 74 6f 6b 2d 63 | if</span>.....<span.class="tok-c |
| 65640 | 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 6c 20 62 65 63 6f | omment">//.the.address.will.beco |
| 65660 | 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 6f 6e 20 72 65 74 | me.invalid.when.the.function.ret |
| 65680 | 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 73 73 3d 22 74 6f | urns.</span>.....<span.class="to |
| 656a0 | 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 78 20 2b 20 70 6f | k-kw">return</span>.point.x.+.po |
| 656c0 | 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 2d 6b 77 22 3e 63 | int.y;.}..<span.class="tok-kw">c |
| 656e0 | 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 |
| 65700 | 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 |
| 65720 | 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 |
| 65740 | 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 |
| 65760 | 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 |
| 65780 | 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 61 73 73 20 73 | pan.class="tok-str">"pass.s |
| 657a0 | 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 70 61 6e 3e 20 7b | truct.to.function"</span>.{ |
| 657c0 | 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 |
| 657e0 | 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 3d 20 3c 73 70 61 | pan>.expect(foo(Point{..x.=.<spa |
| 65800 | 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 2e | n.class="tok-number">1</span>,.. |
| 65820 | 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 32 3c 2f | y.=.<span.class="tok-number">2</ |
| 65840 | 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 6f 6b 2d 6e 75 6d | span>.}).==.<span.class="tok-num |
| 65860 | 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 70 72 65 3e 3c 2f | ber">3</span>);.}</code></pre></ |
| 65880 | 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | figure><figure><figcaption.class |
| 658a0 | 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | ="shell-cap">Shell</figcaption>< |
| 658c0 | 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 70 | pre><samp>$.<kbd>zig.test.test_p |
| 658e0 | 61 73 73 5f 62 79 5f 72 65 66 65 72 65 6e 63 65 5f 6f 72 5f 76 61 6c 75 65 2e 7a 69 67 3c 2f 6b | ass_by_reference_or_value.zig</k |
| 65900 | 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 70 61 73 73 5f 62 79 5f 72 65 66 65 72 65 6e 63 65 5f 6f | bd>.1/1.test_pass_by_reference_o |
| 65920 | 72 5f 76 61 6c 75 65 2e 74 65 73 74 2e 70 61 73 73 20 73 74 72 75 63 74 20 74 6f 20 66 75 6e 63 | r_value.test.pass.struct.to.func |
| 65940 | 74 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f | tion...OK.All.1.tests.passed..</ |
| 65960 | 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | samp></pre></figure>........<p>. |
| 65980 | 20 20 20 20 20 20 46 6f 72 20 65 78 74 65 72 6e 20 66 75 6e 63 74 69 6f 6e 73 2c 20 5a 69 67 20 | ......For.extern.functions,.Zig. |
| 659a0 | 66 6f 6c 6c 6f 77 73 20 74 68 65 20 43 20 41 42 49 20 66 6f 72 20 70 61 73 73 69 6e 67 20 73 74 | follows.the.C.ABI.for.passing.st |
| 659c0 | 72 75 63 74 73 20 61 6e 64 20 75 6e 69 6f 6e 73 20 62 79 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 | ructs.and.unions.by.value....... |
| 659e0 | 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 46 75 6e 63 74 | .</p>..............<h3.id="Funct |
| 65a00 | 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 63 65 22 3e 3c 61 | ion-Parameter-Type-Inference"><a |
| 65a20 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 75 6e 63 74 69 6f 6e 2d 50 61 72 61 6d 65 74 65 72 2d 54 | .href="#toc-Function-Parameter-T |
| 65a40 | 79 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 | ype-Inference">Function.Paramete |
| 65a60 | 72 20 54 79 70 65 20 49 6e 66 65 72 65 6e 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | r.Type.Inference</a>.<a.class="h |
| 65a80 | 64 72 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 | dr".href="#Function-Parameter-Ty |
| 65aa0 | 70 65 2d 49 6e 66 65 72 65 6e 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | pe-Inference">..</a></h3>....... |
| 65ac0 | 20 3c 70 3e 0a 20 20 20 20 20 20 46 75 6e 63 74 69 6f 6e 20 70 61 72 61 6d 65 74 65 72 73 20 63 | .<p>.......Function.parameters.c |
| 65ae0 | 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 3e 3c 73 70 61 6e 20 | an.be.declared.with.<code><span. |
| 65b00 | 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 |
| 65b20 | 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 20 20 20 | ode>.in.place.of.the.type....... |
| 65b40 | 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 79 70 65 | .In.this.case.the.parameter.type |
| 65b60 | 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 75 6e 63 | s.will.be.inferred.when.the.func |
| 65b80 | 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 68 72 65 | tion.is.called........Use.<a.hre |
| 65ba0 | 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 61 20 68 | f="#TypeOf">@TypeOf</a>.and.<a.h |
| 65bc0 | 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 20 74 6f | ref="#typeInfo">@typeInfo</a>.to |
| 65be0 | 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 66 65 72 | .get.information.about.the.infer |
| 65c00 | 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 66 69 67 75 | red.type........</p>.......<figu |
| 65c20 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c | re><figcaption.class="zig-cap">< |
| 65c40 | 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 66 6e 5f 74 79 70 65 5f 69 | cite.class="file">test_fn_type_i |
| 65c60 | 6e 66 65 72 65 6e 63 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | nference.zig</cite></figcaption> |
| 65c80 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | <pre><code><span.class="tok-kw"> |
| 65ca0 | 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 |
| 65cc0 | 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>(< |
| 65ce0 | 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 |
| 65d00 | 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 |
| 65d20 | 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 |
| 65d40 | 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 54 77 6f 3c 2f 73 | an.class="tok-fn">addFortyTwo</s |
| 65d60 | 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 77 22 3e 61 6e 79 | pan>(x:.<span.class="tok-kw">any |
| 65d80 | 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 75 | type</span>).<span.class="tok-bu |
| 65da0 | 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 0a 20 20 20 20 3c | iltin">@TypeOf</span>(x).{.....< |
| 65dc0 | 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 |
| 65de0 | 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 62 65 72 22 3e 34 | >.x.+.<span.class="tok-number">4 |
| 65e00 | 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 74 6f 6b 2d 6b 77 | 2</span>;.}..<span.class="tok-kw |
| 65e20 | 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 |
| 65e40 | 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 65 26 71 75 6f 74 | tr">"fn.type.inference" |
| 65e60 | 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- |
| 65e80 | 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 6f 72 74 79 54 77 | kw">try</span>.expect(addFortyTw |
| 65ea0 | 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 3e 31 3c 2f 73 70 | o(<span.class="tok-number">1</sp |
| 65ec0 | 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 72 22 | an>).==.<span.class="tok-number" |
| 65ee0 | 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 73 73 3d 22 74 6f | >43</span>);.....<span.class="to |
| 65f00 | 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 |
| 65f20 | 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> |
| 65f40 | 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 74 6f 6b 2d 6e 75 | (addFortyTwo(<span.class="tok-nu |
| 65f60 | 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 63 6c 61 73 73 3d | mber">1</span>)).==.<span.class= |
| 65f80 | 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 29 3b | "tok-type">comptime_int</span>); |
| 65fa0 | 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< |
| 65fc0 | 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 65 22 | /span>.y:.<span.class="tok-type" |
| 65fe0 | 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 6f 6b 2d 6e | >i64</span>.=.<span.class="tok-n |
| 66000 | 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 |
| 66020 | 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 |
| 66040 | 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 6f 6b 2d 6e | ortyTwo(y).==.<span.class="tok-n |
| 66060 | 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 20 63 6c 61 | umber">44</span>);.....<span.cla |
| 66080 | 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 |
| 660a0 | 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< |
| 660c0 | 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 70 61 6e 20 | /span>(addFortyTwo(y)).==.<span. |
| 660e0 | 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 3b 0a 7d 3c | class="tok-type">i64</span>);.}< |
| 66100 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 | /code></pre></figure><figure><fi |
| 66120 | 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c | gcaption.class="shell-cap">Shell |
| 66140 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a | </figcaption><pre><samp>$.<kbd>z |
| 66160 | 69 67 20 74 65 73 74 20 74 65 73 74 5f 66 6e 5f 74 79 70 65 5f 69 6e 66 65 72 65 6e 63 65 2e 7a | ig.test.test_fn_type_inference.z |
| 66180 | 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 66 6e 5f 74 79 70 65 5f 69 6e 66 65 72 65 | ig</kbd>.1/1.test_fn_type_infere |
| 661a0 | 6e 63 65 2e 74 65 73 74 2e 66 6e 20 74 79 70 65 20 69 6e 66 65 72 65 6e 63 65 2e 2e 2e 4f 4b 0a | nce.test.fn.type.inference...OK. |
| 661c0 | 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 | All.1.tests.passed..</samp></pre |
| 661e0 | 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 | ></figure>.................<h3.i |
| 66200 | 64 3d 22 69 6e 6c 69 6e 65 2d 66 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 6c 69 | d="inline-fn"><a.href="#toc-inli |
| 66220 | 6e 65 2d 66 6e 22 3e 69 6e 6c 69 6e 65 20 66 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | ne-fn">inline.fn</a>.<a.class="h |
| 66240 | 64 72 22 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 66 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 | dr".href="#inline-fn">..</a></h3 |
| 66260 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 64 64 69 6e 67 20 74 68 65 20 3c 63 | >........<p>.......Adding.the.<c |
| 66280 | 6f 64 65 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 | ode><span.class="tok-kw">inline< |
| 662a0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 74 6f 20 61 20 66 75 6e 63 74 | /span></code>.keyword.to.a.funct |
| 662c0 | 69 6f 6e 20 64 65 66 69 6e 69 74 69 6f 6e 20 6d 61 6b 65 73 20 74 68 61 74 0a 20 20 20 20 20 20 | ion.definition.makes.that....... |
| 662e0 | 66 75 6e 63 74 69 6f 6e 20 62 65 63 6f 6d 65 20 3c 65 6d 3e 73 65 6d 61 6e 74 69 63 61 6c 6c 79 | function.become.<em>semantically |
| 66300 | 20 69 6e 6c 69 6e 65 64 3c 2f 65 6d 3e 20 61 74 20 74 68 65 20 63 61 6c 6c 73 69 74 65 2e 20 54 | .inlined</em>.at.the.callsite..T |
| 66320 | 68 69 73 20 69 73 0a 20 20 20 20 20 20 6e 6f 74 20 61 20 68 69 6e 74 20 74 6f 20 62 65 20 70 6f | his.is.......not.a.hint.to.be.po |
| 66340 | 73 73 69 62 6c 79 20 6f 62 73 65 72 76 65 64 20 62 79 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 20 | ssibly.observed.by.optimization. |
| 66360 | 70 61 73 73 65 73 2c 20 62 75 74 20 68 61 73 0a 20 20 20 20 20 20 69 6d 70 6c 69 63 61 74 69 6f | passes,.but.has.......implicatio |
| 66380 | 6e 73 20 6f 6e 20 74 68 65 20 74 79 70 65 73 20 61 6e 64 20 76 61 6c 75 65 73 20 69 6e 76 6f 6c | ns.on.the.types.and.values.invol |
| 663a0 | 76 65 64 20 69 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 2e 0a 20 20 20 20 20 20 | ved.in.the.function.call........ |
| 663c0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 6e 6c 69 6b 65 20 6e 6f 72 6d | </p>.......<p>.......Unlike.norm |
| 663e0 | 61 6c 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 73 2c 20 61 72 67 75 6d 65 6e 74 73 20 61 74 20 | al.function.calls,.arguments.at. |
| 66400 | 61 6e 20 69 6e 6c 69 6e 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 73 69 74 65 20 77 68 69 63 | an.inline.function.callsite.whic |
| 66420 | 68 20 61 72 65 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 20 61 | h.are.......compile-time.known.a |
| 66440 | 72 65 20 74 72 65 61 74 65 64 20 61 73 20 3c 61 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d | re.treated.as.<a.href="#Compile- |
| 66460 | 54 69 6d 65 2d 50 61 72 61 6d 65 74 65 72 73 22 3e 43 6f 6d 70 69 6c 65 20 54 69 6d 65 20 50 61 | Time-Parameters">Compile.Time.Pa |
| 66480 | 72 61 6d 65 74 65 72 73 3c 2f 61 3e 2e 20 54 68 69 73 20 63 61 6e 20 70 6f 74 65 6e 74 69 61 6c | rameters</a>..This.can.potential |
| 664a0 | 6c 79 0a 20 20 20 20 20 20 70 72 6f 70 61 67 61 74 65 20 61 6c 6c 20 74 68 65 20 77 61 79 20 74 | ly.......propagate.all.the.way.t |
| 664c0 | 6f 20 74 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | o.the.return.value:.......</p>.. |
| 664e0 | 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 | .....<figure><figcaption.class=" |
| 66500 | 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 69 6e 6c 69 | zig-cap"><cite.class="file">inli |
| 66520 | 6e 65 5f 63 61 6c 6c 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | ne_call.zig</cite></figcaption>< |
| 66540 | 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | pre><code><span.class="tok-kw">t |
| 66560 | 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" |
| 66580 | 3e 26 71 75 6f 74 3b 69 6e 6c 69 6e 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 26 71 75 6f 74 | >"inline.function.call" |
| 665a0 | 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- |
| 665c0 | 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 66 6f 6f 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | kw">if</span>.(foo(<span.class=" |
| 665e0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 30 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | tok-number">1200</span>,.<span.c |
| 66600 | 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 6e 3e 29 20 21 3d 20 | lass="tok-number">34</span>).!=. |
| 66620 | 3c 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 |
| 66640 | 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 6b | pan>).{.........<span.class="tok |
| 66660 | 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 3c | -builtin">@compileError</span>(< |
| 66680 | 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 61 64 26 71 | span.class="tok-str">"bad&q |
| 666a0 | 75 6f 74 3b 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 63 6c 61 | uot;</span>);.....}.}..<span.cla |
| 666c0 | 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 20 3c 73 70 61 6e 20 | ss="tok-kw">inline</span>.<span. |
| 666e0 | 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 |
| 66700 | 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 3a 20 3c 73 70 61 | lass="tok-fn">foo</span>(a:.<spa |
| 66720 | 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 62 | n.class="tok-type">i32</span>,.b |
| 66740 | 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 |
| 66760 | 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< |
| 66780 | 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 |
| 667a0 | 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2b 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | ">return</span>.a.+.b;.}</code>< |
| 667c0 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | /pre></figure><figure><figcaptio |
| 667e0 | 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 | n.class="shell-cap">Shell</figca |
| 66800 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 | ption><pre><samp>$.<kbd>zig.test |
| 66820 | 20 69 6e 6c 69 6e 65 5f 63 61 6c 6c 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 69 6e 6c 69 6e | .inline_call.zig</kbd>.1/1.inlin |
| 66840 | 65 5f 63 61 6c 6c 2e 74 65 73 74 2e 69 6e 6c 69 6e 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c | e_call.test.inline.function.call |
| 66860 | 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 | ...OK.All.1.tests.passed..</samp |
| 66880 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 66 20 3c 63 | ></pre></figure>........<p>If.<c |
| 668a0 | 6f 64 65 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 | ode><span.class="tok-kw">inline< |
| 668c0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 72 65 6d 6f 76 65 64 2c 20 74 68 65 20 74 65 | /span></code>.is.removed,.the.te |
| 668e0 | 73 74 20 66 61 69 6c 73 20 77 69 74 68 20 74 68 65 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 0a | st.fails.with.the.compile.error. |
| 66900 | 20 20 20 20 20 20 69 6e 73 74 65 61 64 20 6f 66 20 70 61 73 73 69 6e 67 2e 3c 2f 70 3e 0a 20 20 | ......instead.of.passing.</p>... |
| 66920 | 20 20 20 20 3c 70 3e 49 74 20 69 73 20 67 65 6e 65 72 61 6c 6c 79 20 62 65 74 74 65 72 20 74 6f | ....<p>It.is.generally.better.to |
| 66940 | 20 6c 65 74 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 64 65 63 69 64 65 20 77 68 65 6e 20 74 6f | .let.the.compiler.decide.when.to |
| 66960 | 20 69 6e 6c 69 6e 65 20 61 0a 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 2c 20 65 78 63 65 70 74 | .inline.a.......function,.except |
| 66980 | 20 66 6f 72 20 74 68 65 73 65 20 73 63 65 6e 61 72 69 6f 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 | .for.these.scenarios:</p>....... |
| 669a0 | 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 6f 20 63 68 61 6e 67 65 20 68 6f 77 20 6d | <ul>.........<li>To.change.how.m |
| 669c0 | 61 6e 79 20 73 74 61 63 6b 20 66 72 61 6d 65 73 20 61 72 65 20 69 6e 20 74 68 65 20 63 61 6c 6c | any.stack.frames.are.in.the.call |
| 669e0 | 20 73 74 61 63 6b 2c 20 66 6f 72 20 64 65 62 75 67 67 69 6e 67 20 70 75 72 70 6f 73 65 73 2e 3c | .stack,.for.debugging.purposes.< |
| 66a00 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 6f 20 66 6f 72 63 65 20 63 6f 6d 70 74 69 | /li>.........<li>To.force.compti |
| 66a20 | 6d 65 2d 6e 65 73 73 20 6f 66 20 74 68 65 20 61 72 67 75 6d 65 6e 74 73 20 74 6f 20 70 72 6f 70 | me-ness.of.the.arguments.to.prop |
| 66a40 | 61 67 61 74 65 20 74 6f 20 74 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 6f 66 20 74 68 65 | agate.to.the.return.value.of.the |
| 66a60 | 20 66 75 6e 63 74 69 6f 6e 2c 20 61 73 20 69 6e 20 74 68 65 20 61 62 6f 76 65 20 65 78 61 6d 70 | .function,.as.in.the.above.examp |
| 66a80 | 6c 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 65 61 6c 20 77 6f 72 6c 64 20 | le.</li>.........<li>Real.world. |
| 66aa0 | 70 65 72 66 6f 72 6d 61 6e 63 65 20 6d 65 61 73 75 72 65 6d 65 6e 74 73 20 64 65 6d 61 6e 64 20 | performance.measurements.demand. |
| 66ac0 | 69 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 70 3e 4e 6f | it.</li>.......</ul>.......<p>No |
| 66ae0 | 74 65 20 74 68 61 74 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | te.that.<code><span.class="tok-k |
| 66b00 | 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 63 74 75 61 6c 6c 79 | w">inline</span></code>.actually |
| 66b20 | 20 3c 65 6d 3e 72 65 73 74 72 69 63 74 73 3c 2f 65 6d 3e 0a 20 20 20 20 20 20 77 68 61 74 20 74 | .<em>restricts</em>.......what.t |
| 66b40 | 68 65 20 63 6f 6d 70 69 6c 65 72 20 69 73 20 61 6c 6c 6f 77 65 64 20 74 6f 20 64 6f 2e 20 54 68 | he.compiler.is.allowed.to.do..Th |
| 66b60 | 69 73 20 63 61 6e 20 68 61 72 6d 20 62 69 6e 61 72 79 20 73 69 7a 65 2c 0a 20 20 20 20 20 20 63 | is.can.harm.binary.size,.......c |
| 66b80 | 6f 6d 70 69 6c 61 74 69 6f 6e 20 73 70 65 65 64 2c 20 61 6e 64 20 65 76 65 6e 20 72 75 6e 74 69 | ompilation.speed,.and.even.runti |
| 66ba0 | 6d 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 | me.performance.</p>............. |
| 66bc0 | 20 20 3c 68 33 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 | ..<h3.id="Function-Reflection">< |
| 66be0 | 61 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 | a.href="#toc-Function-Reflection |
| 66c00 | 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 20 3c 61 20 63 6c 61 | ">Function.Reflection</a>.<a.cla |
| 66c20 | 73 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 | ss="hdr".href="#Function-Reflect |
| 66c40 | 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 66 69 67 75 72 65 3e | ion">..</a></h3>........<figure> |
| 66c60 | 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 | <figcaption.class="zig-cap"><cit |
| 66c80 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 66 6e 5f 72 65 66 6c 65 63 74 69 6f | e.class="file">test_fn_reflectio |
| 66ca0 | 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 | n.zig</cite></figcaption><pre><c |
| 66cc0 | 6f 64 65 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 | ode><span.class="tok-kw">const</ |
| 66ce0 | 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 |
| 66d00 | 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 |
| 66d20 | 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 |
| 66d40 | 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</ |
| 66d60 | 73 70 61 6e 3e 20 6d 61 74 68 20 3d 20 73 74 64 2e 6d 61 74 68 3b 0a 3c 73 70 61 6e 20 63 6c 61 | span>.math.=.std.math;.<span.cla |
| 66d80 | 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 65 73 74 69 6e 67 | ss="tok-kw">const</span>.testing |
| 66da0 | 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .=.std.testing;..<span.class="to |
| 66dc0 | 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 |
| 66de0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6e 20 72 65 66 6c 65 63 74 69 6f 6e 26 71 75 6f 74 | ok-str">"fn.reflection" |
| 66e00 | 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- |
| 66e20 | 6b 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 | kw">try</span>.testing.expect(<s |
| 66e40 | 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 |
| 66e60 | 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 69 6c 74 69 | o</span>(<span.class="tok-builti |
| 66e80 | 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 | n">@TypeOf</span>(testing.expect |
| 66ea0 | 29 29 2e 40 26 71 75 6f 74 3b 66 6e 26 71 75 6f 74 3b 2e 70 61 72 61 6d 73 5b 3c 73 70 61 6e 20 | )).@"fn".params[<span. |
| 66ec0 | 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 3c 73 70 | class="tok-number">0</span>].<sp |
| 66ee0 | 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 2e | an.class="tok-type">type</span>. |
| 66f00 | 3f 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 6c | ?.==.<span.class="tok-type">bool |
| 66f20 | 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 |
| 66f40 | 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 |
| 66f60 | 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 6f | an.class="tok-builtin">@typeInfo |
| 66f80 | 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 |
| 66fa0 | 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 74 65 73 74 69 6e 67 2e 74 6d 70 44 69 72 29 | ">@TypeOf</span>(testing.tmpDir) |
| 66fc0 | 29 2e 40 26 71 75 6f 74 3b 66 6e 26 71 75 6f 74 3b 2e 72 65 74 75 72 6e 5f 74 79 70 65 2e 3f 20 | ).@"fn".return_type.?. |
| 66fe0 | 3d 3d 20 74 65 73 74 69 6e 67 2e 54 6d 70 44 69 72 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ==.testing.TmpDir);......<span.c |
| 67000 | 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 74 65 73 74 69 6e 67 | lass="tok-kw">try</span>.testing |
| 67020 | 2e 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 |
| 67040 | 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=" |
| 67060 | 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 6d 61 74 68 | tok-builtin">@TypeOf</span>(math |
| 67080 | 2e 4c 6f 67 32 49 6e 74 29 29 2e 40 26 71 75 6f 74 3b 66 6e 26 71 75 6f 74 3b 2e 69 73 5f 67 65 | .Log2Int)).@"fn".is_ge |
| 670a0 | 6e 65 72 69 63 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c | neric);.}</code></pre></figure>< |
| 670c0 | 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d | figure><figcaption.class="shell- |
| 670e0 | 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d | cap">Shell</figcaption><pre><sam |
| 67100 | 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 66 6e 5f 72 65 66 6c 65 63 | p>$.<kbd>zig.test.test_fn_reflec |
| 67120 | 74 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 66 6e 5f 72 65 66 6c 65 | tion.zig</kbd>.1/1.test_fn_refle |
| 67140 | 63 74 69 6f 6e 2e 74 65 73 74 2e 66 6e 20 72 65 66 6c 65 63 74 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c | ction.test.fn.reflection...OK.Al |
| 67160 | 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c | l.1.tests.passed..</samp></pre>< |
| 67180 | 2f 66 69 67 75 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 | /figure>......................<h |
| 671a0 | 32 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 | 2.id="Errors"><a.href="#toc-Erro |
| 671c0 | 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 |
| 671e0 | 65 66 3d 22 23 45 72 72 6f 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | ef="#Errors">..</a></h2>........ |
| 67200 | 3c 68 33 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 | <h3.id="Error-Set-Type"><a.href= |
| 67220 | 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. |
| 67240 | 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 |
| 67260 | 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 | rror-Set-Type">..</a></h3>...... |
| 67280 | 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 |
| 672a0 | 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>.... |
| 672c0 | 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 |
| 672e0 | 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. |
| 67300 | 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.... |
| 67320 | 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 |
| 67340 | 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 |
| 67360 | 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, |
| 67380 | 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 |
| 673a0 | 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>...... |
| 673c0 | 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 20 64 65 | .<p>.......The.error.set.type.de |
| 673e0 | 66 61 75 6c 74 73 20 74 6f 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | faults.to.a.<code><span.class="t |
| 67400 | 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 6f 75 | ok-type">u16</span></code>,.thou |
| 67420 | 67 68 20 69 66 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 64 69 73 74 | gh.if.the.maximum.number.of.dist |
| 67440 | 69 6e 63 74 0a 20 20 20 20 20 20 65 72 72 6f 72 20 76 61 6c 75 65 73 20 69 73 20 70 72 6f 76 69 | inct.......error.values.is.provi |
| 67460 | 64 65 64 20 76 69 61 20 74 68 65 20 3c 6b 62 64 3e 2d 2d 65 72 72 6f 72 2d 6c 69 6d 69 74 20 5b | ded.via.the.<kbd>--error-limit.[ |
| 67480 | 6e 75 6d 5d 3c 2f 6b 62 64 3e 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 70 61 72 61 6d 65 74 65 | num]</kbd>.command.line.paramete |
| 674a0 | 72 20 61 6e 20 69 6e 74 65 67 65 72 20 74 79 70 65 0a 20 20 20 20 20 20 77 69 74 68 20 74 68 65 | r.an.integer.type.......with.the |
| 674c0 | 20 6d 69 6e 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 62 69 74 73 20 72 65 71 75 69 72 65 64 | .minimum.number.of.bits.required |
| 674e0 | 20 74 6f 20 72 65 70 72 65 73 65 6e 74 20 61 6c 6c 20 6f 66 20 74 68 65 20 65 72 72 6f 72 20 76 | .to.represent.all.of.the.error.v |
| 67500 | 61 6c 75 65 73 20 77 69 6c 6c 20 62 65 20 75 73 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | alues.will.be.used........</p>.. |
| 67520 | 20 20 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 | .....<p>.......You.can.<a.href=" |
| 67540 | 23 54 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 20 65 72 | #Type-Coercion">coerce</a>.an.er |
| 67560 | 72 6f 72 20 66 72 6f 6d 20 61 20 73 75 62 73 65 74 20 74 6f 20 61 20 73 75 70 65 72 73 65 74 3a | ror.from.a.subset.to.a.superset: |
| 67580 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | .......</p>.......<figure><figca |
| 675a0 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 | ption.class="zig-cap"><cite.clas |
| 675c0 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 65 72 63 65 5f 65 72 72 6f 72 5f 73 75 62 73 65 | s="file">test_coerce_error_subse |
| 675e0 | 74 5f 74 6f 5f 73 75 70 65 72 73 65 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | t_to_superset.zig</cite></figcap |
| 67600 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tion><pre><code><span.class="tok |
| 67620 | 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 |
| 67640 | 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> |
| 67660 | 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 |
| 67680 | 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 |
| 676a0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 | k-kw">const</span>.FileOpenError |
| 676c0 | 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 73 | .=.<span.class="tok-kw">error</s |
| 676e0 | 70 61 6e 3e 7b 0a 20 20 20 20 41 63 63 65 73 73 44 65 6e 69 65 64 2c 0a 20 20 20 20 4f 75 74 4f | pan>{.....AccessDenied,.....OutO |
| 67700 | 66 4d 65 6d 6f 72 79 2c 0a 20 20 20 20 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 2c 0a 7d 3b 0a 0a 3c | fMemory,.....FileNotFound,.};..< |
| 67720 | 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> |
| 67740 | 20 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .AllocationError.=.<span.class=" |
| 67760 | 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 4f 75 74 4f 66 4d | tok-kw">error</span>{.....OutOfM |
| 67780 | 65 6d 6f 72 79 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 | emory,.};..<span.class="tok-kw"> |
| 677a0 | 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 |
| 677c0 | 22 3e 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 65 72 73 65 | ">"coerce.subset.to.superse |
| 677e0 | 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 73 73 | t"</span>.{.....<span.class |
| 67800 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 72 72 20 3d 20 66 6f 6f | ="tok-kw">const</span>.err.=.foo |
| 67820 | 28 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 2e 4f 75 74 4f 66 4d 65 6d 6f 72 79 29 3b 0a 20 | (AllocationError.OutOfMemory);.. |
| 67840 | 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 |
| 67860 | 6e 3e 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 28 65 72 72 20 3d 3d 20 46 69 6c | n>.std.testing.expect(err.==.Fil |
| 67880 | 65 4f 70 65 6e 45 72 72 6f 72 2e 4f 75 74 4f 66 4d 65 6d 6f 72 79 29 3b 0a 7d 0a 0a 3c 73 70 61 | eOpenError.OutOfMemory);.}..<spa |
| 678a0 | 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 |
| 678c0 | 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 65 72 72 3a 20 | .class="tok-fn">foo</span>(err:. |
| 678e0 | 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 29 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 20 7b | AllocationError).FileOpenError.{ |
| 67900 | 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 |
| 67920 | 3c 2f 73 70 61 6e 3e 20 65 72 72 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | </span>.err;.}</code></pre></fig |
| 67940 | 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 | ure><figure><figcaption.class="s |
| 67960 | 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | hell-cap">Shell</figcaption><pre |
| 67980 | 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 65 72 | ><samp>$.<kbd>zig.test.test_coer |
| 679a0 | 63 65 5f 65 72 72 6f 72 5f 73 75 62 73 65 74 5f 74 6f 5f 73 75 70 65 72 73 65 74 2e 7a 69 67 3c | ce_error_subset_to_superset.zig< |
| 679c0 | 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 65 72 72 6f 72 5f 73 75 62 73 | /kbd>.1/1.test_coerce_error_subs |
| 679e0 | 65 74 5f 74 6f 5f 73 75 70 65 72 73 65 74 2e 74 65 73 74 2e 63 6f 65 72 63 65 20 73 75 62 73 65 | et_to_superset.test.coerce.subse |
| 67a00 | 74 20 74 6f 20 73 75 70 65 72 73 65 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 | t.to.superset...OK.All.1.tests.p |
| 67a20 | 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 | assed..</samp></pre></figure>... |
| 67a40 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 42 75 74 20 79 6f 75 20 63 61 6e 6e 6f 74 20 3c 61 | .....<p>.......But.you.cannot.<a |
| 67a60 | 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 3c 2f 61 | .href="#Type-Coercion">coerce</a |
| 67a80 | 3e 20 61 6e 20 65 72 72 6f 72 20 66 72 6f 6d 20 61 20 73 75 70 65 72 73 65 74 20 74 6f 20 61 20 | >.an.error.from.a.superset.to.a. |
| 67aa0 | 73 75 62 73 65 74 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 | subset:.......</p>.......<figure |
| 67ac0 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 | ><figcaption.class="zig-cap"><ci |
| 67ae0 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 65 72 63 65 5f 65 72 72 6f | te.class="file">test_coerce_erro |
| 67b00 | 72 5f 73 75 70 65 72 73 65 74 5f 74 6f 5f 73 75 62 73 65 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c | r_superset_to_subset.zig</cite>< |
| 67b20 | 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | /figcaption><pre><code><span.cla |
| 67b40 | 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 69 6c 65 4f 70 65 | ss="tok-kw">const</span>.FileOpe |
| 67b60 | 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 6b 77 22 3e 65 72 | nError.=.<span.class="tok-kw">er |
| 67b80 | 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 41 63 63 65 73 73 44 65 6e 69 65 64 2c 0a 20 20 | ror</span>{.....AccessDenied,... |
| 67ba0 | 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 74 46 6f 75 6e 64 2c | ..OutOfMemory,.....FileNotFound, |
| 67bc0 | 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 63 6f 6e 73 74 3c | .};..<span.class="tok-kw">const< |
| 67be0 | 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 3c 73 70 61 6e 20 63 | /span>.AllocationError.=.<span.c |
| 67c00 | 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 20 20 20 20 | lass="tok-kw">error</span>{..... |
| 67c20 | 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | OutOfMemory,.};..<span.class="to |
| 67c40 | 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 |
| 67c60 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 65 72 63 65 20 73 75 70 65 72 73 65 74 20 74 6f | ok-str">"coerce.superset.to |
| 67c80 | 20 73 75 62 73 65 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 46 | .subset"</span>.{.....foo(F |
| 67ca0 | 69 6c 65 4f 70 65 6e 45 72 72 6f 72 2e 4f 75 74 4f 66 4d 65 6d 6f 72 79 29 20 3c 73 70 61 6e 20 | ileOpenError.OutOfMemory).<span. |
| 67cc0 | 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 7b 7d 3b 0a | class="tok-kw">catch</span>.{};. |
| 67ce0 | 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 |
| 67d00 | 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 |
| 67d20 | 3e 28 65 72 72 3a 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 29 20 41 6c 6c 6f 63 61 74 69 6f 6e | >(err:.FileOpenError).Allocation |
| 67d40 | 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 74 6f 6b 2d 6b 77 22 | Error.{.....<span.class="tok-kw" |
| 67d60 | 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 64 65 3e 3c 2f 70 72 | >return</span>.err;.}</code></pr |
| 67d80 | 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 | e></figure><figure><figcaption.c |
| 67da0 | 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 | lass="shell-cap">Shell</figcapti |
| 67dc0 | 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 | on><pre><samp>$.<kbd>zig.test.te |
| 67de0 | 73 74 5f 63 6f 65 72 63 65 5f 65 72 72 6f 72 5f 73 75 70 65 72 73 65 74 5f 74 6f 5f 73 75 62 73 | st_coerce_error_superset_to_subs |
| 67e00 | 65 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d | et.zig</kbd>.<span.class="sgr-1m |
| 67e20 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 | ">/home/andy/dev/zig/doc/langref |
| 67e40 | 2f 74 65 73 74 5f 63 6f 65 72 63 65 5f 65 72 72 6f 72 5f 73 75 70 65 72 73 65 74 5f 74 6f 5f 73 | /test_coerce_error_superset_to_s |
| 67e60 | 75 62 73 65 74 2e 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 | ubset.zig:16:12:.</span><span.cl |
| 67e80 | 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | ass="sgr-31m">error:.</span><spa |
| 67ea0 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 65 78 70 65 63 74 65 64 20 74 79 70 65 20 27 | n.class="sgr-1m">expected.type.' |
| 67ec0 | 65 72 72 6f 72 7b 4f 75 74 4f 66 4d 65 6d 6f 72 79 7d 27 2c 20 66 6f 75 6e 64 20 27 65 72 72 6f | error{OutOfMemory}',.found.'erro |
| 67ee0 | 72 7b 41 63 63 65 73 73 44 65 6e 69 65 64 2c 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 46 69 6c 65 4e | r{AccessDenied,OutOfMemory,FileN |
| 67f00 | 6f 74 46 6f 75 6e 64 7d 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 3b | otFound}'.</span>....return.err; |
| 67f20 | 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 73 67 72 2d 33 32 6d | ............<span.class="sgr-32m |
| 67f40 | 22 3e 5e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d | ">^~~.</span><span.class="sgr-1m |
| 67f60 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 | ">/home/andy/dev/zig/doc/langref |
| 67f80 | 2f 74 65 73 74 5f 63 6f 65 72 63 65 5f 65 72 72 6f 72 5f 73 75 70 65 72 73 65 74 5f 74 6f 5f 73 | /test_coerce_error_superset_to_s |
| 67fa0 | 75 62 73 65 74 2e 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 | ubset.zig:16:12:.</span><span.cl |
| 67fc0 | 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | ass="sgr-36m">note:.</span><span |
| 67fe0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 27 65 72 72 6f 72 2e 41 63 63 65 73 73 44 65 6e | .class="sgr-1m">'error.AccessDen |
| 68000 | 69 65 64 27 20 6e 6f 74 20 61 20 6d 65 6d 62 65 72 20 6f 66 20 64 65 73 74 69 6e 61 74 69 6f 6e | ied'.not.a.member.of.destination |
| 68020 | 20 65 72 72 6f 72 20 73 65 74 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | .error.set.</span><span.class="s |
| 68040 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 | gr-1m">/home/andy/dev/zig/doc/la |
| 68060 | 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 65 72 63 65 5f 65 72 72 6f 72 5f 73 75 70 65 72 73 65 74 | ngref/test_coerce_error_superset |
| 68080 | 5f 74 6f 5f 73 75 62 73 65 74 2e 7a 69 67 3a 31 36 3a 31 32 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | _to_subset.zig:16:12:.</span><sp |
| 680a0 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e | an.class="sgr-36m">note:.</span> |
| 680c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 27 65 72 72 6f 72 2e 46 69 6c 65 | <span.class="sgr-1m">'error.File |
| 680e0 | 4e 6f 74 46 6f 75 6e 64 27 20 6e 6f 74 20 61 20 6d 65 6d 62 65 72 20 6f 66 20 64 65 73 74 69 6e | NotFound'.not.a.member.of.destin |
| 68100 | 61 74 69 6f 6e 20 65 72 72 6f 72 20 73 65 74 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | ation.error.set.</span><span.cla |
| 68120 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 | ss="sgr-1m">/home/andy/dev/zig/d |
| 68140 | 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 65 72 63 65 5f 65 72 72 6f 72 5f 73 75 70 | oc/langref/test_coerce_error_sup |
| 68160 | 65 72 73 65 74 5f 74 6f 5f 73 75 62 73 65 74 2e 7a 69 67 3a 31 35 3a 32 38 3a 20 3c 2f 73 70 61 | erset_to_subset.zig:15:28:.</spa |
| 68180 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f | n><span.class="sgr-36m">note:.</ |
| 681a0 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 66 75 6e 63 74 69 | span><span.class="sgr-1m">functi |
| 681c0 | 6f 6e 20 72 65 74 75 72 6e 20 74 79 70 65 20 64 65 63 6c 61 72 65 64 20 68 65 72 65 0a 3c 2f 73 | on.return.type.declared.here.</s |
| 681e0 | 70 61 6e 3e 66 6e 20 66 6f 6f 28 65 72 72 3a 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 29 20 41 | pan>fn.foo(err:.FileOpenError).A |
| 68200 | 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | llocationError.{................ |
| 68220 | 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 73 67 72 2d 33 32 6d | ............<span.class="sgr-32m |
| 68240 | 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | ">^~~~~~~~~~~~~~~.</span><span.c |
| 68260 | 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 72 65 66 65 72 65 6e 63 65 64 20 62 79 3a 0a 20 20 20 | lass="sgr-2m">referenced.by:.... |
| 68280 | 20 74 65 73 74 2e 63 6f 65 72 63 65 20 73 75 70 65 72 73 65 74 20 74 6f 20 73 75 62 73 65 74 3a | .test.coerce.superset.to.subset: |
| 682a0 | 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f | ./home/andy/dev/zig/doc/langref/ |
| 682c0 | 74 65 73 74 5f 63 6f 65 72 63 65 5f 65 72 72 6f 72 5f 73 75 70 65 72 73 65 74 5f 74 6f 5f 73 75 | test_coerce_error_superset_to_su |
| 682e0 | 62 73 65 74 2e 7a 69 67 3a 31 32 3a 38 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 | bset.zig:12:8.</span>.</samp></p |
| 68300 | 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 | re></figure>........<p>.......Th |
| 68320 | 65 72 65 20 69 73 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 | ere.is.a.shortcut.for.declaring. |
| 68340 | 61 6e 20 65 72 72 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 | an.error.set.with.only.1.value,. |
| 68360 | 61 6e 64 20 74 68 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 | and.then.getting.that.value:.... |
| 68380 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | ...</p>.......<figure><figcaptio |
| 683a0 | 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 | n.class="zig-cap"><cite.class="f |
| 683c0 | 69 6c 65 22 3e 73 69 6e 67 6c 65 5f 76 61 6c 75 65 5f 65 72 72 6f 72 5f 73 65 74 5f 73 68 6f 72 | ile">single_value_error_set_shor |
| 683e0 | 74 63 75 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | tcut.zig</cite></figcaption><pre |
| 68400 | 3e 3c 63 6f 64 65 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 | ><code><span.class="tok-kw">cons |
| 68420 | 74 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 2d | t</span>.err.=.<span.class="tok- |
| 68440 | 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 3b 3c 2f | kw">error</span>.FileNotFound;</ |
| 68460 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 | code></pre></figure>........<p>T |
| 68480 | 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>....... |
| 684a0 | 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 | <figure><figcaption.class="zig-c |
| 684c0 | 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 69 6e 67 6c 65 5f 76 61 | ap"><cite.class="file">single_va |
| 684e0 | 6c 75 65 5f 65 72 72 6f 72 5f 73 65 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | lue_error_set.zig</cite></figcap |
| 68500 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tion><pre><code><span.class="tok |
| 68520 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 72 72 20 3d 20 28 3c 73 70 61 6e 20 63 | -kw">const</span>.err.=.(<span.c |
| 68540 | 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 46 69 6c 65 4e | lass="tok-kw">error</span>{FileN |
| 68560 | 6f 74 46 6f 75 6e 64 7d 29 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 3b 3c 2f 63 6f 64 65 3e 3c 2f | otFound}).FileNotFound;</code></ |
| 68580 | 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 | pre></figure>........<p>.......T |
| 685a0 | 68 69 73 20 62 65 63 6f 6d 65 73 20 75 73 65 66 75 6c 20 77 68 65 6e 20 75 73 69 6e 67 20 3c 61 | his.becomes.useful.when.using.<a |
| 685c0 | 20 68 72 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 | .href="#Inferred-Error-Sets">Inf |
| 685e0 | 65 72 72 65 64 20 45 72 72 6f 72 20 53 65 74 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | erred.Error.Sets</a>........</p> |
| 68600 | 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 54 68 65 2d 47 6c 6f 62 61 6c 2d 45 72 72 6f 72 2d | .......<h4.id="The-Global-Error- |
| 68620 | 53 65 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 68 65 2d 47 6c 6f 62 61 6c 2d 45 72 | Set"><a.href="#toc-The-Global-Er |
| 68640 | 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 20 53 65 74 3c 2f 61 | ror-Set">The.Global.Error.Set</a |
| 68660 | 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 68 65 2d 47 6c 6f 62 | >.<a.class="hdr".href="#The-Glob |
| 68680 | 61 6c 2d 45 72 72 6f 72 2d 53 65 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 | al-Error-Set">..</a></h4>....... |
| 686a0 | 20 3c 70 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | .<p><code><span.class="tok-type" |
| 686c0 | 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 66 65 72 73 20 74 | >anyerror</span></code>.refers.t |
| 686e0 | 6f 20 74 68 65 20 67 6c 6f 62 61 6c 20 65 72 72 6f 72 20 73 65 74 2e 0a 20 20 20 20 20 20 54 68 | o.the.global.error.set........Th |
| 68700 | 69 73 20 69 73 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 20 74 68 61 74 20 63 6f 6e 74 61 69 6e | is.is.the.error.set.that.contain |
| 68720 | 73 20 61 6c 6c 20 65 72 72 6f 72 73 20 69 6e 20 74 68 65 20 65 6e 74 69 72 65 20 63 6f 6d 70 69 | s.all.errors.in.the.entire.compi |
| 68740 | 6c 61 74 69 6f 6e 20 75 6e 69 74 2c 20 69 2e 65 2e 20 69 74 20 69 73 20 74 68 65 20 75 6e 69 6f | lation.unit,.i.e..it.is.the.unio |
| 68760 | 6e 20 6f 66 20 61 6c 6c 20 6f 74 68 65 72 20 65 72 72 6f 72 20 73 65 74 73 2e 0a 20 20 20 20 20 | n.of.all.other.error.sets....... |
| 68780 | 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 3c 61 | .</p>.......<p>.......You.can.<a |
| 687a0 | 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 3c 2f 61 | .href="#Type-Coercion">coerce</a |
| 687c0 | 3e 20 61 6e 79 20 65 72 72 6f 72 20 73 65 74 20 74 6f 20 74 68 65 20 67 6c 6f 62 61 6c 20 6f 6e | >.any.error.set.to.the.global.on |
| 687e0 | 65 2c 20 61 6e 64 20 79 6f 75 20 63 61 6e 20 65 78 70 6c 69 63 69 74 6c 79 0a 20 20 20 20 20 20 | e,.and.you.can.explicitly....... |
| 68800 | 63 61 73 74 20 61 6e 20 65 72 72 6f 72 20 6f 66 20 74 68 65 20 67 6c 6f 62 61 6c 20 65 72 72 6f | cast.an.error.of.the.global.erro |
| 68820 | 72 20 73 65 74 20 74 6f 20 61 20 6e 6f 6e 2d 67 6c 6f 62 61 6c 20 6f 6e 65 2e 20 54 68 69 73 20 | r.set.to.a.non-global.one..This. |
| 68840 | 69 6e 73 65 72 74 73 20 61 20 6c 61 6e 67 75 61 67 65 2d 6c 65 76 65 6c 0a 20 20 20 20 20 20 61 | inserts.a.language-level.......a |
| 68860 | 73 73 65 72 74 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 65 20 65 72 72 6f 72 20 76 61 6c | ssert.to.make.sure.the.error.val |
| 68880 | 75 65 20 69 73 20 69 6e 20 66 61 63 74 20 69 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e | ue.is.in.fact.in.the.destination |
| 688a0 | 20 65 72 72 6f 72 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 | .error.set........</p>.......<p> |
| 688c0 | 0a 20 20 20 20 20 20 54 68 65 20 67 6c 6f 62 61 6c 20 65 72 72 6f 72 20 73 65 74 20 73 68 6f 75 | .......The.global.error.set.shou |
| 688e0 | 6c 64 20 67 65 6e 65 72 61 6c 6c 79 20 62 65 20 61 76 6f 69 64 65 64 20 62 65 63 61 75 73 65 20 | ld.generally.be.avoided.because. |
| 68900 | 69 74 20 70 72 65 76 65 6e 74 73 20 74 68 65 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 72 20 66 | it.prevents.the.......compiler.f |
| 68920 | 72 6f 6d 20 6b 6e 6f 77 69 6e 67 20 77 68 61 74 20 65 72 72 6f 72 73 20 61 72 65 20 70 6f 73 73 | rom.knowing.what.errors.are.poss |
| 68940 | 69 62 6c 65 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 20 4b 6e 6f 77 69 6e 67 0a 20 20 | ible.at.compile-time..Knowing... |
| 68960 | 20 20 20 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d | ....the.error.set.at.compile-tim |
| 68980 | 65 20 69 73 20 62 65 74 74 65 72 20 66 6f 72 20 67 65 6e 65 72 61 74 65 64 20 64 6f 63 75 6d 65 | e.is.better.for.generated.docume |
| 689a0 | 6e 74 61 74 69 6f 6e 20 61 6e 64 0a 20 20 20 20 20 20 68 65 6c 70 66 75 6c 20 65 72 72 6f 72 20 | ntation.and.......helpful.error. |
| 689c0 | 6d 65 73 73 61 67 65 73 2c 20 73 75 63 68 20 61 73 20 66 6f 72 67 65 74 74 69 6e 67 20 61 20 70 | messages,.such.as.forgetting.a.p |
| 689e0 | 6f 73 73 69 62 6c 65 20 65 72 72 6f 72 20 76 61 6c 75 65 20 69 6e 20 61 20 3c 61 20 68 72 65 66 | ossible.error.value.in.a.<a.href |
| 68a00 | 3d 22 23 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | ="#switch">switch</a>........</p |
| 68a20 | 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 45 72 | >.....................<h3.id="Er |
| 68a40 | 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 72 | ror-Union-Type"><a.href="#toc-Er |
| 68a60 | 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 79 70 65 | ror-Union-Type">Error.Union.Type |
| 68a80 | 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 72 72 6f 72 | </a>.<a.class="hdr".href="#Error |
| 68aa0 | 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | -Union-Type">..</a></h3>........ |
| 68ac0 | 3c 70 3e 0a 20 20 20 20 20 20 41 6e 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 20 61 6e 64 20 | <p>.......An.error.set.type.and. |
| 68ae0 | 6e 6f 72 6d 61 6c 20 74 79 70 65 20 63 61 6e 20 62 65 20 63 6f 6d 62 69 6e 65 64 20 77 69 74 68 | normal.type.can.be.combined.with |
| 68b00 | 20 74 68 65 20 3c 63 6f 64 65 3e 21 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 62 69 6e 61 72 79 | .the.<code>!</code>.......binary |
| 68b20 | 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 69 6f 6e | .operator.to.form.an.error.union |
| 68b40 | 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 61 6e 0a | .type..You.are.likely.to.use.an. |
| 68b60 | 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 66 74 65 | ......error.union.type.more.ofte |
| 68b80 | 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 74 73 65 | n.than.an.error.set.type.by.itse |
| 68ba0 | 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 20 20 48 | lf........</p>.......<p>.......H |
| 68bc0 | 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 73 74 72 | ere.is.a.function.to.parse.a.str |
| 68be0 | 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 20 20 20 | ing.into.a.64-bit.integer:...... |
| 68c00 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | .</p>.......<figure><figcaption. |
| 68c20 | 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c | class="zig-cap"><cite.class="fil |
| 68c40 | 65 22 3e 65 72 72 6f 72 5f 75 6e 69 6f 6e 5f 70 61 72 73 69 6e 67 5f 75 36 34 2e 7a 69 67 3c 2f | e">error_union_parsing_u64.zig</ |
| 68c60 | 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 | cite></figcaption><pre><code><sp |
| 68c80 | 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 |
| 68ca0 | 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">@ |
| 68cc0 | 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 |
| 68ce0 | 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 |
| 68d00 | 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 6d | an.class="tok-kw">const</span>.m |
| 68d20 | 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 73 70 61 6e 20 | axInt.=.std.math.maxInt;..<span. |
| 68d40 | 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. |
| 68d60 | 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 |
| 68d80 | 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 6e 3e 28 62 75 | lass="tok-fn">parseU64</span>(bu |
| 68da0 | 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 6f 6e 73 74 3c | f:.[]<span.class="tok-kw">const< |
| 68dc0 | 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 |
| 68de0 | 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 3d 22 74 6f 6b | </span>,.radix:.<span.class="tok |
| 68e00 | 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 61 73 73 3d 22 | -type">u8</span>).!<span.class=" |
| 68e20 | 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 3c 73 70 61 6e | tok-type">u64</span>.{.....<span |
| 68e40 | 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 |
| 68e60 | 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>. |
| 68e80 | 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 |
| 68ea0 | 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 66 | an>;......<span.class="tok-kw">f |
| 68ec0 | 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 20 20 20 3c 73 | or</span>.(buf).|c|.{.........<s |
| 68ee0 | 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>. |
| 68f00 | 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 20 20 20 20 20 | digit.=.charToDigit(c);......... |
| 68f20 | 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>. |
| 68f40 | 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 20 20 20 20 20 | (digit.>=.radix).{........... |
| 68f60 | 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 |
| 68f80 | 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< |
| 68fa0 | 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 20 7d 0a 0a 20 | /span>.InvalidChar;.........}... |
| 68fc0 | 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" |
| 68fe0 | 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 20 20 20 3c 73 | >//.x.*=.radix</span>.........<s |
| 69000 | 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 6f 76 | pan.class="tok-kw">var</span>.ov |
| 69020 | 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 6d 75 | .=.<span.class="tok-builtin">@mu |
| 69040 | 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 78 2c 20 72 61 64 69 78 29 3b 0a | lWithOverflow</span>(x,.radix);. |
| 69060 | 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 69 66 3c | ........<span.class="tok-kw">if< |
| 69080 | 2f 73 70 61 6e 3e 20 28 6f 76 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | /span>.(ov[<span.class="tok-numb |
| 690a0 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | er">1</span>].!=.<span.class="to |
| 690c0 | 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 6c 61 73 73 3d | k-number">0</span>).<span.class= |
| 690e0 | 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 |
| 69100 | 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 65 72 46 6c 6f | ss="tok-kw">error</span>.OverFlo |
| 69120 | 77 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 6b 2d 63 6f 6d | w;..........<span.class="tok-com |
| 69140 | 6d 65 6e 74 22 3e 2f 2f 20 78 20 2b 3d 20 64 69 67 69 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 | ment">//.x.+=.digit</span>...... |
| 69160 | 20 20 20 6f 76 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 | ...ov.=.<span.class="tok-builtin |
| 69180 | 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 6f 76 5b 3c 73 70 | ">@addWithOverflow</span>(ov[<sp |
| 691a0 | 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 5d 2c | an.class="tok-number">0</span>], |
| 691c0 | 20 64 69 67 69 74 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 | .digit);.........<span.class="to |
| 691e0 | 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6f 76 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-kw">if</span>.(ov[<span.class= |
| 69200 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 21 3d 20 3c 73 70 61 6e 20 | "tok-number">1</span>].!=.<span. |
| 69220 | 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 20 3c 73 70 | class="tok-number">0</span>).<sp |
| 69240 | 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>. |
| 69260 | 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 |
| 69280 | 3e 2e 4f 76 65 72 46 6c 6f 77 3b 0a 20 20 20 20 20 20 20 20 78 20 3d 20 6f 76 5b 3c 73 70 61 6e | >.OverFlow;.........x.=.ov[<span |
| 692a0 | 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 3b 0a 20 | .class="tok-number">0</span>];.. |
| 692c0 | 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 3e 72 | ...}......<span.class="tok-kw">r |
| 692e0 | 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 3d 22 | eturn</span>.x;.}..<span.class=" |
| 69300 | 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 |
| 69320 | 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 73 70 | ok-fn">charToDigit</span>(c:.<sp |
| 69340 | 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>).< |
| 69360 | 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>. |
| 69380 | 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 72 | {.....<span.class="tok-kw">retur |
| 693a0 | 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 73 77 | n</span>.<span.class="tok-kw">sw |
| 693c0 | 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 6e 20 | itch</span>.(c).{.........<span. |
| 693e0 | 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 2e 2e 2e 3c 73 70 | class="tok-str">'0'</span>...<sp |
| 69400 | 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 3e 20 3d 26 | an.class="tok-str">'9'</span>.=& |
| 69420 | 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 22 3e 27 30 | gt;.c.-.<span.class="tok-str">'0 |
| 69440 | 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 73 3d 22 74 | '</span>,.........<span.class="t |
| 69460 | 6f 6b 2d 73 74 72 22 3e 27 41 27 3c 2f 73 70 61 6e 3e 2e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-str">'A'</span>...<span.class |
| 69480 | 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 3b 20 63 20 2d 20 | ="tok-str">'Z'</span>.=>.c.-. |
| 694a0 | 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 2f 73 70 61 6e 3e | <span.class="tok-str">'A'</span> |
| 694c0 | 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 30 3c 2f | .+.<span.class="tok-number">10</ |
| 694e0 | 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 22 74 6f 6b 2d | span>,.........<span.class="tok- |
| 69500 | 73 74 72 22 3e 27 61 27 3c 2f 73 70 61 6e 3e 2e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | str">'a'</span>...<span.class="t |
| 69520 | 6f 6b 2d 73 74 72 22 3e 27 7a 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 63 20 2d 20 3c 73 70 | ok-str">'z'</span>.=>.c.-.<sp |
| 69540 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 61 27 3c 2f 73 70 61 6e 3e 20 2b 20 | an.class="tok-str">'a'</span>.+. |
| 69560 | 3c 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 61 | <span.class="tok-number">10</spa |
| 69580 | 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 6b 77 22 | n>,.........<span.class="tok-kw" |
| 695a0 | 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 6d 61 78 49 6e 74 28 3c 73 70 61 6e 20 | >else</span>.=>.maxInt(<span. |
| 695c0 | 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 2c 0a 20 20 20 | class="tok-type">u8</span>),.... |
| 695e0 | 20 7d 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 |
| 69600 | 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 |
| 69620 | 75 6f 74 3b 70 61 72 73 65 20 75 36 34 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | uot;parse.u64"</span>.{.... |
| 69640 | 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 |
| 69660 | 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 22 | n>.result.=.<span.class="tok-kw" |
| 69680 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 61 72 73 65 55 36 34 28 3c 73 70 61 6e 20 63 6c 61 73 73 | >try</span>.parseU64(<span.class |
| 696a0 | 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 74 3b 3c 2f 73 70 61 | ="tok-str">"1234"</spa |
| 696c0 | 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 3c | n>,.<span.class="tok-number">10< |
| 696e0 | 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 |
| 69700 | 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 65 63 74 28 | ">try</span>.std.testing.expect( |
| 69720 | 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 65 | result.==.<span.class="tok-numbe |
| 69740 | 72 22 3e 31 32 33 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 | r">1234</span>);.}</code></pre>< |
| 69760 | 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 | /figure><figure><figcaption.clas |
| 69780 | 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | s="shell-cap">Shell</figcaption> |
| 697a0 | 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 65 72 72 6f 72 | <pre><samp>$.<kbd>zig.test.error |
| 697c0 | 5f 75 6e 69 6f 6e 5f 70 61 72 73 69 6e 67 5f 75 36 34 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 | _union_parsing_u64.zig</kbd>.1/1 |
| 697e0 | 20 65 72 72 6f 72 5f 75 6e 69 6f 6e 5f 70 61 72 73 69 6e 67 5f 75 36 34 2e 74 65 73 74 2e 70 61 | .error_union_parsing_u64.test.pa |
| 69800 | 72 73 65 20 75 36 34 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e | rse.u64...OK.All.1.tests.passed. |
| 69820 | 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c | .</samp></pre></figure>........< |
| 69840 | 70 3e 0a 20 20 20 20 20 20 4e 6f 74 69 63 65 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 | p>.......Notice.the.return.type. |
| 69860 | 69 73 20 3c 63 6f 64 65 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | is.<code>!<span.class="tok-type" |
| 69880 | 3e 75 36 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 74 | >u64</span></code>..This.means.t |
| 698a0 | 68 61 74 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20 65 69 74 68 65 72 20 72 65 | hat.the.function.......either.re |
| 698c0 | 74 75 72 6e 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 36 34 20 62 69 74 20 69 6e 74 65 67 65 72 | turns.an.unsigned.64.bit.integer |
| 698e0 | 2c 20 6f 72 20 61 6e 20 65 72 72 6f 72 2e 20 57 65 20 6c 65 66 74 20 6f 66 66 20 74 68 65 20 65 | ,.or.an.error..We.left.off.the.e |
| 69900 | 72 72 6f 72 20 73 65 74 0a 20 20 20 20 20 20 74 6f 20 74 68 65 20 6c 65 66 74 20 6f 66 20 74 68 | rror.set.......to.the.left.of.th |
| 69920 | 65 20 3c 63 6f 64 65 3e 21 3c 2f 63 6f 64 65 3e 2c 20 73 6f 20 74 68 65 20 65 72 72 6f 72 20 73 | e.<code>!</code>,.so.the.error.s |
| 69940 | 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 20 | et.is.inferred........</p>...... |
| 69960 | 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 64 | .<p>.......Within.the.function.d |
| 69980 | 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 75 | efinition,.you.can.see.some.retu |
| 699a0 | 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 20 | rn.statements.that.return....... |
| 699c0 | 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 65 | an.error,.and.at.the.bottom.a.re |
| 699e0 | 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 63 | turn.statement.that.returns.a.<c |
| 69a00 | 6f 64 65 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 36 34 3c 2f | ode><span.class="tok-type">u64</ |
| 69a20 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 42 6f 74 68 20 74 79 70 | span></code>............Both.typ |
| 69a40 | 65 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 72 | es.<a.href="#Type-Coercion">coer |
| 69a60 | 63 65 3c 2f 61 3e 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ce</a>.to.<code><span.class="tok |
| 69a80 | 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 6c 61 | -type">anyerror</span>!<span.cla |
| 69aa0 | 73 73 3d 22 74 6f 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 | ss="tok-type">u64</span></code>. |
| 69ac0 | 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 61 74 | .......</p>.......<p>.......What |
| 69ae0 | 20 69 74 20 6c 6f 6f 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 | .it.looks.like.to.use.this.funct |
| 69b00 | 69 6f 6e 20 76 61 72 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 | ion.varies.depending.on.what.you |
| 69b20 | 27 72 65 0a 20 20 20 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 | 're.......trying.to.do..One.of.t |
| 69b40 | 68 65 20 66 6f 6c 6c 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 | he.following:.......</p>.......< |
| 69b60 | 75 6c 3e 0a 20 20 20 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 | ul>.........<li>You.want.to.prov |
| 69b80 | 69 64 65 20 61 20 64 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 | ide.a.default.value.if.it.return |
| 69ba0 | 65 64 20 61 6e 20 65 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 | ed.an.error.</li>.........<li>If |
| 69bc0 | 20 69 74 20 72 65 74 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 | .it.returned.an.error.then.you.w |
| 69be0 | 61 6e 74 20 74 6f 20 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 | ant.to.return.the.same.error.</l |
| 69c00 | 69 3e 0a 20 20 20 20 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 | i>.........<li>You.know.with.com |
| 69c20 | 70 6c 65 74 65 20 63 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 | plete.certainty.it.will.not.retu |
| 69c40 | 72 6e 20 61 6e 20 65 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 | rn.an.error,.so.want.to.uncondit |
| 69c60 | 69 6f 6e 61 6c 6c 79 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 | ionally.unwrap.it.</li>......... |
| 69c80 | 3c 6c 69 3e 59 6f 75 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 | <li>You.want.to.take.a.different |
| 69ca0 | 20 61 63 74 69 6f 6e 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 | .action.for.each.possible.error. |
| 69cc0 | 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 34 20 69 64 3d 22 | </li>.......</ul>.......<h4.id=" |
| 69ce0 | 63 61 74 63 68 22 3e 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 | catch"><a.href="#toc-catch">catc |
| 69d00 | 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 23 63 61 74 63 | h</a>.<a.class="hdr".href="#catc |
| 69d20 | 68 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 66 20 79 6f 75 20 | h">..</a></h4>........<p>If.you. |
| 69d40 | 77 61 6e 74 20 74 6f 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 | want.to.provide.a.default.value, |
| 69d60 | 20 79 6f 75 20 63 61 6e 20 75 73 65 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | .you.can.use.the.<code><span.cla |
| 69d80 | 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 65 3e 20 | ss="tok-kw">catch</span></code>. |
| 69da0 | 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 3c 66 69 67 75 | binary.operator:</p>.......<figu |
| 69dc0 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c | re><figcaption.class="zig-cap">< |
| 69de0 | 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 61 74 63 68 2e 7a 69 67 3c 2f 63 69 74 | cite.class="file">catch.zig</cit |
| 69e00 | 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | e></figcaption><pre><code><span. |
| 69e20 | 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 61 72 73 | class="tok-kw">const</span>.pars |
| 69e40 | 65 55 36 34 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 | eU64.=.<span.class="tok-builtin" |
| 69e60 | 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 |
| 69e80 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 72 72 6f 72 5f 75 6e 69 6f 6e 5f 70 61 72 73 69 6e 67 5f | -str">"error_union_parsing_ |
| 69ea0 | 75 36 34 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 70 61 72 73 65 55 36 34 3b 0a | u64.zig"</span>).parseU64;. |
| 69ec0 | 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>. |
| 69ee0 | 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 73 | <span.class="tok-fn">doAThing</s |
| 69f00 | 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 70 | pan>(str:.[]<span.class="tok-typ |
| 69f20 | 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 74 | e">u8</span>).<span.class="tok-t |
| 69f40 | 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 |
| 69f60 | 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 65 72 20 | ss="tok-kw">const</span>.number. |
| 69f80 | 3d 20 70 61 72 73 65 55 36 34 28 73 74 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | =.parseU64(str,.<span.class="tok |
| 69fa0 | 2d 6e 75 6d 62 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 | -number">10</span>).<span.class= |
| 69fc0 | 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 6c 61 73 | "tok-kw">catch</span>.<span.clas |
| 69fe0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 | s="tok-number">13</span>;....._. |
| 6a000 | 3d 20 6e 75 6d 62 65 72 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | =.number;.<span.class="tok-comme |
| 6a020 | 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 65 3e | nt">//....</span>.}</code></pre> |
| 6a040 | 3c 2f 66 69 67 75 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 68 | </figure>........<p>.......In.th |
| 6a060 | 69 73 20 63 6f 64 65 2c 20 3c 63 6f 64 65 3e 6e 75 6d 62 65 72 3c 2f 63 6f 64 65 3e 20 77 69 6c | is.code,.<code>number</code>.wil |
| 6a080 | 6c 20 62 65 20 65 71 75 61 6c 20 74 6f 20 74 68 65 20 73 75 63 63 65 73 73 66 75 6c 6c 79 20 70 | l.be.equal.to.the.successfully.p |
| 6a0a0 | 61 72 73 65 64 20 73 74 72 69 6e 67 2c 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 61 20 64 65 66 | arsed.string,.or...........a.def |
| 6a0c0 | 61 75 6c 74 20 76 61 6c 75 65 20 6f 66 20 31 33 2e 20 54 68 65 20 74 79 70 65 20 6f 66 20 74 68 | ault.value.of.13..The.type.of.th |
| 6a0e0 | 65 20 72 69 67 68 74 20 68 61 6e 64 20 73 69 64 65 20 6f 66 20 74 68 65 20 62 69 6e 61 72 79 20 | e.right.hand.side.of.the.binary. |
| 6a100 | 3c 63 6f 64 65 3e 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 | <code><span.class="tok-kw">catch |
| 6a120 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 70 65 72 61 74 6f 72 20 6d 75 73 74 0a 20 20 20 | </span></code>.operator.must.... |
| 6a140 | 20 20 20 20 20 20 20 20 20 20 20 6d 61 74 63 68 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 65 | ...........match.the.unwrapped.e |
| 6a160 | 72 72 6f 72 20 75 6e 69 6f 6e 20 74 79 70 65 2c 20 6f 72 20 62 65 20 6f 66 20 74 79 70 65 20 3c | rror.union.type,.or.be.of.type.< |
| 6a180 | 63 6f 64 65 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 | code><span.class="tok-type">nore |
| 6a1a0 | 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 70 3e 0a 20 | turn</span></code>........</p>.. |
| 6a1c0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 70 72 6f | ....<p>.......If.you.want.to.pro |
| 6a1e0 | 76 69 64 65 20 61 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 77 69 74 68 0a 20 20 20 20 20 20 | vide.a.default.value.with....... |
| 6a200 | 3c 63 6f 64 65 3e 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 | <code><span.class="tok-kw">catch |
| 6a220 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 66 74 65 72 20 70 65 72 66 6f 72 6d 69 6e 67 20 | </span></code>.after.performing. |
| 6a240 | 73 6f 6d 65 20 6c 6f 67 69 63 2c 20 79 6f 75 0a 20 20 20 20 20 20 63 61 6e 20 63 6f 6d 62 69 6e | some.logic,.you.......can.combin |
| 6a260 | 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 | e.<code><span.class="tok-kw">cat |
| 6a280 | 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 74 68 20 6e 61 6d 65 64 20 3c 61 20 68 | ch</span></code>.with.named.<a.h |
| 6a2a0 | 72 65 66 3d 22 23 42 6c 6f 63 6b 73 22 3e 42 6c 6f 63 6b 73 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 | ref="#Blocks">Blocks</a>:....... |
| 6a2c0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 | </p>.......<figure><figcaption.c |
| 6a2e0 | 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 | lass="zig-cap"><cite.class="file |
| 6a300 | 22 3e 68 61 6e 64 6c 65 5f 65 72 72 6f 72 5f 77 69 74 68 5f 63 61 74 63 68 5f 62 6c 6f 63 6b 2e | ">handle_error_with_catch_block. |
| 6a320 | 7a 69 67 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | zig.zig</cite></figcaption><pre> |
| 6a340 | 3c 63 6f 64 65 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 | <code><span.class="tok-kw">const |
| 6a360 | 3c 2f 73 70 61 6e 3e 20 70 61 72 73 65 55 36 34 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </span>.parseU64.=.<span.class=" |
| 6a380 | 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 |
| 6a3a0 | 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 6f 72 5f 75 6e | n.class="tok-str">"error_un |
| 6a3c0 | 69 6f 6e 5f 70 61 72 73 69 6e 67 5f 75 36 34 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | ion_parsing_u64.zig"</span> |
| 6a3e0 | 29 2e 70 61 72 73 65 55 36 34 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ).parseU64;..<span.class="tok-kw |
| 6a400 | 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" |
| 6a420 | 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 70 61 6e 20 63 6c | >doAThing</span>(str:.[]<span.cl |
| 6a440 | 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 73 70 61 6e 20 | ass="tok-type">u8</span>).<span. |
| 6a460 | 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>.{.. |
| 6a480 | 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 |
| 6a4a0 | 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 70 61 72 73 65 55 36 34 28 73 74 72 2c 20 3c 73 70 61 | pan>.number.=.parseU64(str,.<spa |
| 6a4c0 | 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 29 20 | n.class="tok-number">10</span>). |
| 6a4e0 | 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 |
| 6a500 | 3e 20 62 6c 6b 3a 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 | >.blk:.{.........<span.class="to |
| 6a520 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 64 6f 20 74 68 69 6e 67 73 3c 2f 73 70 61 6e 3e 0a 20 | k-comment">//.do.things</span>.. |
| 6a540 | 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 62 72 65 61 | .......<span.class="tok-kw">brea |
| 6a560 | 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | k</span>.:blk.<span.class="tok-n |
| 6a580 | 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 3b 0a 20 20 20 20 5f 20 3d | umber">13</span>;.....};....._.= |
| 6a5a0 | 20 6e 75 6d 62 65 72 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 | .number;.<span.class="tok-commen |
| 6a5c0 | 74 22 3e 2f 2f 20 6e 75 6d 62 65 72 20 69 73 20 6e 6f 77 20 69 6e 69 74 69 61 6c 69 7a 65 64 3c | t">//.number.is.now.initialized< |
| 6a5e0 | 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a | /span>.}</code></pre></figure>.. |
| 6a600 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 74 72 79 22 3e 3c 61 20 68 72 65 | .............<h4.id="try"><a.hre |
| 6a620 | 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 3d 22 68 | f="#toc-try">try</a>.<a.class="h |
| 6a640 | 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 34 3e 0a 0a 20 20 20 | dr".href="#try">..</a></h4>..... |
| 6a660 | 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 20 72 65 | ...<p>Let's.say.you.wanted.to.re |
| 6a680 | 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 2c 20 6f | turn.the.error.if.you.got.one,.o |
| 6a6a0 | 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 20 20 20 | therwise.continue.with.the...... |
| 6a6c0 | 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 66 69 67 75 | .function.logic:</p>.......<figu |
| 6a6e0 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c | re><figcaption.class="zig-cap">< |
| 6a700 | 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 61 74 63 68 5f 65 72 72 5f 72 65 74 75 | cite.class="file">catch_err_retu |
| 6a720 | 72 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c | rn.zig</cite></figcaption><pre>< |
| 6a740 | 63 6f 64 65 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 | code><span.class="tok-kw">const< |
| 6a760 | 2f 73 70 61 6e 3e 20 70 61 72 73 65 55 36 34 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>.parseU64.=.<span.class="t |
| 6a780 | 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 |
| 6a7a0 | 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 6f 72 5f 75 6e 69 | .class="tok-str">"error_uni |
| 6a7c0 | 6f 6e 5f 70 61 72 73 69 6e 67 5f 75 36 34 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | on_parsing_u64.zig"</span>) |
| 6a7e0 | 2e 70 61 72 73 65 55 36 34 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .parseU64;..<span.class="tok-kw" |
| 6a800 | 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"> |
| 6a820 | 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 70 61 6e 20 63 6c 61 | doAThing</span>(str:.[]<span.cla |
| 6a840 | 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 3c 73 70 61 6e 20 | ss="tok-type">u8</span>).!<span. |
| 6a860 | 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>.{.. |
| 6a880 | 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 |
| 6a8a0 | 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 70 61 72 73 65 55 36 34 28 73 74 72 2c 20 3c 73 70 61 | pan>.number.=.parseU64(str,.<spa |
| 6a8c0 | 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 29 20 | n.class="tok-number">10</span>). |
| 6a8e0 | 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 |
| 6a900 | 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 72 65 74 | >.|err|.<span.class="tok-kw">ret |
| 6a920 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 65 72 72 3b 0a 20 20 20 20 5f 20 3d 20 6e 75 6d 62 65 72 3b 20 | urn</span>.err;....._.=.number;. |
| 6a940 | 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 2e 2e 2e | <span.class="tok-comment">//.... |
| 6a960 | 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a | </span>.}</code></pre></figure>. |
| 6a980 | 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 61 20 73 68 6f 72 | .......<p>.......There.is.a.shor |
| 6a9a0 | 74 63 75 74 20 66 6f 72 20 74 68 69 73 2e 20 54 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | tcut.for.this..The.<code><span.c |
| 6a9c0 | 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 6f 64 65 3e 20 | lass="tok-kw">try</span></code>. |
| 6a9e0 | 65 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 66 69 | expression:.......</p>.......<fi |
| 6aa00 | 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 | gure><figcaption.class="zig-cap" |
| 6aa20 | 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 72 79 2e 7a 69 67 3c 2f 63 69 74 | ><cite.class="file">try.zig</cit |
| 6aa40 | 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | e></figcaption><pre><code><span. |
| 6aa60 | 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 61 72 73 | class="tok-kw">const</span>.pars |
| 6aa80 | 65 55 36 34 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 | eU64.=.<span.class="tok-builtin" |
| 6aaa0 | 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 |
| 6aac0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 72 72 6f 72 5f 75 6e 69 6f 6e 5f 70 61 72 73 69 6e 67 5f | -str">"error_union_parsing_ |
| 6aae0 | 75 36 34 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 70 61 72 73 65 55 36 34 3b 0a | u64.zig"</span>).parseU64;. |
| 6ab00 | 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>. |
| 6ab20 | 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 73 | <span.class="tok-fn">doAThing</s |
| 6ab40 | 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 70 | pan>(str:.[]<span.class="tok-typ |
| 6ab60 | 65 22 3e 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 | e">u8</span>).!<span.class="tok- |
| 6ab80 | 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 |
| 6aba0 | 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 65 72 | ass="tok-kw">const</span>.number |
| 6abc0 | 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 61 | .=.<span.class="tok-kw">try</spa |
| 6abe0 | 6e 3e 20 70 61 72 73 65 55 36 34 28 73 74 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n>.parseU64(str,.<span.class="to |
| 6ac00 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 5f 20 3d 20 6e 75 | k-number">10</span>);....._.=.nu |
| 6ac20 | 6d 62 65 72 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 | mber;.<span.class="tok-comment"> |
| 6ac40 | 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 3c 2f 66 69 | //....</span>.}</code></pre></fi |
| 6ac60 | 67 75 72 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 3e 3c 73 70 | gure>........<p>.......<code><sp |
| 6ac80 | 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 6f | an.class="tok-kw">try</span></co |
| 6aca0 | 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 70 | de>.evaluates.an.error.union.exp |
| 6acc0 | 72 65 73 73 69 6f 6e 2e 20 49 66 20 69 74 20 69 73 20 61 6e 20 65 72 72 6f 72 2c 20 69 74 20 72 | ression..If.it.is.an.error,.it.r |
| 6ace0 | 65 74 75 72 6e 73 0a 20 20 20 20 20 20 66 72 6f 6d 20 74 68 65 20 63 75 72 72 65 6e 74 20 66 75 | eturns.......from.the.current.fu |
| 6ad00 | 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 72 2e 20 4f 74 68 65 | nction.with.the.same.error..Othe |
| 6ad20 | 72 77 69 73 65 2c 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 72 65 73 75 6c 74 73 20 69 6e | rwise,.the.expression.results.in |
| 6ad40 | 0a 20 20 20 20 20 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 76 61 6c 75 65 2e 0a 20 20 20 20 | .......the.unwrapped.value...... |
| 6ad60 | 20 20 3c 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 20 20 | ..</p>..............<p>......... |
| 6ad80 | 4d 61 79 62 65 20 79 6f 75 20 6b 6e 6f 77 20 77 69 74 68 20 63 6f 6d 70 6c 65 74 65 20 63 65 72 | Maybe.you.know.with.complete.cer |
| 6ada0 | 74 61 69 6e 74 79 20 74 68 61 74 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 77 69 6c 6c 20 6e | tainty.that.an.expression.will.n |
| 6adc0 | 65 76 65 72 20 62 65 20 61 6e 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 20 20 49 6e 20 74 68 69 | ever.be.an.error..........In.thi |
| 6ade0 | 73 20 63 61 73 65 20 79 6f 75 20 63 61 6e 20 64 6f 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f | s.case.you.can.do.this:.......</ |
| 6ae00 | 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | p>.......<code><span.class="tok- |
| 6ae20 | 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 70 61 72 73 65 55 | kw">const</span>.number.=.parseU |
| 6ae40 | 36 34 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 | 64(<span.class="tok-str">"1 |
| 6ae60 | 32 33 34 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 | 234"</span>,.<span.class="t |
| 6ae80 | 6f 6b 2d 6e 75 6d 62 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 | ok-number">10</span>).<span.clas |
| 6aea0 | 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 6c | s="tok-kw">catch</span>.<span.cl |
| 6aec0 | 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>; |
| 6aee0 | 3c 2f 63 6f 64 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 | </code>.......<p>.......Here.we. |
| 6af00 | 6b 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 | know.for.sure.that."1234".will.p |
| 6af20 | 61 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 | arse.successfully..So.we.put.the |
| 6af40 | 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .......<code><span.class="tok-kw |
| 6af60 | 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 20 76 61 6c 75 | ">unreachable</span></code>.valu |
| 6af80 | 65 20 6f 6e 20 74 68 65 20 72 69 67 68 74 20 68 61 6e 64 20 73 69 64 65 2e 0a 20 20 20 20 20 20 | e.on.the.right.hand.side........ |
| 6afa0 | 3c 63 6f 64 65 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 | <code><span.class="tok-kw">unrea |
| 6afc0 | 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 6e 76 6f 6b 65 73 20 73 61 66 | chable</span></code>.invokes.saf |
| 6afe0 | 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 | ety-checked.<a.href="#Illegal-Be |
| 6b000 | 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2c 20 73 6f | havior">Illegal.Behavior</a>,.so |
| 6b020 | 0a 20 20 20 20 20 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 44 65 62 75 67 22 3e 44 65 62 75 67 | .......in.<a.href="#Debug">Debug |
| 6b040 | 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 61 66 65 22 3e | </a>.and.<a.href="#ReleaseSafe"> |
| 6b060 | 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 61 3e 2c 20 74 72 69 67 67 65 72 73 20 61 20 73 61 66 65 | ReleaseSafe</a>,.triggers.a.safe |
| 6b080 | 74 79 20 70 61 6e 69 63 20 62 79 20 64 65 66 61 75 6c 74 2e 20 53 6f 2c 20 77 68 69 6c 65 0a 20 | ty.panic.by.default..So,.while.. |
| 6b0a0 | 20 20 20 20 20 77 65 27 72 65 20 64 65 62 75 67 67 69 6e 67 20 74 68 65 20 61 70 70 6c 69 63 61 | .....we're.debugging.the.applica |
| 6b0c0 | 74 69 6f 6e 2c 20 69 66 20 74 68 65 72 65 20 3c 65 6d 3e 77 61 73 3c 2f 65 6d 3e 20 61 20 73 75 | tion,.if.there.<em>was</em>.a.su |
| 6b0e0 | 72 70 72 69 73 65 20 65 72 72 6f 72 20 68 65 72 65 2c 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 | rprise.error.here,.the.applicati |
| 6b100 | 6f 6e 0a 20 20 20 20 20 20 77 6f 75 6c 64 20 63 72 61 73 68 20 61 70 70 72 6f 70 72 69 61 74 65 | on.......would.crash.appropriate |
| 6b120 | 6c 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 20 20 59 | ly........</p>.......<p>.......Y |
| 6b140 | 6f 75 20 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 | ou.may.want.to.take.a.different. |
| 6b160 | 61 63 74 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 | action.for.every.situation..For. |
| 6b180 | 74 68 61 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 | that,.we.combine.......the.<a.hr |
| 6b1a0 | 65 66 3d 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 | ef="#if">if</a>.and.<a.href="#sw |
| 6b1c0 | 69 74 63 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 | itch">switch</a>.expression:.... |
| 6b1e0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | ...</p>.......<figure><figcaptio |
| 6b200 | 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 | n.class="zig-cap"><cite.class="f |
| 6b220 | 69 6c 65 22 3e 68 61 6e 64 6c 65 5f 61 6c 6c 5f 65 72 72 6f 72 5f 73 63 65 6e 61 72 69 6f 73 2e | ile">handle_all_error_scenarios. |
| 6b240 | 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 | zig</cite></figcaption><pre><cod |
| 6b260 | 65 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 | e><span.class="tok-kw">fn</span> |
| 6b280 | 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</ |
| 6b2a0 | 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 |
| 6b2c0 | 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- |
| 6b2e0 | 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 |
| 6b300 | 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 |
| 6b320 | 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 |
| 6b340 | 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 |
| 6b360 | 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);.... |
| 6b380 | 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 |
| 6b3a0 | 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 |
| 6b3c0 | 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 |
| 6b3e0 | 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 |
| 6b400 | 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 |
| 6b420 | 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. |
| 6b440 | 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>.........},... |
| 6b460 | 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"> |
| 6b480 | 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 |
| 6b4a0 | 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 |
| 6b4c0 | 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>.........< |
| 6b4e0 | 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> |
| 6b500 | 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=" |
| 6b520 | 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>,..... |
| 6b540 | 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 | }.}</code></pre></figure>....... |
| 6b560 | 3c 70 3e 0a 20 20 20 20 20 20 46 69 6e 61 6c 6c 79 2c 20 79 6f 75 20 6d 61 79 20 77 61 6e 74 20 | <p>.......Finally,.you.may.want. |
| 6b580 | 74 6f 20 68 61 6e 64 6c 65 20 6f 6e 6c 79 20 73 6f 6d 65 20 65 72 72 6f 72 73 2e 20 46 6f 72 20 | to.handle.only.some.errors..For. |
| 6b5a0 | 74 68 61 74 2c 20 79 6f 75 20 63 61 6e 20 63 61 70 74 75 72 65 20 74 68 65 20 75 6e 68 61 6e 64 | that,.you.can.capture.the.unhand |
| 6b5c0 | 6c 65 64 0a 20 20 20 20 20 20 65 72 72 6f 72 73 20 69 6e 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 | led.......errors.in.the.<code><s |
| 6b5e0 | 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 3c 2f | pan.class="tok-kw">else</span></ |
| 6b600 | 63 6f 64 65 3e 20 63 61 73 65 2c 20 77 68 69 63 68 20 6e 6f 77 20 63 6f 6e 74 61 69 6e 73 20 61 | code>.case,.which.now.contains.a |
| 6b620 | 20 6e 61 72 72 6f 77 65 72 20 65 72 72 6f 72 20 73 65 74 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | .narrower.error.set:.......</p>. |
| 6b640 | 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | ......<figure><figcaption.class= |
| 6b660 | 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 68 61 6e | "zig-cap"><cite.class="file">han |
| 6b680 | 64 6c 65 5f 73 6f 6d 65 5f 65 72 72 6f 72 5f 73 63 65 6e 61 72 69 6f 73 2e 7a 69 67 3c 2f 63 69 | dle_some_error_scenarios.zig</ci |
| 6b6a0 | 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e | te></figcaption><pre><code><span |
| 6b6c0 | 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. |
| 6b6e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 41 6e 6f 74 68 65 72 54 68 69 6e 67 3c 2f 73 | class="tok-fn">doAnotherThing</s |
| 6b700 | 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 70 | pan>(str:.[]<span.class="tok-typ |
| 6b720 | 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 6b | e">u8</span>).<span.class="tok-k |
| 6b740 | 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 49 6e 76 61 6c 69 64 43 68 61 72 7d 21 3c 73 70 | w">error</span>{InvalidChar}!<sp |
| 6b760 | 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>. |
| 6b780 | 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 3c 2f 73 | {.....<span.class="tok-kw">if</s |
| 6b7a0 | 70 61 6e 3e 20 28 70 61 72 73 65 55 36 34 28 73 74 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pan>.(parseU64(str,.<span.class= |
| 6b7c0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 29 20 7c 6e 75 6d 62 65 72 | "tok-number">10</span>)).|number |
| 6b7e0 | 7c 20 7b 0a 20 20 20 20 20 20 20 20 64 6f 53 6f 6d 65 74 68 69 6e 67 57 69 74 68 4e 75 6d 62 65 | |.{.........doSomethingWithNumbe |
| 6b800 | 72 28 6e 75 6d 62 65 72 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r(number);.....}.<span.class="to |
| 6b820 | 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 6e 20 63 6c | k-kw">else</span>.|err|.<span.cl |
| 6b840 | 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 65 72 72 29 | ass="tok-kw">switch</span>.(err) |
| 6b860 | 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"> |
| 6b880 | 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 7b 0a 20 20 | error</span>.Overflow.=>.{... |
| 6b8a0 | 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 6d 65 | ..........<span.class="tok-comme |
| 6b8c0 | 6e 74 22 3e 2f 2f 20 68 61 6e 64 6c 65 20 6f 76 65 72 66 6c 6f 77 2e 2e 2e 3c 2f 73 70 61 6e 3e | nt">//.handle.overflow...</span> |
| 6b8e0 | 0a 20 20 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 | .........},.........<span.class= |
| 6b900 | 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 7c 6c 65 66 74 | "tok-kw">else</span>.=>.|left |
| 6b920 | 6f 76 65 72 5f 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 72 | over_err|.<span.class="tok-kw">r |
| 6b940 | 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 6c 65 66 74 6f 76 65 72 5f 65 72 72 2c 0a 20 20 20 20 7d | eturn</span>.leftover_err,.....} |
| 6b960 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c | .}</code></pre></figure>.......< |
| 6b980 | 70 3e 0a 20 20 20 20 20 20 59 6f 75 20 6d 75 73 74 20 75 73 65 20 74 68 65 20 76 61 72 69 61 62 | p>.......You.must.use.the.variab |
| 6b9a0 | 6c 65 20 63 61 70 74 75 72 65 20 73 79 6e 74 61 78 2e 20 49 66 20 79 6f 75 20 64 6f 6e 27 74 20 | le.capture.syntax..If.you.don't. |
| 6b9c0 | 6e 65 65 64 20 74 68 65 0a 20 20 20 20 20 20 76 61 72 69 61 62 6c 65 2c 20 79 6f 75 20 63 61 6e | need.the.......variable,.you.can |
| 6b9e0 | 20 63 61 70 74 75 72 65 20 77 69 74 68 20 3c 63 6f 64 65 3e 5f 3c 2f 63 6f 64 65 3e 20 61 6e 64 | .capture.with.<code>_</code>.and |
| 6ba00 | 20 61 76 6f 69 64 20 74 68 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | .avoid.the.......<code><span.cla |
| 6ba20 | 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 65 3e | ss="tok-kw">switch</span></code> |
| 6ba40 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | ........</p>.......<figure><figc |
| 6ba60 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 | aption.class="zig-cap"><cite.cla |
| 6ba80 | 73 73 3d 22 66 69 6c 65 22 3e 68 61 6e 64 6c 65 5f 6e 6f 5f 65 72 72 6f 72 5f 73 63 65 6e 61 72 | ss="file">handle_no_error_scenar |
| 6baa0 | 69 6f 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | ios.zig</cite></figcaption><pre> |
| 6bac0 | 3c 63 6f 64 65 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 | <code><span.class="tok-kw">fn</s |
| 6bae0 | 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 44 69 66 | pan>.<span.class="tok-fn">doADif |
| 6bb00 | 66 65 72 65 6e 74 54 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 73 74 72 3a 20 5b 5d 3c 73 70 61 6e 20 | ferentThing</span>(str:.[]<span. |
| 6bb20 | 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 73 70 61 | class="tok-type">u8</span>).<spa |
| 6bb40 | 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>.{ |
| 6bb60 | 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 70 | .....<span.class="tok-kw">if</sp |
| 6bb80 | 61 6e 3e 20 28 70 61 72 73 65 55 36 34 28 73 74 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | an>.(parseU64(str,.<span.class=" |
| 6bba0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 29 20 7c 6e 75 6d 62 65 72 7c | tok-number">10</span>)).|number| |
| 6bbc0 | 20 7b 0a 20 20 20 20 20 20 20 20 64 6f 53 6f 6d 65 74 68 69 6e 67 57 69 74 68 4e 75 6d 62 65 72 | .{.........doSomethingWithNumber |
| 6bbe0 | 28 6e 75 6d 62 65 72 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 | (number);.....}.<span.class="tok |
| 6bc00 | 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c | -kw">else</span>.|_|.{.........< |
| 6bc20 | 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 20 61 | span.class="tok-comment">//.do.a |
| 6bc40 | 73 20 79 6f 75 27 64 20 6c 69 6b 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 | s.you'd.like</span>.....}.}</cod |
| 6bc60 | 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 | e></pre></figure>.......<h4.id=" |
| 6bc80 | 65 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 | errdefer"><a.href="#toc-errdefer |
| 6bca0 | 22 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 | ">errdefer</a>.<a.class="hdr".hr |
| 6bcc0 | 65 66 3d 22 23 65 72 72 64 65 66 65 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 | ef="#errdefer">..</a></h4>...... |
| 6bce0 | 20 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 | ..<p>.......The.other.component. |
| 6bd00 | 74 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 | to.error.handling.is.defer.state |
| 6bd20 | 6d 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 | ments........In.addition.to.an.u |
| 6bd40 | 6e 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 | nconditional.<a.href="#defer">de |
| 6bd60 | 66 65 72 3c 2f 61 3e 2c 20 5a 69 67 20 68 61 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | fer</a>,.Zig.has.<code><span.cla |
| 6bd80 | 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 3c 2f 63 6f 64 | ss="tok-kw">errdefer</span></cod |
| 6bda0 | 65 3e 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 65 76 61 6c 75 61 74 65 73 20 74 68 65 20 64 65 | e>,.......which.evaluates.the.de |
| 6bdc0 | 66 65 72 72 65 64 20 65 78 70 72 65 73 73 69 6f 6e 20 6f 6e 20 62 6c 6f 63 6b 20 65 78 69 74 20 | ferred.expression.on.block.exit. |
| 6bde0 | 70 61 74 68 20 69 66 20 61 6e 64 20 6f 6e 6c 79 20 69 66 0a 20 20 20 20 20 20 74 68 65 20 66 75 | path.if.and.only.if.......the.fu |
| 6be00 | 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 65 64 20 77 69 74 68 20 61 6e 20 65 72 72 6f 72 20 66 72 | nction.returned.with.an.error.fr |
| 6be20 | 6f 6d 20 74 68 65 20 62 6c 6f 63 6b 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | om.the.block........</p>.......< |
| 6be40 | 70 3e 0a 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 | p>.......Example:.......</p>.... |
| 6be60 | 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 | ...<figure><figcaption.class="zi |
| 6be80 | 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 65 72 72 64 65 66 | g-cap"><cite.class="file">errdef |
| 6bea0 | 65 72 5f 65 78 61 6d 70 6c 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | er_example.zig</cite></figcaptio |
| 6bec0 | 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n><pre><code><span.class="tok-kw |
| 6bee0 | 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" |
| 6bf00 | 3e 63 72 65 61 74 65 46 6f 6f 3c 2f 73 70 61 6e 3e 28 70 61 72 61 6d 3a 20 3c 73 70 61 6e 20 63 | >createFoo</span>(param:.<span.c |
| 6bf20 | 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 21 46 6f 6f | lass="tok-type">i32</span>).!Foo |
| 6bf40 | 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 |
| 6bf60 | 74 3c 2f 73 70 61 6e 3e 20 66 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | t</span>.foo.=.<span.class="tok- |
| 6bf80 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 74 72 79 54 6f 41 6c 6c 6f 63 61 74 65 46 6f 6f 28 | kw">try</span>.tryToAllocateFoo( |
| 6bfa0 | 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 6d 65 6e 74 22 | );.....<span.class="tok-comment" |
| 6bfc0 | 3e 2f 2f 20 6e 6f 77 20 77 65 20 68 61 76 65 20 61 6c 6c 6f 63 61 74 65 64 20 66 6f 6f 2e 20 77 | >//.now.we.have.allocated.foo..w |
| 6bfe0 | 65 20 6e 65 65 64 20 74 6f 20 66 72 65 65 20 69 74 20 69 66 20 74 68 65 20 66 75 6e 63 74 69 6f | e.need.to.free.it.if.the.functio |
| 6c000 | 6e 20 66 61 69 6c 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 | n.fails.</span>.....<span.class= |
| 6c020 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 75 74 20 77 65 20 77 61 6e 74 20 74 6f 20 | "tok-comment">//.but.we.want.to. |
| 6c040 | 72 65 74 75 72 6e 20 69 74 20 69 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 73 75 63 63 65 65 | return.it.if.the.function.succee |
| 6c060 | 64 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 74 6f 6b 2d | ds.</span>.....<span.class="tok- |
| 6c080 | 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 64 65 61 6c 6c 6f 63 61 74 65 46 6f | kw">errdefer</span>.deallocateFo |
| 6c0a0 | 6f 28 66 6f 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 | o(foo);......<span.class="tok-kw |
| 6c0c0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 6d 70 5f 62 75 66 20 3d 20 61 6c 6c 6f 63 61 74 | ">const</span>.tmp_buf.=.allocat |
| 6c0e0 | 65 54 6d 70 42 75 66 66 65 72 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | eTmpBuffer().<span.class="tok-kw |
| 6c100 | 22 3e 6f 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 | ">orelse</span>.<span.class="tok |
| 6c120 | 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 22 | -kw">return</span>.<span.class=" |
| 6c140 | 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 6f 72 79 | tok-kw">error</span>.OutOfMemory |
| 6c160 | 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 22 3e | ;.....<span.class="tok-comment"> |
| 6c180 | 2f 2f 20 74 6d 70 5f 62 75 66 20 69 73 20 74 72 75 6c 79 20 61 20 74 65 6d 70 6f 72 61 72 79 20 | //.tmp_buf.is.truly.a.temporary. |
| 6c1a0 | 72 65 73 6f 75 72 63 65 2c 20 61 6e 64 20 77 65 20 66 6f 72 20 73 75 72 65 20 77 61 6e 74 20 74 | resource,.and.we.for.sure.want.t |
| 6c1c0 | 6f 20 63 6c 65 61 6e 20 69 74 20 75 70 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | o.clean.it.up</span>.....<span.c |
| 6c1e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 65 66 6f 72 65 20 74 68 69 | lass="tok-comment">//.before.thi |
| 6c200 | 73 20 62 6c 6f 63 6b 20 6c 65 61 76 65 73 20 73 63 6f 70 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | s.block.leaves.scope</span>..... |
| 6c220 | 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 61 6e | <span.class="tok-kw">defer</span |
| 6c240 | 3e 20 64 65 61 6c 6c 6f 63 61 74 65 54 6d 70 42 75 66 66 65 72 28 74 6d 70 5f 62 75 66 29 3b 0a | >.deallocateTmpBuffer(tmp_buf);. |
| 6c260 | 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 70 | .....<span.class="tok-kw">if</sp |
| 6c280 | 61 6e 3e 20 28 70 61 72 61 6d 20 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | an>.(param.>.<span.class="tok |
| 6c2a0 | 2d 6e 75 6d 62 65 72 22 3e 31 33 33 37 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 | -number">1337</span>).<span.clas |
| 6c2c0 | 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 |
| 6c2e0 | 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 49 6e 76 61 6c | lass="tok-kw">error</span>.Inval |
| 6c300 | 69 64 50 61 72 61 6d 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 | idParam;......<span.class="tok-c |
| 6c320 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 68 65 72 65 20 74 68 65 20 65 72 72 64 65 66 65 72 20 77 69 6c | omment">//.here.the.errdefer.wil |
| 6c340 | 6c 20 6e 6f 74 20 72 75 6e 20 73 69 6e 63 65 20 77 65 27 72 65 20 72 65 74 75 72 6e 69 6e 67 20 | l.not.run.since.we're.returning. |
| 6c360 | 73 75 63 63 65 73 73 20 66 72 6f 6d 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 2e 3c 2f 73 70 61 6e | success.from.the.function.</span |
| 6c380 | 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"> |
| 6c3a0 | 2f 2f 20 62 75 74 20 74 68 65 20 64 65 66 65 72 20 77 69 6c 6c 20 72 75 6e 21 3c 2f 73 70 61 6e | //.but.the.defer.will.run!</span |
| 6c3c0 | 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 74 75 72 | >.....<span.class="tok-kw">retur |
| 6c3e0 | 6e 3c 2f 73 70 61 6e 3e 20 66 6f 6f 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | n</span>.foo;.}</code></pre></fi |
| 6c400 | 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 6e 65 61 74 20 74 | gure>.......<p>.......The.neat.t |
| 6c420 | 68 69 6e 67 20 61 62 6f 75 74 20 74 68 69 73 20 69 73 20 74 68 61 74 20 79 6f 75 20 67 65 74 20 | hing.about.this.is.that.you.get. |
| 6c440 | 72 6f 62 75 73 74 20 65 72 72 6f 72 20 68 61 6e 64 6c 69 6e 67 20 77 69 74 68 6f 75 74 0a 20 20 | robust.error.handling.without... |
| 6c460 | 20 20 20 20 74 68 65 20 76 65 72 62 6f 73 69 74 79 20 61 6e 64 20 63 6f 67 6e 69 74 69 76 65 20 | ....the.verbosity.and.cognitive. |
| 6c480 | 6f 76 65 72 68 65 61 64 20 6f 66 20 74 72 79 69 6e 67 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 | overhead.of.trying.to.make.sure. |
| 6c4a0 | 65 76 65 72 79 20 65 78 69 74 20 70 61 74 68 0a 20 20 20 20 20 20 69 73 20 63 6f 76 65 72 65 64 | every.exit.path.......is.covered |
| 6c4c0 | 2e 20 54 68 65 20 64 65 61 6c 6c 6f 63 61 74 69 6f 6e 20 63 6f 64 65 20 69 73 20 61 6c 77 61 79 | ..The.deallocation.code.is.alway |
| 6c4e0 | 73 20 64 69 72 65 63 74 6c 79 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 68 65 20 61 6c 6c 6f 63 61 74 | s.directly.following.the.allocat |
| 6c500 | 69 6f 6e 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 3e 0a 20 | ion.code........</p>.......<p>.. |
| 6c520 | 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .....The.<code><span.class="tok- |
| 6c540 | 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 20 73 74 61 74 65 | kw">errdefer</span></code>.state |
| 6c560 | 6d 65 6e 74 20 63 61 6e 20 6f 70 74 69 6f 6e 61 6c 6c 79 20 63 61 70 74 75 72 65 20 74 68 65 20 | ment.can.optionally.capture.the. |
| 6c580 | 65 72 72 6f 72 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e | error:.......</p>.......<figure> |
| 6c5a0 | 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 | <figcaption.class="zig-cap"><cit |
| 6c5c0 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 65 72 72 64 65 66 65 72 5f 63 61 70 | e.class="file">test_errdefer_cap |
| 6c5e0 | 74 75 72 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | ture.zig</cite></figcaption><pre |
| 6c600 | 3e 3c 63 6f 64 65 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 | ><code><span.class="tok-kw">cons |
| 6c620 | 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- |
| 6c640 | 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 |
| 6c660 | 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 |
| 6c680 | 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 66 6e 3c | pan>);..<span.class="tok-kw">fn< |
| 6c6a0 | 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 63 61 70 74 | /span>.<span.class="tok-fn">capt |
| 6c6c0 | 75 72 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 63 61 70 74 75 72 65 64 3a 20 2a 3f 3c 73 70 61 | ureError</span>(captured:.*?<spa |
| 6c6e0 | 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 |
| 6c700 | 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 76 6f 69 64 | n>).!<span.class="tok-type">void |
| 6c720 | 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 |
| 6c740 | 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 | w">errdefer</span>.|err|.{...... |
| 6c760 | 20 20 20 63 61 70 74 75 72 65 64 2e 2a 20 3d 20 65 72 72 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c | ...captured.*.=.err;.....}.....< |
| 6c780 | 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 |
| 6c7a0 | 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 2f 73 70 | >.<span.class="tok-kw">error</sp |
| 6c7c0 | 61 6e 3e 2e 47 65 6e 65 72 61 6c 46 61 69 6c 75 72 65 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | an>.GeneralFailure;.}..<span.cla |
| 6c7e0 | 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 |
| 6c800 | 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 66 65 72 20 63 61 70 | ass="tok-str">"errdefer.cap |
| 6c820 | 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 73 70 61 6e 20 63 6c | ture"</span>.{.....<span.cl |
| 6c840 | 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 61 70 74 75 72 65 64 | ass="tok-kw">var</span>.captured |
| 6c860 | 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 61 6e 79 65 72 72 | :.?<span.class="tok-type">anyerr |
| 6c880 | 6f 72 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 | or</span>.=.<span.class="tok-nul |
| 6c8a0 | 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 73 | l">null</span>;......<span.class |
| 6c8c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 61 70 74 75 72 65 45 72 72 6f | ="tok-kw">if</span>.(captureErro |
| 6c8e0 | 72 28 26 61 6d 70 3b 63 61 70 74 75 72 65 64 29 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | r(&captured)).<span.class="t |
| 6c900 | 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 20 3c 73 70 61 6e 20 | ok-kw">unreachable</span>.<span. |
| 6c920 | 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 65 72 72 7c | class="tok-kw">else</span>.|err| |
| 6c940 | 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"> |
| 6c960 | 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 65 63 74 45 71 75 | try</span>.std.testing.expectEqu |
| 6c980 | 61 6c 28 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 | al(<span.class="tok-kw">error</s |
| 6c9a0 | 70 61 6e 3e 2e 47 65 6e 65 72 61 6c 46 61 69 6c 75 72 65 2c 20 63 61 70 74 75 72 65 64 2e 3f 29 | pan>.GeneralFailure,.captured.?) |
| 6c9c0 | 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 |
| 6c9e0 | 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 65 63 74 45 71 75 61 | ry</span>.std.testing.expectEqua |
| 6ca00 | 6c 28 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 | l(<span.class="tok-kw">error</sp |
| 6ca20 | 61 6e 3e 2e 47 65 6e 65 72 61 6c 46 61 69 6c 75 72 65 2c 20 65 72 72 29 3b 0a 20 20 20 20 7d 0a | an>.GeneralFailure,.err);.....}. |
| 6ca40 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c | }</code></pre></figure><figure>< |
| 6ca60 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 | figcaption.class="shell-cap">She |
| 6ca80 | 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 | ll</figcaption><pre><samp>$.<kbd |
| 6caa0 | 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 65 72 72 64 65 66 65 72 5f 63 61 70 74 75 72 65 2e | >zig.test.test_errdefer_capture. |
| 6cac0 | 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 65 72 72 64 65 66 65 72 5f 63 61 70 74 | zig</kbd>.1/1.test_errdefer_capt |
| 6cae0 | 75 72 65 2e 74 65 73 74 2e 65 72 72 64 65 66 65 72 20 63 61 70 74 75 72 65 2e 2e 2e 4f 4b 0a 41 | ure.test.errdefer.capture...OK.A |
| 6cb00 | 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e | ll.1.tests.passed..</samp></pre> |
| 6cb20 | 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | </figure>..............<p>...... |
| 6cb40 | 20 41 20 63 6f 75 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 | .A.couple.of.other.tidbits.about |
| 6cb60 | 20 65 72 72 6f 72 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 | .error.handling:.......</p>..... |
| 6cb80 | 20 20 3c 75 6c 3e 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 | ..<ul>.........<li>These.primiti |
| 6cba0 | 76 65 73 20 67 69 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 | ves.give.enough.expressiveness.t |
| 6cbc0 | 68 61 74 20 69 74 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 | hat.it's.completely.practical... |
| 6cbe0 | 20 20 20 20 20 20 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 | ..........to.have.failing.to.che |
| 6cc00 | 63 6b 20 66 6f 72 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 | ck.for.an.error.be.a.compile.err |
| 6cc20 | 6f 72 2e 20 49 66 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 | or..If.you.really.want.......... |
| 6cc40 | 20 20 20 74 6f 20 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 | ...to.ignore.the.error,.you.can. |
| 6cc60 | 61 64 64 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | add.<code><span.class="tok-kw">c |
| 6cc80 | 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 22 | atch</span>.<span.class="tok-kw" |
| 6cca0 | 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 20 61 6e 64 0a 20 | >unreachable</span></code>.and.. |
| 6ccc0 | 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 65 6e 65 66 69 74 | ...........get.the.added.benefit |
| 6cce0 | 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 52 65 6c 65 61 73 | .of.crashing.in.Debug.and.Releas |
| 6cd00 | 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 74 69 6f 6e 20 77 | eSafe.modes.if.your.assumption.w |
| 6cd20 | 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 20 20 20 20 20 20 | as.wrong..........</li>......... |
| 6cd40 | 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 6e 64 65 72 73 74 | <li>...........Since.Zig.underst |
| 6cd60 | 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 72 65 2d 77 65 69 | ands.error.types,.it.can.pre-wei |
| 6cd80 | 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 20 20 20 20 20 20 | ght.branches.in.favor.of........ |
| 6cda0 | 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 75 73 74 20 61 20 | ...errors.not.occurring..Just.a. |
| 6cdc0 | 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 20 74 68 61 74 20 | small.optimization.benefit.that. |
| 6cde0 | 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 20 69 6e 20 6f 74 | is.not.available...........in.ot |
| 6ce00 | 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 69 3e 0a 20 20 20 | her.languages..........</li>.... |
| 6ce20 | 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 3a 3c 2f 70 3e 3c | ...</ul>.......<p>See.also:</p>< |
| 6ce40 | 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 65 66 65 72 3c 2f | ul>.<li><a.href="#defer">defer</ |
| 6ce60 | 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 69 66 3c 2f 61 3e | a></li>.<li><a.href="#if">if</a> |
| 6ce80 | 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 22 3e 73 77 69 74 | </li>.<li><a.href="#switch">swit |
| 6cea0 | 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 3c 70 3e 41 6e 20 | ch</a></li>.</ul>.........<p>An. |
| 6cec0 | 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 68 20 74 68 65 20 | error.union.is.created.with.the. |
| 6cee0 | 3c 63 6f 64 65 3e 21 3c 2f 63 6f 64 65 3e 20 62 69 6e 61 72 79 20 6f 70 65 72 61 74 6f 72 2e 0a | <code>!</code>.binary.operator.. |
| 6cf00 | 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 75 73 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 72 | ......You.can.use.compile-time.r |
| 6cf20 | 65 66 6c 65 63 74 69 6f 6e 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 20 63 68 69 6c 64 20 74 79 | eflection.to.access.the.child.ty |
| 6cf40 | 70 65 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 | pe.of.an.error.union:</p>....... |
| 6cf60 | 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 | <figure><figcaption.class="zig-c |
| 6cf80 | 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 65 72 72 6f | ap"><cite.class="file">test_erro |
| 6cfa0 | 72 5f 75 6e 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | r_union.zig</cite></figcaption>< |
| 6cfc0 | 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | pre><code><span.class="tok-kw">c |
| 6cfe0 | 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 |
| 6d000 | 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 |
| 6d020 | 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 |
| 6d040 | 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 |
| 6d060 | 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 |
| 6d080 | 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 6f 72 20 | pan.class="tok-str">"error. |
| 6d0a0 | 75 6e 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 20 63 | union"</span>.{.....<span.c |
| 6d0c0 | 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 6f 6f 3a 20 3c 73 | lass="tok-kw">var</span>.foo:.<s |
| 6d0e0 | 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 |
| 6d100 | 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< |
| 6d120 | 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"> |
| 6d140 | 75 6e 64 65 66 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 | undefined</span>;......<span.cla |
| 6d160 | 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 6f 6d 20 | ss="tok-comment">//.Coerce.from. |
| 6d180 | 63 68 69 6c 64 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 | child.type.of.an.error.union:</s |
| 6d1a0 | 70 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 | pan>.....foo.=.<span.class="tok- |
| 6d1c0 | 6e 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 | number">1234</span>;......<span. |
| 6d1e0 | 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 |
| 6d200 | 6f 6d 20 61 6e 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 | om.an.error.set:</span>.....foo. |
| 6d220 | 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 |
| 6d240 | 61 6e 3e 2e 53 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 | an>.SomeError;......<span.class= |
| 6d260 | 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 65 2d 74 69 6d | "tok-comment">//.Use.compile-tim |
| 6d280 | 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 70 61 79 6c 6f | e.reflection.to.access.the.paylo |
| 6d2a0 | 61 64 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 | ad.type.of.an.error.union:</span |
| 6d2c0 | 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 79 3c 2f | >.....<span.class="tok-kw">try</ |
| 6d2e0 | 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 6d 70 74 | span>.<span.class="tok-kw">compt |
| 6d300 | 69 6d 65 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 | ime</span>.expect(<span.class="t |
| 6d320 | 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 70 | ok-builtin">@typeInfo</span>(<sp |
| 6d340 | 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 2f | an.class="tok-builtin">@TypeOf</ |
| 6d360 | 73 70 61 6e 3e 28 66 6f 6f 29 29 2e 65 72 72 6f 72 5f 75 6e 69 6f 6e 2e 70 61 79 6c 6f 61 64 20 | span>(foo)).error_union.payload. |
| 6d380 | 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 69 33 32 3c 2f 73 | ==.<span.class="tok-type">i32</s |
| 6d3a0 | 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 6d | pan>);......<span.class="tok-com |
| 6d3c0 | 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 6c 65 63 | ment">//.Use.compile-time.reflec |
| 6d3e0 | 74 69 6f 6e 20 74 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 | tion.to.access.the.error.set.typ |
| 6d400 | 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 20 | e.of.an.error.union:</span>..... |
| 6d420 | 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>. |
| 6d440 | 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 |
| 6d460 | 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 |
| 6d480 | 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 61 | ltin">@typeInfo</span>(<span.cla |
| 6d4a0 | 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>( |
| 6d4c0 | 66 6f 6f 29 29 2e 65 72 72 6f 72 5f 75 6e 69 6f 6e 2e 65 72 72 6f 72 5f 73 65 74 20 3d 3d 20 3c | foo)).error_union.error_set.==.< |
| 6d4e0 | 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 72 3c 2f | span.class="tok-type">anyerror</ |
| 6d500 | 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c | span>);.}</code></pre></figure>< |
| 6d520 | 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d | figure><figcaption.class="shell- |
| 6d540 | 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d | cap">Shell</figcaption><pre><sam |
| 6d560 | 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 65 72 72 6f 72 5f 75 6e 69 | p>$.<kbd>zig.test.test_error_uni |
| 6d580 | 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 65 72 72 6f 72 5f 75 6e 69 6f | on.zig</kbd>.1/1.test_error_unio |
| 6d5a0 | 6e 2e 74 65 73 74 2e 65 72 72 6f 72 20 75 6e 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 | n.test.error.union...OK.All.1.te |
| 6d5c0 | 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | sts.passed..</samp></pre></figur |
| 6d5e0 | 65 3e 0a 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 4d 65 72 67 69 6e 67 2d 45 72 72 6f 72 2d | e>........<h4.id="Merging-Error- |
| 6d600 | 53 65 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4d 65 72 67 69 6e 67 2d 45 72 72 6f | Sets"><a.href="#toc-Merging-Erro |
| 6d620 | 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 20 3c | r-Sets">Merging.Error.Sets</a>.< |
| 6d640 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4d 65 72 67 69 6e 67 2d 45 72 72 | a.class="hdr".href="#Merging-Err |
| 6d660 | 6f 72 2d 53 65 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | or-Sets">..</a></h4>........<p>. |
| 6d680 | 20 20 20 20 20 20 55 73 65 20 74 68 65 20 3c 63 6f 64 65 3e 7c 7c 3c 2f 63 6f 64 65 3e 20 6f 70 | ......Use.the.<code>||</code>.op |
| 6d6a0 | 65 72 61 74 6f 72 20 74 6f 20 6d 65 72 67 65 20 74 77 6f 20 65 72 72 6f 72 20 73 65 74 73 20 74 | erator.to.merge.two.error.sets.t |
| 6d6c0 | 6f 67 65 74 68 65 72 2e 20 54 68 65 20 72 65 73 75 6c 74 69 6e 67 0a 20 20 20 20 20 20 65 72 72 | ogether..The.resulting.......err |
| 6d6e0 | 6f 72 20 73 65 74 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 65 72 72 6f 72 73 20 6f 66 20 62 6f | or.set.contains.the.errors.of.bo |
| 6d700 | 74 68 20 65 72 72 6f 72 20 73 65 74 73 2e 20 44 6f 63 20 63 6f 6d 6d 65 6e 74 73 20 66 72 6f 6d | th.error.sets..Doc.comments.from |
| 6d720 | 20 74 68 65 20 6c 65 66 74 2d 68 61 6e 64 0a 20 20 20 20 20 20 73 69 64 65 20 6f 76 65 72 72 69 | .the.left-hand.......side.overri |
| 6d740 | 64 65 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 73 20 66 72 6f 6d 20 74 68 65 20 72 69 67 68 74 2d 68 | de.doc.comments.from.the.right-h |
| 6d760 | 61 6e 64 20 73 69 64 65 2e 20 49 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 64 | and.side..In.this.example,.the.d |
| 6d780 | 6f 63 0a 20 20 20 20 20 20 63 6f 6d 6d 65 6e 74 73 20 66 6f 72 20 3c 63 6f 64 65 3e 43 2e 50 61 | oc.......comments.for.<code>C.Pa |
| 6d7a0 | 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 |
| 6d7c0 | 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>..... |
| 6d7e0 | 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 |
| 6d800 | 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 |
| 6d820 | 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. |
| 6d840 | 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 |
| 6d860 | 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, |
| 6d880 | 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.. |
| 6d8a0 | 20 20 20 20 20 3c 63 6f 64 65 3e 4c 69 6e 75 78 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 20 7c 7c | .....<code>LinuxFileOpenError.|| |
| 6d8c0 | 20 57 69 6e 64 6f 77 73 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 3c 2f 63 6f 64 65 3e 20 66 6f 72 | .WindowsFileOpenError</code>.for |
| 6d8e0 | 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 20 6f 66 20 6f 70 65 6e 69 6e 67 0a 20 20 20 20 20 20 | .the.error.set.of.opening....... |
| 6d900 | 66 69 6c 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e | files........</p>.......<figure> |
| 6d920 | 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 | <figcaption.class="zig-cap"><cit |
| 6d940 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 6d 65 72 67 69 6e 67 5f 65 72 72 6f | e.class="file">test_merging_erro |
| 6d960 | 72 5f 73 65 74 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | r_sets.zig</cite></figcaption><p |
| 6d980 | 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | re><code><span.class="tok-kw">co |
| 6d9a0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | nst</span>.A.=.<span.class="tok- |
| 6d9c0 | 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 4e 6f 74 44 69 72 2c 0a 0a 20 | kw">error</span>{.....NotDir,... |
| 6d9e0 | 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">/// |
| 6da00 | 20 41 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 50 61 74 68 4e 6f | .A.doc.comment</span>.....PathNo |
| 6da20 | 74 46 6f 75 6e 64 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 | tFound,.};.<span.class="tok-kw"> |
| 6da40 | 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 3d 22 74 6f | const</span>.B.=.<span.class="to |
| 6da60 | 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 4f 75 74 4f 66 4d 65 6d | k-kw">error</span>{.....OutOfMem |
| 6da80 | 6f 72 79 2c 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 | ory,......<span.class="tok-comme |
| 6daa0 | 6e 74 22 3e 2f 2f 2f 20 42 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 | nt">///.B.doc.comment</span>.... |
| 6dac0 | 20 50 61 74 68 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 | .PathNotFound,.};..<span.class=" |
| 6dae0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 20 3d 20 41 20 7c 7c 20 42 3b | tok-kw">const</span>.C.=.A.||.B; |
| 6db00 | 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> |
| 6db20 | 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> |
| 6db40 | 28 29 20 43 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 | ().C!<span.class="tok-type">void |
| 6db60 | 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 |
| 6db80 | 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 |
| 6dba0 | 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 3b 0a 7d 0a 0a 3c 73 | k-kw">error</span>.NotDir;.}..<s |
| 6dbc0 | 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>.< |
| 6dbe0 | 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 65 72 67 65 | span.class="tok-str">"merge |
| 6dc00 | 20 65 72 72 6f 72 20 73 65 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | .error.sets"</span>.{.....< |
| 6dc20 | 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 66 | span.class="tok-kw">if</span>.(f |
| 6dc40 | 6f 6f 28 29 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 | oo()).{.........<span.class="tok |
| 6dc60 | 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 |
| 6dc80 | 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 |
| 6dca0 | 75 6f 74 3b 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 | uot;</span>);.....}.<span.class= |
| 6dcc0 | 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 6e | "tok-kw">else</span>.|err|.<span |
| 6dce0 | 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 65 | .class="tok-kw">switch</span>.(e |
| 6dd00 | 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 6b | rr).{.........<span.class="tok-k |
| 6dd20 | 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 20 3d 26 67 74 | w">error</span>.OutOfMemory.=> |
| 6dd40 | 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 40 70 61 6e | ;.<span.class="tok-builtin">@pan |
| 6dd60 | 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 73 74 72 22 3e | ic</span>(<span.class="tok-str"> |
| 6dd80 | 26 71 75 6f 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 2c 0a | "unexpected"</span>),. |
| 6dda0 | 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 72 72 | ........<span.class="tok-kw">err |
| 6ddc0 | 6f 72 3c 2f 73 70 61 6e 3e 2e 50 61 74 68 4e 6f 74 46 6f 75 6e 64 20 3d 26 67 74 3b 20 3c 73 70 | or</span>.PathNotFound.=>.<sp |
| 6dde0 | 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 |
| 6de00 | 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">" |
| 6de20 | 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 2c 0a 20 20 20 20 20 | ;unexpected"</span>),...... |
| 6de40 | 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 72 3c 2f 73 | ...<span.class="tok-kw">error</s |
| 6de60 | 70 61 6e 3e 2e 4e 6f 74 44 69 72 20 3d 26 67 74 3b 20 7b 7d 2c 0a 20 20 20 20 7d 0a 7d 3c 2f 63 | pan>.NotDir.=>.{},.....}.}</c |
| 6de80 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | ode></pre></figure><figure><figc |
| 6dea0 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f | aption.class="shell-cap">Shell</ |
| 6dec0 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 | figcaption><pre><samp>$.<kbd>zig |
| 6dee0 | 20 74 65 73 74 20 74 65 73 74 5f 6d 65 72 67 69 6e 67 5f 65 72 72 6f 72 5f 73 65 74 73 2e 7a 69 | .test.test_merging_error_sets.zi |
| 6df00 | 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 6d 65 72 67 69 6e 67 5f 65 72 72 6f 72 5f 73 | g</kbd>.1/1.test_merging_error_s |
| 6df20 | 65 74 73 2e 74 65 73 74 2e 6d 65 72 67 65 20 65 72 72 6f 72 20 73 65 74 73 2e 2e 2e 4f 4b 0a 41 | ets.test.merge.error.sets...OK.A |
| 6df40 | 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e | ll.1.tests.passed..</samp></pre> |
| 6df60 | 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 | </figure>...............<h4.id=" |
| 6df80 | 49 6e 66 65 72 72 65 64 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | Inferred-Error-Sets"><a.href="#t |
| 6dfa0 | 6f 63 2d 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 65 64 | oc-Inferred-Error-Sets">Inferred |
| 6dfc0 | 20 45 72 72 6f 72 20 53 65 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | .Error.Sets</a>.<a.class="hdr".h |
| 6dfe0 | 72 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 c2 a7 3c 2f 61 | ref="#Inferred-Error-Sets">..</a |
| 6e000 | 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 42 65 63 61 75 73 65 20 | ></h4>........<p>.......Because. |
| 6e020 | 6d 61 6e 79 20 66 75 6e 63 74 69 6f 6e 73 20 69 6e 20 5a 69 67 20 72 65 74 75 72 6e 20 61 20 70 | many.functions.in.Zig.return.a.p |
| 6e040 | 6f 73 73 69 62 6c 65 20 65 72 72 6f 72 2c 20 5a 69 67 20 73 75 70 70 6f 72 74 73 20 69 6e 66 65 | ossible.error,.Zig.supports.infe |
| 6e060 | 72 72 69 6e 67 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 2e 0a 20 20 20 20 20 20 54 6f 20 69 6e | rring.the.error.set........To.in |
| 6e080 | 66 65 72 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 20 66 6f 72 20 61 20 66 75 6e 63 74 69 6f 6e | fer.the.error.set.for.a.function |
| 6e0a0 | 2c 20 70 72 65 70 65 6e 64 20 74 68 65 20 3c 63 6f 64 65 3e 21 3c 2f 63 6f 64 65 3e 20 6f 70 65 | ,.prepend.the.<code>!</code>.ope |
| 6e0c0 | 72 61 74 6f 72 20 74 6f 20 74 68 65 20 66 75 6e 63 74 69 6f 6e e2 80 99 73 20 72 65 74 75 72 6e | rator.to.the.function...s.return |
| 6e0e0 | 20 74 79 70 65 2c 20 6c 69 6b 65 20 3c 63 6f 64 65 3e 21 54 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 | .type,.like.<code>!T</code>:.... |
| 6e100 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | ...</p>.......<figure><figcaptio |
| 6e120 | 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 | n.class="zig-cap"><cite.class="f |
| 6e140 | 69 6c 65 22 3e 74 65 73 74 5f 69 6e 66 65 72 72 65 64 5f 65 72 72 6f 72 5f 73 65 74 73 2e 7a 69 | ile">test_inferred_error_sets.zi |
| 6e160 | 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e | g</cite></figcaption><pre><code> |
| 6e180 | 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 |
| 6e1a0 | 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>.< |
| 6e1c0 | 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>.< |
| 6e1e0 | 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 |
| 6e200 | 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< |
| 6e220 | 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 |
| 6e240 | 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- |
| 6e260 | 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).! |
| 6e280 | 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 63 6f 6e | T.{.....<span.class="tok-kw">con |
| 6e2a0 | 73 74 3c 2f 73 70 61 6e 3e 20 6f 76 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | st</span>.ov.=.<span.class="tok- |
| 6e2c0 | 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 61 6e 3e | builtin">@addWithOverflow</span> |
| 6e2e0 | 28 61 2c 20 62 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 | (a,.b);.....<span.class="tok-kw" |
| 6e300 | 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6f 76 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >if</span>.(ov[<span.class="tok- |
| 6e320 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | number">1</span>].!=.<span.class |
| 6e340 | 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 6c | ="tok-number">0</span>).<span.cl |
| 6e360 | 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 |
| 6e380 | 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 65 | .class="tok-kw">error</span>.Ove |
| 6e3a0 | 72 66 6c 6f 77 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 | rflow;.....<span.class="tok-kw"> |
| 6e3c0 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 6f 76 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | return</span>.ov[<span.class="to |
| 6e3e0 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | k-number">0</span>];.}..<span.cl |
| 6e400 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 57 69 74 68 20 61 6e 20 65 78 70 | ass="tok-comment">//.With.an.exp |
| 6e420 | 6c 69 63 69 74 20 65 72 72 6f 72 20 73 65 74 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | licit.error.set</span>.<span.cla |
| 6e440 | 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 |
| 6e460 | 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 |
| 6e480 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 5f 65 78 70 6c 69 63 69 74 3c 2f 73 70 61 6e 3e 28 3c | s="tok-fn">add_explicit</span>(< |
| 6e4a0 | 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 |
| 6e4c0 | 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 |
| 6e4e0 | 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 29 20 45 72 72 6f 72 21 54 20 7b | pe</span>,.a:.T,.b:.T).Error!T.{ |
| 6e500 | 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< |
| 6e520 | 2f 73 70 61 6e 3e 20 6f 76 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | /span>.ov.=.<span.class="tok-bui |
| 6e540 | 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 61 2c | ltin">@addWithOverflow</span>(a, |
| 6e560 | 20 62 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 | .b);.....<span.class="tok-kw">if |
| 6e580 | 3c 2f 73 70 61 6e 3e 20 28 6f 76 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | </span>.(ov[<span.class="tok-num |
| 6e5a0 | 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ber">1</span>].!=.<span.class="t |
| 6e5c0 | 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 6c 61 73 73 | ok-number">0</span>).<span.class |
| 6e5e0 | 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 |
| 6e600 | 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 65 72 66 6c | ass="tok-kw">error</span>.Overfl |
| 6e620 | 6f 77 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 | ow;.....<span.class="tok-kw">ret |
| 6e640 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 6f 76 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | urn</span>.ov[<span.class="tok-n |
| 6e660 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | umber">0</span>];.}..<span.class |
| 6e680 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 45 72 72 6f 72 20 3d 20 3c | ="tok-kw">const</span>.Error.=.< |
| 6e6a0 | 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> |
| 6e6c0 | 7b 0a 20 20 20 20 4f 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 | {.....Overflow,.};..<span.class= |
| 6e6e0 | 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 |
| 6e700 | 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 |
| 6e720 | 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">" |
| 6e740 | 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 |
| 6e760 | 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 |
| 6e780 | 73 3d 22 74 6f 6b 2d 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 | s="tok-str">"inferred.error |
| 6e7a0 | 20 73 65 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 | .set"</span>.{.....<span.cl |
| 6e7c0 | 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 64 64 5f 69 6e 66 65 | ass="tok-kw">if</span>.(add_infe |
| 6e7e0 | 72 72 65 64 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 | rred(<span.class="tok-type">u8</ |
| 6e800 | 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"> |
| 6e820 | 32 35 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 | 255</span>,.<span.class="tok-num |
| 6e840 | 62 65 72 22 3e 31 3c 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 | ber">1</span>)).|_|.<span.class= |
| 6e860 | 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 20 3c 73 70 61 | "tok-kw">unreachable</span>.<spa |
| 6e880 | 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 65 72 | n.class="tok-kw">else</span>.|er |
| 6e8a0 | 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 69 74 63 68 3c 2f | r|.<span.class="tok-kw">switch</ |
| 6e8c0 | 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 6e 20 63 6c 61 73 | span>.(err).{.........<span.clas |
| 6e8e0 | 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 |
| 6e900 | 20 3d 26 67 74 3b 20 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 | .=>.{},.<span.class="tok-comm |
| 6e920 | 65 6e 74 22 3e 2f 2f 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 | ent">//.ok</span>.....}.}</code> |
| 6e940 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | </pre></figure><figure><figcapti |
| 6e960 | 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 | on.class="shell-cap">Shell</figc |
| 6e980 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 | aption><pre><samp>$.<kbd>zig.tes |
| 6e9a0 | 74 20 74 65 73 74 5f 69 6e 66 65 72 72 65 64 5f 65 72 72 6f 72 5f 73 65 74 73 2e 7a 69 67 3c 2f | t.test_inferred_error_sets.zig</ |
| 6e9c0 | 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 69 6e 66 65 72 72 65 64 5f 65 72 72 6f 72 5f 73 65 74 | kbd>.1/1.test_inferred_error_set |
| 6e9e0 | 73 2e 74 65 73 74 2e 69 6e 66 65 72 72 65 64 20 65 72 72 6f 72 20 73 65 74 2e 2e 2e 4f 4b 0a 41 | s.test.inferred.error.set...OK.A |
| 6ea00 | 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e | ll.1.tests.passed..</samp></pre> |
| 6ea20 | 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 | </figure>........<p>.......When. |
| 6ea40 | 61 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 20 61 6e 20 69 6e 66 65 72 72 65 64 20 65 72 72 6f 72 | a.function.has.an.inferred.error |
| 6ea60 | 20 73 65 74 2c 20 74 68 61 74 20 66 75 6e 63 74 69 6f 6e 20 62 65 63 6f 6d 65 73 20 67 65 6e 65 | .set,.that.function.becomes.gene |
| 6ea80 | 72 69 63 20 61 6e 64 20 74 68 75 73 20 69 74 20 62 65 63 6f 6d 65 73 0a 20 20 20 20 20 20 74 72 | ric.and.thus.it.becomes.......tr |
| 6eaa0 | 69 63 6b 69 65 72 20 74 6f 20 64 6f 20 63 65 72 74 61 69 6e 20 74 68 69 6e 67 73 20 77 69 74 68 | ickier.to.do.certain.things.with |
| 6eac0 | 20 69 74 2c 20 73 75 63 68 20 61 73 20 6f 62 74 61 69 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 70 | .it,.such.as.obtain.a.function.p |
| 6eae0 | 6f 69 6e 74 65 72 2c 20 6f 72 20 68 61 76 65 20 61 6e 20 65 72 72 6f 72 0a 20 20 20 20 20 20 73 | ointer,.or.have.an.error.......s |
| 6eb00 | 65 74 20 74 68 61 74 20 69 73 20 63 6f 6e 73 69 73 74 65 6e 74 20 61 63 72 6f 73 73 20 64 69 66 | et.that.is.consistent.across.dif |
| 6eb20 | 66 65 72 65 6e 74 20 62 75 69 6c 64 20 74 61 72 67 65 74 73 2e 20 41 64 64 69 74 69 6f 6e 61 6c | ferent.build.targets..Additional |
| 6eb40 | 6c 79 2c 20 69 6e 66 65 72 72 65 64 20 65 72 72 6f 72 20 73 65 74 73 0a 20 20 20 20 20 20 61 72 | ly,.inferred.error.sets.......ar |
| 6eb60 | 65 20 69 6e 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 72 65 63 75 72 73 69 6f 6e 2e 0a 20 | e.incompatible.with.recursion... |
| 6eb80 | 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 6e 20 74 68 65 | .....</p>.......<p>.......In.the |
| 6eba0 | 73 65 20 73 69 74 75 61 74 69 6f 6e 73 2c 20 69 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 | se.situations,.it.is.recommended |
| 6ebc0 | 20 74 6f 20 75 73 65 20 61 6e 20 65 78 70 6c 69 63 69 74 20 65 72 72 6f 72 20 73 65 74 2e 20 59 | .to.use.an.explicit.error.set..Y |
| 6ebe0 | 6f 75 20 63 61 6e 20 67 65 6e 65 72 61 6c 6c 79 20 73 74 61 72 74 0a 20 20 20 20 20 20 77 69 74 | ou.can.generally.start.......wit |
| 6ec00 | 68 20 61 6e 20 65 6d 70 74 79 20 65 72 72 6f 72 20 73 65 74 20 61 6e 64 20 6c 65 74 20 63 6f 6d | h.an.empty.error.set.and.let.com |
| 6ec20 | 70 69 6c 65 20 65 72 72 6f 72 73 20 67 75 69 64 65 20 79 6f 75 20 74 6f 77 61 72 64 20 63 6f 6d | pile.errors.guide.you.toward.com |
| 6ec40 | 70 6c 65 74 69 6e 67 20 74 68 65 20 73 65 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | pleting.the.set........</p>..... |
| 6ec60 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 73 65 20 6c 69 6d 69 74 61 74 69 6f 6e 73 20 6d 61 | ..<p>.......These.limitations.ma |
| 6ec80 | 79 20 62 65 20 6f 76 65 72 63 6f 6d 65 20 69 6e 20 61 20 66 75 74 75 72 65 20 76 65 72 73 69 6f | y.be.overcome.in.a.future.versio |
| 6eca0 | 6e 20 6f 66 20 5a 69 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 | n.of.Zig........</p>............ |
| 6ecc0 | 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 45 72 72 6f 72 2d 52 65 74 75 72 6e 2d 54 72 | .........<h3.id="Error-Return-Tr |
| 6ece0 | 61 63 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 72 72 6f 72 2d 52 65 74 75 72 6e | aces"><a.href="#toc-Error-Return |
| 6ed00 | 2d 54 72 61 63 65 73 22 3e 45 72 72 6f 72 20 52 65 74 75 72 6e 20 54 72 61 63 65 73 3c 2f 61 3e | -Traces">Error.Return.Traces</a> |
| 6ed20 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 52 65 74 | .<a.class="hdr".href="#Error-Ret |
| 6ed40 | 75 72 6e 2d 54 72 61 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 | urn-Traces">..</a></h3>........< |
| 6ed60 | 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 20 73 68 6f | p>.......Error.Return.Traces.sho |
| 6ed80 | 77 20 61 6c 6c 20 74 68 65 20 70 6f 69 6e 74 73 20 69 6e 20 74 68 65 20 63 6f 64 65 20 74 68 61 | w.all.the.points.in.the.code.tha |
| 6eda0 | 74 20 61 6e 20 65 72 72 6f 72 20 77 61 73 20 72 65 74 75 72 6e 65 64 20 74 6f 20 74 68 65 20 63 | t.an.error.was.returned.to.the.c |
| 6edc0 | 61 6c 6c 69 6e 67 20 66 75 6e 63 74 69 6f 6e 2e 20 54 68 69 73 20 6d 61 6b 65 73 20 69 74 20 70 | alling.function..This.makes.it.p |
| 6ede0 | 72 61 63 74 69 63 61 6c 20 74 6f 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 74 72 79 22 3e 74 | ractical.to.use.<a.href="#try">t |
| 6ee00 | 72 79 3c 2f 61 3e 20 65 76 65 72 79 77 68 65 72 65 20 61 6e 64 20 74 68 65 6e 20 73 74 69 6c 6c | ry</a>.everywhere.and.then.still |
| 6ee20 | 20 62 65 20 61 62 6c 65 20 74 6f 20 6b 6e 6f 77 20 77 68 61 74 20 68 61 70 70 65 6e 65 64 20 69 | .be.able.to.know.what.happened.i |
| 6ee40 | 66 20 61 6e 20 65 72 72 6f 72 20 65 6e 64 73 20 75 70 20 62 75 62 62 6c 69 6e 67 20 61 6c 6c 20 | f.an.error.ends.up.bubbling.all. |
| 6ee60 | 74 68 65 20 77 61 79 20 6f 75 74 20 6f 66 20 79 6f 75 72 20 61 70 70 6c 69 63 61 74 69 6f 6e 2e | the.way.out.of.your.application. |
| 6ee80 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | .......</p>.......<figure><figca |
| 6eea0 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 | ption.class="zig-cap"><cite.clas |
| 6eec0 | 73 3d 22 66 69 6c 65 22 3e 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 65 2e 7a 69 67 3c | s="file">error_return_trace.zig< |
| 6eee0 | 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 | /cite></figcaption><pre><code><s |
| 6ef00 | 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 |
| 6ef20 | 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 |
| 6ef40 | 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>(). |
| 6ef60 | 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 |
| 6ef80 | 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 74 | an>.{.....<span.class="tok-kw">t |
| 6efa0 | 72 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 | ry</span>.foo(<span.class="tok-n |
| 6efc0 | 75 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 | umber">12</span>);.}..<span.clas |
| 6efe0 | 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 |
| 6f000 | 3d 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 | ="tok-fn">foo</span>(x:.<span.cl |
| 6f020 | 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 21 3c 73 70 61 | ass="tok-type">i32</span>).!<spa |
| 6f040 | 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>.{ |
| 6f060 | 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 70 | .....<span.class="tok-kw">if</sp |
| 6f080 | 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 22 74 6f 6b 2d 6e 75 | an>.(x.>=.<span.class="tok-nu |
| 6f0a0 | 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 20 3c 73 70 61 6e 20 | mber">5</span>).{.........<span. |
| 6f0c0 | 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 61 72 28 29 3b | class="tok-kw">try</span>.bar(); |
| 6f0e0 | 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 |
| 6f100 | 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 |
| 6f120 | 6f 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 | ok-kw">try</span>.bang2();.....} |
| 6f140 | 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 |
| 6f160 | 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 |
| 6f180 | 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 76 6f 69 | n>().!<span.class="tok-type">voi |
| 6f1a0 | 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- |
| 6f1c0 | 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 20 20 20 20 20 20 | kw">if</span>.(baz()).{......... |
| 6f1e0 | 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>. |
| 6f200 | 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 22 74 6f 6b 2d 6b | quux();.....}.<span.class="tok-k |
| 6f220 | 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 6e 20 63 6c 61 73 73 | w">else</span>.|err|.<span.class |
| 6f240 | 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 65 72 72 29 20 7b 0a | ="tok-kw">switch</span>.(err).{. |
| 6f260 | 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 72 72 | ........<span.class="tok-kw">err |
| 6f280 | 6f 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 | or</span>.FileNotFound.=>.<sp |
| 6f2a0 | 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 68 65 6c | an.class="tok-kw">try</span>.hel |
| 6f2c0 | 6c 6f 28 29 2c 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 | lo(),.....}.}..<span.class="tok- |
| 6f2e0 | 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 |
| 6f300 | 6e 22 3e 62 61 7a 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 | n">baz</span>().!<span.class="to |
| 6f320 | 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. |
| 6f340 | 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 61 6e 67 31 28 | class="tok-kw">try</span>.bang1( |
| 6f360 | 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 |
| 6f380 | 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 75 78 3c 2f | pan>.<span.class="tok-fn">quux</ |
| 6f3a0 | 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 3e | span>().!<span.class="tok-type"> |
| 6f3c0 | 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 |
| 6f3e0 | 6f 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 7d 0a 0a 3c 73 | ok-kw">try</span>.bang2();.}..<s |
| 6f400 | 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 |
| 6f420 | 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 3e 28 29 | an.class="tok-fn">hello</span>() |
| 6f440 | 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 |
| 6f460 | 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"> |
| 6f480 | 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 |
| 6f4a0 | 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 |
| 6f4c0 | 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 21 3c 73 70 61 6e | s="tok-fn">bang1</span>().!<span |
| 6f4e0 | 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>.{. |
| 6f500 | 20 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< |
| 6f520 | 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 |
| 6f540 | 72 3c 2f 73 70 61 6e 3e 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | r</span>.FileNotFound;.}..<span. |
| 6f560 | 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 |
| 6f580 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 6e 67 32 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 | lass="tok-fn">bang2</span>().!<s |
| 6f5a0 | 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> |
| 6f5c0 | 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 |
| 6f5e0 | 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 |
| 6f600 | 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 50 65 72 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 3b 0a 7d 3c | rror</span>.PermissionDenied;.}< |
| 6f620 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 | /code></pre></figure><figure><fi |
| 6f640 | 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c | gcaption.class="shell-cap">Shell |
| 6f660 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a | </figcaption><pre><samp>$.<kbd>z |
| 6f680 | 69 67 20 62 75 69 6c 64 2d 65 78 65 20 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 65 2e | ig.build-exe.error_return_trace. |
| 6f6a0 | 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f | zig</kbd>.$.<kbd>./error_return_ |
| 6f6c0 | 74 72 61 63 65 3c 2f 6b 62 64 3e 0a 65 72 72 6f 72 3a 20 50 65 72 6d 69 73 73 69 6f 6e 44 65 6e | trace</kbd>.error:.PermissionDen |
| 6f6e0 | 69 65 64 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 | ied.<span.class="sgr-1m">/home/a |
| 6f700 | 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 65 72 72 6f 72 5f 72 65 | ndy/dev/zig/doc/langref/error_re |
| 6f720 | 74 75 72 6e 5f 74 72 61 63 65 2e 7a 69 67 3a 33 34 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | turn_trace.zig:34:5</span>:.<spa |
| 6f740 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 37 30 38 20 69 6e 20 62 61 | n.class="sgr-2m">0x10de708.in.ba |
| 6f760 | 6e 67 31 20 28 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 65 29 3c 2f 73 70 61 6e 3e 0a | ng1.(error_return_trace)</span>. |
| 6f780 | 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 6f 72 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 3b 0a 20 | ....return.error.FileNotFound;.. |
| 6f7a0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e | ...<span.class="sgr-32m">^</span |
| 6f7c0 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | >.<span.class="sgr-1m">/home/and |
| 6f7e0 | 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 65 72 72 6f 72 5f 72 65 74 75 | y/dev/zig/doc/langref/error_retu |
| 6f800 | 72 6e 5f 74 72 61 63 65 2e 7a 69 67 3a 32 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | rn_trace.zig:22:5</span>:.<span. |
| 6f820 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 37 33 33 20 69 6e 20 62 61 7a 20 | class="sgr-2m">0x10de733.in.baz. |
| 6f840 | 28 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | (error_return_trace)</span>..... |
| 6f860 | 74 72 79 20 62 61 6e 67 31 28 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | try.bang1();.....<span.class="sg |
| 6f880 | 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | r-32m">^</span>.<span.class="sgr |
| 6f8a0 | 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 | -1m">/home/andy/dev/zig/doc/lang |
| 6f8c0 | 72 65 66 2f 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 65 2e 7a 69 67 3a 33 38 3a 35 3c | ref/error_return_trace.zig:38:5< |
| 6f8e0 | 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 | /span>:.<span.class="sgr-2m">0x1 |
| 6f900 | 30 64 65 37 35 38 20 69 6e 20 62 61 6e 67 32 20 28 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 | 0de758.in.bang2.(error_return_tr |
| 6f920 | 61 63 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 6f 72 2e 50 65 72 | ace)</span>.....return.error.Per |
| 6f940 | 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | missionDenied;.....<span.class=" |
| 6f960 | 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | sgr-32m">^</span>.<span.class="s |
| 6f980 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 | gr-1m">/home/andy/dev/zig/doc/la |
| 6f9a0 | 6e 67 72 65 66 2f 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 65 2e 7a 69 67 3a 33 30 3a | ngref/error_return_trace.zig:30: |
| 6f9c0 | 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 | 5</span>:.<span.class="sgr-2m">0 |
| 6f9e0 | 78 31 30 64 65 37 63 33 20 69 6e 20 68 65 6c 6c 6f 20 28 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f | x10de7c3.in.hello.(error_return_ |
| 6fa00 | 74 72 61 63 65 29 3c 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 | trace)</span>.....try.bang2();.. |
| 6fa20 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e | ...<span.class="sgr-32m">^</span |
| 6fa40 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | >.<span.class="sgr-1m">/home/and |
| 6fa60 | 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 65 72 72 6f 72 5f 72 65 74 75 | y/dev/zig/doc/langref/error_retu |
| 6fa80 | 72 6e 5f 74 72 61 63 65 2e 7a 69 67 3a 31 37 3a 33 31 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | rn_trace.zig:17:31</span>:.<span |
| 6faa0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 38 36 38 20 69 6e 20 62 61 72 | .class="sgr-2m">0x10de868.in.bar |
| 6fac0 | 20 28 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | .(error_return_trace)</span>.... |
| 6fae0 | 20 20 20 20 20 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 | .....error.FileNotFound.=>.tr |
| 6fb00 | 79 20 68 65 6c 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 | y.hello(),...................... |
| 6fb20 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e | .........<span.class="sgr-32m">^ |
| 6fb40 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f | </span>.<span.class="sgr-1m">/ho |
| 6fb60 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 65 72 72 6f | me/andy/dev/zig/doc/langref/erro |
| 6fb80 | 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 65 2e 7a 69 67 3a 37 3a 39 3c 2f 73 70 61 6e 3e 3a 20 3c | r_return_trace.zig:7:9</span>:.< |
| 6fba0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 38 64 30 20 69 6e | span.class="sgr-2m">0x10de8d0.in |
| 6fbc0 | 20 66 6f 6f 20 28 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 65 29 3c 2f 73 70 61 6e 3e | .foo.(error_return_trace)</span> |
| 6fbe0 | 0a 20 20 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 | .........try.bar();.........<spa |
| 6fc00 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | n.class="sgr-32m">^</span>.<span |
| 6fc20 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a | .class="sgr-1m">/home/andy/dev/z |
| 6fc40 | 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 | ig/doc/langref/error_return_trac |
| 6fc60 | 65 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 22 73 | e.zig:2:5</span>:.<span.class="s |
| 6fc80 | 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 39 32 38 20 69 6e 20 6d 61 69 6e 20 28 65 72 72 6f 72 5f | gr-2m">0x10de928.in.main.(error_ |
| 6fca0 | 72 65 74 75 72 6e 5f 74 72 61 63 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 74 72 79 20 66 6f 6f | return_trace)</span>.....try.foo |
| 6fcc0 | 28 31 32 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e | (12);.....<span.class="sgr-32m"> |
| 6fce0 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a | ^</span>.</samp></pre></figure>. |
| 6fd00 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4c 6f 6f 6b 20 63 6c 6f 73 65 6c 79 20 61 74 | .......<p>.......Look.closely.at |
| 6fd20 | 20 74 68 69 73 20 65 78 61 6d 70 6c 65 2e 20 54 68 69 73 20 69 73 20 6e 6f 20 73 74 61 63 6b 20 | .this.example..This.is.no.stack. |
| 6fd40 | 74 72 61 63 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 | trace........</p>.......<p>..... |
| 6fd60 | 20 20 59 6f 75 20 63 61 6e 20 73 65 65 20 74 68 61 74 20 74 68 65 20 66 69 6e 61 6c 20 65 72 72 | ..You.can.see.that.the.final.err |
| 6fd80 | 6f 72 20 62 75 62 62 6c 65 64 20 75 70 20 77 61 73 20 3c 63 6f 64 65 3e 50 65 72 6d 69 73 73 69 | or.bubbled.up.was.<code>Permissi |
| 6fda0 | 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 |
| 6fdc0 | 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 |
| 6fde0 | 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 3e 46 69 6c 65 4e 6f | his.whole.thing.was.<code>FileNo |
| 6fe00 | 74 46 6f 75 6e 64 3c 2f 63 6f 64 65 3e 2e 20 49 6e 20 74 68 65 20 3c 63 6f 64 65 3e 62 61 72 3c | tFound</code>..In.the.<code>bar< |
| 6fe20 | 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 2c 20 74 68 65 20 63 6f 64 65 20 68 61 6e 64 6c 65 | /code>.function,.the.code.handle |
| 6fe40 | 73 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 65 72 72 6f 72 20 63 6f 64 65 2c 0a 20 20 20 20 20 | s.the.original.error.code,...... |
| 6fe60 | 20 61 6e 64 20 74 68 65 6e 20 72 65 74 75 72 6e 73 20 61 6e 6f 74 68 65 72 20 6f 6e 65 2c 20 66 | .and.then.returns.another.one,.f |
| 6fe80 | 72 6f 6d 20 74 68 65 20 73 77 69 74 63 68 20 73 74 61 74 65 6d 65 6e 74 2e 20 45 72 72 6f 72 20 | rom.the.switch.statement..Error. |
| 6fea0 | 52 65 74 75 72 6e 20 54 72 61 63 65 73 20 6d 61 6b 65 20 74 68 69 73 20 63 6c 65 61 72 2c 20 77 | Return.Traces.make.this.clear,.w |
| 6fec0 | 68 65 72 65 61 73 20 61 20 73 74 61 63 6b 20 74 72 61 63 65 20 77 6f 75 6c 64 20 6c 6f 6f 6b 20 | hereas.a.stack.trace.would.look. |
| 6fee0 | 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 66 69 67 | like.this:.......</p>.......<fig |
| 6ff00 | 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e | ure><figcaption.class="zig-cap"> |
| 6ff20 | 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 74 61 63 6b 5f 74 72 61 63 65 2e 7a | <cite.class="file">stack_trace.z |
| 6ff40 | 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ig</cite></figcaption><pre><code |
| 6ff60 | 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 3e | ><span.class="tok-kw">pub</span> |
| 6ff80 | 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>. |
| 6ffa0 | 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> |
| 6ffc0 | 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</ |
| 6ffe0 | 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 73 3d 22 74 6f 6b | span>.{.....foo(<span.class="tok |
| 70000 | 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 70 61 6e 20 63 6c | -number">12</span>);.}..<span.cl |
| 70020 | 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 |
| 70040 | 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 3c 73 70 61 6e 20 | ss="tok-fn">foo</span>(x:.<span. |
| 70060 | 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 |
| 70080 | 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>. |
| 700a0 | 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 3c 2f 73 | {.....<span.class="tok-kw">if</s |
| 700c0 | 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 22 74 6f 6b 2d 6e | pan>.(x.>=.<span.class="tok-n |
| 700e0 | 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 20 62 61 72 28 29 | umber">5</span>).{.........bar() |
| 70100 | 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 |
| 70120 | 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 3b 0a 20 20 20 20 | e</span>.{.........bang2();..... |
| 70140 | 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 2f 73 70 | }.}..<span.class="tok-kw">fn</sp |
| 70160 | 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 70 | an>.<span.class="tok-fn">bar</sp |
| 70180 | 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 69 | an>().<span.class="tok-type">voi |
| 701a0 | 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- |
| 701c0 | 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 20 20 20 20 20 20 | kw">if</span>.(baz()).{......... |
| 701e0 | 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 22 74 6f 6b 2d 6b | quux();.....}.<span.class="tok-k |
| 70200 | 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 65 6c 6c 6f 28 29 | w">else</span>.{.........hello() |
| 70220 | 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"> |
| 70240 | 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 |
| 70260 | 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 6f 6b 2d 74 79 70 | az</span>().<span.class="tok-typ |
| 70280 | 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 |
| 702a0 | 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 6e 67 31 28 29 3b | ="tok-kw">return</span>.bang1(); |
| 702c0 | 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 |
| 702e0 | 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 75 78 3c 2f 73 70 | n>.<span.class="tok-fn">quux</sp |
| 70300 | 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 69 | an>().<span.class="tok-type">voi |
| 70320 | 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 0a 3c 73 70 61 6e | d</span>.{.....bang2();.}..<span |
| 70340 | 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. |
| 70360 | 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 3e 28 29 20 3c 73 | class="tok-fn">hello</span>().<s |
| 70380 | 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> |
| 703a0 | 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 6c 61 73 73 3d 22 | .{.....bang2();.}..<span.class=" |
| 703c0 | 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 |
| 703e0 | 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 6e 20 63 6c 61 73 | ok-fn">bang1</span>().<span.clas |
| 70400 | 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 3c | s="tok-type">bool</span>.{.....< |
| 70420 | 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 |
| 70440 | 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 61 6c 73 65 3c 2f | >.<span.class="tok-null">false</ |
| 70460 | 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 22 3e 66 | span>;.}..<span.class="tok-kw">f |
| 70480 | 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 |
| 704a0 | 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 74 6f 6b 2d 74 79 | ng2</span>().<span.class="tok-ty |
| 704c0 | 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 73 | pe">void</span>.{.....<span.clas |
| 704e0 | 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 3c 73 | s="tok-builtin">@panic</span>(<s |
| 70500 | 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 50 65 72 6d 69 73 | pan.class="tok-str">"Permis |
| 70520 | 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 7d 3c 2f 63 6f 64 | sionDenied"</span>);.}</cod |
| 70540 | 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | e></pre></figure><figure><figcap |
| 70560 | 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 | tion.class="shell-cap">Shell</fi |
| 70580 | 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 | gcaption><pre><samp>$.<kbd>zig.b |
| 705a0 | 75 69 6c 64 2d 65 78 65 20 73 74 61 63 6b 5f 74 72 61 63 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 | uild-exe.stack_trace.zig</kbd>.$ |
| 705c0 | 20 3c 6b 62 64 3e 2e 2f 73 74 61 63 6b 5f 74 72 61 63 65 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 | .<kbd>./stack_trace</kbd>.thread |
| 705e0 | 20 32 30 37 30 38 30 20 70 61 6e 69 63 3a 20 50 65 72 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 0a | .207080.panic:.PermissionDenied. |
| 70600 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | <span.class="sgr-1m">/home/andy/ |
| 70620 | 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 73 74 61 63 6b 5f 74 72 61 63 65 2e | dev/zig/doc/langref/stack_trace. |
| 70640 | 7a 69 67 3a 33 38 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | zig:38:5</span>:.<span.class="sg |
| 70660 | 72 2d 32 6d 22 3e 30 78 31 30 64 66 33 64 63 20 69 6e 20 62 61 6e 67 32 20 28 73 74 61 63 6b 5f | r-2m">0x10df3dc.in.bang2.(stack_ |
| 70680 | 74 72 61 63 65 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 | trace)</span>.....@panic("P |
| 706a0 | 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 |
| 706c0 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | n.class="sgr-32m">^</span>.<span |
| 706e0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a | .class="sgr-1m">/home/andy/dev/z |
| 70700 | 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 73 74 61 63 6b 5f 74 72 61 63 65 2e 7a 69 67 3a 33 | ig/doc/langref/stack_trace.zig:3 |
| 70720 | 30 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 73 67 72 2d 32 6d | 0:10</span>:.<span.class="sgr-2m |
| 70740 | 22 3e 30 78 31 30 64 66 63 61 38 20 69 6e 20 68 65 6c 6c 6f 20 28 73 74 61 63 6b 5f 74 72 61 63 | ">0x10dfca8.in.hello.(stack_trac |
| 70760 | 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 62 61 6e 67 32 28 29 3b 0a 20 20 20 20 20 20 20 20 20 | e)</span>.....bang2();.......... |
| 70780 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c | <span.class="sgr-32m">^</span>.< |
| 707a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | span.class="sgr-1m">/home/andy/d |
| 707c0 | 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 73 74 61 63 6b 5f 74 72 61 63 65 2e 7a | ev/zig/doc/langref/stack_trace.z |
| 707e0 | 69 67 3a 31 37 3a 31 34 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | ig:17:14</span>:.<span.class="sg |
| 70800 | 72 2d 32 6d 22 3e 30 78 31 30 64 66 33 62 30 20 69 6e 20 62 61 72 20 28 73 74 61 63 6b 5f 74 72 | r-2m">0x10df3b0.in.bar.(stack_tr |
| 70820 | 61 63 65 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 | ace)</span>.........hello();.... |
| 70840 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e | ..........<span.class="sgr-32m"> |
| 70860 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 | ^</span>.<span.class="sgr-1m">/h |
| 70880 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 73 74 61 | ome/andy/dev/zig/doc/langref/sta |
| 708a0 | 63 6b 5f 74 72 61 63 65 2e 7a 69 67 3a 37 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | ck_trace.zig:7:12</span>:.<span. |
| 708c0 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 66 31 64 34 20 69 6e 20 66 6f 6f 20 | class="sgr-2m">0x10df1d4.in.foo. |
| 708e0 | 28 73 74 61 63 6b 5f 74 72 61 63 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 62 61 72 | (stack_trace)</span>.........bar |
| 70900 | 28 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 73 67 72 2d | ();............<span.class="sgr- |
| 70920 | 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 | 32m">^</span>.<span.class="sgr-1 |
| 70940 | 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 | m">/home/andy/dev/zig/doc/langre |
| 70960 | 66 2f 73 74 61 63 6b 5f 74 72 61 63 65 2e 7a 69 67 3a 32 3a 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | f/stack_trace.zig:2:8</span>:.<s |
| 70980 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 39 36 64 20 69 6e 20 | pan.class="sgr-2m">0x10de96d.in. |
| 709a0 | 6d 61 69 6e 20 28 73 74 61 63 6b 5f 74 72 61 63 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 6f | main.(stack_trace)</span>.....fo |
| 709c0 | 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 73 67 72 2d 33 | o(12);........<span.class="sgr-3 |
| 709e0 | 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d | 2m">^</span>.<span.class="sgr-1m |
| 70a00 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 | ">/home/andy/dev/zig/lib/std/sta |
| 70a20 | 72 74 2e 7a 69 67 3a 36 35 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | rt.zig:651:22</span>:.<span.clas |
| 70a40 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 33 36 32 20 69 6e 20 70 6f 73 69 78 43 61 6c | s="sgr-2m">0x10de362.in.posixCal |
| 70a60 | 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 73 74 61 63 6b 5f 74 72 61 63 65 29 3c 2f 73 70 61 6e | lMainAndExit.(stack_trace)</span |
| 70a80 | 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();...... |
| 70aa0 | 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 73 67 72 | ................<span.class="sgr |
| 70ac0 | 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | -32m">^</span>.<span.class="sgr- |
| 70ae0 | 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 | 1m">/home/andy/dev/zig/lib/std/s |
| 70b00 | 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | tart.zig:271:5</span>:.<span.cla |
| 70b20 | 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 64 66 33 64 20 69 6e 20 5f 73 74 61 72 74 20 | ss="sgr-2m">0x10ddf3d.in._start. |
| 70b40 | 28 73 74 61 63 6b 5f 74 72 61 63 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c | (stack_trace)</span>.....asm.vol |
| 70b60 | 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 | atile.(switch.(native_arch).{... |
| 70b80 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e | ..<span.class="sgr-32m">^</span> |
| 70ba0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 | .<span.class="sgr-1m">???:?:?</s |
| 70bc0 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 | pan>:.<span.class="sgr-2m">0x0.i |
| 70be0 | 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d | n.???.(???)</span>.(process.term |
| 70c00 | 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c | inated.by.signal).</samp></pre>< |
| 70c20 | 2f 66 69 67 75 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 | /figure>........<p>.......Here,. |
| 70c40 | 74 68 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 | the.stack.trace.does.not.explain |
| 70c60 | 20 68 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 | .how.the.control.......flow.in.< |
| 70c80 | 63 6f 64 65 3e 62 61 72 3c 2f 63 6f 64 65 3e 20 67 6f 74 20 74 6f 20 74 68 65 20 3c 63 6f 64 65 | code>bar</code>.got.to.the.<code |
| 70ca0 | 3e 68 65 6c 6c 6f 28 29 3c 2f 63 6f 64 65 3e 20 63 61 6c 6c 2e 0a 20 20 20 20 20 20 4f 6e 65 20 | >hello()</code>.call........One. |
| 70cc0 | 77 6f 75 6c 64 20 68 61 76 65 20 74 6f 20 6f 70 65 6e 20 61 20 64 65 62 75 67 67 65 72 20 6f 72 | would.have.to.open.a.debugger.or |
| 70ce0 | 20 66 75 72 74 68 65 72 20 69 6e 73 74 72 75 6d 65 6e 74 20 74 68 65 20 61 70 70 6c 69 63 61 74 | .further.instrument.the.applicat |
| 70d00 | 69 6f 6e 0a 20 20 20 20 20 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 66 69 6e 64 20 6f 75 74 2e 20 | ion.......in.order.to.find.out.. |
| 70d20 | 54 68 65 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 65 2c 20 6f 6e 20 74 68 65 20 6f | The.error.return.trace,.on.the.o |
| 70d40 | 74 68 65 72 20 68 61 6e 64 2c 0a 20 20 20 20 20 20 73 68 6f 77 73 20 65 78 61 63 74 6c 79 20 68 | ther.hand,.......shows.exactly.h |
| 70d60 | 6f 77 20 74 68 65 20 65 72 72 6f 72 20 62 75 62 62 6c 65 64 20 75 70 2e 0a 20 20 20 20 20 20 3c | ow.the.error.bubbled.up........< |
| 70d80 | 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 64 65 62 75 67 67 69 | /p>.......<p>.......This.debuggi |
| 70da0 | 6e 67 20 66 65 61 74 75 72 65 20 6d 61 6b 65 73 20 69 74 20 65 61 73 69 65 72 20 74 6f 20 69 74 | ng.feature.makes.it.easier.to.it |
| 70dc0 | 65 72 61 74 65 20 71 75 69 63 6b 6c 79 20 6f 6e 20 63 6f 64 65 20 74 68 61 74 0a 20 20 20 20 20 | erate.quickly.on.code.that...... |
| 70de0 | 20 72 6f 62 75 73 74 6c 79 20 68 61 6e 64 6c 65 73 20 61 6c 6c 20 65 72 72 6f 72 20 63 6f 6e 64 | .robustly.handles.all.error.cond |
| 70e00 | 69 74 69 6f 6e 73 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 5a 69 67 20 64 65 76 65 | itions..This.means.that.Zig.deve |
| 70e20 | 6c 6f 70 65 72 73 0a 20 20 20 20 20 20 77 69 6c 6c 20 6e 61 74 75 72 61 6c 6c 79 20 66 69 6e 64 | lopers.......will.naturally.find |
| 70e40 | 20 74 68 65 6d 73 65 6c 76 65 73 20 77 72 69 74 69 6e 67 20 63 6f 72 72 65 63 74 2c 20 72 6f 62 | .themselves.writing.correct,.rob |
| 70e60 | 75 73 74 20 63 6f 64 65 20 69 6e 20 6f 72 64 65 72 0a 20 20 20 20 20 20 74 6f 20 69 6e 63 72 65 | ust.code.in.order.......to.incre |
| 70e80 | 61 73 65 20 74 68 65 69 72 20 64 65 76 65 6c 6f 70 6d 65 6e 74 20 70 61 63 65 2e 0a 20 20 20 20 | ase.their.development.pace...... |
| 70ea0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 72 72 6f 72 20 52 65 74 | ..</p>.......<p>.......Error.Ret |
| 70ec0 | 75 72 6e 20 54 72 61 63 65 73 20 61 72 65 20 65 6e 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 6c | urn.Traces.are.enabled.by.defaul |
| 70ee0 | 74 20 69 6e 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 | t.in.<a.href="#Debug">Debug</a>. |
| 70f00 | 61 6e 64 20 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 | and.<a.href="#ReleaseSafe">Relea |
| 70f20 | 73 65 53 61 66 65 3c 2f 61 3e 20 62 75 69 6c 64 73 20 61 6e 64 20 64 69 73 61 62 6c 65 64 20 62 | seSafe</a>.builds.and.disabled.b |
| 70f40 | 79 20 64 65 66 61 75 6c 74 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 | y.default.in.<a.href="#ReleaseFa |
| 70f60 | 73 74 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 | st">ReleaseFast</a>.and.<a.href= |
| 70f80 | 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 6c 6c 3c 2f 61 3e | "#ReleaseSmall">ReleaseSmall</a> |
| 70fa0 | 20 62 75 69 6c 64 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 | .builds........</p>.......<p>... |
| 70fc0 | 20 20 20 20 54 68 65 72 65 20 61 72 65 20 61 20 66 65 77 20 77 61 79 73 20 74 6f 20 61 63 74 69 | ....There.are.a.few.ways.to.acti |
| 70fe0 | 76 61 74 65 20 74 68 69 73 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 69 6e 67 20 66 | vate.this.error.return.tracing.f |
| 71000 | 65 61 74 75 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 | eature:.......</p>.......<ul>... |
| 71020 | 20 20 20 20 20 20 3c 6c 69 3e 52 65 74 75 72 6e 20 61 6e 20 65 72 72 6f 72 20 66 72 6f 6d 20 6d | ......<li>Return.an.error.from.m |
| 71040 | 61 69 6e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6e 20 65 72 72 6f 72 20 6d 61 | ain</li>.........<li>An.error.ma |
| 71060 | 6b 65 73 20 69 74 73 20 77 61 79 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | kes.its.way.to.<code><span.class |
| 71080 | 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 6c 61 | ="tok-kw">catch</span>.<span.cla |
| 710a0 | 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></ |
| 710c0 | 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 64 65 | code>.and.you.have.not.overridde |
| 710e0 | 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 69 3e | n.the.default.panic.handler</li> |
| 71100 | 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 6f 72 | .........<li>Use.<a.href="#error |
| 71120 | 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 2f 61 | ReturnTrace">errorReturnTrace</a |
| 71140 | 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 20 74 | >.to.access.the.current.return.t |
| 71160 | 72 61 63 65 2e 20 59 6f 75 20 63 61 6e 20 75 73 65 20 3c 63 6f 64 65 3e 73 74 64 2e 64 65 62 75 | race..You.can.use.<code>std.debu |
| 71180 | 67 2e 64 75 6d 70 53 74 61 63 6b 54 72 61 63 65 3c 2f 63 6f 64 65 3e 20 74 6f 20 70 72 69 6e 74 | g.dumpStackTrace</code>.to.print |
| 711a0 | 20 69 74 2e 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 63 6f 6d 70 74 | .it..This.function.returns.compt |
| 711c0 | 69 6d 65 2d 6b 6e 6f 77 6e 20 3c 61 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f | ime-known.<a.href="#null">null</ |
| 711e0 | 61 3e 20 77 68 65 6e 20 62 75 69 6c 64 69 6e 67 20 77 69 74 68 6f 75 74 20 65 72 72 6f 72 20 72 | a>.when.building.without.error.r |
| 71200 | 65 74 75 72 6e 20 74 72 61 63 69 6e 67 20 73 75 70 70 6f 72 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 | eturn.tracing.support.</li>..... |
| 71220 | 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 49 6d 70 6c 65 6d 65 6e 74 61 | ..</ul>.......<h4.id="Implementa |
| 71240 | 74 69 6f 6e 2d 44 65 74 61 69 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6d 70 6c | tion-Details"><a.href="#toc-Impl |
| 71260 | 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 6e 74 61 74 69 | ementation-Details">Implementati |
| 71280 | 6f 6e 20 44 65 74 61 69 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | on.Details</a>.<a.class="hdr".hr |
| 712a0 | 65 66 3d 22 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 c2 a7 3c | ef="#Implementation-Details">..< |
| 712c0 | 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 61 6e 61 | /a></h4>........<p>.......To.ana |
| 712e0 | 6c 79 7a 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 63 6f 73 74 2c 20 74 68 65 72 65 20 61 72 65 | lyze.performance.cost,.there.are |
| 71300 | 20 74 77 6f 20 63 61 73 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c | .two.cases:.......</p>.......<ul |
| 71320 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 77 68 65 6e 20 6e 6f 20 65 72 72 6f 72 73 20 61 72 65 | >.........<li>when.no.errors.are |
| 71340 | 20 72 65 74 75 72 6e 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 77 68 65 6e 20 | .returned</li>.........<li>when. |
| 71360 | 72 65 74 75 72 6e 69 6e 67 20 65 72 72 6f 72 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c | returning.errors</li>.......</ul |
| 71380 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 74 68 65 20 63 61 73 65 20 77 | >.......<p>.......For.the.case.w |
| 713a0 | 68 65 6e 20 6e 6f 20 65 72 72 6f 72 73 20 61 72 65 20 72 65 74 75 72 6e 65 64 2c 20 74 68 65 20 | hen.no.errors.are.returned,.the. |
| 713c0 | 63 6f 73 74 20 69 73 20 61 20 73 69 6e 67 6c 65 20 6d 65 6d 6f 72 79 20 77 72 69 74 65 20 6f 70 | cost.is.a.single.memory.write.op |
| 713e0 | 65 72 61 74 69 6f 6e 2c 20 6f 6e 6c 79 20 69 6e 20 74 68 65 20 66 69 72 73 74 20 6e 6f 6e 2d 66 | eration,.only.in.the.first.non-f |
| 71400 | 61 69 6c 61 62 6c 65 20 66 75 6e 63 74 69 6f 6e 20 69 6e 20 74 68 65 20 63 61 6c 6c 20 67 72 61 | ailable.function.in.the.call.gra |
| 71420 | 70 68 20 74 68 61 74 20 63 61 6c 6c 73 20 61 20 66 61 69 6c 61 62 6c 65 20 66 75 6e 63 74 69 6f | ph.that.calls.a.failable.functio |
| 71440 | 6e 2c 20 69 2e 65 2e 20 77 68 65 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 69 6e | n,.i.e..when.a.function.returnin |
| 71460 | 67 20 3c 63 6f 64 65 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 | g.<code><span.class="tok-type">v |
| 71480 | 6f 69 64 3c 2f 73 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 | oid</span></code>.calls.a.functi |
| 714a0 | 6f 6e 20 72 65 74 75 72 6e 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | on.returning.<code><span.class=" |
| 714c0 | 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 2e 0a 20 20 20 | tok-kw">error</span></code>..... |
| 714e0 | 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 68 69 73 20 73 74 | ...This.is.to.initialize.this.st |
| 71500 | 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 20 20 20 20 20 20 | ruct.in.the.stack.memory:....... |
| 71520 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 | </p>.......<figure><figcaption.c |
| 71540 | 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 | lass="zig-cap"><cite.class="file |
| 71560 | 22 3e 73 74 61 63 6b 5f 74 72 61 63 65 5f 73 74 72 75 63 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c | ">stack_trace_struct.zig</cite>< |
| 71580 | 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | /figcaption><pre><code><span.cla |
| 715a0 | 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 |
| 715c0 | 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 61 63 6b 54 72 | ss="tok-kw">const</span>.StackTr |
| 715e0 | 61 63 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 75 63 | ace.=.<span.class="tok-kw">struc |
| 71600 | 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | t</span>.{.....index:.<span.clas |
| 71620 | 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 20 69 | s="tok-type">usize</span>,.....i |
| 71640 | 6e 73 74 72 75 63 74 69 6f 6e 5f 61 64 64 72 65 73 73 65 73 3a 20 5b 4e 5d 3c 73 70 61 6e 20 63 | nstruction_addresses:.[N]<span.c |
| 71660 | 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 0a 7d 3b | lass="tok-type">usize</span>,.}; |
| 71680 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e | </code></pre></figure>.......<p> |
| 716a0 | 0a 20 20 20 20 20 20 48 65 72 65 2c 20 4e 20 69 73 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 66 75 | .......Here,.N.is.the.maximum.fu |
| 716c0 | 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 64 65 70 74 68 20 61 73 20 64 65 74 65 72 6d 69 6e 65 64 20 | nction.call.depth.as.determined. |
| 716e0 | 62 79 20 63 61 6c 6c 20 67 72 61 70 68 20 61 6e 61 6c 79 73 69 73 2e 20 52 65 63 75 72 73 69 6f | by.call.graph.analysis..Recursio |
| 71700 | 6e 20 69 73 20 69 67 6e 6f 72 65 64 20 61 6e 64 20 63 6f 75 6e 74 73 20 66 6f 72 20 32 2e 0a 20 | n.is.ignored.and.counts.for.2... |
| 71720 | 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 20 70 6f 69 6e | .....</p>.......<p>.......A.poin |
| 71740 | 74 65 72 20 74 6f 20 3c 63 6f 64 65 3e 53 74 61 63 6b 54 72 61 63 65 3c 2f 63 6f 64 65 3e 20 69 | ter.to.<code>StackTrace</code>.i |
| 71760 | 73 20 70 61 73 73 65 64 20 61 73 20 61 20 73 65 63 72 65 74 20 70 61 72 61 6d 65 74 65 72 20 74 | s.passed.as.a.secret.parameter.t |
| 71780 | 6f 20 65 76 65 72 79 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 63 61 6e 20 72 65 74 75 72 6e | o.every.function.that.can.return |
| 717a0 | 20 61 6e 20 65 72 72 6f 72 2c 20 62 75 74 20 69 74 27 73 20 61 6c 77 61 79 73 20 74 68 65 20 66 | .an.error,.but.it's.always.the.f |
| 717c0 | 69 72 73 74 20 70 61 72 61 6d 65 74 65 72 2c 20 73 6f 20 69 74 20 63 61 6e 20 6c 69 6b 65 6c 79 | irst.parameter,.so.it.can.likely |
| 717e0 | 20 73 69 74 20 69 6e 20 61 20 72 65 67 69 73 74 65 72 20 61 6e 64 20 73 74 61 79 20 74 68 65 72 | .sit.in.a.register.and.stay.ther |
| 71800 | 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 68 | e........</p>.......<p>.......Th |
| 71820 | 61 74 27 73 20 69 74 20 66 6f 72 20 74 68 65 20 70 61 74 68 20 77 68 65 6e 20 6e 6f 20 65 72 72 | at's.it.for.the.path.when.no.err |
| 71840 | 6f 72 73 20 6f 63 63 75 72 2e 20 49 74 27 73 20 70 72 61 63 74 69 63 61 6c 6c 79 20 66 72 65 65 | ors.occur..It's.practically.free |
| 71860 | 20 69 6e 20 74 65 72 6d 73 20 6f 66 20 70 65 72 66 6f 72 6d 61 6e 63 65 2e 0a 20 20 20 20 20 20 | .in.terms.of.performance........ |
| 71880 | 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 20 67 65 6e 65 72 61 | </p>.......<p>.......When.genera |
| 718a0 | 74 69 6e 67 20 74 68 65 20 63 6f 64 65 20 66 6f 72 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 | ting.the.code.for.a.function.tha |
| 718c0 | 74 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f 72 2c 20 6a 75 73 74 20 62 65 66 6f 72 65 20 | t.returns.an.error,.just.before. |
| 718e0 | 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 | the.<code><span.class="tok-kw">r |
| 71900 | 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 |
| 71920 | 6e 6c 79 20 66 6f 72 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | nly.for.the.<code><span.class="t |
| 71940 | 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 20 73 74 61 74 | ok-kw">return</span></code>.stat |
| 71960 | 65 6d 65 6e 74 73 20 74 68 61 74 20 72 65 74 75 72 6e 20 65 72 72 6f 72 73 29 2c 20 5a 69 67 20 | ements.that.return.errors),.Zig. |
| 71980 | 67 65 6e 65 72 61 74 65 73 20 61 20 63 61 6c 6c 20 74 6f 20 74 68 69 73 20 66 75 6e 63 74 69 6f | generates.a.call.to.this.functio |
| 719a0 | 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 | n:.......</p>.......<figure><fig |
| 719c0 | 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c | caption.class="zig-cap"><cite.cl |
| 719e0 | 61 73 73 3d 22 66 69 6c 65 22 3e 7a 69 67 5f 72 65 74 75 72 6e 5f 65 72 72 6f 72 5f 66 6e 2e 7a | ass="file">zig_return_error_fn.z |
| 71a00 | 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ig</cite></figcaption><pre><code |
| 71a20 | 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 2f 2f 20 6d 61 | ><span.class="tok-comment">//.ma |
| 71a40 | 72 6b 65 64 20 61 73 20 26 71 75 6f 74 3b 6e 6f 2d 69 6e 6c 69 6e 65 26 71 75 6f 74 3b 20 69 6e | rked.as."no-inline".in |
| 71a60 | 20 4c 4c 56 4d 20 49 52 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .LLVM.IR</span>.<span.class="tok |
| 71a80 | 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- |
| 71aa0 | 66 6e 22 3e 5f 5f 7a 69 67 5f 72 65 74 75 72 6e 5f 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 73 74 | fn">__zig_return_error</span>(st |
| 71ac0 | 61 63 6b 5f 74 72 61 63 65 3a 20 2a 53 74 61 63 6b 54 72 61 63 65 29 20 3c 73 70 61 6e 20 63 6c | ack_trace:.*StackTrace).<span.cl |
| 71ae0 | 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>.{.... |
| 71b00 | 20 73 74 61 63 6b 5f 74 72 61 63 65 2e 69 6e 73 74 72 75 63 74 69 6f 6e 5f 61 64 64 72 65 73 73 | .stack_trace.instruction_address |
| 71b20 | 65 73 5b 73 74 61 63 6b 5f 74 72 61 63 65 2e 69 6e 64 65 78 5d 20 3d 20 3c 73 70 61 6e 20 63 6c | es[stack_trace.index].=.<span.cl |
| 71b40 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 74 75 72 6e 41 64 64 72 65 73 73 | ass="tok-builtin">@returnAddress |
| 71b60 | 3c 2f 73 70 61 6e 3e 28 29 3b 0a 20 20 20 20 73 74 61 63 6b 5f 74 72 61 63 65 2e 69 6e 64 65 78 | </span>();.....stack_trace.index |
| 71b80 | 20 3d 20 28 73 74 61 63 6b 5f 74 72 61 63 65 2e 69 6e 64 65 78 20 2b 20 3c 73 70 61 6e 20 63 6c | .=.(stack_trace.index.+.<span.cl |
| 71ba0 | 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 25 20 4e 3b 0a | ass="tok-number">1</span>).%.N;. |
| 71bc0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 | }</code></pre></figure>.......<p |
| 71be0 | 3e 0a 20 20 20 20 20 20 54 68 65 20 63 6f 73 74 20 69 73 20 32 20 6d 61 74 68 20 6f 70 65 72 61 | >.......The.cost.is.2.math.opera |
| 71c00 | 74 69 6f 6e 73 20 70 6c 75 73 20 73 6f 6d 65 20 6d 65 6d 6f 72 79 20 72 65 61 64 73 20 61 6e 64 | tions.plus.some.memory.reads.and |
| 71c20 | 20 77 72 69 74 65 73 2e 20 54 68 65 20 6d 65 6d 6f 72 79 20 61 63 63 65 73 73 65 64 20 69 73 20 | .writes..The.memory.accessed.is. |
| 71c40 | 63 6f 6e 73 74 72 61 69 6e 65 64 20 61 6e 64 20 73 68 6f 75 6c 64 20 72 65 6d 61 69 6e 20 63 61 | constrained.and.should.remain.ca |
| 71c60 | 63 68 65 64 20 66 6f 72 20 74 68 65 20 64 75 72 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 65 72 72 | ched.for.the.duration.of.the.err |
| 71c80 | 6f 72 20 72 65 74 75 72 6e 20 62 75 62 62 6c 69 6e 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | or.return.bubbling........</p>.. |
| 71ca0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 73 20 66 6f 72 20 63 6f 64 65 20 73 69 7a 65 20 | .....<p>.......As.for.code.size. |
| 71cc0 | 63 6f 73 74 2c 20 31 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 62 65 66 6f 72 65 20 61 20 72 | cost,.1.function.call.before.a.r |
| 71ce0 | 65 74 75 72 6e 20 73 74 61 74 65 6d 65 6e 74 20 69 73 20 6e 6f 20 62 69 67 20 64 65 61 6c 2e 20 | eturn.statement.is.no.big.deal.. |
| 71d00 | 45 76 65 6e 20 73 6f 2c 0a 20 20 20 20 20 20 49 20 68 61 76 65 20 3c 61 20 68 72 65 66 3d 22 68 | Even.so,.......I.have.<a.href="h |
| 71d20 | 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 73 | ttps://github.com/ziglang/zig/is |
| 71d40 | 73 75 65 73 2f 36 39 30 22 3e 61 20 70 6c 61 6e 3c 2f 61 3e 20 74 6f 20 6d 61 6b 65 20 74 68 65 | sues/690">a.plan</a>.to.make.the |
| 71d60 | 20 63 61 6c 6c 20 74 6f 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 5f 5f 7a 69 67 5f 72 65 74 75 72 | .call.to.......<code>__zig_retur |
| 71d80 | 6e 5f 65 72 72 6f 72 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 | n_error</code>.a.tail.call,.whic |
| 71da0 | 68 20 62 72 69 6e 67 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 | h.brings.the.code.size.cost.down |
| 71dc0 | 20 74 6f 20 61 63 74 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 | .to.actually.zero..What.is.a.ret |
| 71de0 | 75 72 6e 20 73 74 61 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 | urn.statement.in.code.without.er |
| 71e00 | 72 6f 72 20 72 65 74 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 | ror.return.tracing.can.become.a. |
| 71e20 | 6a 75 6d 70 20 69 6e 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 | jump.instruction.in.code.with.er |
| 71e40 | 72 6f 72 20 72 65 74 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 | ror.return.tracing........</p>.. |
| 71e60 | 20 20 20 20 20 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 | ..........................<h2.id |
| 71e80 | 3d 22 4f 70 74 69 6f 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 | ="Optionals"><a.href="#toc-Optio |
| 71ea0 | 6e 61 6c 73 22 3e 4f 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 | nals">Optionals</a>.<a.class="hd |
| 71ec0 | 72 22 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e | r".href="#Optionals">..</a></h2> |
| 71ee0 | 0a 0a 20 20 20 20 20 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 | ........<p>.......One.area.that. |
| 71f00 | 5a 69 67 20 70 72 6f 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 | Zig.provides.safety.without.comp |
| 71f20 | 72 6f 6d 69 73 69 6e 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 | romising.efficiency.or.......rea |
| 71f40 | 64 61 62 69 6c 69 74 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 | dability.is.with.the.optional.ty |
| 71f60 | 70 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 | pe........</p>.......<p>.......T |
| 71f80 | 68 65 20 71 75 65 73 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 | he.question.mark.symbolizes.the. |
| 71fa0 | 6f 70 74 69 6f 6e 61 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 | optional.type..You.can.convert.a |
| 71fc0 | 20 74 79 70 65 20 74 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 | .type.to.an.optional.......type. |
| 71fe0 | 62 79 20 70 75 74 74 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 | by.putting.a.question.mark.in.fr |
| 72000 | 6f 6e 74 20 6f 66 20 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 | ont.of.it,.like.this:.......</p> |
| 72020 | 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | .......<figure><figcaption.class |
| 72040 | 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6f 70 | ="zig-cap"><cite.class="file">op |
| 72060 | 74 69 6f 6e 61 6c 5f 69 6e 74 65 67 65 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | tional_integer.zig</cite></figca |
| 72080 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ption><pre><code><span.class="to |
| 720a0 | 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 65 72 3c 2f 73 70 | k-comment">//.normal.integer</sp |
| 720c0 | 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 2f | an>.<span.class="tok-kw">const</ |
| 720e0 | 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 61 73 73 3d 22 74 | span>.normal_int:.<span.class="t |
| 72100 | 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 |
| 72120 | 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 0a 3c 73 70 | s="tok-number">1234</span>;..<sp |
| 72140 | 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 70 74 69 6f 6e | an.class="tok-comment">//.option |
| 72160 | 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 61 73 73 3d 22 74 | al.integer</span>.<span.class="t |
| 72180 | 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 61 6c 5f 69 6e 74 | ok-kw">const</span>.optional_int |
| 721a0 | 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 73 | :.?<span.class="tok-type">i32</s |
| 721c0 | 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"> |
| 721e0 | 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 3c 2f 66 69 67 75 72 | 5678</span>;</code></pre></figur |
| 72200 | 65 3e 0a 0a 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 | e>........<p>.......Now.the.vari |
| 72220 | 61 62 6c 65 20 3c 63 6f 64 65 3e 6f 70 74 69 6f 6e 61 6c 5f 69 6e 74 3c 2f 63 6f 64 65 3e 20 63 | able.<code>optional_int</code>.c |
| 72240 | 6f 75 6c 64 20 62 65 20 61 6e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ould.be.an.<code><span.class="to |
| 72260 | 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 6f 72 20 3c 63 | k-type">i32</span></code>,.or.<c |
| 72280 | 6f 64 65 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 | ode><span.class="tok-null">null< |
| 722a0 | 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>....... |
| 722c0 | 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 |
| 722e0 | 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 |
| 72300 | 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 |
| 72320 | 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 |
| 72340 | 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...... |
| 72360 | 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 |
| 72380 | 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 |
| 723a0 | 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/" |
| 723c0 | 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 |
| 723e0 | 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> |
| 72400 | 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>..... |
| 72420 | 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 |
| 72440 | 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 |
| 72460 | 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 |
| 72480 | 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 |
| 724a0 | 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 |
| 724c0 | 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 |
| 724e0 | 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. |
| 72500 | 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. |
| 72520 | 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. |
| 72540 | 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 |
| 72560 | 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 |
| 72580 | 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. |
| 725a0 | 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 |
| 725c0 | 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. |
| 725e0 | 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>. |
| 72600 | 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 |
| 72620 | 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 |
| 72640 | 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 |
| 72660 | 65 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | e</p>.......<figure><figcaption. |
| 72680 | 63 6c 61 73 73 3d 22 63 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | class="c-cap"><cite.class="file" |
| 726a0 | 3e 63 61 6c 6c 5f 6d 61 6c 6c 6f 63 5f 69 6e 5f 63 2e 63 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 | >call_malloc_in_c.c</cite></figc |
| 726c0 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 2f 2f 20 6d 61 6c 6c 6f 63 20 70 72 6f 74 | aption><pre><code>//.malloc.prot |
| 726e0 | 6f 74 79 70 65 20 69 6e 63 6c 75 64 65 64 20 66 6f 72 20 72 65 66 65 72 65 6e 63 65 0a 76 6f 69 | otype.included.for.reference.voi |
| 72700 | 64 20 2a 6d 61 6c 6c 6f 63 28 73 69 7a 65 5f 74 20 73 69 7a 65 29 3b 0a 0a 73 74 72 75 63 74 20 | d.*malloc(size_t.size);..struct. |
| 72720 | 46 6f 6f 20 2a 64 6f 5f 61 5f 74 68 69 6e 67 28 76 6f 69 64 29 20 7b 0a 20 20 20 20 63 68 61 72 | Foo.*do_a_thing(void).{.....char |
| 72740 | 20 2a 70 74 72 20 3d 20 6d 61 6c 6c 6f 63 28 31 32 33 34 29 3b 0a 20 20 20 20 69 66 20 28 21 70 | .*ptr.=.malloc(1234);.....if.(!p |
| 72760 | 74 72 29 20 72 65 74 75 72 6e 20 4e 55 4c 4c 3b 0a 20 20 20 20 2f 2f 20 2e 2e 2e 0a 7d 3c 2f 63 | tr).return.NULL;.....//.....}</c |
| 72780 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 5a 69 67 | ode></pre></figure>.......<p>Zig |
| 727a0 | 20 63 6f 64 65 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | .code</p>.......<figure><figcapt |
| 727c0 | 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d | ion.class="zig-cap"><cite.class= |
| 727e0 | 22 66 69 6c 65 22 3e 63 61 6c 6c 5f 6d 61 6c 6c 6f 63 5f 66 72 6f 6d 5f 7a 69 67 2e 7a 69 67 3c | "file">call_malloc_from_zig.zig< |
| 72800 | 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 | /cite></figcaption><pre><code><s |
| 72820 | 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 61 6c 6c 6f | pan.class="tok-comment">//.mallo |
| 72840 | 63 20 70 72 6f 74 6f 74 79 70 65 20 69 6e 63 6c 75 64 65 64 20 66 6f 72 20 72 65 66 65 72 65 6e | c.prototype.included.for.referen |
| 72860 | 63 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 6b 77 22 3e 65 | ce</span>.<span.class="tok-kw">e |
| 72880 | 78 74 65 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 | xtern</span>.<span.class="tok-kw |
| 728a0 | 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" |
| 728c0 | 3e 6d 61 6c 6c 6f 63 3c 2f 73 70 61 6e 3e 28 73 69 7a 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | >malloc</span>(size:.<span.class |
| 728e0 | 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 3f 5b 2a 5d 3c 73 | ="tok-type">usize</span>).?[*]<s |
| 72900 | 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 3b 0a | pan.class="tok-type">u8</span>;. |
| 72920 | 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>. |
| 72940 | 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 73 | <span.class="tok-fn">doAThing</s |
| 72960 | 70 61 6e 3e 28 29 20 3f 2a 46 6f 6f 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>().?*Foo.{.....<span.class=" |
| 72980 | 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 6d 61 6c 6c 6f | tok-kw">const</span>.ptr.=.mallo |
| 729a0 | 63 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 33 34 3c | c(<span.class="tok-number">1234< |
| 729c0 | 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 6f 72 65 | /span>).<span.class="tok-kw">ore |
| 729e0 | 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"> |
| 72a00 | 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 6e | return</span>.<span.class="tok-n |
| 72a20 | 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 70 74 72 3b 20 3c | ull">null</span>;....._.=.ptr;.< |
| 72a40 | 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 2e 2e 2e 3c | span.class="tok-comment">//....< |
| 72a60 | 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 | /span>.}</code></pre></figure>.. |
| 72a80 | 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 |
| 72aa0 | 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 |
| 72ac0 | 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 |
| 72ae0 | 22 0a 20 20 20 20 20 20 20 20 69 73 20 3c 63 6f 64 65 3e 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 | ".........is.<code>[*]<span.clas |
| 72b00 | 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 20 3c 65 | s="tok-type">u8</span></code>.<e |
| 72b20 | 6d 3e 6e 6f 74 3c 2f 65 6d 3e 20 3c 63 6f 64 65 3e 3f 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | m>not</em>.<code>?[*]<span.class |
| 72b40 | 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 2e 20 54 68 | ="tok-type">u8</span></code>..Th |
| 72b60 | 65 20 3c 63 6f 64 65 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 | e.<code><span.class="tok-kw">ore |
| 72b80 | 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....... |
| 72ba0 | 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 |
| 72bc0 | 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 3e 70 74 | onal.type.and.therefore.<code>pt |
| 72be0 | 72 3c 2f 63 6f 64 65 3e 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 6e 6f 6e | r</code>.is.guaranteed.to.be.non |
| 72c00 | 2d 6e 75 6c 6c 20 65 76 65 72 79 77 68 65 72 65 0a 20 20 20 20 20 20 20 20 69 74 20 69 73 20 75 | -null.everywhere.........it.is.u |
| 72c20 | 73 65 64 20 69 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | sed.in.the.function........</p>. |
| 72c40 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 68 65 20 6f 74 68 65 72 20 66 6f 72 6d | ......<p>.........The.other.form |
| 72c60 | 20 6f 66 20 63 68 65 63 6b 69 6e 67 20 61 67 61 69 6e 73 74 20 4e 55 4c 4c 20 79 6f 75 20 6d 69 | .of.checking.against.NULL.you.mi |
| 72c80 | 67 68 74 20 73 65 65 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c | ght.see.looks.like.this:.......< |
| 72ca0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | /p>.......<figure><figcaption.cl |
| 72cc0 | 61 73 73 3d 22 63 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 | ass="c-cap"><cite.class="file">c |
| 72ce0 | 68 65 63 6b 69 6e 67 5f 6e 75 6c 6c 5f 69 6e 5f 63 2e 63 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 | hecking_null_in_c.c</cite></figc |
| 72d00 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 76 6f 69 64 20 64 6f 5f 61 5f 74 68 69 6e | aption><pre><code>void.do_a_thin |
| 72d20 | 67 28 73 74 72 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 | g(struct.Foo.*foo).{.....//.do.s |
| 72d40 | 6f 6d 65 20 73 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 | ome.stuff......if.(foo).{....... |
| 72d60 | 20 20 64 6f 5f 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 | ..do_something_with_foo(foo);... |
| 72d80 | 20 20 7d 0a 0a 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 | ..}......//.do.some.stuff.}</cod |
| 72da0 | 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | e></pre></figure>.......<p>..... |
| 72dc0 | 20 20 20 20 49 6e 20 5a 69 67 20 79 6f 75 20 63 61 6e 20 61 63 63 6f 6d 70 6c 69 73 68 20 74 68 | ....In.Zig.you.can.accomplish.th |
| 72de0 | 65 20 73 61 6d 65 20 74 68 69 6e 67 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | e.same.thing:.......</p>.......< |
| 72e00 | 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 | figure><figcaption.class="zig-ca |
| 72e20 | 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 68 65 63 6b 69 6e 67 5f 6e | p"><cite.class="file">checking_n |
| 72e40 | 75 6c 6c 5f 69 6e 5f 7a 69 67 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | ull_in_zig.zig</cite></figcaptio |
| 72e60 | 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n><pre><code><span.class="tok-kw |
| 72e80 | 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 |
| 72ea0 | 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 7d 3b 0a 3c 73 70 61 | ="tok-kw">struct</span>.{};.<spa |
| 72ec0 | 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 |
| 72ee0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 53 6f 6d 65 74 68 69 6e 67 57 69 74 68 46 | .class="tok-fn">doSomethingWithF |
| 72f00 | 6f 6f 3c 2f 73 70 61 6e 3e 28 66 6f 6f 3a 20 2a 46 6f 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | oo</span>(foo:.*Foo).<span.class |
| 72f20 | 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 5f 20 | ="tok-type">void</span>.{....._. |
| 72f40 | 3d 20 66 6f 6f 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 | =.foo;.}..<span.class="tok-kw">f |
| 72f60 | 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 6f | n</span>.<span.class="tok-fn">do |
| 72f80 | 41 54 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 | AThing</span>(optional_foo:.?*Fo |
| 72fa0 | 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</ |
| 72fc0 | 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 6f 6d | span>.{.....<span.class="tok-com |
| 72fe0 | 6d 65 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 | ment">//.do.some.stuff</span>... |
| 73000 | 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 |
| 73020 | 3e 20 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 20 | >.(optional_foo).|foo|.{........ |
| 73040 | 20 64 6f 53 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 | .doSomethingWithFoo(foo);.....}. |
| 73060 | 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">/ |
| 73080 | 2f 20 64 6f 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 | /.do.some.stuff</span>.}</code>< |
| 730a0 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | /pre></figure>........<p>....... |
| 730c0 | 4f 6e 63 65 20 61 67 61 69 6e 2c 20 74 68 65 20 6e 6f 74 61 62 6c 65 20 74 68 69 6e 67 20 68 65 | Once.again,.the.notable.thing.he |
| 730e0 | 72 65 20 69 73 20 74 68 61 74 20 69 6e 73 69 64 65 20 74 68 65 20 69 66 20 62 6c 6f 63 6b 2c 0a | re.is.that.inside.the.if.block,. |
| 73100 | 20 20 20 20 20 20 3c 63 6f 64 65 3e 66 6f 6f 3c 2f 63 6f 64 65 3e 20 69 73 20 6e 6f 20 6c 6f 6e | ......<code>foo</code>.is.no.lon |
| 73120 | 67 65 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 | ger.an.optional.pointer,.it.is.a |
| 73140 | 20 70 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 | .pointer,.which.......cannot.be. |
| 73160 | 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 0a 20 20 20 20 20 | null........</p>.......<p>...... |
| 73180 | 20 4f 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 | .One.benefit.to.this.is.that.fun |
| 731a0 | 63 74 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 | ctions.which.take.pointers.as.ar |
| 731c0 | 67 75 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 | guments.can.......be.annotated.w |
| 731e0 | 69 74 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 | ith.the."nonnull".attribute.-.<c |
| 73200 | 6f 64 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 | ode>__attribute__((nonnull))</co |
| 73220 | 64 65 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 | de>.in.......<a.href="https://gc |
| 73240 | 63 2e 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 | c.gnu.org/onlinedocs/gcc-4.0.0/g |
| 73260 | 63 63 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 | cc/Function-Attributes.html">GCC |
| 73280 | 3c 2f 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 | </a>........The.optimizer.can.so |
| 732a0 | 6d 65 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 | metimes.make.better.decisions.kn |
| 732c0 | 6f 77 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 | owing.that.pointer.arguments.... |
| 732e0 | 20 20 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 | ...cannot.be.null........</p>... |
| 73300 | 20 20 20 20 3c 68 33 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 | ....<h3.id="Optional-Type"><a.hr |
| 73320 | 65 66 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 | ef="#toc-Optional-Type">Optional |
| 73340 | 20 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 | .Type</a>.<a.class="hdr".href="# |
| 73360 | 4f 70 74 69 6f 6e 61 6c 2d 54 79 70 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 | Optional-Type">..</a></h3>...... |
| 73380 | 20 20 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 | ..<p>An.optional.is.created.by.p |
| 733a0 | 75 74 74 69 6e 67 20 3c 63 6f 64 65 3e 3f 3c 2f 63 6f 64 65 3e 20 69 6e 20 66 72 6f 6e 74 20 6f | utting.<code>?</code>.in.front.o |
| 733c0 | 66 20 61 20 74 79 70 65 2e 20 59 6f 75 20 63 61 6e 20 75 73 65 20 63 6f 6d 70 69 6c 65 2d 74 69 | f.a.type..You.can.use.compile-ti |
| 733e0 | 6d 65 0a 20 20 20 20 20 20 72 65 66 6c 65 63 74 69 6f 6e 20 74 6f 20 61 63 63 65 73 73 20 74 68 | me.......reflection.to.access.th |
| 73400 | 65 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 3a 3c 2f 70 3e | e.child.type.of.an.optional:</p> |
| 73420 | 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | .......<figure><figcaption.class |
| 73440 | 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 | ="zig-cap"><cite.class="file">te |
| 73460 | 73 74 5f 6f 70 74 69 6f 6e 61 6c 5f 74 79 70 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | st_optional_type.zig</cite></fig |
| 73480 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | caption><pre><code><span.class=" |
| 734a0 | 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 73 | tok-kw">const</span>.expect.=.<s |
| 734c0 | 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< |
| 734e0 | 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 |
| 73500 | 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 70 | ot;std"</span>).testing.exp |
| 73520 | 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< |
| 73540 | 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 |
| 73560 | 6f 74 3b 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | ot;optional.type"</span>.{. |
| 73580 | 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">// |
| 735a0 | 20 44 65 63 6c 61 72 65 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 61 6e 64 20 63 6f 65 72 63 65 20 | .Declare.an.optional.and.coerce. |
| 735c0 | 66 72 6f 6d 20 6e 75 6c 6c 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | from.null:</span>.....<span.clas |
| 735e0 | 73 3d 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 3f 3c 73 70 61 | s="tok-kw">var</span>.foo:.?<spa |
| 73600 | 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>.=. |
| 73620 | 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 |
| 73640 | 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 63 6f 6d 6d 65 6e | n>;......<span.class="tok-commen |
| 73660 | 74 22 3e 2f 2f 20 43 6f 65 72 63 65 20 66 72 6f 6d 20 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 | t">//.Coerce.from.child.type.of. |
| 73680 | 61 6e 20 6f 70 74 69 6f 6e 61 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 6f 6f 20 3d 20 3c 73 70 | an.optional</span>.....foo.=.<sp |
| 736a0 | 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 |
| 736c0 | 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 63 6f 6d 6d 65 6e 74 | >;......<span.class="tok-comment |
| 736e0 | 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 6c 65 63 74 69 6f 6e | ">//.Use.compile-time.reflection |
| 73700 | 20 74 6f 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 74 68 65 | .to.access.the.child.type.of.the |
| 73720 | 20 6f 70 74 69 6f 6e 61 6c 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | .optional:</span>.....<span.clas |
| 73740 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | s="tok-kw">try</span>.<span.clas |
| 73760 | 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 65 78 70 65 63 | s="tok-kw">comptime</span>.expec |
| 73780 | 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 |
| 737a0 | 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 |
| 737c0 | 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 6f 70 74 69 | iltin">@TypeOf</span>(foo)).opti |
| 737e0 | 6f 6e 61 6c 2e 63 68 69 6c 64 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | onal.child.==.<span.class="tok-t |
| 73800 | 79 70 65 22 3e 69 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 | ype">i32</span>);.}</code></pre> |
| 73820 | 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | </figure><figure><figcaption.cla |
| 73840 | 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e | ss="shell-cap">Shell</figcaption |
| 73860 | 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 | ><pre><samp>$.<kbd>zig.test.test |
| 73880 | 5f 6f 70 74 69 6f 6e 61 6c 5f 74 79 70 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 | _optional_type.zig</kbd>.1/1.tes |
| 738a0 | 74 5f 6f 70 74 69 6f 6e 61 6c 5f 74 79 70 65 2e 74 65 73 74 2e 6f 70 74 69 6f 6e 61 6c 20 74 79 | t_optional_type.test.optional.ty |
| 738c0 | 70 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 | pe...OK.All.1.tests.passed..</sa |
| 738e0 | 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | mp></pre></figure>.............. |
| 73900 | 20 3c 68 33 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 | .<h3.id="null"><a.href="#toc-nul |
| 73920 | 6c 22 3e 6e 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 | l">null</a>.<a.class="hdr".href= |
| 73940 | 22 23 6e 75 6c 6c 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 | "#null">..</a></h3>........<p>.. |
| 73960 | 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 75 6e 64 65 66 69 6e | .....Just.like.<a.href="#undefin |
| 73980 | 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ed">undefined</a>,.<code><span.c |
| 739a0 | 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 3c 2f 63 6f 64 | lass="tok-null">null</span></cod |
| 739c0 | 65 3e 20 68 61 73 20 69 74 73 20 6f 77 6e 20 74 79 70 65 2c 20 61 6e 64 20 74 68 65 20 6f 6e 6c | e>.has.its.own.type,.and.the.onl |
| 739e0 | 79 20 77 61 79 20 74 6f 20 75 73 65 20 69 74 20 69 73 20 74 6f 0a 20 20 20 20 20 20 63 61 73 74 | y.way.to.use.it.is.to.......cast |
| 73a00 | 20 69 74 20 74 6f 20 61 20 64 69 66 66 65 72 65 6e 74 20 74 79 70 65 3a 0a 20 20 20 20 20 20 3c | .it.to.a.different.type:.......< |
| 73a20 | 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | /p>.......<figure><figcaption.cl |
| 73a40 | 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ass="zig-cap"><cite.class="file" |
| 73a60 | 3e 6e 75 6c 6c 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 | >null.zig</cite></figcaption><pr |
| 73a80 | 65 3e 3c 63 6f 64 65 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 | e><code><span.class="tok-kw">con |
| 73aa0 | 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 6e | st</span>.optional_value:.?<span |
| 73ac0 | 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>.=.< |
| 73ae0 | 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 |
| 73b00 | 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 | >;</code></pre></figure>........ |
| 73b20 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 | .......<h3.id="Optional-Pointers |
| 73b40 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 | "><a.href="#toc-Optional-Pointer |
| 73b60 | 73 22 3e 4f 70 74 69 6f 6e 61 6c 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | s">Optional.Pointers</a>.<a.clas |
| 73b80 | 73 3d 22 68 64 72 22 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 | s="hdr".href="#Optional-Pointers |
| 73ba0 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 6e 20 6f 70 74 69 6f | ">..</a></h3>........<p>An.optio |
| 73bc0 | 6e 61 6c 20 70 6f 69 6e 74 65 72 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 | nal.pointer.is.guaranteed.to.be. |
| 73be0 | 74 68 65 20 73 61 6d 65 20 73 69 7a 65 20 61 73 20 61 20 70 6f 69 6e 74 65 72 2e 20 54 68 65 20 | the.same.size.as.a.pointer..The. |
| 73c00 | 3c 63 6f 64 65 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 | <code><span.class="tok-null">nul |
| 73c20 | 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 6f 70 74 | l</span></code>.of.......the.opt |
| 73c40 | 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 72 65 73 | ional.is.guaranteed.to.be.addres |
| 73c60 | 73 20 30 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | s.0.</p>.......<figure><figcapti |
| 73c80 | 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 | on.class="zig-cap"><cite.class=" |
| 73ca0 | 66 69 6c 65 22 3e 74 65 73 74 5f 6f 70 74 69 6f 6e 61 6c 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 3c | file">test_optional_pointer.zig< |
| 73cc0 | 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 | /cite></figcaption><pre><code><s |
| 73ce0 | 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>. |
| 73d00 | 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 74 69 | expect.=.<span.class="tok-builti |
| 73d20 | 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 |
| 73d40 | 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>). |
| 73d60 | 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 |
| 73d80 | 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 |
| 73da0 | 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 69 6e 74 65 72 73 26 | ok-str">"optional.pointers& |
| 73dc0 | 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=" |
| 73de0 | 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 63 61 6e 6e 6f 74 20 | tok-comment">//.Pointers.cannot. |
| 73e00 | 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 6c 6c 20 70 6f 69 6e | be.null..If.you.want.a.null.poin |
| 73e20 | 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 61 6e 3e 0a 20 20 20 | ter,.use.the.optional</span>.... |
| 73e40 | 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 70 72 | .<span.class="tok-comment">//.pr |
| 73e60 | 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 74 65 72 20 74 79 70 | efix.`?`.to.make.the.pointer.typ |
| 73e80 | 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 70 61 6e 20 63 6c 61 | e.optional.</span>.....<span.cla |
| 73ea0 | 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 3a 20 3f 2a 3c 73 | ss="tok-kw">var</span>.ptr:.?*<s |
| 73ec0 | 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>. |
| 73ee0 | 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 73 | =.<span.class="tok-null">null</s |
| 73f00 | 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 22 3e | pan>;......<span.class="tok-kw"> |
| 73f20 | 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 6f 6b 2d 74 | var</span>.x:.<span.class="tok-t |
| 73f40 | 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 |
| 73f60 | 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 74 72 20 3d 20 26 | ok-number">1</span>;.....ptr.=.& |
| 73f80 | 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 74 6f 6b 2d 6b 77 22 | amp;x;......<span.class="tok-kw" |
| 73fa0 | 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 2a 20 3d 3d 20 3c 73 | >try</span>.expect(ptr.?.*.==.<s |
| 73fc0 | 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>) |
| 73fe0 | 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" |
| 74000 | 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 20 74 68 65 20 73 61 | >//.Optional.pointers.are.the.sa |
| 74020 | 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 73 2c 20 62 65 63 61 | me.size.as.normal.pointers,.beca |
| 74040 | 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 70 61 6e 20 63 6c 61 | use.pointer</span>.....<span.cla |
| 74060 | 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 30 20 69 73 20 75 | ss="tok-comment">//.value.0.is.u |
| 74080 | 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 70 61 6e 3e 0a 20 20 | sed.as.the.null.value.</span>... |
| 740a0 | 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 |
| 740c0 | 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 |
| 740e0 | 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 20 63 6c 61 73 73 3d | n">@sizeOf</span>(?*<span.class= |
| 74100 | 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 20 3c 73 70 61 6e 20 | "tok-type">i32</span>).==.<span. |
| 74120 | 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 61 | class="tok-builtin">@sizeOf</spa |
| 74140 | 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 22 3e 69 33 32 3c 2f | n>(*<span.class="tok-type">i32</ |
| 74160 | 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | span>));.}</code></pre></figure> |
| 74180 | 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | <figure><figcaption.class="shell |
| 741a0 | 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 | -cap">Shell</figcaption><pre><sa |
| 741c0 | 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 6f 70 74 69 6f 6e 61 6c | mp>$.<kbd>zig.test.test_optional |
| 741e0 | 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 6f 70 74 69 | _pointer.zig</kbd>.1/1.test_opti |
| 74200 | 6f 6e 61 6c 5f 70 6f 69 6e 74 65 72 2e 74 65 73 74 2e 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 | onal_pointer.test.optional.point |
| 74220 | 65 72 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 | ers...OK.All.1.tests.passed..</s |
| 74240 | 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 | amp></pre></figure>............. |
| 74260 | 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 |
| 74280 | 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 69 6c | ref="#while-with-Optionals">whil |
| 742a0 | 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 3c 6c 69 3e 3c 61 | e.with.Optionals</a></li>.<li><a |
| 742c0 | 20 68 72 65 66 3d 22 23 69 66 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 69 66 20 77 69 | .href="#if-with-Optionals">if.wi |
| 742e0 | 74 68 20 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 | th.Optionals</a></li>.</ul>..... |
| 74300 | 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 43 61 73 74 69 6e 67 22 3e 3c 61 20 68 72 | ..........<h2.id="Casting"><a.hr |
| 74320 | 65 66 3d 22 23 74 6f 63 2d 43 61 73 74 69 6e 67 22 3e 43 61 73 74 69 6e 67 3c 2f 61 3e 20 3c 61 | ef="#toc-Casting">Casting</a>.<a |
| 74340 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 61 73 74 69 6e 67 22 3e c2 a7 3c | .class="hdr".href="#Casting">..< |
| 74360 | 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 3c 73 74 72 | /a></h2>........<p>.......A.<str |
| 74380 | 6f 6e 67 3e 74 79 70 65 20 63 61 73 74 3c 2f 73 74 72 6f 6e 67 3e 20 63 6f 6e 76 65 72 74 73 20 | ong>type.cast</strong>.converts. |
| 743a0 | 61 20 76 61 6c 75 65 20 6f 66 20 6f 6e 65 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 68 65 72 2e 0a | a.value.of.one.type.to.another.. |
| 743c0 | 20 20 20 20 20 20 5a 69 67 20 68 61 73 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 | ......Zig.has.<a.href="#Type-Coe |
| 743e0 | 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 66 6f 72 20 63 6f 6e | rcion">Type.Coercion</a>.for.con |
| 74400 | 76 65 72 73 69 6f 6e 73 20 74 68 61 74 20 61 72 65 20 6b 6e 6f 77 6e 20 74 6f 20 62 65 20 63 6f | versions.that.are.known.to.be.co |
| 74420 | 6d 70 6c 65 74 65 6c 79 20 73 61 66 65 20 61 6e 64 20 75 6e 61 6d 62 69 67 75 6f 75 73 2c 0a 20 | mpletely.safe.and.unambiguous,.. |
| 74440 | 20 20 20 20 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 45 78 70 6c 69 63 69 74 2d 43 61 73 74 | .....and.<a.href="#Explicit-Cast |
| 74460 | 73 22 3e 45 78 70 6c 69 63 69 74 20 43 61 73 74 73 3c 2f 61 3e 20 66 6f 72 20 63 6f 6e 76 65 72 | s">Explicit.Casts</a>.for.conver |
| 74480 | 73 69 6f 6e 73 20 74 68 61 74 20 6f 6e 65 20 77 6f 75 6c 64 20 6e 6f 74 20 77 61 6e 74 20 74 6f | sions.that.one.would.not.want.to |
| 744a0 | 20 68 61 70 70 65 6e 20 6f 6e 20 61 63 63 69 64 65 6e 74 2e 0a 20 20 20 20 20 20 54 68 65 72 65 | .happen.on.accident........There |
| 744c0 | 20 69 73 20 61 6c 73 6f 20 61 20 74 68 69 72 64 20 6b 69 6e 64 20 6f 66 20 74 79 70 65 20 63 6f | .is.also.a.third.kind.of.type.co |
| 744e0 | 6e 76 65 72 73 69 6f 6e 20 63 61 6c 6c 65 64 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 | nversion.called.<a.href="#Peer-T |
| 74500 | 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 |
| 74520 | 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 0a 20 20 20 20 20 20 74 68 65 20 63 61 73 65 20 77 68 65 6e | tion</a>.for.......the.case.when |
| 74540 | 20 61 20 72 65 73 75 6c 74 20 74 79 70 65 20 6d 75 73 74 20 62 65 20 64 65 63 69 64 65 64 20 67 | .a.result.type.must.be.decided.g |
| 74560 | 69 76 65 6e 20 6d 75 6c 74 69 70 6c 65 20 6f 70 65 72 61 6e 64 20 74 79 70 65 73 2e 0a 20 20 20 | iven.multiple.operand.types..... |
| 74580 | 20 20 20 3c 2f 70 3e 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 | ...</p>.......<h3.id="Type-Coerc |
| 745a0 | 69 6f 6e 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 | ion"><a.href="#toc-Type-Coercion |
| 745c0 | 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | ">Type.Coercion</a>.<a.class="hd |
| 745e0 | 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c | r".href="#Type-Coercion">..</a>< |
| 74600 | 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 79 70 65 20 63 6f 65 72 63 | /h3>........<p>.......Type.coerc |
| 74620 | 69 6f 6e 20 6f 63 63 75 72 73 20 77 68 65 6e 20 6f 6e 65 20 74 79 70 65 20 69 73 20 65 78 70 65 | ion.occurs.when.one.type.is.expe |
| 74640 | 63 74 65 64 2c 20 62 75 74 20 64 69 66 66 65 72 65 6e 74 20 74 79 70 65 20 69 73 20 70 72 6f 76 | cted,.but.different.type.is.prov |
| 74660 | 69 64 65 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | ided:.......</p>.......<figure>< |
| 74680 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 | figcaption.class="zig-cap"><cite |
| 746a0 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 74 79 70 65 5f 63 6f 65 72 63 69 6f 6e | .class="file">test_type_coercion |
| 746c0 | 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f | .zig</cite></figcaption><pre><co |
| 746e0 | 64 65 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 | de><span.class="tok-kw">test</sp |
| 74700 | 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">" |
| 74720 | 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 76 61 72 69 61 62 6c 65 20 64 65 63 6c 61 72 61 | type.coercion.-.variable.declara |
| 74740 | 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 20 63 6c | tion"</span>.{.....<span.cl |
| 74760 | 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 |
| 74780 | 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>.=. |
| 747a0 | 3c 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 |
| 747c0 | 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 |
| 747e0 | 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 74 79 70 | t</span>.b:.<span.class="tok-typ |
| 74800 | 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 61 3b 0a 20 20 20 20 5f 20 3d 20 62 3b 0a 7d 0a | e">u16</span>.=.a;....._.=.b;.}. |
| 74820 | 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 |
| 74840 | 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 74 79 | >.<span.class="tok-str">"ty |
| 74860 | 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 75 6f 74 | pe.coercion.-.function.call" |
| 74880 | 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- |
| 748a0 | 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= |
| 748c0 | 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 61 | "tok-type">u8</span>.=.<span.cla |
| 748e0 | 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 6f | ss="tok-number">1</span>;.....fo |
| 74900 | 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 6e | o(a);.}..<span.class="tok-kw">fn |
| 74920 | 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 |
| 74940 | 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 65 | </span>(b:.<span.class="tok-type |
| 74960 | 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 74 | ">u16</span>).<span.class="tok-t |
| 74980 | 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 20 62 3b 0a 7d 0a | ype">void</span>.{....._.=.b;.}. |
| 749a0 | 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 |
| 749c0 | 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 74 79 | >.<span.class="tok-str">"ty |
| 749e0 | 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 40 61 73 20 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c | pe.coercion.-.@as.builtin"< |
| 74a00 | 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 |
| 74a20 | 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 22 74 | ">const</span>.a:.<span.class="t |
| 74a40 | 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 |
| 74a60 | 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 |
| 74a80 | 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 20 | n.class="tok-kw">const</span>.b. |
| 74aa0 | 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 3c | =.<span.class="tok-builtin">@as< |
| 74ac0 | 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 75 31 | /span>(<span.class="tok-type">u1 |
| 74ae0 | 36 3c 2f 73 70 61 6e 3e 2c 20 61 29 3b 0a 20 20 20 20 5f 20 3d 20 62 3b 0a 7d 3c 2f 63 6f 64 65 | 6</span>,.a);....._.=.b;.}</code |
| 74b00 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | ></pre></figure><figure><figcapt |
| 74b20 | 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 | ion.class="shell-cap">Shell</fig |
| 74b40 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 | caption><pre><samp>$.<kbd>zig.te |
| 74b60 | 73 74 20 74 65 73 74 5f 74 79 70 65 5f 63 6f 65 72 63 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a | st.test_type_coercion.zig</kbd>. |
| 74b80 | 31 2f 33 20 74 65 73 74 5f 74 79 70 65 5f 63 6f 65 72 63 69 6f 6e 2e 74 65 73 74 2e 74 79 70 65 | 1/3.test_type_coercion.test.type |
| 74ba0 | 20 63 6f 65 72 63 69 6f 6e 20 2d 20 76 61 72 69 61 62 6c 65 20 64 65 63 6c 61 72 61 74 69 6f 6e | .coercion.-.variable.declaration |
| 74bc0 | 2e 2e 2e 4f 4b 0a 32 2f 33 20 74 65 73 74 5f 74 79 70 65 5f 63 6f 65 72 63 69 6f 6e 2e 74 65 73 | ...OK.2/3.test_type_coercion.tes |
| 74be0 | 74 2e 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 2e | t.type.coercion.-.function.call. |
| 74c00 | 2e 2e 4f 4b 0a 33 2f 33 20 74 65 73 74 5f 74 79 70 65 5f 63 6f 65 72 63 69 6f 6e 2e 74 65 73 74 | ..OK.3/3.test_type_coercion.test |
| 74c20 | 2e 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 40 61 73 20 62 75 69 6c 74 69 6e 2e 2e 2e 4f | .type.coercion.-.@as.builtin...O |
| 74c40 | 4b 0a 41 6c 6c 20 33 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 | K.All.3.tests.passed..</samp></p |
| 74c60 | 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 79 | re></figure>........<p>.......Ty |
| 74c80 | 70 65 20 63 6f 65 72 63 69 6f 6e 73 20 61 72 65 20 6f 6e 6c 79 20 61 6c 6c 6f 77 65 64 20 77 68 | pe.coercions.are.only.allowed.wh |
| 74ca0 | 65 6e 20 69 74 20 69 73 20 63 6f 6d 70 6c 65 74 65 6c 79 20 75 6e 61 6d 62 69 67 75 6f 75 73 20 | en.it.is.completely.unambiguous. |
| 74cc0 | 68 6f 77 20 74 6f 20 67 65 74 20 66 72 6f 6d 20 6f 6e 65 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 | how.to.get.from.one.type.to.anot |
| 74ce0 | 68 65 72 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f | her,.......and.the.transformatio |
| 74d00 | 6e 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 73 61 66 65 2e 20 54 68 65 72 | n.is.guaranteed.to.be.safe..Ther |
| 74d20 | 65 20 69 73 20 6f 6e 65 20 65 78 63 65 70 74 69 6f 6e 2c 20 77 68 69 63 68 20 69 73 20 3c 61 20 | e.is.one.exception,.which.is.<a. |
| 74d40 | 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 |
| 74d60 | 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 54 79 70 65 | >........</p>.......<h4.id="Type |
| 74d80 | 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 69 6f 6e | -Coercion-Stricter-Qualification |
| 74da0 | 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 53 74 | "><a.href="#toc-Type-Coercion-St |
| 74dc0 | 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 65 72 63 | ricter-Qualification">Type.Coerc |
| 74de0 | 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 61 3e 20 | ion:.Stricter.Qualification</a>. |
| 74e00 | 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 63 | <a.class="hdr".href="#Type-Coerc |
| 74e20 | 69 6f 6e 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 c2 a7 3c 2f | ion-Stricter-Qualification">..</ |
| 74e40 | 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 56 61 6c 75 65 73 20 | a></h4>........<p>.......Values. |
| 74e60 | 77 68 69 63 68 20 68 61 76 65 20 74 68 65 20 73 61 6d 65 20 72 65 70 72 65 73 65 6e 74 61 74 69 | which.have.the.same.representati |
| 74e80 | 6f 6e 20 61 74 20 72 75 6e 74 69 6d 65 20 63 61 6e 20 62 65 20 63 61 73 74 20 74 6f 20 69 6e 63 | on.at.runtime.can.be.cast.to.inc |
| 74ea0 | 72 65 61 73 65 20 74 68 65 20 73 74 72 69 63 74 6e 65 73 73 0a 20 20 20 20 20 20 6f 66 20 74 68 | rease.the.strictness.......of.th |
| 74ec0 | 65 20 71 75 61 6c 69 66 69 65 72 73 2c 20 6e 6f 20 6d 61 74 74 65 72 20 68 6f 77 20 6e 65 73 74 | e.qualifiers,.no.matter.how.nest |
| 74ee0 | 65 64 20 74 68 65 20 71 75 61 6c 69 66 69 65 72 73 20 61 72 65 3a 0a 20 20 20 20 20 20 3c 2f 70 | ed.the.qualifiers.are:.......</p |
| 74f00 | 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 65 | >.......<ul>...........<li><code |
| 74f20 | 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 |
| 74f40 | 6e 3e 3c 2f 63 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 | n></code>.-.non-const.to.const.i |
| 74f60 | 73 20 61 6c 6c 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 | s.allowed</li>...........<li><co |
| 74f80 | 64 65 3e 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 6c 65 | de><span.class="tok-kw">volatile |
| 74fa0 | 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 74 69 6c 65 20 74 6f | </span></code>.-.non-volatile.to |
| 74fc0 | 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 0a 20 20 20 20 20 20 | .volatile.is.allowed</li>....... |
| 74fe0 | 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ....<li><code><span.class="tok-k |
| 75000 | 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 62 69 67 67 65 72 20 | w">align</span></code>.-.bigger. |
| 75020 | 74 6f 20 73 6d 61 6c 6c 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 69 73 20 61 6c 6c 6f 77 65 64 20 | to.smaller.alignment.is.allowed. |
| 75040 | 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 45 72 | </li>...........<li><a.href="#Er |
| 75060 | 72 6f 72 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 20 74 6f 20 | ror-Set-Type">error.sets</a>.to. |
| 75080 | 73 75 70 65 72 73 65 74 73 20 69 73 20 61 6c 6c 6f 77 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | supersets.is.allowed</li>....... |
| 750a0 | 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 73 65 20 63 61 73 74 | </ul>.......<p>.......These.cast |
| 750c0 | 73 20 61 72 65 20 6e 6f 2d 6f 70 73 20 61 74 20 72 75 6e 74 69 6d 65 20 73 69 6e 63 65 20 74 68 | s.are.no-ops.at.runtime.since.th |
| 750e0 | 65 20 76 61 6c 75 65 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 | e.value.representation.does.not. |
| 75100 | 63 68 61 6e 67 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 | change........</p>.......<figure |
| 75120 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 | ><figcaption.class="zig-cap"><ci |
| 75140 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 6e 6f 5f 6f 70 5f 63 61 73 74 73 | te.class="file">test_no_op_casts |
| 75160 | 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f | .zig</cite></figcaption><pre><co |
| 75180 | 64 65 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 | de><span.class="tok-kw">test</sp |
| 751a0 | 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">" |
| 751c0 | 74 79 70 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 | type.coercion.-.const.qualificat |
| 751e0 | 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 20 63 6c 61 | ion"</span>.{.....<span.cla |
| 75200 | 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 6e 20 | ss="tok-kw">var</span>.a:.<span. |
| 75220 | 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 |
| 75240 | 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 3b | pan.class="tok-number">1</span>; |
| 75260 | 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< |
| 75280 | 2f 73 70 61 6e 3e 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 | /span>.b:.*<span.class="tok-type |
| 752a0 | 22 3e 69 33 32 3c 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 | ">i32</span>.=.&a;.....foo(b |
| 752c0 | 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 |
| 752e0 | 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 73 | pan>.<span.class="tok-fn">foo</s |
| 75300 | 70 61 6e 3e 28 5f 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 | pan>(_:.*<span.class="tok-kw">co |
| 75320 | 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 |
| 75340 | 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 |
| 75360 | 79 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 | ype">void</span>.{}</code></pre> |
| 75380 | 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | </figure><figure><figcaption.cla |
| 753a0 | 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e | ss="shell-cap">Shell</figcaption |
| 753c0 | 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 | ><pre><samp>$.<kbd>zig.test.test |
| 753e0 | 5f 6e 6f 5f 6f 70 5f 63 61 73 74 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f | _no_op_casts.zig</kbd>.1/1.test_ |
| 75400 | 6e 6f 5f 6f 70 5f 63 61 73 74 73 2e 74 65 73 74 2e 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d | no_op_casts.test.type.coercion.- |
| 75420 | 20 63 6f 6e 73 74 20 71 75 61 6c 69 66 69 63 61 74 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 | .const.qualification...OK.All.1. |
| 75440 | 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | tests.passed..</samp></pre></fig |
| 75460 | 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 61 64 64 69 74 69 6f | ure>........<p>.......In.additio |
| 75480 | 6e 2c 20 70 6f 69 6e 74 65 72 73 20 63 6f 65 72 63 65 20 74 6f 20 63 6f 6e 73 74 20 6f 70 74 69 | n,.pointers.coerce.to.const.opti |
| 754a0 | 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | onal.pointers:.......</p>....... |
| 754c0 | 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 | <figure><figcaption.class="zig-c |
| 754e0 | 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 70 6f 69 6e | ap"><cite.class="file">test_poin |
| 75500 | 74 65 72 5f 63 6f 65 72 63 65 5f 63 6f 6e 73 74 5f 6f 70 74 69 6f 6e 61 6c 2e 7a 69 67 3c 2f 63 | ter_coerce_const_optional.zig</c |
| 75520 | 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 | ite></figcaption><pre><code><spa |
| 75540 | 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 |
| 75560 | 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 |
| 75580 | 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 |
| 755a0 | 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 |
| 755c0 | 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 |
| 755e0 | 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 |
| 75600 | 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 |
| 75620 | 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 |
| 75640 | 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 |
| 75660 | 74 72 22 3e 26 71 75 6f 74 3b 63 61 73 74 20 2a 5b 31 5d 5b 2a 3a 30 5d 63 6f 6e 73 74 20 75 38 | tr">"cast.*[1][*:0]const.u8 |
| 75680 | 20 74 6f 20 5b 5d 63 6f 6e 73 74 20 3f 5b 2a 3a 30 5d 63 6f 6e 73 74 20 75 38 26 71 75 6f 74 3b | .to.[]const.?[*:0]const.u8" |
| 756a0 | 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 |
| 756c0 | 77 22 3e 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 | w">const</span>.window_name.=.[< |
| 756e0 | 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> |
| 75700 | 5d 5b 2a 3a 3c 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</ |
| 75720 | 73 70 61 6e 3e 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 | span>]<span.class="tok-kw">const |
| 75740 | 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 |
| 75760 | 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 73 74 72 22 3e 26 | 8</span>{<span.class="tok-str">& |
| 75780 | 71 75 6f 74 3b 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 | quot;window.name"</span>};. |
| 757a0 | 20 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</ |
| 757c0 | 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 6f 6b 2d 6b 77 22 3e | span>.x:.[]<span.class="tok-kw"> |
| 757e0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3f 5b 2a 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | const</span>.?[*:<span.class="to |
| 75800 | 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 73 3d 22 | k-number">0</span>]<span.class=" |
| 75820 | 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 73 73 | tok-kw">const</span>.<span.class |
| 75840 | 3d 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 77 69 6e | ="tok-type">u8</span>.=.&win |
| 75860 | 64 6f 77 5f 6e 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 6b | dow_name;.....<span.class="tok-k |
| 75880 | 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 |
| 758a0 | 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 6d | an.class="tok-type">u8</span>,.m |
| 758c0 | 65 6d 2e 73 70 61 6e 28 78 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | em.span(x[<span.class="tok-numbe |
| 758e0 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 2e 3f 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">0</span>].?),.<span.class="to |
| 75900 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 69 6e 64 6f 77 20 6e 61 6d 65 26 71 75 6f 74 3b 3c 2f | k-str">"window.name"</ |
| 75920 | 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | span>));.}</code></pre></figure> |
| 75940 | 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | <figure><figcaption.class="shell |
| 75960 | 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 | -cap">Shell</figcaption><pre><sa |
| 75980 | 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 70 6f 69 6e 74 65 72 5f | mp>$.<kbd>zig.test.test_pointer_ |
| 759a0 | 63 6f 65 72 63 65 5f 63 6f 6e 73 74 5f 6f 70 74 69 6f 6e 61 6c 2e 7a 69 67 3c 2f 6b 62 64 3e 0a | coerce_const_optional.zig</kbd>. |
| 759c0 | 31 2f 31 20 74 65 73 74 5f 70 6f 69 6e 74 65 72 5f 63 6f 65 72 63 65 5f 63 6f 6e 73 74 5f 6f 70 | 1/1.test_pointer_coerce_const_op |
| 759e0 | 74 69 6f 6e 61 6c 2e 74 65 73 74 2e 63 61 73 74 20 2a 5b 31 5d 5b 2a 3a 30 5d 63 6f 6e 73 74 20 | tional.test.cast.*[1][*:0]const. |
| 75a00 | 75 38 20 74 6f 20 5b 5d 63 6f 6e 73 74 20 3f 5b 2a 3a 30 5d 63 6f 6e 73 74 20 75 38 2e 2e 2e 4f | u8.to.[]const.?[*:0]const.u8...O |
| 75a20 | 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 | K.All.1.tests.passed..</samp></p |
| 75a40 | 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 | re></figure>...............<h4.i |
| 75a60 | 64 3d 22 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 6f | d="Type-Coercion-Integer-and-Flo |
| 75a80 | 61 74 2d 57 69 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 | at-Widening"><a.href="#toc-Type- |
| 75aa0 | 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 64 65 6e | Coercion-Integer-and-Float-Widen |
| 75ac0 | 69 6e 67 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 | ing">Type.Coercion:.Integer.and. |
| 75ae0 | 46 6c 6f 61 74 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 | Float.Widening</a>.<a.class="hdr |
| 75b00 | 22 20 68 72 65 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 | ".href="#Type-Coercion-Integer-a |
| 75b20 | 6e 64 2d 46 6c 6f 61 74 2d 57 69 64 65 6e 69 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a | nd-Float-Widening">..</a></h4>.. |
| 75b40 | 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 49 6e 74 65 67 65 | ......<p>.......<a.href="#Intege |
| 75b60 | 72 73 22 3e 49 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 | rs">Integers</a>.coerce.to.integ |
| 75b80 | 65 72 20 74 79 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 | er.types.which.can.represent.eve |
| 75ba0 | 72 79 20 76 61 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 | ry.value.of.the.old.type,.and.li |
| 75bc0 | 6b 65 77 69 73 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 | kewise.......<a.href="#Floats">F |
| 75be0 | 6c 6f 61 74 73 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 | loats</a>.coerce.to.float.types. |
| 75c00 | 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 6c 75 65 20 | which.can.represent.every.value. |
| 75c20 | 6f 66 20 74 68 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 | of.the.old.type........</p>..... |
| 75c40 | 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 | ..<figure><figcaption.class="zig |
| 75c60 | 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 69 6e | -cap"><cite.class="file">test_in |
| 75c80 | 74 65 67 65 72 5f 77 69 64 65 6e 69 6e 67 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | teger_widening.zig</cite></figca |
| 75ca0 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ption><pre><code><span.class="to |
| 75cc0 | 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 |
| 75ce0 | 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 |
| 75d00 | 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 |
| 75d20 | 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 |
| 75d40 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 20 3d 20 3c 73 70 | k-kw">const</span>.builtin.=.<sp |
| 75d60 | 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</ |
| 75d80 | 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 |
| 75da0 | 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 | t;builtin"</span>);.<span.c |
| 75dc0 | 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 |
| 75de0 | 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 20 63 6c | t.=.std.testing.expect;.<span.cl |
| 75e00 | 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 3d 20 | ass="tok-kw">const</span>.mem.=. |
| 75e20 | 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 22 3e 74 | std.mem;..<span.class="tok-kw">t |
| 75e40 | 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" |
| 75e60 | 3e 26 71 75 6f 74 3b 69 6e 74 65 67 65 72 20 77 69 64 65 6e 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 | >"integer.widening"</s |
| 75e80 | 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"> |
| 75ea0 | 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 22 74 6f 6b | const</span>.a:.<span.class="tok |
| 75ec0 | 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=" |
| 75ee0 | 74 6f 6b 2d 6e 75 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 | tok-number">250</span>;.....<spa |
| 75f00 | 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 3a | n.class="tok-kw">const</span>.b: |
| 75f20 | 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 70 61 | .<span.class="tok-type">u16</spa |
| 75f40 | 6e 3e 20 3d 20 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 22 | n>.=.a;.....<span.class="tok-kw" |
| 75f60 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >const</span>.c:.<span.class="to |
| 75f80 | 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 62 3b 0a 20 20 20 20 3c 73 70 61 | k-type">u32</span>.=.b;.....<spa |
| 75fa0 | 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 64 3a | n.class="tok-kw">const</span>.d: |
| 75fc0 | 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 |
| 75fe0 | 6e 3e 20 3d 20 63 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>.=.c;.....<span.class="tok-kw" |
| 76000 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >const</span>.e:.<span.class="to |
| 76020 | 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 3d 20 64 3b 0a 20 20 20 20 3c 73 70 61 | k-type">u64</span>.=.d;.....<spa |
| 76040 | 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 3a | n.class="tok-kw">const</span>.f: |
| 76060 | 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 32 38 3c 2f 73 70 | .<span.class="tok-type">u128</sp |
| 76080 | 61 6e 3e 20 3d 20 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 | an>.=.e;.....<span.class="tok-kw |
| 760a0 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 20 3d 3d 20 61 29 3b 0a 7d 0a 0a | ">try</span>.expect(f.==.a);.}.. |
| 760c0 | 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> |
| 760e0 | 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 6d 70 | .<span.class="tok-str">"imp |
| 76100 | 6c 69 63 69 74 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 74 6f 20 73 69 67 6e 65 64 | licit.unsigned.integer.to.signed |
| 76120 | 20 69 6e 74 65 67 65 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 | .integer"</span>.{.....<spa |
| 76140 | 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 3a | n.class="tok-kw">const</span>.a: |
| 76160 | 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 |
| 76180 | 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 30 | >.=.<span.class="tok-number">250 |
| 761a0 | 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 |
| 761c0 | 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 6c 61 73 73 3d 22 74 | ">const</span>.b:.<span.class="t |
| 761e0 | 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 20 20 20 20 3c 73 70 | ok-type">i16</span>.=.a;.....<sp |
| 76200 | 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 |
| 76220 | 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 6d 62 65 72 | ect(b.==.<span.class="tok-number |
| 76240 | 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 6c 61 73 73 3d 22 74 | ">250</span>);.}..<span.class="t |
| 76260 | 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=" |
| 76280 | 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 6e 69 6e 67 26 71 75 | tok-str">"float.widening&qu |
| 762a0 | 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 |
| 762c0 | 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 63 6c 61 73 | k-kw">const</span>.a:.<span.clas |
| 762e0 | 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 3c 73 70 61 6e 20 | s="tok-type">f16</span>.=.<span. |
| 76300 | 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 73 70 61 6e 3e 3b | class="tok-number">12.34</span>; |
| 76320 | 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< |
| 76340 | 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" |
| 76360 | 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 6c 61 73 73 | >f32</span>.=.a;.....<span.class |
| 76380 | 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. |
| 763a0 | 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 62 3b | class="tok-type">f64</span>.=.b; |
| 763c0 | 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< |
| 763e0 | 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" |
| 76400 | 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 |
| 76420 | 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.= |
| 76440 | 3d 20 61 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 | =.a);.}</code></pre></figure><fi |
| 76460 | 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 | gure><figcaption.class="shell-ca |
| 76480 | 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e | p">Shell</figcaption><pre><samp> |
| 764a0 | 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 69 6e 74 65 67 65 72 5f 77 69 64 | $.<kbd>zig.test.test_integer_wid |
| 764c0 | 65 6e 69 6e 67 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 33 20 74 65 73 74 5f 69 6e 74 65 67 65 72 | ening.zig</kbd>.1/3.test_integer |
| 764e0 | 5f 77 69 64 65 6e 69 6e 67 2e 74 65 73 74 2e 69 6e 74 65 67 65 72 20 77 69 64 65 6e 69 6e 67 2e | _widening.test.integer.widening. |
| 76500 | 2e 2e 4f 4b 0a 32 2f 33 20 74 65 73 74 5f 69 6e 74 65 67 65 72 5f 77 69 64 65 6e 69 6e 67 2e 74 | ..OK.2/3.test_integer_widening.t |
| 76520 | 65 73 74 2e 69 6d 70 6c 69 63 69 74 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 74 6f | est.implicit.unsigned.integer.to |
| 76540 | 20 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 2e 2e 2e 4f 4b 0a 33 2f 33 20 74 65 73 74 5f 69 6e | .signed.integer...OK.3/3.test_in |
| 76560 | 74 65 67 65 72 5f 77 69 64 65 6e 69 6e 67 2e 74 65 73 74 2e 66 6c 6f 61 74 20 77 69 64 65 6e 69 | teger_widening.test.float.wideni |
| 76580 | 6e 67 2e 2e 2e 4f 4b 0a 41 6c 6c 20 33 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 | ng...OK.All.3.tests.passed..</sa |
| 765a0 | 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | mp></pre></figure>.............. |
| 765c0 | 20 3c 68 34 20 69 64 3d 22 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 46 6c 6f 61 74 2d 74 6f 2d | .<h4.id="Type-Coercion-Float-to- |
| 765e0 | 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 65 72 63 69 6f 6e | Int"><a.href="#toc-Type-Coercion |
| 76600 | 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 46 6c | -Float-to-Int">Type.Coercion:.Fl |
| 76620 | 6f 61 74 20 74 6f 20 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 | oat.to.Int</a>.<a.class="hdr".hr |
| 76640 | 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 22 | ef="#Type-Coercion-Float-to-Int" |
| 76660 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 | >..</a></h4>........<p>.......A. |
| 76680 | 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 65 | compiler.error.is.appropriate.be |
| 766a0 | 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 20 | cause.this.ambiguous.expression. |
| 766c0 | 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 68 | leaves.the.compiler.......two.ch |
| 766e0 | 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 20 | oices.about.the.coercion........ |
| 76700 | 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 43 61 73 74 | </p>.......<ul>.........<li>Cast |
| 76720 | 20 3c 63 6f 64 65 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 | .<code><span.class="tok-number"> |
| 76740 | 35 34 2e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 | 54.0</span></code>.to.<code><spa |
| 76760 | 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 74 3c | n.class="tok-type">comptime_int< |
| 76780 | 2f 73 70 61 6e 3e 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 | /span></code>.resulting.in.<code |
| 767a0 | 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 73 3c 2f | ><span.class="tok-builtin">@as</ |
| 767c0 | 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 63 6f 6d | span>(<span.class="tok-type">com |
| 767e0 | 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 61 73 73 3d 22 74 | ptime_int</span>,.<span.class="t |
| 76800 | 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 65 3e 2c 20 77 68 | ok-number">10</span>)</code>,.wh |
| 76820 | 69 63 68 20 69 73 20 63 61 73 74 65 64 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | ich.is.casted.to.<code><span.cla |
| 76840 | 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 3c 73 70 61 | ss="tok-builtin">@as</span>(<spa |
| 76860 | 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 20 3c | n.class="tok-type">f32</span>,.< |
| 76880 | 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 61 6e | span.class="tok-number">10</span |
| 768a0 | 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 73 74 20 | >)</code></li>.........<li>Cast. |
| 768c0 | 3c 63 6f 64 65 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 | <code><span.class="tok-number">5 |
| 768e0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </span></code>.to.<code><span.cl |
| 76900 | 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 3c 2f 73 | ass="tok-type">comptime_float</s |
| 76920 | 70 61 6e 3e 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 3e 3c | pan></code>.resulting.in.<code>< |
| 76940 | 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 70 | span.class="tok-builtin">@as</sp |
| 76960 | 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 63 6f 6d 70 74 | an>(<span.class="tok-type">compt |
| 76980 | 69 6d 65 5f 66 6c 6f 61 74 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ime_float</span>,.<span.class="t |
| 769a0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 2e 38 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 2c 20 | ok-number">10.8</span>)</code>,. |
| 769c0 | 77 68 69 63 68 20 69 73 20 63 61 73 74 65 64 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | which.is.casted.to.<code><span.c |
| 769e0 | 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 3c 73 | lass="tok-builtin">@as</span>(<s |
| 76a00 | 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 2c | pan.class="tok-type">f32</span>, |
| 76a20 | 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 38 3c 2f | .<span.class="tok-number">10.8</ |
| 76a40 | 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 3e 0a 20 | span>)</code></li>.......</ul>.. |
| 76a60 | 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 | .....<figure><figcaption.class=" |
| 76a80 | 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 | zig-cap"><cite.class="file">test |
| 76aa0 | 5f 61 6d 62 69 67 75 6f 75 73 5f 63 6f 65 72 63 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | _ambiguous_coercion.zig</cite></ |
| 76ac0 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | figcaption><pre><code><span.clas |
| 76ae0 | 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 74 69 6d 65 20 | s="tok-comment">//.Compile.time. |
| 76b00 | 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 70 61 6e 3e 0a | coercion.of.float.to.int</span>. |
| 76b20 | 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> |
| 76b40 | 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 6d 70 | .<span.class="tok-str">"imp |
| 76b60 | 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 71 75 6f 74 3b | licit.cast.to.comptime_int" |
| 76b80 | 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 |
| 76ba0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | w">const</span>.f:.<span.class=" |
| 76bc0 | 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 63 6c 61 | tok-type">f32</span>.=.<span.cla |
| 76be0 | 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 20 3c 73 | ss="tok-number">54.0</span>./.<s |
| 76c00 | 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>; |
| 76c20 | 0a 20 20 20 20 5f 20 3d 20 66 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | ....._.=.f;.}</code></pre></figu |
| 76c40 | 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 | re><figure><figcaption.class="sh |
| 76c60 | 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | ell-cap">Shell</figcaption><pre> |
| 76c80 | 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 61 6d 62 69 67 | <samp>$.<kbd>zig.test.test_ambig |
| 76ca0 | 75 6f 75 73 5f 63 6f 65 72 63 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c | uous_coercion.zig</kbd>.<span.cl |
| 76cc0 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | ass="sgr-1m">/home/andy/dev/zig/ |
| 76ce0 | 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 61 6d 62 69 67 75 6f 75 73 5f 63 6f 65 72 63 | doc/langref/test_ambiguous_coerc |
| 76d00 | 69 6f 6e 2e 7a 69 67 3a 33 3a 32 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | ion.zig:3:25:.</span><span.class |
| 76d20 | 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | ="sgr-31m">error:.</span><span.c |
| 76d40 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 61 6d 62 69 67 75 6f 75 73 20 63 6f 65 72 63 69 6f 6e | lass="sgr-1m">ambiguous.coercion |
| 76d60 | 20 6f 66 20 64 69 76 69 73 69 6f 6e 20 6f 70 65 72 61 6e 64 73 20 27 63 6f 6d 70 74 69 6d 65 5f | .of.division.operands.'comptime_ |
| 76d80 | 66 6c 6f 61 74 27 20 61 6e 64 20 27 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 27 3b 20 6e 6f 6e 2d 7a | float'.and.'comptime_int';.non-z |
| 76da0 | 65 72 6f 20 72 65 6d 61 69 6e 64 65 72 20 27 34 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e | ero.remainder.'4'.</span>....con |
| 76dc0 | 73 74 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 | st.f:.f32.=.54.0./.5;........... |
| 76de0 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 7e | .........<span.class="sgr-32m">~ |
| 76e00 | 7e 7e 7e 7e 5e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 | ~~~~^~~.</span>.</samp></pre></f |
| 76e20 | 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 54 79 70 | igure>...............<h4.id="Typ |
| 76e40 | 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 6e 64 2d 50 6f 69 | e-Coercion-Slices-Arrays-and-Poi |
| 76e60 | 6e 74 65 72 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 | nters"><a.href="#toc-Type-Coerci |
| 76e80 | 6f 6e 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 54 | on-Slices-Arrays-and-Pointers">T |
| 76ea0 | 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 53 6c 69 63 65 73 2c 20 41 72 72 61 79 73 20 61 6e 64 | ype.Coercion:.Slices,.Arrays.and |
| 76ec0 | 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 72 65 | .Pointers</a>.<a.class="hdr".hre |
| 76ee0 | 66 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 | f="#Type-Coercion-Slices-Arrays- |
| 76f00 | 61 6e 64 2d 50 6f 69 6e 74 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 | and-Pointers">..</a></h4>....... |
| 76f20 | 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d | .<figure><figcaption.class="zig- |
| 76f40 | 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 65 | cap"><cite.class="file">test_coe |
| 76f60 | 72 63 65 5f 73 6c 69 63 65 73 5f 61 72 72 61 79 73 5f 61 6e 64 5f 70 6f 69 6e 74 65 72 73 2e 7a | rce_slices_arrays_and_pointers.z |
| 76f80 | 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ig</cite></figcaption><pre><code |
| 76fa0 | 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 |
| 76fc0 | 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 69 | n>.std.=.<span.class="tok-builti |
| 76fe0 | 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 |
| 77000 | 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 3b | ok-str">"std"</span>); |
| 77020 | 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 |
| 77040 | 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 0a | n>.expect.=.std.testing.expect;. |
| 77060 | 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 59 6f | .<span.class="tok-comment">//.Yo |
| 77080 | 75 20 63 61 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 | u.can.assign.constant.pointers.t |
| 770a0 | 6f 20 61 72 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 | o.arrays.to.a.slice.with</span>. |
| 770c0 | 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 6e | <span.class="tok-comment">//.con |
| 770e0 | 73 74 20 6d 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 | st.modifier.on.the.element.type. |
| 77100 | 20 55 73 65 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 | .Useful.in.particular.for</span> |
| 77120 | 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 53 74 | .<span.class="tok-comment">//.St |
| 77140 | 72 69 6e 67 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 | ring.literals.</span>.<span.clas |
| 77160 | 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 |
| 77180 | 73 73 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 | ss="tok-str">"*const.[N]T.t |
| 771a0 | 6f 20 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 | o.[]const.T"</span>.{.....< |
| 771c0 | 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> |
| 771e0 | 20 78 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 | .x1:.[]<span.class="tok-kw">cons |
| 77200 | 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"> |
| 77220 | 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 73 74 72 | u8</span>.=.<span.class="tok-str |
| 77240 | 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 20 20 20 | ">"hello"</span>;..... |
| 77260 | 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 |
| 77280 | 3e 20 78 32 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 | >.x2:.[]<span.class="tok-kw">con |
| 772a0 | 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 22 | st</span>.<span.class="tok-type" |
| 772c0 | 3e 75 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 | >u8</span>.=.&[<span.class=" |
| 772e0 | 74 6f 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 | tok-number">5</span>]<span.class |
| 77300 | 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 63 6c 61 | ="tok-type">u8</span>{.<span.cla |
| 77320 | 73 73 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 | ss="tok-str">'h'</span>,.<span.c |
| 77340 | 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 2c 20 3c 73 70 61 6e | lass="tok-str">'e'</span>,.<span |
| 77360 | 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 |
| 77380 | 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 61 6e 3e 2c 20 3c | an.class="tok-str">'l'</span>,.< |
| 773a0 | 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 31 3c 2f 73 70 61 | span.class="tok-number">111</spa |
| 773c0 | 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 3e 74 | n>.};.....<span.class="tok-kw">t |
| 773e0 | 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 70 | ry</span>.expect(std.mem.eql(<sp |
| 77400 | 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 78 | an.class="tok-type">u8</span>,.x |
| 77420 | 31 2c 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 | 1,.x2));......<span.class="tok-k |
| 77440 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | w">const</span>.y:.[]<span.class |
| 77460 | 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 |
| 77480 | 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>.=.& |
| 774a0 | 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 |
| 774c0 | 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 |
| 774e0 | 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 |
| 77500 | 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 |
| 77520 | 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 |
| 77540 | 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 5b 3c | s="tok-kw">try</span>.expect(y[< |
| 77560 | 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> |
| 77580 | 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 31 2e | ].==.<span.class="tok-number">1. |
| 775a0 | 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 |
| 775c0 | 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 6b 73 20 77 68 | omment">//.Likewise,.it.works.wh |
| 775e0 | 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 61 6e 20 65 72 | en.the.destination.type.is.an.er |
| 77600 | 72 6f 72 20 75 6e 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ror.union.</span>.<span.class="t |
| 77620 | 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=" |
| 77640 | 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 45 21 | tok-str">"*const.[N]T.to.E! |
| 77660 | 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 70 | []const.T"</span>.{.....<sp |
| 77680 | 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 78 | an.class="tok-kw">const</span>.x |
| 776a0 | 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 61 6e 79 65 72 72 | 1:.<span.class="tok-type">anyerr |
| 776c0 | 6f 72 3c 2f 73 70 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 | or</span>![]<span.class="tok-kw" |
| 776e0 | 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 |
| 77700 | 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 |
| 77720 | 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 3b | k-str">"hello"</span>; |
| 77740 | 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< |
| 77760 | 2f 73 70 61 6e 3e 20 78 32 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | /span>.x2:.<span.class="tok-type |
| 77780 | 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 61 73 73 3d | ">anyerror</span>![]<span.class= |
| 777a0 | 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 73 | "tok-kw">const</span>.<span.clas |
| 777c0 | 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 26 61 6d 70 3b 5b 3c | s="tok-type">u8</span>.=.&[< |
| 777e0 | 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> |
| 77800 | 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 |
| 77820 | 3e 7b 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 2f 73 70 | >{.<span.class="tok-str">'h'</sp |
| 77840 | 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 27 65 27 3c 2f | an>,.<span.class="tok-str">'e'</ |
| 77860 | 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 27 6c 27 | span>,.<span.class="tok-str">'l' |
| 77880 | 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 27 | </span>,.<span.class="tok-str">' |
| 778a0 | 6c 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 6b 2d 6e 75 6d 62 | l'</span>,.<span.class="tok-numb |
| 778c0 | 65 72 22 3e 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 73 | er">111</span>.};.....<span.clas |
| 778e0 | 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 |
| 77900 | 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"> |
| 77920 | 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 6b 77 22 3e | u8</span>,.<span.class="tok-kw"> |
| 77940 | 74 72 79 3c 2f 73 70 61 6e 3e 20 78 31 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | try</span>.x1,.<span.class="tok- |
| 77960 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 78 32 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | kw">try</span>.x2));......<span. |
| 77980 | 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 79 3a 20 3c | class="tok-kw">const</span>.y:.< |
| 779a0 | 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 72 3c 2f | span.class="tok-type">anyerror</ |
| 779c0 | 73 70 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 | span>![]<span.class="tok-kw">con |
| 779e0 | 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 22 | st</span>.<span.class="tok-type" |
| 77a00 | 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 73 73 3d | >f32</span>.=.&[<span.class= |
| 77a20 | 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 6c 61 73 | "tok-number">2</span>]<span.clas |
| 77a40 | 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 6e 20 63 | s="tok-type">f32</span>{.<span.c |
| 77a60 | 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 20 3c 73 | lass="tok-number">1.2</span>,.<s |
| 77a80 | 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 70 61 6e | pan.class="tok-number">3.4</span |
| 77aa0 | 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 3e 74 72 | >.};.....<span.class="tok-kw">tr |
| 77ac0 | 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 |
| 77ae0 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 79 29 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-kw">try</span>.y)[<span.class= |
| 77b00 | 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. |
| 77b20 | 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 0a | class="tok-number">1.2</span>);. |
| 77b40 | 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">//. |
| 77b60 | 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 74 | Likewise,.it.works.when.the.dest |
| 77b80 | 69 6e 61 74 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 | ination.type.is.an.optional.</sp |
| 77ba0 | 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 73 | an>.<span.class="tok-kw">test</s |
| 77bc0 | 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">" |
| 77be0 | 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" |
| 77c00 | 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 |
| 77c20 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 31 3a 20 3f 5b 5d 3c 73 70 61 6e 20 63 6c 61 | w">const</span>.x1:.?[]<span.cla |
| 77c40 | 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 |
| 77c60 | 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 73 70 61 | lass="tok-type">u8</span>.=.<spa |
| 77c80 | 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 75 | n.class="tok-str">"hello&qu |
| 77ca0 | 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 6f 6b | ot;</span>;.....<span.class="tok |
| 77cc0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 32 3a 20 3f 5b 5d 3c 73 70 61 6e 20 63 | -kw">const</span>.x2:.?[]<span.c |
| 77ce0 | 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 |
| 77d00 | 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 26 61 | .class="tok-type">u8</span>.=.&a |
| 77d20 | 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 35 3c 2f | mp;[<span.class="tok-number">5</ |
| 77d40 | 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 3c | span>]<span.class="tok-type">u8< |
| 77d60 | 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 73 74 72 22 3e 27 68 | /span>{.<span.class="tok-str">'h |
| 77d80 | 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 6b 2d 73 74 72 22 3e | '</span>,.<span.class="tok-str"> |
| 77da0 | 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 74 6f 6b 2d 73 74 72 | 'e'</span>,.<span.class="tok-str |
| 77dc0 | 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 3d 22 74 6f 6b 2d 73 | ">'l'</span>,.<span.class="tok-s |
| 77de0 | 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 3d 22 74 6f 6b | tr">'l'</span>,.<span.class="tok |
| 77e00 | 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 20 20 3c 73 70 61 6e | -number">111</span>.};.....<span |
| 77e20 | 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 |
| 77e40 | 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 74 6f 6b 2d 74 | t(std.mem.eql(<span.class="tok-t |
| 77e60 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 78 31 2e 3f 2c 20 78 32 2e 3f 29 29 3b 0a 0a 20 | ype">u8</span>,.x1.?,.x2.?));... |
| 77e80 | 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 |
| 77ea0 | 70 61 6e 3e 20 79 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 | pan>.y:.?[]<span.class="tok-kw"> |
| 77ec0 | 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 |
| 77ee0 | 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 |
| 77f00 | 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 |
| 77f20 | 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 |
| 77f40 | 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>, |
| 77f60 | 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 |
| 77f80 | 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" |
| 77fa0 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 79 2e 3f 5b 3c 73 70 61 6e 20 63 6c 61 | >try</span>.expect(y.?[<span.cla |
| 77fc0 | 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 20 3d 3d 20 3c 73 70 | ss="tok-number">0</span>].==.<sp |
| 77fe0 | 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 70 61 6e 3e | an.class="tok-number">1.2</span> |
| 78000 | 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"> |
| 78020 | 2f 2f 20 49 6e 20 74 68 69 73 20 63 61 73 74 2c 20 74 68 65 20 61 72 72 61 79 20 6c 65 6e 67 74 | //.In.this.cast,.the.array.lengt |
| 78040 | 68 20 62 65 63 6f 6d 65 73 20 74 68 65 20 73 6c 69 63 65 20 6c 65 6e 67 74 68 2e 3c 2f 73 70 61 | h.becomes.the.slice.length.</spa |
| 78060 | 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 73 70 | n>.<span.class="tok-kw">test</sp |
| 78080 | 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">" |
| 780a0 | 2a 5b 4e 5d 54 20 74 6f 20 5b 5d 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | *[N]T.to.[]T"</span>.{..... |
| 780c0 | 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>. |
| 780e0 | 62 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 | buf:.[<span.class="tok-number">5 |
| 78100 | 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 75 | </span>]<span.class="tok-type">u |
| 78120 | 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 73 74 72 22 | 8</span>.=.<span.class="tok-str" |
| 78140 | 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 2e 2a 3b 0a 20 20 20 | >"hello"</span>.*;.... |
| 78160 | 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 |
| 78180 | 6e 3e 20 78 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 22 3e 75 | n>.x:.[]<span.class="tok-type">u |
| 781a0 | 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 63 | 8</span>.=.&buf;.....<span.c |
| 781c0 | 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( |
| 781e0 | 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 74 6f 6b 2d 74 79 70 | std.mem.eql(<span.class="tok-typ |
| 78200 | 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 78 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | e">u8</span>,.x,.<span.class="to |
| 78220 | 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 29 | k-str">"hello"</span>) |
| 78240 | 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 6f 6e | );......<span.class="tok-kw">con |
| 78260 | 73 74 3c 2f 73 70 61 6e 3e 20 62 75 66 32 20 3d 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | st</span>.buf2.=.[<span.class="t |
| 78280 | 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 6c 61 73 73 3d | ok-number">2</span>]<span.class= |
| 782a0 | 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 |
| 782c0 | 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 20 3c 73 70 61 | ss="tok-number">1.2</span>,.<spa |
| 782e0 | 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 70 61 6e 3e 20 | n.class="tok-number">3.4</span>. |
| 78300 | 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 73 | };.....<span.class="tok-kw">cons |
| 78320 | 74 3c 2f 73 70 61 6e 3e 20 78 32 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | t</span>.x2:.[]<span.class="tok- |
| 78340 | 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 |
| 78360 | 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 62 75 66 32 3b 0a | k-type">f32</span>.=.&buf2;. |
| 78380 | 20 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 |
| 783a0 | 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 63 6c 61 | an>.expect(std.mem.eql(<span.cla |
| 783c0 | 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 20 78 32 2c 20 26 61 | ss="tok-type">f32</span>,.x2,.&a |
| 783e0 | 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</ |
| 78400 | 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 |
| 78420 | 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 |
| 78440 | 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 |
| 78460 | 75 6d 62 65 72 22 3e 33 2e 34 3c 2f 73 70 61 6e 3e 20 7d 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | umber">3.4</span>.}));.}..<span. |
| 78480 | 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 6e 67 6c 65 2d 69 74 | class="tok-comment">//.Single-it |
| 784a0 | 65 6d 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 61 72 72 61 79 73 20 63 61 6e 20 62 65 20 63 6f 65 | em.pointers.to.arrays.can.be.coe |
| 784c0 | 72 63 65 64 20 74 6f 20 6d 61 6e 79 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 73 2e 3c 2f 73 70 61 | rced.to.many-item.pointers.</spa |
| 784e0 | 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 73 70 | n>.<span.class="tok-kw">test</sp |
| 78500 | 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">" |
| 78520 | 2a 5b 4e 5d 54 20 74 6f 20 5b 2a 5d 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | *[N]T.to.[*]T"</span>.{.... |
| 78540 | 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> |
| 78560 | 20 62 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 | .buf:.[<span.class="tok-number"> |
| 78580 | 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 70 65 22 3e | 5</span>]<span.class="tok-type"> |
| 785a0 | 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 73 74 72 | u8</span>.=.<span.class="tok-str |
| 785c0 | 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 2e 2a 3b 0a 20 20 | ">"hello"</span>.*;... |
| 785e0 | 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 |
| 78600 | 61 6e 3e 20 78 3a 20 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 | an>.x:.[*]<span.class="tok-type" |
| 78620 | 3e 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 | >u8</span>.=.&buf;.....<span |
| 78640 | 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 |
| 78660 | 74 28 78 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 | t(x[<span.class="tok-number">4</ |
| 78680 | 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 3e | span>].==.<span.class="tok-str"> |
| 786a0 | 27 6f 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 22 74 6f | 'o'</span>);.....<span.class="to |
| 786c0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 78 5b 35 5d 20 77 6f 75 6c 64 20 62 65 20 61 6e 20 75 | k-comment">//.x[5].would.be.an.u |
| 786e0 | 6e 63 61 75 67 68 74 20 6f 75 74 20 6f 66 20 62 6f 75 6e 64 73 20 70 6f 69 6e 74 65 72 20 64 65 | ncaught.out.of.bounds.pointer.de |
| 78700 | 72 65 66 65 72 65 6e 63 65 21 3c 2f 73 70 61 6e 3e 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | reference!</span>.}..<span.class |
| 78720 | 3d 22 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 | ="tok-comment">//.Likewise,.it.w |
| 78740 | 6f 72 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 | orks.when.the.destination.type.i |
| 78760 | 73 20 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 | s.an.optional.</span>.<span.clas |
| 78780 | 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 |
| 787a0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2a 5b 4e 5d 54 20 74 6f 20 3f 5b 2a 5d | ss="tok-str">"*[N]T.to.?[*] |
| 787c0 | 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 63 6c 61 73 73 | T"</span>.{.....<span.class |
| 787e0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 75 66 3a 20 5b 3c 73 70 61 6e | ="tok-kw">var</span>.buf:.[<span |
| 78800 | 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 3c 73 70 | .class="tok-number">5</span>]<sp |
| 78820 | 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>.=. |
| 78840 | 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 |
| 78860 | 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2e 2a 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | o"</span>.*;.....<span.clas |
| 78880 | 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 3f 5b 2a 5d 3c | s="tok-kw">const</span>.x:.?[*]< |
| 788a0 | 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>. |
| 788c0 | 3d 20 26 61 6d 70 3b 62 75 66 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | =.&buf;.....<span.class="tok |
| 788e0 | 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 5b 3c 73 70 61 6e | -kw">try</span>.expect(x.?[<span |
| 78900 | 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 3d 3d | .class="tok-number">4</span>].== |
| 78920 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6f 27 3c 2f 73 70 61 6e | .<span.class="tok-str">'o'</span |
| 78940 | 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 74 22 | >);.}..<span.class="tok-comment" |
| 78960 | 3e 2f 2f 20 53 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 73 20 63 61 6e 20 62 65 20 | >//.Single-item.pointers.can.be. |
| 78980 | 63 61 73 74 20 74 6f 20 6c 65 6e 2d 31 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 61 72 72 61 79 73 | cast.to.len-1.single-item.arrays |
| 789a0 | 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 74 65 | .</span>.<span.class="tok-kw">te |
| 789c0 | 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"> |
| 789e0 | 26 71 75 6f 74 3b 2a 54 20 74 6f 20 2a 5b 31 5d 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | "*T.to.*[1]T"</span>.{ |
| 78a00 | 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 |
| 78a20 | 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 |
| 78a40 | 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 |
| 78a60 | 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 |
| 78a80 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 3a 20 2a 5b 3c 73 70 | s="tok-kw">const</span>.y:.*[<sp |
| 78aa0 | 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 3c | an.class="tok-number">1</span>]< |
| 78ac0 | 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> |
| 78ae0 | 20 3d 20 26 61 6d 70 3b 78 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .=.&x;.....<span.class="tok- |
| 78b00 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 7a 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 | kw">const</span>.z:.[*]<span.cla |
| 78b20 | 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 79 3b 0a 20 20 | ss="tok-type">i32</span>.=.y;... |
| 78b40 | 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 |
| 78b60 | 3e 20 65 78 70 65 63 74 28 7a 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | >.expect(z[<span.class="tok-numb |
| 78b80 | 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 22 74 6f | er">0</span>].==.<span.class="to |
| 78ba0 | 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 3e | k-number">1234</span>);.}</code> |
| 78bc0 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | </pre></figure><figure><figcapti |
| 78be0 | 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 | on.class="shell-cap">Shell</figc |
| 78c00 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 | aption><pre><samp>$.<kbd>zig.tes |
| 78c20 | 74 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 73 6c 69 63 65 73 5f 61 72 72 61 79 73 5f 61 6e 64 5f | t.test_coerce_slices_arrays_and_ |
| 78c40 | 70 6f 69 6e 74 65 72 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 37 20 74 65 73 74 5f 63 6f 65 72 | pointers.zig</kbd>.1/7.test_coer |
| 78c60 | 63 65 5f 73 6c 69 63 65 73 5f 61 72 72 61 79 73 5f 61 6e 64 5f 70 6f 69 6e 74 65 72 73 2e 74 65 | ce_slices_arrays_and_pointers.te |
| 78c80 | 73 74 2e 2a 63 6f 6e 73 74 20 5b 4e 5d 54 20 74 6f 20 5b 5d 63 6f 6e 73 74 20 54 2e 2e 2e 4f 4b | st.*const.[N]T.to.[]const.T...OK |
| 78ca0 | 0a 32 2f 37 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 73 6c 69 63 65 73 5f 61 72 72 61 79 73 5f 61 | .2/7.test_coerce_slices_arrays_a |
| 78cc0 | 6e 64 5f 70 6f 69 6e 74 65 72 73 2e 74 65 73 74 2e 2a 63 6f 6e 73 74 20 5b 4e 5d 54 20 74 6f 20 | nd_pointers.test.*const.[N]T.to. |
| 78ce0 | 45 21 5b 5d 63 6f 6e 73 74 20 54 2e 2e 2e 4f 4b 0a 33 2f 37 20 74 65 73 74 5f 63 6f 65 72 63 65 | E![]const.T...OK.3/7.test_coerce |
| 78d00 | 5f 73 6c 69 63 65 73 5f 61 72 72 61 79 73 5f 61 6e 64 5f 70 6f 69 6e 74 65 72 73 2e 74 65 73 74 | _slices_arrays_and_pointers.test |
| 78d20 | 2e 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 2e 2e 2e 4f 4b 0a | .*const.[N]T.to.?[]const.T...OK. |
| 78d40 | 34 2f 37 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 73 6c 69 63 65 73 5f 61 72 72 61 79 73 5f 61 6e | 4/7.test_coerce_slices_arrays_an |
| 78d60 | 64 5f 70 6f 69 6e 74 65 72 73 2e 74 65 73 74 2e 2a 5b 4e 5d 54 20 74 6f 20 5b 5d 54 2e 2e 2e 4f | d_pointers.test.*[N]T.to.[]T...O |
| 78d80 | 4b 0a 35 2f 37 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 73 6c 69 63 65 73 5f 61 72 72 61 79 73 5f | K.5/7.test_coerce_slices_arrays_ |
| 78da0 | 61 6e 64 5f 70 6f 69 6e 74 65 72 73 2e 74 65 73 74 2e 2a 5b 4e 5d 54 20 74 6f 20 5b 2a 5d 54 2e | and_pointers.test.*[N]T.to.[*]T. |
| 78dc0 | 2e 2e 4f 4b 0a 36 2f 37 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 73 6c 69 63 65 73 5f 61 72 72 61 | ..OK.6/7.test_coerce_slices_arra |
| 78de0 | 79 73 5f 61 6e 64 5f 70 6f 69 6e 74 65 72 73 2e 74 65 73 74 2e 2a 5b 4e 5d 54 20 74 6f 20 3f 5b | ys_and_pointers.test.*[N]T.to.?[ |
| 78e00 | 2a 5d 54 2e 2e 2e 4f 4b 0a 37 2f 37 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 73 6c 69 63 65 73 5f | *]T...OK.7/7.test_coerce_slices_ |
| 78e20 | 61 72 72 61 79 73 5f 61 6e 64 5f 70 6f 69 6e 74 65 72 73 2e 74 65 73 74 2e 2a 54 20 74 6f 20 2a | arrays_and_pointers.test.*T.to.* |
| 78e40 | 5b 31 5d 54 2e 2e 2e 4f 4b 0a 41 6c 6c 20 37 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f | [1]T...OK.All.7.tests.passed..</ |
| 78e60 | 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 | samp></pre></figure>........<p>S |
| 78e80 | 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 |
| 78ea0 | 2d 50 6f 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 | -Pointers">C.Pointers</a></li>.< |
| 78ec0 | 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 54 79 70 65 2d | /ul>...............<h4.id="Type- |
| 78ee0 | 43 6f 65 72 63 69 6f 6e 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | Coercion-Optionals"><a.href="#to |
| 78f00 | 63 2d 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 | c-Type-Coercion-Optionals">Type. |
| 78f20 | 43 6f 65 72 63 69 6f 6e 3a 20 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | Coercion:.Optionals</a>.<a.class |
| 78f40 | 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 4f 70 74 69 | ="hdr".href="#Type-Coercion-Opti |
| 78f60 | 6f 6e 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | onals">..</a></h4>........<p>... |
| 78f80 | 20 20 20 20 54 68 65 20 70 61 79 6c 6f 61 64 20 74 79 70 65 20 6f 66 20 3c 61 20 68 72 65 66 3d | ....The.payload.type.of.<a.href= |
| 78fa0 | 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 61 73 20 77 | "#Optionals">Optionals</a>,.as.w |
| 78fc0 | 65 6c 6c 20 61 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 2c | ell.as.<a.href="#null">null</a>, |
| 78fe0 | 20 63 6f 65 72 63 65 20 74 6f 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 2e 0a 20 20 | .coerce.to.the.optional.type.... |
| 79000 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | ....</p>.......<figure><figcapti |
| 79020 | 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 | on.class="zig-cap"><cite.class=" |
| 79040 | 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 65 72 63 65 5f 6f 70 74 69 6f 6e 61 6c 73 2e 7a 69 67 3c | file">test_coerce_optionals.zig< |
| 79060 | 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 | /cite></figcaption><pre><code><s |
| 79080 | 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>. |
| 790a0 | 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"> |
| 790c0 | 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- |
| 790e0 | 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 |
| 79100 | 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>. |
| 79120 | 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 |
| 79140 | 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>.< |
| 79160 | 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 65 72 63 | span.class="tok-str">"coerc |
| 79180 | 65 20 74 6f 20 6f 70 74 69 6f 6e 61 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | e.to.optionals"</span>.{... |
| 791a0 | 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 |
| 791c0 | 61 6e 3e 20 78 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 | an>.x:.?<span.class="tok-type">i |
| 791e0 | 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 |
| 79200 | 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 |
| 79220 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 3a 20 3f 3c 73 70 61 | s="tok-kw">const</span>.y:.?<spa |
| 79240 | 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>.=. |
| 79260 | 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 |
| 79280 | 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 74 72 | n>;......<span.class="tok-kw">tr |
| 792a0 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 78 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | y</span>.expect(x.?.==.<span.cla |
| 792c0 | 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 0a 20 20 | ss="tok-number">1234</span>);... |
| 792e0 | 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 |
| 79300 | 3e 20 65 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 | >.expect(y.==.<span.class="tok-n |
| 79320 | 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ull">null</span>);.}</code></pre |
| 79340 | 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | ></figure><figure><figcaption.cl |
| 79360 | 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f | ass="shell-cap">Shell</figcaptio |
| 79380 | 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 | n><pre><samp>$.<kbd>zig.test.tes |
| 793a0 | 74 5f 63 6f 65 72 63 65 5f 6f 70 74 69 6f 6e 61 6c 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 | t_coerce_optionals.zig</kbd>.1/1 |
| 793c0 | 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 6f 70 74 69 6f 6e 61 6c 73 2e 74 65 73 74 2e 63 6f 65 72 | .test_coerce_optionals.test.coer |
| 793e0 | 63 65 20 74 6f 20 6f 70 74 69 6f 6e 61 6c 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 | ce.to.optionals...OK.All.1.tests |
| 79400 | 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a | .passed..</samp></pre></figure>. |
| 79420 | 0a 20 20 20 20 20 20 3c 70 3e 4f 70 74 69 6f 6e 61 6c 73 20 77 6f 72 6b 20 6e 65 73 74 65 64 20 | .......<p>Optionals.work.nested. |
| 79440 | 69 6e 73 69 64 65 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e 69 6f 6e | inside.the.<a.href="#Error-Union |
| 79460 | 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 2c 20 74 6f 6f | -Type">Error.Union.Type</a>,.too |
| 79480 | 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | :</p>.......<figure><figcaption. |
| 794a0 | 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c | class="zig-cap"><cite.class="fil |
| 794c0 | 65 22 3e 74 65 73 74 5f 63 6f 65 72 63 65 5f 6f 70 74 69 6f 6e 61 6c 5f 77 72 61 70 70 65 64 5f | e">test_coerce_optional_wrapped_ |
| 794e0 | 65 72 72 6f 72 5f 75 6e 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | error_union.zig</cite></figcapti |
| 79500 | 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | on><pre><code><span.class="tok-k |
| 79520 | 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 |
| 79540 | 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>(< |
| 79560 | 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 |
| 79580 | 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 |
| 795a0 | 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 |
| 795c0 | 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 |
| 795e0 | 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- |
| 79600 | 73 74 72 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 | str">"coerce.to.optionals.w |
| 79620 | 72 61 70 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 | rapped.in.error.union"</spa |
| 79640 | 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 |
| 79660 | 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 6f 6b 2d 74 | nst</span>.x:.<span.class="tok-t |
| 79680 | 79 70 65 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 | ype">anyerror</span>!?<span.clas |
| 796a0 | 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. |
| 796c0 | 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>;. |
| 796e0 | 20 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</ |
| 79700 | 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 65 22 3e | span>.y:.<span.class="tok-type"> |
| 79720 | 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 |
| 79740 | 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 73 | k-type">i32</span>.=.<span.class |
| 79760 | 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 0a 20 20 20 20 3c 73 | ="tok-null">null</span>;......<s |
| 79780 | 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 |
| 797a0 | 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 74 72 79 3c 2f | pect((<span.class="tok-kw">try</ |
| 797c0 | 73 70 61 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 | span>.x).?.==.<span.class="tok-n |
| 797e0 | 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 61 6e 20 63 | umber">1234</span>);.....<span.c |
| 79800 | 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( |
| 79820 | 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> |
| 79840 | 20 79 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 3e 6e 75 | .y).==.<span.class="tok-null">nu |
| 79860 | 6c 6c 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 2f 66 69 67 75 | ll</span>);.}</code></pre></figu |
| 79880 | 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 | re><figure><figcaption.class="sh |
| 798a0 | 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | ell-cap">Shell</figcaption><pre> |
| 798c0 | 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 65 72 63 | <samp>$.<kbd>zig.test.test_coerc |
| 798e0 | 65 5f 6f 70 74 69 6f 6e 61 6c 5f 77 72 61 70 70 65 64 5f 65 72 72 6f 72 5f 75 6e 69 6f 6e 2e 7a | e_optional_wrapped_error_union.z |
| 79900 | 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 6f 70 74 69 6f 6e 61 | ig</kbd>.1/1.test_coerce_optiona |
| 79920 | 6c 5f 77 72 61 70 70 65 64 5f 65 72 72 6f 72 5f 75 6e 69 6f 6e 2e 74 65 73 74 2e 63 6f 65 72 63 | l_wrapped_error_union.test.coerc |
| 79940 | 65 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 | e.to.optionals.wrapped.in.error. |
| 79960 | 75 6e 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c | union...OK.All.1.tests.passed..< |
| 79980 | 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 | /samp></pre></figure>........... |
| 799a0 | 20 20 20 20 3c 68 34 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 | ....<h4.id="Type-Coercion-Error- |
| 799c0 | 55 6e 69 6f 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 | Unions"><a.href="#toc-Type-Coerc |
| 799e0 | 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 65 72 63 69 6f 6e 3a | ion-Error-Unions">Type.Coercion: |
| 79a00 | 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 22 68 64 72 22 | .Error.Unions</a>.<a.class="hdr" |
| 79a20 | 20 68 72 65 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 | .href="#Type-Coercion-Error-Unio |
| 79a40 | 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 20 70 61 | ns">..</a></h4>........<p>The.pa |
| 79a60 | 79 6c 6f 61 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 | yload.type.of.an.<a.href="#Error |
| 79a80 | 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 61 | -Union-Type">Error.Union.Type</a |
| 79aa0 | 3e 20 61 73 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 | >.as.well.as.the.<a.href="#Error |
| 79ac0 | 2d 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 0a 20 20 | -Set-Type">Error.Set.Type</a>... |
| 79ae0 | 20 20 20 20 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 | ....coerce.to.the.error.union.ty |
| 79b00 | 70 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 | pe:.......</p>.......<figure><fi |
| 79b20 | 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 | gcaption.class="zig-cap"><cite.c |
| 79b40 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 65 72 63 65 5f 74 6f 5f 65 72 72 6f 72 | lass="file">test_coerce_to_error |
| 79b60 | 5f 75 6e 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | _union.zig</cite></figcaption><p |
| 79b80 | 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | re><code><span.class="tok-kw">co |
| 79ba0 | 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 |
| 79bc0 | 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. |
| 79be0 | 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"< |
| 79c00 | 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 |
| 79c20 | 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. |
| 79c40 | 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 65 | expect;..<span.class="tok-kw">te |
| 79c60 | 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"> |
| 79c80 | 26 71 75 6f 74 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 | "coercion.to.error.unions&q |
| 79ca0 | 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 |
| 79cc0 | 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 6c 61 | ok-kw">const</span>.x:.<span.cla |
| 79ce0 | 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 3c 73 | ss="tok-type">anyerror</span>!<s |
| 79d00 | 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>. |
| 79d20 | 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 34 3c | =.<span.class="tok-number">1234< |
| 79d40 | 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" |
| 79d60 | 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 6f | >const</span>.y:.<span.class="to |
| 79d80 | 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 6c | k-type">anyerror</span>!<span.cl |
| 79da0 | 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 |
| 79dc0 | 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 46 61 | n.class="tok-kw">error</span>.Fa |
| 79de0 | 69 6c 75 72 65 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 | ilure;......<span.class="tok-kw" |
| 79e00 | 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 20 63 6c 61 73 73 3d | >try</span>.expect((<span.class= |
| 79e20 | 22 74 6f 6b 2d 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 | "tok-kw">try</span>.x).==.<span. |
| 79e40 | 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>); |
| 79e60 | 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 |
| 79e80 | 70 61 6e 3e 20 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 | pan>.std.testing.expectError(<sp |
| 79ea0 | 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 46 | an.class="tok-kw">error</span>.F |
| 79ec0 | 61 69 6c 75 72 65 2c 20 79 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | ailure,.y);.}</code></pre></figu |
| 79ee0 | 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 | re><figure><figcaption.class="sh |
| 79f00 | 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | ell-cap">Shell</figcaption><pre> |
| 79f20 | 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 65 72 63 | <samp>$.<kbd>zig.test.test_coerc |
| 79f40 | 65 5f 74 6f 5f 65 72 72 6f 72 5f 75 6e 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 | e_to_error_union.zig</kbd>.1/1.t |
| 79f60 | 65 73 74 5f 63 6f 65 72 63 65 5f 74 6f 5f 65 72 72 6f 72 5f 75 6e 69 6f 6e 2e 74 65 73 74 2e 63 | est_coerce_to_error_union.test.c |
| 79f80 | 6f 65 72 63 69 6f 6e 20 74 6f 20 65 72 72 6f 72 20 75 6e 69 6f 6e 73 2e 2e 2e 4f 4b 0a 41 6c 6c | oercion.to.error.unions...OK.All |
| 79fa0 | 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f | .1.tests.passed..</samp></pre></ |
| 79fc0 | 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 54 79 | figure>...............<h4.id="Ty |
| 79fe0 | 70 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 | pe-Coercion-Compile-Time-Known-N |
| 7a000 | 75 6d 62 65 72 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 | umbers"><a.href="#toc-Type-Coerc |
| 7a020 | 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 72 73 22 3e | ion-Compile-Time-Known-Numbers"> |
| 7a040 | 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 4b 6e 6f 77 | Type.Coercion:.Compile-Time.Know |
| 7a060 | 6e 20 4e 75 6d 62 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 | n.Numbers</a>.<a.class="hdr".hre |
| 7a080 | 66 3d 22 23 54 79 70 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 | f="#Type-Coercion-Compile-Time-K |
| 7a0a0 | 6e 6f 77 6e 2d 4e 75 6d 62 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 | nown-Numbers">..</a></h4>....... |
| 7a0c0 | 20 3c 70 3e 57 68 65 6e 20 61 20 6e 75 6d 62 65 72 20 69 73 20 3c 61 20 68 72 65 66 3d 22 23 63 | .<p>When.a.number.is.<a.href="#c |
| 7a0e0 | 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 74 6f 20 62 | omptime">comptime</a>-known.to.b |
| 7a100 | 65 20 72 65 70 72 65 73 65 6e 74 61 62 6c 65 20 69 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 | e.representable.in.the.destinati |
| 7a120 | 6f 6e 20 74 79 70 65 2c 0a 20 20 20 20 20 20 69 74 20 6d 61 79 20 62 65 20 63 6f 65 72 63 65 64 | on.type,.......it.may.be.coerced |
| 7a140 | 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | :.......</p>.......<figure><figc |
| 7a160 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 | aption.class="zig-cap"><cite.cla |
| 7a180 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 65 72 63 65 5f 6c 61 72 67 65 5f 74 6f 5f 73 | ss="file">test_coerce_large_to_s |
| 7a1a0 | 6d 61 6c 6c 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | mall.zig</cite></figcaption><pre |
| 7a1c0 | 3e 3c 63 6f 64 65 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 | ><code><span.class="tok-kw">cons |
| 7a1e0 | 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- |
| 7a200 | 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 |
| 7a220 | 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 |
| 7a240 | 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 |
| 7a260 | 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 |
| 7a280 | 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 |
| 7a2a0 | 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 |
| 7a2c0 | 75 6f 74 3b 63 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 | uot;coercing.large.integer.type. |
| 7a2e0 | 74 6f 20 73 6d 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 | to.smaller.one.when.value.is.com |
| 7a300 | 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 74 6f 20 66 69 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | ptime-known.to.fit"</span>. |
| 7a320 | 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 |
| 7a340 | 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 |
| 7a360 | 22 3e 75 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 6f 6b 2d | ">u64</span>.=.<span.class="tok- |
| 7a380 | 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | number">255</span>;.....<span.cl |
| 7a3a0 | 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 79 3a 20 3c 73 70 | ass="tok-kw">const</span>.y:.<sp |
| 7a3c0 | 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>.=. |
| 7a3e0 | 78 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 | x;.....<span.class="tok-kw">try< |
| 7a400 | 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 73 3d 22 | /span>.expect(y.==.<span.class=" |
| 7a420 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 | tok-number">255</span>);.}</code |
| 7a440 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | ></pre></figure><figure><figcapt |
| 7a460 | 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 | ion.class="shell-cap">Shell</fig |
| 7a480 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 | caption><pre><samp>$.<kbd>zig.te |
| 7a4a0 | 73 74 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 6c 61 72 67 65 5f 74 6f 5f 73 6d 61 6c 6c 2e 7a 69 | st.test_coerce_large_to_small.zi |
| 7a4c0 | 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 6c 61 72 67 65 5f 74 6f | g</kbd>.1/1.test_coerce_large_to |
| 7a4e0 | 5f 73 6d 61 6c 6c 2e 74 65 73 74 2e 63 6f 65 72 63 69 6e 67 20 6c 61 72 67 65 20 69 6e 74 65 67 | _small.test.coercing.large.integ |
| 7a500 | 65 72 20 74 79 70 65 20 74 6f 20 73 6d 61 6c 6c 65 72 20 6f 6e 65 20 77 68 65 6e 20 76 61 6c 75 | er.type.to.smaller.one.when.valu |
| 7a520 | 65 20 69 73 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 74 6f 20 66 69 74 2e 2e 2e 4f 4b 0a | e.is.comptime-known.to.fit...OK. |
| 7a540 | 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 | All.1.tests.passed..</samp></pre |
| 7a560 | 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d | ></figure>...............<h4.id= |
| 7a580 | 22 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 55 6e 69 6f 6e 73 2d 61 6e 64 2d 45 6e 75 6d 73 22 | "Type-Coercion-Unions-and-Enums" |
| 7a5a0 | 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 55 6e 69 | ><a.href="#toc-Type-Coercion-Uni |
| 7a5c0 | 6f 6e 73 2d 61 6e 64 2d 45 6e 75 6d 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 55 6e | ons-and-Enums">Type.Coercion:.Un |
| 7a5e0 | 69 6f 6e 73 20 61 6e 64 20 45 6e 75 6d 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | ions.and.Enums</a>.<a.class="hdr |
| 7a600 | 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 55 6e 69 6f 6e 73 2d 61 6e | ".href="#Type-Coercion-Unions-an |
| 7a620 | 64 2d 45 6e 75 6d 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 | d-Enums">..</a></h4>........<p>T |
| 7a640 | 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 74 6f 20 65 | agged.unions.can.be.coerced.to.e |
| 7a660 | 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 65 64 20 74 | nums,.and.enums.can.be.coerced.t |
| 7a680 | 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 68 65 79 20 | o.tagged.unions.......when.they. |
| 7a6a0 | 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 74 69 6d 65 | are.<a.href="#comptime">comptime |
| 7a6c0 | 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 74 68 65 20 | </a>-known.to.be.a.field.of.the. |
| 7a6e0 | 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 69 62 6c 65 | union.that.has.only.one.possible |
| 7a700 | 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 66 3d 22 23 | .value,.such.as.......<a.href="# |
| 7a720 | 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 20 20 20 20 | void">void</a>:.......</p>...... |
| 7a740 | 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d | .<figure><figcaption.class="zig- |
| 7a760 | 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 65 | cap"><cite.class="file">test_coe |
| 7a780 | 72 63 65 5f 75 6e 69 6f 6e 73 5f 65 6e 75 6d 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | rce_unions_enums.zig</cite></fig |
| 7a7a0 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | caption><pre><code><span.class=" |
| 7a7c0 | 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 |
| 7a7e0 | 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 |
| 7a800 | 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">" |
| 7a820 | 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=" |
| 7a840 | 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 |
| 7a860 | 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 22 | d.testing.expect;..<span.class=" |
| 7a880 | 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 70 61 6e 20 63 | tok-kw">const</span>.E.=.<span.c |
| 7a8a0 | 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>.{..... |
| 7a8c0 | 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 0a 0a 3c 73 70 | one,.....two,.....three,.};..<sp |
| 7a8e0 | 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 55 | an.class="tok-kw">const</span>.U |
| 7a900 | 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 |
| 7a920 | 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 61 73 73 3d 22 | pan>(E).{.....one:.<span.class=" |
| 7a940 | 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 77 6f 3a 20 3c | tok-type">i32</span>,.....two:.< |
| 7a960 | 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 3e | span.class="tok-type">f32</span> |
| 7a980 | 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 73 3d 22 74 6f | ,.....three,.};..<span.class="to |
| 7a9a0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 55 32 20 3d 20 3c 73 70 61 6e 20 63 6c | k-kw">const</span>.U2.=.<span.cl |
| 7a9c0 | 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 20 | ass="tok-kw">union</span>(<span. |
| 7a9e0 | 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 20 | class="tok-kw">enum</span>).{... |
| 7aa00 | 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 3e 76 6f 69 64 | ..a:.<span.class="tok-type">void |
| 7aa20 | 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 6f 6b | </span>,.....b:.<span.class="tok |
| 7aa40 | 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | -type">f32</span>,......<span.cl |
| 7aa60 | 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 |
| 7aa80 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 61 67 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 55 32 29 | ss="tok-fn">tag</span>(self:.U2) |
| 7aaa0 | 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 |
| 7aac0 | 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- |
| 7aae0 | 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 73 65 6c 66 29 20 7b 0a 20 20 20 20 20 | kw">switch</span>.(self).{...... |
| 7ab00 | 20 20 20 20 20 20 20 2e 61 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ........a.=>.<span.class="tok |
| 7ab20 | 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 22 | -kw">return</span>.<span.class=" |
| 7ab40 | 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 20 20 20 20 20 20 | tok-number">1</span>,........... |
| 7ab60 | 20 20 2e 62 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 3e | ...b.=>.<span.class="tok-kw"> |
| 7ab80 | 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 6e | return</span>.<span.class="tok-n |
| 7aba0 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d | umber">2</span>,.........}.....} |
| 7abc0 | 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 3c 2f | .};..<span.class="tok-kw">test</ |
| 7abe0 | 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 |
| 7ac00 | 74 3b 63 6f 65 72 63 69 6f 6e 20 62 65 74 77 65 65 6e 20 75 6e 69 6f 6e 73 20 61 6e 64 20 65 6e | t;coercion.between.unions.and.en |
| 7ac20 | 75 6d 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 | ums"</span>.{.....<span.cla |
| 7ac40 | 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 20 3d 20 55 7b 20 | ss="tok-kw">const</span>.u.=.U{. |
| 7ac60 | 2e 74 77 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 72 22 3e | .two.=.<span.class="tok-number"> |
| 7ac80 | 31 32 2e 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 | 12.34</span>.};.....<span.class= |
| 7aca0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 3a 20 45 20 3d 20 75 3b 20 | "tok-kw">const</span>.e:.E.=.u;. |
| 7acc0 | 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 65 | <span.class="tok-comment">//.coe |
| 7ace0 | 72 63 65 20 75 6e 69 6f 6e 20 74 6f 20 65 6e 75 6d 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | rce.union.to.enum</span>.....<sp |
| 7ad00 | 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 |
| 7ad20 | 65 63 74 28 65 20 3d 3d 20 45 2e 74 77 6f 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ect(e.==.E.two);......<span.clas |
| 7ad40 | 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 65 20 3d 20 | s="tok-kw">const</span>.three.=. |
| 7ad60 | 45 2e 74 68 72 65 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 | E.three;.....<span.class="tok-kw |
| 7ad80 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 5f 32 3a 20 55 20 3d 20 74 68 72 65 65 3b 20 3c | ">const</span>.u_2:.U.=.three;.< |
| 7ada0 | 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 65 72 | span.class="tok-comment">//.coer |
| 7adc0 | 63 65 20 65 6e 75 6d 20 74 6f 20 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | ce.enum.to.union</span>.....<spa |
| 7ade0 | 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 |
| 7ae00 | 63 74 28 75 5f 32 20 3d 3d 20 45 2e 74 68 72 65 65 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ct(u_2.==.E.three);......<span.c |
| 7ae20 | 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 5f 33 3a 20 | lass="tok-kw">const</span>.u_3:. |
| 7ae40 | 55 20 3d 20 2e 74 68 72 65 65 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | U.=..three;.<span.class="tok-com |
| 7ae60 | 6d 65 6e 74 22 3e 2f 2f 20 63 6f 65 72 63 65 20 65 6e 75 6d 20 6c 69 74 65 72 61 6c 20 74 6f 20 | ment">//.coerce.enum.literal.to. |
| 7ae80 | 75 6e 69 6f 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 | union</span>.....<span.class="to |
| 7aea0 | 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 5f 33 20 3d 3d 20 45 | k-kw">try</span>.expect(u_3.==.E |
| 7aec0 | 2e 74 68 72 65 65 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 | .three);......<span.class="tok-k |
| 7aee0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 5f 34 3a 20 55 32 20 3d 20 2e 61 3b 20 3c 73 | w">const</span>.u_4:.U2.=..a;.<s |
| 7af00 | 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 65 72 63 | pan.class="tok-comment">//.coerc |
| 7af20 | 65 20 65 6e 75 6d 20 6c 69 74 65 72 61 6c 20 74 6f 20 75 6e 69 6f 6e 20 77 69 74 68 20 69 6e 66 | e.enum.literal.to.union.with.inf |
| 7af40 | 65 72 72 65 64 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 | erred.enum.tag.type.</span>..... |
| 7af60 | 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>. |
| 7af80 | 65 78 70 65 63 74 28 75 5f 34 2e 74 61 67 28 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | expect(u_4.tag().==.<span.class= |
| 7afa0 | 22 74 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 | "tok-number">1</span>);......<sp |
| 7afc0 | 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 66 6f | an.class="tok-comment">//.The.fo |
| 7afe0 | 6c 6c 6f 77 69 6e 67 20 65 78 61 6d 70 6c 65 20 69 73 20 69 6e 76 61 6c 69 64 2e 3c 2f 73 70 61 | llowing.example.is.invalid.</spa |
| 7b000 | 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 22 | n>.....<span.class="tok-comment" |
| 7b020 | 3e 2f 2f 20 65 72 72 6f 72 3a 20 63 6f 65 72 63 69 6f 6e 20 66 72 6f 6d 20 65 6e 75 6d 20 27 40 | >//.error:.coercion.from.enum.'@ |
| 7b040 | 54 79 70 65 4f 66 28 2e 65 6e 75 6d 5f 6c 69 74 65 72 61 6c 29 27 20 74 6f 20 75 6e 69 6f 6e 20 | TypeOf(.enum_literal)'.to.union. |
| 7b060 | 27 74 65 73 74 5f 63 6f 65 72 63 65 5f 75 6e 69 6f 6e 73 5f 65 6e 75 6d 2e 55 32 27 20 6d 75 73 | 'test_coerce_unions_enum.U2'.mus |
| 7b080 | 74 20 69 6e 69 74 69 61 6c 69 7a 65 20 27 66 33 32 27 20 66 69 65 6c 64 20 27 62 27 3c 2f 73 70 | t.initialize.'f32'.field.'b'</sp |
| 7b0a0 | 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 |
| 7b0c0 | 22 3e 2f 2f 76 61 72 20 75 5f 35 3a 20 55 32 20 3d 20 2e 62 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 | ">//var.u_5:.U2.=..b;</span>.... |
| 7b0e0 | 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 74 72 79 | .<span.class="tok-comment">//try |
| 7b100 | 20 65 78 70 65 63 74 28 75 5f 35 2e 74 61 67 28 29 20 3d 3d 20 32 29 3b 3c 2f 73 70 61 6e 3e 0a | .expect(u_5.tag().==.2);</span>. |
| 7b120 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c | }</code></pre></figure><figure>< |
| 7b140 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 | figcaption.class="shell-cap">She |
| 7b160 | 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 | ll</figcaption><pre><samp>$.<kbd |
| 7b180 | 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 75 6e 69 6f 6e 73 5f 65 6e 75 | >zig.test.test_coerce_unions_enu |
| 7b1a0 | 6d 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 75 6e 69 | ms.zig</kbd>.1/1.test_coerce_uni |
| 7b1c0 | 6f 6e 73 5f 65 6e 75 6d 73 2e 74 65 73 74 2e 63 6f 65 72 63 69 6f 6e 20 62 65 74 77 65 65 6e 20 | ons_enums.test.coercion.between. |
| 7b1e0 | 75 6e 69 6f 6e 73 20 61 6e 64 20 65 6e 75 6d 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 | unions.and.enums...OK.All.1.test |
| 7b200 | 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | s.passed..</samp></pre></figure> |
| 7b220 | 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 |
| 7b240 | 3e 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 3e | ><a.href="#union">union</a></li> |
| 7b260 | 0a 3c 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 | .<li><a.href="#enum">enum</a></l |
| 7b280 | 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 34 20 69 64 3d 22 54 | i>.</ul>...............<h4.id="T |
| 7b2a0 | 79 70 65 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 | ype-Coercion-undefined"><a.href= |
| 7b2c0 | 22 23 74 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 | "#toc-Type-Coercion-undefined">T |
| 7b2e0 | 79 70 65 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 | ype.Coercion:.undefined</a>.<a.c |
| 7b300 | 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 2d | lass="hdr".href="#Type-Coercion- |
| 7b320 | 75 6e 64 65 66 69 6e 65 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 | undefined">..</a></h4>........<p |
| 7b340 | 3e 3c 61 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 | ><a.href="#undefined">undefined< |
| 7b360 | 2f 61 3e 20 63 61 6e 20 62 65 20 63 6f 65 72 63 65 64 20 74 6f 20 61 6e 79 20 74 79 70 65 2e 3c | /a>.can.be.coerced.to.any.type.< |
| 7b380 | 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 54 79 70 65 2d 43 | /p>...............<h4.id="Type-C |
| 7b3a0 | 6f 65 72 63 69 6f 6e 2d 54 75 70 6c 65 73 2d 74 6f 2d 41 72 72 61 79 73 22 3e 3c 61 20 68 72 65 | oercion-Tuples-to-Arrays"><a.hre |
| 7b3c0 | 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 54 75 70 6c 65 73 2d 74 6f 2d | f="#toc-Type-Coercion-Tuples-to- |
| 7b3e0 | 41 72 72 61 79 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 54 75 70 6c 65 73 20 74 6f | Arrays">Type.Coercion:.Tuples.to |
| 7b400 | 20 41 72 72 61 79 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 | .Arrays</a>.<a.class="hdr".href= |
| 7b420 | 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 54 75 70 6c 65 73 2d 74 6f 2d 41 72 72 61 79 73 | "#Type-Coercion-Tuples-to-Arrays |
| 7b440 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 3c 61 20 68 72 65 66 3d | ">..</a></h4>........<p><a.href= |
| 7b460 | 22 23 54 75 70 6c 65 73 22 3e 54 75 70 6c 65 73 3c 2f 61 3e 20 63 61 6e 20 62 65 20 63 6f 65 72 | "#Tuples">Tuples</a>.can.be.coer |
| 7b480 | 63 65 64 20 74 6f 20 61 72 72 61 79 73 2c 20 69 66 20 61 6c 6c 20 6f 66 20 74 68 65 20 66 69 65 | ced.to.arrays,.if.all.of.the.fie |
| 7b4a0 | 6c 64 73 20 68 61 76 65 20 74 68 65 20 73 61 6d 65 20 74 79 70 65 2e 3c 2f 70 3e 0a 20 20 20 20 | lds.have.the.same.type.</p>..... |
| 7b4c0 | 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 | ..<figure><figcaption.class="zig |
| 7b4e0 | 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f | -cap"><cite.class="file">test_co |
| 7b500 | 65 72 63 65 5f 74 75 70 6c 65 73 5f 61 72 72 61 79 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 | erce_tuples_arrays.zig</cite></f |
| 7b520 | 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | igcaption><pre><code><span.class |
| 7b540 | 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 |
| 7b560 | 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</ |
| 7b580 | 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 |
| 7b5a0 | 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 |
| 7b5c0 | 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.=. |
| 7b5e0 | 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 |
| 7b600 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 75 70 6c 65 20 3d 20 3c | ="tok-kw">const</span>.Tuple.=.< |
| 7b620 | 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 6e | span.class="tok-kw">struct</span |
| 7b640 | 3e 20 7b 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 | >.{.<span.class="tok-type">u8</s |
| 7b660 | 70 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 75 38 3c | pan>,.<span.class="tok-type">u8< |
| 7b680 | 2f 73 70 61 6e 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 74 | /span>.};.<span.class="tok-kw">t |
| 7b6a0 | 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" |
| 7b6c0 | 3e 26 71 75 6f 74 3b 63 6f 65 72 63 69 6f 6e 20 66 72 6f 6d 20 68 6f 6d 6f 67 65 6e 65 6f 75 73 | >"coercion.from.homogeneous |
| 7b6e0 | 20 74 75 70 6c 65 20 74 6f 20 61 72 72 61 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | .tuple.to.array"</span>.{.. |
| 7b700 | 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 |
| 7b720 | 70 61 6e 3e 20 74 75 70 6c 65 3a 20 54 75 70 6c 65 20 3d 20 2e 7b 20 3c 73 70 61 6e 20 63 6c 61 | pan>.tuple:.Tuple.=..{.<span.cla |
| 7b740 | 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. |
| 7b760 | 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 20 7d 3b 0a 20 | class="tok-number">6</span>.};.. |
| 7b780 | 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 |
| 7b7a0 | 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 |
| 7b7c0 | 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 2d | mber">2</span>]<span.class="tok- |
| 7b7e0 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 74 75 70 6c 65 3b 0a 20 20 20 20 5f 20 3d | type">u8</span>.=.tuple;....._.= |
| 7b800 | 20 61 72 72 61 79 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c | .array;.}</code></pre></figure>< |
| 7b820 | 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d | figure><figcaption.class="shell- |
| 7b840 | 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d | cap">Shell</figcaption><pre><sam |
| 7b860 | 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 74 75 | p>$.<kbd>zig.test.test_coerce_tu |
| 7b880 | 70 6c 65 73 5f 61 72 72 61 79 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 63 | ples_arrays.zig</kbd>.1/1.test_c |
| 7b8a0 | 6f 65 72 63 65 5f 74 75 70 6c 65 73 5f 61 72 72 61 79 73 2e 74 65 73 74 2e 63 6f 65 72 63 69 6f | oerce_tuples_arrays.test.coercio |
| 7b8c0 | 6e 20 66 72 6f 6d 20 68 6f 6d 6f 67 65 6e 65 6f 75 73 20 74 75 70 6c 65 20 74 6f 20 61 72 72 61 | n.from.homogeneous.tuple.to.arra |
| 7b8e0 | 79 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d | y...OK.All.1.tests.passed..</sam |
| 7b900 | 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | p></pre></figure>............... |
| 7b920 | 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 45 78 70 6c 69 63 69 74 2d 43 61 73 74 73 22 3e | ........<h3.id="Explicit-Casts"> |
| 7b940 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 78 70 6c 69 63 69 74 2d 43 61 73 74 73 22 3e 45 78 | <a.href="#toc-Explicit-Casts">Ex |
| 7b960 | 70 6c 69 63 69 74 20 43 61 73 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | plicit.Casts</a>.<a.class="hdr". |
| 7b980 | 68 72 65 66 3d 22 23 45 78 70 6c 69 63 69 74 2d 43 61 73 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | href="#Explicit-Casts">..</a></h |
| 7b9a0 | 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 78 70 6c 69 63 69 74 20 63 61 73 | 3>........<p>.......Explicit.cas |
| 7b9c0 | 74 73 20 61 72 65 20 70 65 72 66 6f 72 6d 65 64 20 76 69 61 20 3c 61 20 68 72 65 66 3d 22 23 42 | ts.are.performed.via.<a.href="#B |
| 7b9e0 | 75 69 6c 74 69 6e 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 42 75 69 6c 74 69 6e 20 46 75 6e 63 74 69 | uiltin-Functions">Builtin.Functi |
| 7ba00 | 6f 6e 73 3c 2f 61 3e 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 | ons</a>........Some.explicit.cas |
| 7ba20 | 74 73 20 61 72 65 20 73 61 66 65 3b 20 73 6f 6d 65 20 61 72 65 20 6e 6f 74 2e 0a 20 20 20 20 20 | ts.are.safe;.some.are.not....... |
| 7ba40 | 20 53 6f 6d 65 20 65 78 70 6c 69 63 69 74 20 63 61 73 74 73 20 70 65 72 66 6f 72 6d 20 6c 61 6e | .Some.explicit.casts.perform.lan |
| 7ba60 | 67 75 61 67 65 2d 6c 65 76 65 6c 20 61 73 73 65 72 74 69 6f 6e 73 3b 20 73 6f 6d 65 20 64 6f 20 | guage-level.assertions;.some.do. |
| 7ba80 | 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 61 | not........Some.explicit.casts.a |
| 7baa0 | 72 65 20 6e 6f 2d 6f 70 73 20 61 74 20 72 75 6e 74 69 6d 65 3b 20 73 6f 6d 65 20 61 72 65 20 6e | re.no-ops.at.runtime;.some.are.n |
| 7bac0 | 6f 74 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 20 | ot........</p>.......<ul>....... |
| 7bae0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 62 69 74 43 61 73 74 22 3e 40 62 69 74 43 | ....<li><a.href="#bitCast">@bitC |
| 7bb00 | 61 73 74 3c 2f 61 3e 20 2d 20 63 68 61 6e 67 65 20 74 79 70 65 20 62 75 74 20 6d 61 69 6e 74 61 | ast</a>.-.change.type.but.mainta |
| 7bb20 | 69 6e 20 62 69 74 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | in.bit.representation</li>...... |
| 7bb40 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 61 6c 69 67 6e 43 61 73 74 22 3e 40 61 | .....<li><a.href="#alignCast">@a |
| 7bb60 | 6c 69 67 6e 43 61 73 74 3c 2f 61 3e 20 2d 20 6d 61 6b 65 20 61 20 70 6f 69 6e 74 65 72 20 68 61 | lignCast</a>.-.make.a.pointer.ha |
| 7bb80 | 76 65 20 6d 6f 72 65 20 61 6c 69 67 6e 6d 65 6e 74 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ve.more.alignment</li>.......... |
| 7bba0 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 46 72 6f 6d 49 6e 74 22 3e 40 65 6e 75 | .<li><a.href="#enumFromInt">@enu |
| 7bbc0 | 6d 46 72 6f 6d 49 6e 74 3c 2f 61 3e 20 2d 20 6f 62 74 61 69 6e 20 61 6e 20 65 6e 75 6d 20 76 61 | mFromInt</a>.-.obtain.an.enum.va |
| 7bbe0 | 6c 75 65 20 62 61 73 65 64 20 6f 6e 20 69 74 73 20 69 6e 74 65 67 65 72 20 74 61 67 20 76 61 6c | lue.based.on.its.integer.tag.val |
| 7bc00 | 75 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 66 3d 22 23 | ue</li>...........<li><a.href="# |
| 7bc20 | 65 72 72 6f 72 46 72 6f 6d 49 6e 74 22 3e 40 65 72 72 6f 72 46 72 6f 6d 49 6e 74 3c 2f 61 3e 20 | errorFromInt">@errorFromInt</a>. |
| 7bc40 | 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 73 65 64 20 6f 6e 20 | -.obtain.an.error.code.based.on. |
| 7bc60 | 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 20 20 20 20 20 20 20 | its.integer.value</li>.......... |
| 7bc80 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 72 72 6f 72 43 61 73 74 22 3e 40 65 72 72 6f 72 | .<li><a.href="#errorCast">@error |
| 7bca0 | 43 61 73 74 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 74 6f 20 61 20 73 6d 61 6c 6c 65 72 20 | Cast</a>.-.convert.to.a.smaller. |
| 7bcc0 | 65 72 72 6f 72 20 73 65 74 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | error.set</li>...........<li><a. |
| 7bce0 | 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 2f 61 3e | href="#floatCast">@floatCast</a> |
| 7bd00 | 20 2d 20 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 | .-.convert.a.larger.float.to.a.s |
| 7bd20 | 6d 61 6c 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 | maller.float</li>...........<li> |
| 7bd40 | 3c 61 20 68 72 65 66 3d 22 23 66 6c 6f 61 74 46 72 6f 6d 49 6e 74 22 3e 40 66 6c 6f 61 74 46 72 | <a.href="#floatFromInt">@floatFr |
| 7bd60 | 6f 6d 49 6e 74 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 61 6e 20 69 6e 74 65 67 65 72 20 74 | omInt</a>.-.convert.an.integer.t |
| 7bd80 | 6f 20 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 | o.a.float.value</li>...........< |
| 7bda0 | 6c 69 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 | li><a.href="#intCast">@intCast</ |
| 7bdc0 | 61 3e 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 | a>.-.convert.between.integer.typ |
| 7bde0 | 65 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 | es</li>...........<li><a.href="# |
| 7be00 | 69 6e 74 46 72 6f 6d 42 6f 6f 6c 22 3e 40 69 6e 74 46 72 6f 6d 42 6f 6f 6c 3c 2f 61 3e 20 2d 20 | intFromBool">@intFromBool</a>.-. |
| 7be20 | 63 6f 6e 76 65 72 74 20 74 72 75 65 20 74 6f 20 31 20 61 6e 64 20 66 61 6c 73 65 20 74 6f 20 30 | convert.true.to.1.and.false.to.0 |
| 7be40 | 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 |
| 7be60 | 74 46 72 6f 6d 45 6e 75 6d 22 3e 40 69 6e 74 46 72 6f 6d 45 6e 75 6d 3c 2f 61 3e 20 2d 20 6f 62 | tFromEnum">@intFromEnum</a>.-.ob |
| 7be80 | 74 61 69 6e 20 74 68 65 20 69 6e 74 65 67 65 72 20 74 61 67 20 76 61 6c 75 65 20 6f 66 20 61 6e | tain.the.integer.tag.value.of.an |
| 7bea0 | 20 65 6e 75 6d 20 6f 72 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | .enum.or.tagged.union</li>...... |
| 7bec0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 46 72 6f 6d 45 72 72 6f 72 22 | .....<li><a.href="#intFromError" |
| 7bee0 | 3e 40 69 6e 74 46 72 6f 6d 45 72 72 6f 72 3c 2f 61 3e 20 2d 20 6f 62 74 61 69 6e 20 74 68 65 20 | >@intFromError</a>.-.obtain.the. |
| 7bf00 | 69 6e 74 65 67 65 72 20 76 61 6c 75 65 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 63 6f 64 65 3c 2f | integer.value.of.an.error.code</ |
| 7bf20 | 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 74 46 | li>...........<li><a.href="#intF |
| 7bf40 | 72 6f 6d 46 6c 6f 61 74 22 3e 40 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 3c 2f 61 3e 20 2d 20 6f 62 | romFloat">@intFromFloat</a>.-.ob |
| 7bf60 | 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 61 20 66 6c 6f 61 74 | tain.the.integer.part.of.a.float |
| 7bf80 | 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 3e 3c 61 20 68 72 65 | .value</li>...........<li><a.hre |
| 7bfa0 | 66 3d 22 23 69 6e 74 46 72 6f 6d 50 74 72 22 3e 40 69 6e 74 46 72 6f 6d 50 74 72 3c 2f 61 3e 20 | f="#intFromPtr">@intFromPtr</a>. |
| 7bfc0 | 2d 20 6f 62 74 61 69 6e 20 74 68 65 20 61 64 64 72 65 73 73 20 6f 66 20 61 20 70 6f 69 6e 74 65 | -.obtain.the.address.of.a.pointe |
| 7bfe0 | 72 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 | r</li>...........<li><a.href="#p |
| 7c000 | 74 72 46 72 6f 6d 49 6e 74 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f 61 3e 20 2d 20 63 6f 6e | trFromInt">@ptrFromInt</a>.-.con |
| 7c020 | 76 65 72 74 20 61 6e 20 61 64 64 72 65 73 73 20 74 6f 20 61 20 70 6f 69 6e 74 65 72 3c 2f 6c 69 | vert.an.address.to.a.pointer</li |
| 7c040 | 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 74 72 43 61 73 | >...........<li><a.href="#ptrCas |
| 7c060 | 74 22 3e 40 70 74 72 43 61 73 74 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 62 65 74 77 65 65 | t">@ptrCast</a>.-.convert.betwee |
| 7c080 | 6e 20 70 6f 69 6e 74 65 72 20 74 79 70 65 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | n.pointer.types</li>...........< |
| 7c0a0 | 6c 69 3e 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 | li><a.href="#truncate">@truncate |
| 7c0c0 | 3c 2f 61 3e 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 | </a>.-.convert.between.integer.t |
| 7c0e0 | 79 70 65 73 2c 20 63 68 6f 70 70 69 6e 67 20 6f 66 66 20 62 69 74 73 3c 2f 6c 69 3e 0a 20 20 20 | ypes,.chopping.off.bits</li>.... |
| 7c100 | 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 50 | ...</ul>...............<h3.id="P |
| 7c120 | 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | eer-Type-Resolution"><a.href="#t |
| 7c140 | 6f 63 2d 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 | oc-Peer-Type-Resolution">Peer.Ty |
| 7c160 | 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | pe.Resolution</a>.<a.class="hdr" |
| 7c180 | 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 c2 a7 | .href="#Peer-Type-Resolution">.. |
| 7c1a0 | 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 50 65 65 72 20 54 79 70 65 20 52 65 | </a></h3>........<p>Peer.Type.Re |
| 7c1c0 | 73 6f 6c 75 74 69 6f 6e 20 6f 63 63 75 72 73 20 69 6e 20 74 68 65 73 65 20 70 6c 61 63 65 73 3a | solution.occurs.in.these.places: |
| 7c1e0 | 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 3c 61 20 68 | </p>.......<ul>.........<li><a.h |
| 7c200 | 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 65 78 70 72 65 73 73 | ref="#switch">switch</a>.express |
| 7c220 | 69 6f 6e 73 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 23 | ions</li>.........<li><a.href="# |
| 7c240 | 69 66 22 3e 69 66 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 20 | if">if</a>.expressions</li>..... |
| 7c260 | 20 20 20 20 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 3c 2f | ....<li><a.href="#while">while</ |
| 7c280 | 61 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 | a>.expressions</li>.........<li> |
| 7c2a0 | 3c 61 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 20 65 78 70 72 65 73 73 69 6f | <a.href="#for">for</a>.expressio |
| 7c2c0 | 6e 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4d 75 6c 74 69 70 6c 65 20 62 72 65 | ns</li>.........<li>Multiple.bre |
| 7c2e0 | 61 6b 20 73 74 61 74 65 6d 65 6e 74 73 20 69 6e 20 61 20 62 6c 6f 63 6b 3c 2f 6c 69 3e 0a 20 20 | ak.statements.in.a.block</li>... |
| 7c300 | 20 20 20 20 20 20 3c 6c 69 3e 53 6f 6d 65 20 3c 61 20 68 72 65 66 3d 22 23 54 61 62 6c 65 2d 6f | ......<li>Some.<a.href="#Table-o |
| 7c320 | 66 2d 4f 70 65 72 61 74 6f 72 73 22 3e 62 69 6e 61 72 79 20 6f 70 65 72 61 74 69 6f 6e 73 3c 2f | f-Operators">binary.operations</ |
| 7c340 | 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 70 3e 0a 20 20 | a></li>.......</ul>.......<p>... |
| 7c360 | 20 20 20 20 54 68 69 73 20 6b 69 6e 64 20 6f 66 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e | ....This.kind.of.type.resolution |
| 7c380 | 20 63 68 6f 6f 73 65 73 20 61 20 74 79 70 65 20 74 68 61 74 20 61 6c 6c 20 70 65 65 72 20 74 79 | .chooses.a.type.that.all.peer.ty |
| 7c3a0 | 70 65 73 20 63 61 6e 20 63 6f 65 72 63 65 20 69 6e 74 6f 2e 20 48 65 72 65 20 61 72 65 0a 20 20 | pes.can.coerce.into..Here.are... |
| 7c3c0 | 20 20 20 20 73 6f 6d 65 20 65 78 61 6d 70 6c 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ....some.examples:.......</p>... |
| 7c3e0 | 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a | ....<figure><figcaption.class="z |
| 7c400 | 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f | ig-cap"><cite.class="file">test_ |
| 7c420 | 70 65 65 72 5f 74 79 70 65 5f 72 65 73 6f 6c 75 74 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c | peer_type_resolution.zig</cite>< |
| 7c440 | 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | /figcaption><pre><code><span.cla |
| 7c460 | 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.=.< |
| 7c480 | 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 |
| 7c4a0 | 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 |
| 7c4c0 | 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 |
| 7c4e0 | 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. |
| 7c500 | 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 20 63 6c 61 73 | =.std.testing.expect;.<span.clas |
| 7c520 | 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 73 74 | s="tok-kw">const</span>.mem.=.st |
| 7c540 | 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 22 3e 74 65 73 | d.mem;..<span.class="tok-kw">tes |
| 7c560 | 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">& |
| 7c580 | 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 69 6e 67 26 71 | quot;peer.resolve.int.widening&q |
| 7c5a0 | 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 |
| 7c5c0 | 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 63 6c 61 | ok-kw">const</span>.a:.<span.cla |
| 7c5e0 | 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 3c 73 70 61 6e 20 | ss="tok-type">i8</span>.=.<span. |
| 7c600 | 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 3e 3b 0a 20 20 | class="tok-number">12</span>;... |
| 7c620 | 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 |
| 7c640 | 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 69 31 | an>.b:.<span.class="tok-type">i1 |
| 7c660 | 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 6b 2d 6e 75 6d 62 | 6</span>.=.<span.class="tok-numb |
| 7c680 | 65 72 22 3e 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 73 3d 22 | er">34</span>;.....<span.class=" |
| 7c6a0 | 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 61 20 2b 20 62 3b 0a | tok-kw">const</span>.c.=.a.+.b;. |
| 7c6c0 | 20 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 |
| 7c6e0 | 61 6e 3e 20 65 78 70 65 63 74 28 63 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | an>.expect(c.==.<span.class="tok |
| 7c700 | 2d 6e 75 6d 62 65 72 22 3e 34 36 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | -number">46</span>);.....<span.c |
| 7c720 | 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( |
| 7c740 | 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 |
| 7c760 | 66 3c 2f 73 70 61 6e 3e 28 63 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | f</span>(c).==.<span.class="tok- |
| 7c780 | 74 79 70 65 22 3e 69 31 36 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | type">i16</span>);.}..<span.clas |
| 7c7a0 | 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 |
| 7c7c0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 65 65 72 20 72 65 73 6f 6c 76 65 20 | ss="tok-str">"peer.resolve. |
| 7c7e0 | 61 72 72 61 79 73 20 6f 66 20 64 69 66 66 65 72 65 6e 74 20 73 69 7a 65 20 74 6f 20 63 6f 6e 73 | arrays.of.different.size.to.cons |
| 7c800 | 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 3c 73 70 61 6e | t.slice"</span>.{.....<span |
| 7c820 | 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 |
| 7c840 | 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" |
| 7c860 | 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 63 6c 61 73 | >u8</span>,.boolToStr(<span.clas |
| 7c880 | 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 73 70 61 6e | s="tok-null">true</span>),.<span |
| 7c8a0 | 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 71 75 6f 74 | .class="tok-str">"true" |
| 7c8c0 | 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 22 74 6f 6b | ;</span>));.....<span.class="tok |
| 7c8e0 | 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 28 3c | -kw">try</span>.expect(mem.eql(< |
| 7c900 | 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>, |
| 7c920 | 20 62 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 | .boolToStr(<span.class="tok-null |
| 7c940 | 22 3e 66 61 6c 73 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 | ">false</span>),.<span.class="to |
| 7c960 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 61 6c 73 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | k-str">"false"</span>) |
| 7c980 | 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< |
| 7c9a0 | 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 6d 70 | /span>.<span.class="tok-kw">comp |
| 7c9c0 | 74 69 6d 65 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 | time</span>.expect(mem.eql(<span |
| 7c9e0 | 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 6f 6f | .class="tok-type">u8</span>,.boo |
| 7ca00 | 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 74 72 | lToStr(<span.class="tok-null">tr |
| 7ca20 | 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 74 72 | ue</span>),.<span.class="tok-str |
| 7ca40 | 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 20 20 | ">"true"</span>));.... |
| 7ca60 | 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> |
| 7ca80 | 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</ |
| 7caa0 | 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 73 73 | span>.expect(mem.eql(<span.class |
| 7cac0 | 3d 22 74 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 | ="tok-type">u8</span>,.boolToStr |
| 7cae0 | 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 73 | (<span.class="tok-null">false</s |
| 7cb00 | 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 74 72 22 3e 26 71 75 | pan>),.<span.class="tok-str">&qu |
| 7cb20 | 6f 74 3b 66 61 6c 73 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 3c 73 70 61 6e | ot;false"</span>));.}.<span |
| 7cb40 | 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. |
| 7cb60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 6f 6f 6c 54 6f 53 74 72 3c 2f 73 70 61 6e 3e 28 | class="tok-fn">boolToStr</span>( |
| 7cb80 | 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 62 6f 6f 6c 3c 2f | b:.<span.class="tok-type">bool</ |
| 7cba0 | 73 70 61 6e 3e 29 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 | span>).[]<span.class="tok-kw">co |
| 7cbc0 | 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 |
| 7cbe0 | 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 73 3d 22 74 | ">u8</span>.{.....<span.class="t |
| 7cc00 | 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 |
| 7cc20 | 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 6e 20 63 6c | ="tok-kw">if</span>.(b).<span.cl |
| 7cc40 | 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 71 75 6f 74 3b 3c 2f | ass="tok-str">"true"</ |
| 7cc60 | 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 6c 73 65 3c | span>.<span.class="tok-kw">else< |
| 7cc80 | 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 |
| 7cca0 | 6f 74 3b 66 61 6c 73 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | ot;false"</span>;.}..<span. |
| 7ccc0 | 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 |
| 7cce0 | 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 65 72 20 72 65 73 6f | .class="tok-str">"peer.reso |
| 7cd00 | 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 3b 3c | lve.array.and.const.slice"< |
| 7cd20 | 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 |
| 7cd40 | 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 |
| 7cd60 | 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 |
| 7cd80 | 6c 22 3e 74 72 75 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 | l">true</span>);.....<span.class |
| 7cda0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ="tok-kw">try</span>.<span.class |
| 7cdc0 | 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 74 65 73 74 50 65 | ="tok-kw">comptime</span>.testPe |
| 7cde0 | 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 73 70 61 6e 20 63 | erResolveArrayConstSlice(<span.c |
| 7ce00 | 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 0a | lass="tok-null">true</span>);.}. |
| 7ce20 | 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>.< |
| 7ce40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 65 73 74 50 65 65 72 52 65 73 6f | span.class="tok-fn">testPeerReso |
| 7ce60 | 6c 76 65 41 72 72 61 79 43 6f 6e 73 74 53 6c 69 63 65 3c 2f 73 70 61 6e 3e 28 62 3a 20 3c 73 70 | lveArrayConstSlice</span>(b:.<sp |
| 7ce80 | 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>) |
| 7cea0 | 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 |
| 7cec0 | 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"> |
| 7cee0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 31 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | const</span>.value1.=.<span.clas |
| 7cf00 | 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 6e 20 63 | s="tok-kw">if</span>.(b).<span.c |
| 7cf20 | 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 71 75 6f 74 3b 3c | lass="tok-str">"aoeu"< |
| 7cf40 | 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 6c 73 65 | /span>.<span.class="tok-kw">else |
| 7cf60 | 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 75 69 6c 74 69 6e | </span>.<span.class="tok-builtin |
| 7cf80 | 22 3e 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 | ">@as</span>([]<span.class="tok- |
| 7cfa0 | 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 |
| 7cfc0 | 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=" |
| 7cfe0 | 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 70 61 6e 3e 29 3b | tok-str">"zz"</span>); |
| 7d000 | 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< |
| 7d020 | 2f 73 70 61 6e 3e 20 76 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 |
| 7d040 | 2d 6b 77 22 3e 69 66 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 | -kw">if</span>.(b).<span.class=" |
| 7d060 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 5b 5d 3c 73 70 61 6e 20 | tok-builtin">@as</span>([]<span. |
| 7d080 | 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 |
| 7d0a0 | 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 3c 73 | n.class="tok-type">u8</span>,.<s |
| 7d0c0 | 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 7a 26 71 75 6f | pan.class="tok-str">"zz&quo |
| 7d0e0 | 74 3b 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 | t;</span>).<span.class="tok-kw"> |
| 7d100 | 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 73 74 72 | else</span>.<span.class="tok-str |
| 7d120 | 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 3b 0a 20 20 20 20 3c | ">"aoeu"</span>;.....< |
| 7d140 | 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 |
| 7d160 | 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 |
| 7d180 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 31 2c 20 3c 73 70 61 6e 20 63 6c | ype">u8</span>,.value1,.<span.cl |
| 7d1a0 | 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 71 75 6f 74 3b 3c 2f | ass="tok-str">"aoeu"</ |
| 7d1c0 | 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 6b 77 | span>));.....<span.class="tok-kw |
| 7d1e0 | 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 61 | ">try</span>.expect(mem.eql(<spa |
| 7d200 | 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 61 | n.class="tok-type">u8</span>,.va |
| 7d220 | 6c 75 65 32 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 | lue2,.<span.class="tok-str">&quo |
| 7d240 | 74 3b 7a 7a 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 | t;zz"</span>));.}..<span.cl |
| 7d260 | 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 |
| 7d280 | 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 |
| 7d2a0 | 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 3c 2f 73 70 61 6e 3e | esolution:.?T.and.T"</span> |
| 7d2c0 | 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< |
| 7d2e0 | 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 |
| 7d300 | 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 74 72 75 65 3c | alT(<span.class="tok-null">true< |
| 7d320 | 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 66 | /span>,.<span.class="tok-null">f |
| 7d340 | 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 74 | alse</span>).?.==.<span.class="t |
| 7d360 | 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. |
| 7d380 | 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 |
| 7d3a0 | 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 |
| 7d3c0 | 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 70 61 | ss="tok-null">false</span>,.<spa |
| 7d3e0 | 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 29 | n.class="tok-null">false</span>) |
| 7d400 | 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 33 | .?.==.<span.class="tok-number">3 |
| 7d420 | 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 |
| 7d440 | 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 |
| 7d460 | 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 |
| 7d480 | 65 63 74 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 | ect(peerTypeTAndOptionalT(<span. |
| 7d4a0 | 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 3c 73 | class="tok-null">true</span>,.<s |
| 7d4c0 | 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 |
| 7d4e0 | 3e 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 65 72 22 | >).?.==.<span.class="tok-number" |
| 7d500 | 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= |
| 7d520 | 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 70 65 65 72 54 | "tok-kw">try</span>.expect(peerT |
| 7d540 | 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 73 73 3d 22 74 6f | ypeTAndOptionalT(<span.class="to |
| 7d560 | 6b 2d 6e 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 | k-null">false</span>,.<span.clas |
| 7d580 | 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 3f 20 3d 3d 20 | s="tok-null">false</span>).?.==. |
| 7d5a0 | 3c 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 |
| 7d5c0 | 3e 29 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 | >);.....}.}.<span.class="tok-kw" |
| 7d5e0 | 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"> |
| 7d600 | 70 65 65 72 54 79 70 65 54 41 6e 64 4f 70 74 69 6f 6e 61 6c 54 3c 2f 73 70 61 6e 3e 28 63 3a 20 | peerTypeTAndOptionalT</span>(c:. |
| 7d620 | 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 |
| 7d640 | 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 62 6f | n>,.b:.<span.class="tok-type">bo |
| 7d660 | 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | ol</span>).?<span.class="tok-typ |
| 7d680 | 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 63 6c 61 73 | e">usize</span>.{.....<span.clas |
| 7d6a0 | 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 7b 0a 20 20 20 20 20 | s="tok-kw">if</span>.(c).{...... |
| 7d6c0 | 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</ |
| 7d6e0 | 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 |
| 7d700 | 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 6e 75 6c 6c 22 3e | pan>.(b).<span.class="tok-null"> |
| 7d720 | 6e 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 | null</span>.<span.class="tok-kw" |
| 7d740 | 3e 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 62 75 | >else</span>.<span.class="tok-bu |
| 7d760 | 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 |
| 7d780 | 6f 6b 2d 74 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 | ok-type">usize</span>,.<span.cla |
| 7d7a0 | 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 7d | ss="tok-number">0</span>);.....} |
| 7d7c0 | 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 |
| 7d7e0 | 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 62 75 69 6c 74 69 | n</span>.<span.class="tok-builti |
| 7d800 | 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 |
| 7d820 | 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=" |
| 7d840 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | tok-number">3</span>);.}..<span. |
| 7d860 | 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 |
| 7d880 | 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 65 72 20 74 79 70 65 | .class="tok-str">"peer.type |
| 7d8a0 | 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 6e 73 74 20 | .resolution:.*[0]u8.and.[]const. |
| 7d8c0 | 75 38 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 | u8"</span>.{.....<span.clas |
| 7d8e0 | 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 70 65 65 | s="tok-kw">try</span>.expect(pee |
| 7d900 | 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 73 70 61 6e 20 63 6c | rTypeEmptyArrayAndSlice(<span.cl |
| 7d920 | 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 3c 73 70 61 | ass="tok-null">true</span>,.<spa |
| 7d940 | 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 75 6f 74 3b | n.class="tok-str">"hi" |
| 7d960 | 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 73 73 3d 22 74 6f 6b | </span>).len.==.<span.class="tok |
| 7d980 | 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 63 6c | -number">0</span>);.....<span.cl |
| 7d9a0 | 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 70 | ass="tok-kw">try</span>.expect(p |
| 7d9c0 | 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 73 70 61 6e 20 | eerTypeEmptyArrayAndSlice(<span. |
| 7d9e0 | 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 20 3c | class="tok-null">false</span>,.< |
| 7da00 | 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 75 | span.class="tok-str">"hi&qu |
| 7da20 | 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 73 73 3d 22 | ot;</span>).len.==.<span.class=" |
| 7da40 | 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 3c 73 70 61 6e | tok-number">1</span>);.....<span |
| 7da60 | 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>. |
| 7da80 | 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 74 | {.........<span.class="tok-kw">t |
| 7daa0 | 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 72 | ry</span>.expect(peerTypeEmptyAr |
| 7dac0 | 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 6c | rayAndSlice(<span.class="tok-nul |
| 7dae0 | 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 6b | l">true</span>,.<span.class="tok |
| 7db00 | 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 65 6e | -str">"hi"</span>).len |
| 7db20 | 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</ |
| 7db40 | 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 74 6f 6b | span>);.........<span.class="tok |
| 7db60 | 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 45 | -kw">try</span>.expect(peerTypeE |
| 7db80 | 6d 70 74 79 41 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 | mptyArrayAndSlice(<span.class="t |
| 7dba0 | 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 70 61 6e 20 63 6c 61 | ok-null">false</span>,.<span.cla |
| 7dbc0 | 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 70 61 | ss="tok-str">"hi"</spa |
| 7dbe0 | 6e 3e 29 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 | n>).len.==.<span.class="tok-numb |
| 7dc00 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 | er">1</span>);.....}.}.<span.cla |
| 7dc20 | 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 |
| 7dc40 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 | s="tok-fn">peerTypeEmptyArrayAnd |
| 7dc60 | 53 6c 69 63 65 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 | Slice</span>(a:.<span.class="tok |
| 7dc80 | 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 65 3a 20 5b 5d 3c 73 70 | -type">bool</span>,.slice:.[]<sp |
| 7dca0 | 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>.< |
| 7dcc0 | 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>) |
| 7dce0 | 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 |
| 7dd00 | 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</ |
| 7dd20 | 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" |
| 7dd40 | 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | >if</span>.(a).{.........<span.c |
| 7dd60 | 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 26 61 6d 70 | lass="tok-kw">return</span>.& |
| 7dd80 | 3b 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 38 3c 2f 73 | ;[_]<span.class="tok-type">u8</s |
| 7dda0 | 70 61 6e 3e 7b 7d 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 | pan>{};.....}......<span.class=" |
| 7ddc0 | 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 5b 3c 73 70 61 | tok-kw">return</span>.slice[<spa |
| 7dde0 | 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>..< |
| 7de00 | 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> |
| 7de20 | 5d 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 74 65 73 74 3c 2f | ];.}.<span.class="tok-kw">test</ |
| 7de40 | 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 |
| 7de60 | 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 5d 75 38 2c 20 | t;peer.type.resolution:.*[0]u8,. |
| 7de80 | 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 75 38 26 71 75 | []const.u8,.and.anyerror![]u8&qu |
| 7dea0 | 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 |
| 7dec0 | 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 61 20 | .class="tok-kw">var</span>.data. |
| 7dee0 | 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 3b 68 69 | =.<span.class="tok-str">"hi |
| 7df00 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2e 2a 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | "</span>.*;.........<span.c |
| 7df20 | 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 69 63 65 | lass="tok-kw">const</span>.slice |
| 7df40 | 20 3d 20 64 61 74 61 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 | .=.data[<span.class="tok-number" |
| 7df60 | 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | >0</span>..];.........<span.clas |
| 7df80 | 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 |
| 7dfa0 | 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 70 65 | pan.class="tok-kw">try</span>.pe |
| 7dfc0 | 65 72 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 | erTypeEmptyArrayAndSliceAndError |
| 7dfe0 | 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 70 | (<span.class="tok-null">true</sp |
| 7e000 | 61 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 | an>,.slice)).len.==.<span.class= |
| 7e020 | 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 20 20 20 | "tok-number">0</span>);......... |
| 7e040 | 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>. |
| 7e060 | 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 74 72 79 | expect((<span.class="tok-kw">try |
| 7e080 | 3c 2f 73 70 61 6e 3e 20 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 | </span>.peerTypeEmptyArrayAndSli |
| 7e0a0 | 63 65 41 6e 64 45 72 72 6f 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | ceAndError(<span.class="tok-null |
| 7e0c0 | 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 65 29 29 2e 6c 65 6e 20 3d 3d 20 3c | ">false</span>,.slice)).len.==.< |
| 7e0e0 | 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> |
| 7e100 | 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 |
| 7e120 | 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 61 | ">comptime</span>.{.........<spa |
| 7e140 | 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 61 | n.class="tok-kw">var</span>.data |
| 7e160 | 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 3b 68 | .=.<span.class="tok-str">"h |
| 7e180 | 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2e 2a 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | i"</span>.*;.........<span. |
| 7e1a0 | 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 69 63 | class="tok-kw">const</span>.slic |
| 7e1c0 | 65 20 3d 20 64 61 74 61 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | e.=.data[<span.class="tok-number |
| 7e1e0 | 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ">0</span>..];.........<span.cla |
| 7e200 | 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 28 3c | ss="tok-kw">try</span>.expect((< |
| 7e220 | 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 70 | span.class="tok-kw">try</span>.p |
| 7e240 | 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 41 6e 64 45 72 72 6f | eerTypeEmptyArrayAndSliceAndErro |
| 7e260 | 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 74 72 75 65 3c 2f 73 | r(<span.class="tok-null">true</s |
| 7e280 | 70 61 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 | pan>,.slice)).len.==.<span.class |
| 7e2a0 | 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 20 20 | ="tok-number">0</span>);........ |
| 7e2c0 | 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> |
| 7e2e0 | 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 74 72 | .expect((<span.class="tok-kw">tr |
| 7e300 | 79 3c 2f 73 70 61 6e 3e 20 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c | y</span>.peerTypeEmptyArrayAndSl |
| 7e320 | 69 63 65 41 6e 64 45 72 72 6f 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | iceAndError(<span.class="tok-nul |
| 7e340 | 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 65 29 29 2e 6c 65 6e 20 3d 3d 20 | l">false</span>,.slice)).len.==. |
| 7e360 | 3c 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 |
| 7e380 | 3e 29 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 | >);.....}.}.<span.class="tok-kw" |
| 7e3a0 | 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"> |
| 7e3c0 | 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 41 6e 64 45 72 72 | peerTypeEmptyArrayAndSliceAndErr |
| 7e3e0 | 6f 72 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 74 79 | or</span>(a:.<span.class="tok-ty |
| 7e400 | 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 65 3a 20 5b 5d 3c 73 70 61 6e 20 | pe">bool</span>,.slice:.[]<span. |
| 7e420 | 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 73 70 61 | class="tok-type">u8</span>).<spa |
| 7e440 | 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 |
| 7e460 | 6e 3e 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 3e 75 38 3c 2f | n>![]<span.class="tok-type">u8</ |
| 7e480 | 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" |
| 7e4a0 | 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | >if</span>.(a).{.........<span.c |
| 7e4c0 | 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 26 61 6d 70 | lass="tok-kw">return</span>.& |
| 7e4e0 | 3b 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 38 3c 2f 73 | ;[_]<span.class="tok-type">u8</s |
| 7e500 | 70 61 6e 3e 7b 7d 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 | pan>{};.....}......<span.class=" |
| 7e520 | 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 5b 3c 73 70 61 | tok-kw">return</span>.slice[<spa |
| 7e540 | 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>..< |
| 7e560 | 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> |
| 7e580 | 5d 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< |
| 7e5a0 | 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 |
| 7e5c0 | 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. |
| 7e5e0 | 54 20 61 6e 64 20 3f 2a 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | T.and.?*T"</span>.{.....<sp |
| 7e600 | 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 |
| 7e620 | 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 |
| 7e640 | 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 73 69 7a | pan>.<span.class="tok-type">usiz |
| 7e660 | 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 62 75 69 6c | e</span>.=.<span.class="tok-buil |
| 7e680 | 74 69 6e 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | tin">@ptrFromInt</span>(<span.cl |
| 7e6a0 | 61 73 73 3d 22 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 | ass="tok-number">0x123456780</sp |
| 7e6c0 | 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 63 | an>);.....<span.class="tok-kw">c |
| 7e6e0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3f 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | onst</span>.b:.?*<span.class="to |
| 7e700 | 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 61 | k-type">usize</span>.=.<span.cla |
| 7e720 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f 73 70 | ss="tok-builtin">@ptrFromInt</sp |
| 7e740 | 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 78 31 | an>(<span.class="tok-number">0x1 |
| 7e760 | 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 20 63 6c 61 73 | 23456780</span>);.....<span.clas |
| 7e780 | 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 20 3d | s="tok-kw">try</span>.expect(a.= |
| 7e7a0 | 3d 20 62 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 | =.b);.....<span.class="tok-kw">t |
| 7e7c0 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 62 20 3d 3d 20 61 29 3b 0a 7d 0a 0a 3c 73 70 | ry</span>.expect(b.==.a);.}..<sp |
| 7e7e0 | 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 |
| 7e800 | 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 65 72 20 74 | pan.class="tok-str">"peer.t |
| 7e820 | 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 73 77 69 74 | ype.resolution:.error.union.swit |
| 7e840 | 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 73 | ch"</span>.{.....<span.clas |
| 7e860 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 6e 6f 6e 2d 65 72 72 6f 72 | s="tok-comment">//.The.non-error |
| 7e880 | 20 61 6e 64 20 65 72 72 6f 72 20 63 61 73 65 73 20 61 72 65 20 6f 6e 6c 79 20 70 65 65 72 73 20 | .and.error.cases.are.only.peers. |
| 7e8a0 | 69 66 20 74 68 65 20 65 72 72 6f 72 20 63 61 73 65 20 69 73 20 6a 75 73 74 20 61 20 73 77 69 74 | if.the.error.case.is.just.a.swit |
| 7e8c0 | 63 68 20 65 78 70 72 65 73 73 69 6f 6e 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | ch.expression;</span>.....<span. |
| 7e8e0 | 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 70 61 74 74 65 | class="tok-comment">//.the.patte |
| 7e900 | 72 6e 20 60 69 66 20 28 78 29 20 7b 2e 2e 2e 7d 20 65 6c 73 65 20 7c 65 72 72 7c 20 62 6c 6b 3a | rn.`if.(x).{...}.else.|err|.blk: |
| 7e920 | 20 7b 20 73 77 69 74 63 68 20 28 65 72 72 29 20 7b 2e 2e 2e 7d 20 7d 60 20 64 6f 65 73 20 6e 6f | .{.switch.(err).{...}.}`.does.no |
| 7e940 | 74 20 63 6f 6e 73 69 64 65 72 20 74 68 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | t.consider.the</span>.....<span. |
| 7e960 | 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 65 72 72 6f 72 | class="tok-comment">//.non-error |
| 7e980 | 20 61 6e 64 20 65 72 72 6f 72 20 63 61 73 65 20 74 6f 20 62 65 20 70 65 65 72 73 2e 3c 2f 73 70 | .and.error.case.to.be.peers.</sp |
| 7e9a0 | 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 76 61 72 | an>.....<span.class="tok-kw">var |
| 7e9c0 | 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 6b 77 22 3e | </span>.a:.<span.class="tok-kw"> |
| 7e9e0 | 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 20 41 2c 20 42 2c 20 43 20 7d 21 3c 73 70 61 6e 20 63 6c | error</span>{.A,.B,.C.}!<span.cl |
| 7ea00 | 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 61 | ass="tok-type">u32</span>.=.<spa |
| 7ea20 | 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>;.. |
| 7ea40 | 20 20 20 5f 20 3d 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 | ..._.=.&a;.....<span.class=" |
| 7ea60 | 74 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 | tok-kw">const</span>.b.=.<span.c |
| 7ea80 | 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 78 7c 0a | lass="tok-kw">if</span>.(a).|x|. |
| 7eaa0 | 20 20 20 20 20 20 20 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 | ........x.+.<span.class="tok-num |
| 7eac0 | 62 65 72 22 3e 33 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 | ber">3</span>.....<span.class="t |
| 7eae0 | 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 6e 20 63 | ok-kw">else</span>.|err|.<span.c |
| 7eb00 | 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 65 72 72 | lass="tok-kw">switch</span>.(err |
| 7eb20 | 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" |
| 7eb40 | 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 41 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 | >error</span>.A.=>.<span.clas |
| 7eb60 | 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>,........ |
| 7eb80 | 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 61 | .<span.class="tok-kw">error</spa |
| 7eba0 | 6e 3e 2e 42 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 | n>.B.=>.<span.class="tok-numb |
| 7ebc0 | 65 72 22 3e 31 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 | er">1</span>,.........<span.clas |
| 7ebe0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 43 20 3d 26 67 74 3b 20 | s="tok-kw">error</span>.C.=>. |
| 7ec00 | 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 |
| 7ec20 | 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 2d | n>,.....};.....<span.class="tok- |
| 7ec40 | 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 |
| 7ec60 | 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 62 | s="tok-builtin">@TypeOf</span>(b |
| 7ec80 | 29 20 3d 3d 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 | ).==.?<span.class="tok-type">u32 |
| 7eca0 | 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- |
| 7ecc0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 6e 6f 6e 2d 65 72 72 6f 72 20 61 6e 64 20 65 72 | comment">//.The.non-error.and.er |
| 7ece0 | 72 6f 72 20 63 61 73 65 73 20 61 72 65 20 6f 6e 6c 79 20 70 65 65 72 73 20 69 66 20 74 68 65 20 | ror.cases.are.only.peers.if.the. |
| 7ed00 | 65 72 72 6f 72 20 63 61 73 65 20 69 73 20 6a 75 73 74 20 61 20 73 77 69 74 63 68 20 65 78 70 72 | error.case.is.just.a.switch.expr |
| 7ed20 | 65 73 73 69 6f 6e 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 | ession;</span>.....<span.class=" |
| 7ed40 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 70 61 74 74 65 72 6e 20 60 78 20 63 | tok-comment">//.the.pattern.`x.c |
| 7ed60 | 61 74 63 68 20 7c 65 72 72 7c 20 62 6c 6b 3a 20 7b 20 73 77 69 74 63 68 20 28 65 72 72 29 20 7b | atch.|err|.blk:.{.switch.(err).{ |
| 7ed80 | 2e 2e 2e 7d 20 7d 60 20 64 6f 65 73 20 6e 6f 74 20 63 6f 6e 73 69 64 65 72 20 74 68 65 20 75 6e | ...}.}`.does.not.consider.the.un |
| 7eda0 | 77 72 61 70 70 65 64 20 60 78 60 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | wrapped.`x`</span>.....<span.cla |
| 7edc0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 6e 64 20 65 72 72 6f 72 20 63 61 | ss="tok-comment">//.and.error.ca |
| 7ede0 | 73 65 20 74 6f 20 62 65 20 70 65 65 72 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | se.to.be.peers.</span>.....<span |
| 7ee00 | 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 63 20 3d | .class="tok-kw">const</span>.c.= |
| 7ee20 | 20 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 3c 2f 73 | .a.<span.class="tok-kw">catch</s |
| 7ee40 | 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 6b 2d 6b 77 22 3e | pan>.|err|.<span.class="tok-kw"> |
| 7ee60 | 73 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 | switch</span>.(err).{.........<s |
| 7ee80 | 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>. |
| 7eea0 | 41 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 | A.=>.<span.class="tok-number" |
| 7eec0 | 3e 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 22 | >0</span>,.........<span.class=" |
| 7eee0 | 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 42 20 3d 26 67 74 3b 20 3c 73 70 | tok-kw">error</span>.B.=>.<sp |
| 7ef00 | 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 2c 0a | an.class="tok-number">1</span>,. |
| 7ef20 | 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 72 72 | ........<span.class="tok-kw">err |
| 7ef40 | 6f 72 3c 2f 73 70 61 6e 3e 2e 43 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | or</span>.C.=>.<span.class="t |
| 7ef60 | 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 7d 3b 0a 20 20 20 | ok-null">null</span>,.....};.... |
| 7ef80 | 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> |
| 7efa0 | 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 |
| 7efc0 | 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 63 29 20 3d 3d 20 3f 3c 73 70 61 6e 20 63 6c | ">@TypeOf</span>(c).==.?<span.cl |
| 7efe0 | 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 3b 0a 7d 3c 2f 63 | ass="tok-type">u32</span>);.}</c |
| 7f000 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | ode></pre></figure><figure><figc |
| 7f020 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f | aption.class="shell-cap">Shell</ |
| 7f040 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 | figcaption><pre><samp>$.<kbd>zig |
| 7f060 | 20 74 65 73 74 20 74 65 73 74 5f 70 65 65 72 5f 74 79 70 65 5f 72 65 73 6f 6c 75 74 69 6f 6e 2e | .test.test_peer_type_resolution. |
| 7f080 | 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 38 20 74 65 73 74 5f 70 65 65 72 5f 74 79 70 65 5f 72 65 73 | zig</kbd>.1/8.test_peer_type_res |
| 7f0a0 | 6f 6c 75 74 69 6f 6e 2e 74 65 73 74 2e 70 65 65 72 20 72 65 73 6f 6c 76 65 20 69 6e 74 20 77 69 | olution.test.peer.resolve.int.wi |
| 7f0c0 | 64 65 6e 69 6e 67 2e 2e 2e 4f 4b 0a 32 2f 38 20 74 65 73 74 5f 70 65 65 72 5f 74 79 70 65 5f 72 | dening...OK.2/8.test_peer_type_r |
| 7f0e0 | 65 73 6f 6c 75 74 69 6f 6e 2e 74 65 73 74 2e 70 65 65 72 20 72 65 73 6f 6c 76 65 20 61 72 72 61 | esolution.test.peer.resolve.arra |
| 7f100 | 79 73 20 6f 66 20 64 69 66 66 65 72 65 6e 74 20 73 69 7a 65 20 74 6f 20 63 6f 6e 73 74 20 73 6c | ys.of.different.size.to.const.sl |
| 7f120 | 69 63 65 2e 2e 2e 4f 4b 0a 33 2f 38 20 74 65 73 74 5f 70 65 65 72 5f 74 79 70 65 5f 72 65 73 6f | ice...OK.3/8.test_peer_type_reso |
| 7f140 | 6c 75 74 69 6f 6e 2e 74 65 73 74 2e 70 65 65 72 20 72 65 73 6f 6c 76 65 20 61 72 72 61 79 20 61 | lution.test.peer.resolve.array.a |
| 7f160 | 6e 64 20 63 6f 6e 73 74 20 73 6c 69 63 65 2e 2e 2e 4f 4b 0a 34 2f 38 20 74 65 73 74 5f 70 65 65 | nd.const.slice...OK.4/8.test_pee |
| 7f180 | 72 5f 74 79 70 65 5f 72 65 73 6f 6c 75 74 69 6f 6e 2e 74 65 73 74 2e 70 65 65 72 20 74 79 70 65 | r_type_resolution.test.peer.type |
| 7f1a0 | 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 3f 54 20 61 6e 64 20 54 2e 2e 2e 4f 4b 0a 35 2f 38 20 74 | .resolution:.?T.and.T...OK.5/8.t |
| 7f1c0 | 65 73 74 5f 70 65 65 72 5f 74 79 70 65 5f 72 65 73 6f 6c 75 74 69 6f 6e 2e 74 65 73 74 2e 70 65 | est_peer_type_resolution.test.pe |
| 7f1e0 | 65 72 20 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 | er.type.resolution:.*[0]u8.and.[ |
| 7f200 | 5d 63 6f 6e 73 74 20 75 38 2e 2e 2e 4f 4b 0a 36 2f 38 20 74 65 73 74 5f 70 65 65 72 5f 74 79 70 | ]const.u8...OK.6/8.test_peer_typ |
| 7f220 | 65 5f 72 65 73 6f 6c 75 74 69 6f 6e 2e 74 65 73 74 2e 70 65 65 72 20 74 79 70 65 20 72 65 73 6f | e_resolution.test.peer.type.reso |
| 7f240 | 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 6e 64 20 | lution:.*[0]u8,.[]const.u8,.and. |
| 7f260 | 61 6e 79 65 72 72 6f 72 21 5b 5d 75 38 2e 2e 2e 4f 4b 0a 37 2f 38 20 74 65 73 74 5f 70 65 65 72 | anyerror![]u8...OK.7/8.test_peer |
| 7f280 | 5f 74 79 70 65 5f 72 65 73 6f 6c 75 74 69 6f 6e 2e 74 65 73 74 2e 70 65 65 72 20 74 79 70 65 20 | _type_resolution.test.peer.type. |
| 7f2a0 | 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 2e 2e 2e 4f | resolution:.*const.T.and.?*T...O |
| 7f2c0 | 4b 0a 38 2f 38 20 74 65 73 74 5f 70 65 65 72 5f 74 79 70 65 5f 72 65 73 6f 6c 75 74 69 6f 6e 2e | K.8/8.test_peer_type_resolution. |
| 7f2e0 | 74 65 73 74 2e 70 65 65 72 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 65 72 72 6f 72 | test.peer.type.resolution:.error |
| 7f300 | 20 75 6e 69 6f 6e 20 73 77 69 74 63 68 2e 2e 2e 4f 4b 0a 41 6c 6c 20 38 20 74 65 73 74 73 20 70 | .union.switch...OK.All.8.tests.p |
| 7f320 | 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 | assed..</samp></pre></figure>... |
| 7f340 | 20 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 5a 65 72 6f | ....................<h2.id="Zero |
| 7f360 | 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 2d 5a 65 72 6f 2d 42 | -Bit-Types"><a.href="#toc-Zero-B |
| 7f380 | 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 20 3c 61 20 | it-Types">Zero.Bit.Types</a>.<a. |
| 7f3a0 | 63 6c 61 73 73 3d 22 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 | class="hdr".href="#Zero-Bit-Type |
| 7f3c0 | 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 46 6f 72 20 73 6f 6d | s">..</a></h2>........<p>For.som |
| 7f3e0 | 65 20 74 79 70 65 73 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 | e.types,.<a.href="#sizeOf">@size |
| 7f400 | 4f 66 3c 2f 61 3e 20 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 | Of</a>.is.0:</p>.......<ul>..... |
| 7f420 | 20 20 20 20 20 20 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 2f | ......<li><a.href="#void">void</ |
| 7f440 | 61 3e 3c 2f 6c 69 3e 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 | a></li>...........<li>The.<a.hre |
| 7f460 | 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 3c 63 6f 64 65 | f="#Integers">Integers</a>.<code |
| 7f480 | 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 2f 73 70 61 6e | ><span.class="tok-type">u0</span |
| 7f4a0 | 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ></code>.and.<code><span.class=" |
| 7f4c0 | 74 6f 6b 2d 74 79 70 65 22 3e 69 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e | tok-type">i0</span></code>.</li> |
| 7f4e0 | 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 41 72 72 61 79 73 22 | ...........<li><a.href="#Arrays" |
| 7f500 | 3e 41 72 72 61 79 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 | >Arrays</a>.and.<a.href="#Vector |
| 7f520 | 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 77 69 74 68 20 6c 65 6e 20 30 2c 20 6f 72 20 77 69 | s">Vectors</a>.with.len.0,.or.wi |
| 7f540 | 74 68 20 61 6e 20 65 6c 65 6d 65 6e 74 20 74 79 70 65 20 74 68 61 74 20 69 73 20 61 20 7a 65 72 | th.an.element.type.that.is.a.zer |
| 7f560 | 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 3c 6c 69 3e 41 | o.bit.type.</li>...........<li>A |
| 7f580 | 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 20 77 69 74 68 20 | n.<a.href="#enum">enum</a>.with. |
| 7f5a0 | 6f 6e 6c 79 20 31 20 74 61 67 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 | only.1.tag.</li>...........<li>A |
| 7f5c0 | 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 61 3e 20 77 69 | .<a.href="#struct">struct</a>.wi |
| 7f5e0 | 74 68 20 61 6c 6c 20 66 69 65 6c 64 73 20 62 65 69 6e 67 20 7a 65 72 6f 20 62 69 74 20 74 79 70 | th.all.fields.being.zero.bit.typ |
| 7f600 | 65 73 2e 3c 2f 6c 69 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 | es.</li>...........<li>A.<a.href |
| 7f620 | 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 20 77 69 74 68 20 6f 6e 6c 79 20 31 20 | ="#union">union</a>.with.only.1. |
| 7f640 | 66 69 65 6c 64 20 77 68 69 63 68 20 69 73 20 61 20 7a 65 72 6f 20 62 69 74 20 74 79 70 65 2e 3c | field.which.is.a.zero.bit.type.< |
| 7f660 | 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 20 | /li>.......</ul>.......<p>...... |
| 7f680 | 20 54 68 65 73 65 20 74 79 70 65 73 20 63 61 6e 20 6f 6e 6c 79 20 65 76 65 72 20 68 61 76 65 20 | .These.types.can.only.ever.have. |
| 7f6a0 | 6f 6e 65 20 70 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 2c 20 61 6e 64 20 74 68 75 73 0a 20 20 20 | one.possible.value,.and.thus.... |
| 7f6c0 | 20 20 20 72 65 71 75 69 72 65 20 30 20 62 69 74 73 20 74 6f 20 72 65 70 72 65 73 65 6e 74 2e 20 | ...require.0.bits.to.represent.. |
| 7f6e0 | 43 6f 64 65 20 74 68 61 74 20 6d 61 6b 65 73 20 75 73 65 20 6f 66 20 74 68 65 73 65 20 74 79 70 | Code.that.makes.use.of.these.typ |
| 7f700 | 65 73 20 69 73 0a 20 20 20 20 20 20 6e 6f 74 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 74 68 65 20 | es.is.......not.included.in.the. |
| 7f720 | 66 69 6e 61 6c 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | final.generated.code:.......</p> |
| 7f740 | 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | .......<figure><figcaption.class |
| 7f760 | 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 7a 65 | ="zig-cap"><cite.class="file">ze |
| 7f780 | 72 6f 5f 62 69 74 5f 74 79 70 65 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 | ro_bit_types.zig</cite></figcapt |
| 7f7a0 | 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ion><pre><code><span.class="tok- |
| 7f7c0 | 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 73 3d 22 74 | kw">export</span>.<span.class="t |
| 7f7e0 | 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 |
| 7f800 | 6b 2d 66 6e 22 3e 65 6e 74 72 79 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | k-fn">entry</span>().<span.class |
| 7f820 | 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 |
| 7f840 | 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: |
| 7f860 | 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 |
| 7f880 | 61 6e 3e 20 3d 20 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 | an>.=.{};.....<span.class="tok-k |
| 7f8a0 | 77 22 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 | w">var</span>.y:.<span.class="to |
| 7f8c0 | 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 20 78 20 | k-type">void</span>.=.{};.....x. |
| 7f8e0 | 3d 20 79 3b 0a 20 20 20 20 79 20 3d 20 78 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f | =.y;.....y.=.x;.}</code></pre></ |
| 7f900 | 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 57 68 65 6e 20 74 68 69 73 20 74 75 72 6e | figure>........<p>When.this.turn |
| 7f920 | 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 6e 6f | s.into.machine.code,.there.is.no |
| 7f940 | 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 6f 64 | .code.generated.in.the.......bod |
| 7f960 | 79 20 6f 66 20 3c 63 6f 64 65 3e 65 6e 74 72 79 3c 2f 63 6f 64 65 3e 2c 20 65 76 65 6e 20 69 6e | y.of.<code>entry</code>,.even.in |
| 7f980 | 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 6d 6f 64 65 | .<a.href="#Debug">Debug</a>.mode |
| 7f9a0 | 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 6f 6e 20 78 38 36 5f 36 34 3a 3c 2f 70 3e 0a 20 20 | ..For.example,.on.x86_64:</p>... |
| 7f9c0 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 30 30 30 30 30 30 30 30 30 30 30 30 30 30 31 30 20 | ....<pre><code>0000000000000010. |
| 7f9e0 | 26 6c 74 3b 65 6e 74 72 79 26 67 74 3b 3a 0a 20 20 31 30 3a 09 35 35 20 20 20 20 20 20 20 20 20 | <entry>:...10:.55......... |
| 7fa00 | 20 20 20 20 20 20 20 20 20 20 09 70 75 73 68 20 20 20 25 72 62 70 0a 20 20 31 31 3a 09 34 38 20 | ...........push...%rbp...11:.48. |
| 7fa20 | 38 39 20 65 35 20 20 20 20 20 20 20 20 20 20 20 20 20 09 6d 6f 76 20 20 20 20 25 72 73 70 2c 25 | 89.e5..............mov....%rsp,% |
| 7fa40 | 72 62 70 0a 20 20 31 34 3a 09 35 64 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 09 | rbp...14:.5d.................... |
| 7fa60 | 70 6f 70 20 20 20 20 25 72 62 70 0a 20 20 31 35 3a 09 63 33 20 20 20 20 20 20 20 20 20 20 20 20 | pop....%rbp...15:.c3............ |
| 7fa80 | 20 20 20 20 20 20 20 09 72 65 74 71 20 20 20 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | ........retq...</code></pre>.... |
| 7faa0 | 20 20 20 3c 70 3e 54 68 65 73 65 20 61 73 73 65 6d 62 6c 79 20 69 6e 73 74 72 75 63 74 69 6f 6e | ...<p>These.assembly.instruction |
| 7fac0 | 73 20 64 6f 20 6e 6f 74 20 68 61 76 65 20 61 6e 79 20 63 6f 64 65 20 61 73 73 6f 63 69 61 74 65 | s.do.not.have.any.code.associate |
| 7fae0 | 64 20 77 69 74 68 20 74 68 65 20 76 6f 69 64 20 76 61 6c 75 65 73 20 2d 0a 20 20 20 20 20 20 74 | d.with.the.void.values.-.......t |
| 7fb00 | 68 65 79 20 6f 6e 6c 79 20 70 65 72 66 6f 72 6d 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 | hey.only.perform.the.function.ca |
| 7fb20 | 6c 6c 20 70 72 6f 6c 6f 67 75 65 20 61 6e 64 20 65 70 69 6c 6f 67 75 65 2e 3c 2f 70 3e 0a 0a 20 | ll.prologue.and.epilogue.</p>... |
| 7fb40 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 76 6f 69 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | .....<h3.id="void"><a.href="#toc |
| 7fb60 | 2d 76 6f 69 64 22 3e 76 6f 69 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | -void">void</a>.<a.class="hdr".h |
| 7fb80 | 72 65 66 3d 22 23 76 6f 69 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c | ref="#void">..</a></h3>........< |
| 7fba0 | 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | p>.......<code><span.class="tok- |
| 7fbc0 | 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 | type">void</span></code>.can.be. |
| 7fbe0 | 75 73 65 66 75 6c 20 66 6f 72 20 69 6e 73 74 61 6e 74 69 61 74 69 6e 67 20 67 65 6e 65 72 69 63 | useful.for.instantiating.generic |
| 7fc00 | 20 74 79 70 65 73 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 67 69 76 65 6e 20 61 0a 20 20 20 | .types..For.example,.given.a.... |
| 7fc20 | 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 4d 61 70 28 4b 65 79 2c 20 56 61 6c 75 65 29 3c 2f 63 6f | .......<code>Map(Key,.Value)</co |
| 7fc40 | 64 65 3e 2c 20 6f 6e 65 20 63 61 6e 20 70 61 73 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | de>,.one.can.pass.<code><span.cl |
| 7fc60 | 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 6f 64 65 | ass="tok-type">void</span></code |
| 7fc80 | 3e 20 66 6f 72 20 74 68 65 20 3c 63 6f 64 65 3e 56 61 6c 75 65 3c 2f 63 6f 64 65 3e 0a 20 20 20 | >.for.the.<code>Value</code>.... |
| 7fca0 | 20 20 20 20 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 | ...................type.to.make. |
| 7fcc0 | 69 74 20 69 6e 74 6f 20 61 20 3c 63 6f 64 65 3e 53 65 74 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 | it.into.a.<code>Set</code>:..... |
| 7fce0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e | ..</p>.......<figure><figcaption |
| 7fd00 | 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 | .class="zig-cap"><cite.class="fi |
| 7fd20 | 6c 65 22 3e 74 65 73 74 5f 76 6f 69 64 5f 69 6e 5f 68 61 73 68 6d 61 70 2e 7a 69 67 3c 2f 63 69 | le">test_void_in_hashmap.zig</ci |
| 7fd40 | 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e | te></figcaption><pre><code><span |
| 7fd60 | 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 |
| 7fd80 | 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 |
| 7fda0 | 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 |
| 7fdc0 | 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 |
| 7fde0 | 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 |
| 7fe00 | 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 |
| 7fe20 | 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 |
| 7fe40 | 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 75 72 6e 20 48 61 73 | n.class="tok-str">"turn.Has |
| 7fe60 | 68 4d 61 70 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 3c | hMap.into.a.set.with.void"< |
| 7fe80 | 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 |
| 7fea0 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6d 61 70 20 3d 20 73 74 64 2e 41 75 74 6f 48 61 73 68 4d | ">var</span>.map.=.std.AutoHashM |
| 7fec0 | 61 70 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 | ap(<span.class="tok-type">i32</s |
| 7fee0 | 70 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 76 6f 69 | pan>,.<span.class="tok-type">voi |
| 7ff00 | 64 3c 2f 73 70 61 6e 3e 29 2e 69 6e 69 74 28 73 74 64 2e 74 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 | d</span>).init(std.testing.alloc |
| 7ff20 | 61 74 6f 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 | ator);.....<span.class="tok-kw"> |
| 7ff40 | 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 6d 61 70 2e 64 65 69 6e 69 74 28 29 3b 0a 0a 20 20 20 20 | defer</span>.map.deinit();...... |
| 7ff60 | 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>. |
| 7ff80 | 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 22 | map.put(<span.class="tok-number" |
| 7ffa0 | 3e 31 3c 2f 73 70 61 6e 3e 2c 20 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >1</span>,.{});.....<span.class= |
| 7ffc0 | 22 74 6f 6b 2d 6b 77 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 | "tok-kw">try</span>.map.put(<spa |
| 7ffe0 | 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 7b | n.class="tok-number">2</span>,.{ |
| 80000 | 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 74 72 | });......<span.class="tok-kw">tr |
| 80020 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 61 70 2e 63 6f 6e 74 61 69 6e 73 28 3c 73 70 | y</span>.expect(map.contains(<sp |
| 80040 | 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 29 | an.class="tok-number">2</span>)) |
| 80060 | 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</ |
| 80080 | 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 70 61 6e | span>.expect(!map.contains(<span |
| 800a0 | 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 29 3b 0a | .class="tok-number">3</span>));. |
| 800c0 | 0a 20 20 20 20 5f 20 3d 20 6d 61 70 2e 72 65 6d 6f 76 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ....._.=.map.remove(<span.class= |
| 800e0 | 22 74 6f 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 3c 73 70 61 | "tok-number">2</span>);.....<spa |
| 80100 | 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 |
| 80120 | 63 74 28 21 6d 61 70 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 | ct(!map.contains(<span.class="to |
| 80140 | 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | k-number">2</span>));.}</code></ |
| 80160 | 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e | pre></figure><figure><figcaption |
| 80180 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 | .class="shell-cap">Shell</figcap |
| 801a0 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 | tion><pre><samp>$.<kbd>zig.test. |
| 801c0 | 74 65 73 74 5f 76 6f 69 64 5f 69 6e 5f 68 61 73 68 6d 61 70 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 | test_void_in_hashmap.zig</kbd>.1 |
| 801e0 | 2f 31 20 74 65 73 74 5f 76 6f 69 64 5f 69 6e 5f 68 61 73 68 6d 61 70 2e 74 65 73 74 2e 74 75 72 | /1.test_void_in_hashmap.test.tur |
| 80200 | 6e 20 48 61 73 68 4d 61 70 20 69 6e 74 6f 20 61 20 73 65 74 20 77 69 74 68 20 76 6f 69 64 2e 2e | n.HashMap.into.a.set.with.void.. |
| 80220 | 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c | .OK.All.1.tests.passed..</samp>< |
| 80240 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 4e 6f 74 65 20 74 68 | /pre></figure>........<p>Note.th |
| 80260 | 61 74 20 74 68 69 73 20 69 73 20 64 69 66 66 65 72 65 6e 74 20 66 72 6f 6d 20 75 73 69 6e 67 20 | at.this.is.different.from.using. |
| 80280 | 61 20 64 75 6d 6d 79 20 76 61 6c 75 65 20 66 6f 72 20 74 68 65 20 68 61 73 68 20 6d 61 70 20 76 | a.dummy.value.for.the.hash.map.v |
| 802a0 | 61 6c 75 65 2e 0a 20 20 20 20 20 20 42 79 20 75 73 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | alue........By.using.<code><span |
| 802c0 | 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 |
| 802e0 | 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 |
| 80300 | 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 |
| 80320 | 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 |
| 80340 | 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 |
| 80360 | 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 |
| 80380 | 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....... |
| 803a0 | 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. |
| 803c0 | 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 |
| 803e0 | 65 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 | e><span.class="tok-type">void</s |
| 80400 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 64 69 73 74 69 6e 63 74 20 66 72 6f 6d 20 3c 63 6f | pan></code>.is.distinct.from.<co |
| 80420 | 64 65 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 6f 70 61 | de><span.class="tok-type">anyopa |
| 80440 | 71 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c | que</span></code>........<code>< |
| 80460 | 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 |
| 80480 | 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 62 | ></code>.has.a.known.size.of.0.b |
| 804a0 | 79 74 65 73 2c 20 61 6e 64 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ytes,.and.<code><span.class="tok |
| 804c0 | 2d 74 79 70 65 22 3e 61 6e 79 6f 70 61 71 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 | -type">anyopaque</span></code>.h |
| 804e0 | 61 73 20 61 6e 20 75 6e 6b 6e 6f 77 6e 2c 20 62 75 74 20 6e 6f 6e 2d 7a 65 72 6f 2c 20 73 69 7a | as.an.unknown,.but.non-zero,.siz |
| 80500 | 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 45 78 | e........</p>.......<p>.......Ex |
| 80520 | 70 72 65 73 73 69 6f 6e 73 20 6f 66 20 74 79 70 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | pressions.of.type.<code><span.cl |
| 80540 | 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 6f 64 65 | ass="tok-type">void</span></code |
| 80560 | 3e 20 61 72 65 20 74 68 65 20 6f 6e 6c 79 20 6f 6e 65 73 20 77 68 6f 73 65 20 76 61 6c 75 65 20 | >.are.the.only.ones.whose.value. |
| 80580 | 63 61 6e 20 62 65 20 69 67 6e 6f 72 65 64 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 69 67 6e | can.be.ignored..For.example,.ign |
| 805a0 | 6f 72 69 6e 67 0a 20 20 20 20 20 20 61 20 6e 6f 6e 2d 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | oring.......a.non-<code><span.cl |
| 805c0 | 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 6f 64 65 | ass="tok-type">void</span></code |
| 805e0 | 3e 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 3a | >.expression.is.a.compile.error: |
| 80600 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | .......</p>.......<figure><figca |
| 80620 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 | ption.class="zig-cap"><cite.clas |
| 80640 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 65 78 70 72 65 73 73 69 6f 6e 5f 69 67 6e 6f 72 65 64 | s="file">test_expression_ignored |
| 80660 | 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f | .zig</cite></figcaption><pre><co |
| 80680 | 64 65 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 | de><span.class="tok-kw">test</sp |
| 806a0 | 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">" |
| 806c0 | 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 3c | ignoring.expression.value"< |
| 806e0 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | /span>.{.....foo();.}..<span.cla |
| 80700 | 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 |
| 80720 | 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 6e 20 63 6c | s="tok-fn">foo</span>().<span.cl |
| 80740 | 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 20 | ass="tok-type">i32</span>.{..... |
| 80760 | 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 |
| 80780 | 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 31 32 33 34 | n>.<span.class="tok-number">1234 |
| 807a0 | 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | </span>;.}</code></pre></figure> |
| 807c0 | 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | <figure><figcaption.class="shell |
| 807e0 | 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 | -cap">Shell</figcaption><pre><sa |
| 80800 | 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 65 78 70 72 65 73 73 69 | mp>$.<kbd>zig.test.test_expressi |
| 80820 | 6f 6e 5f 69 67 6e 6f 72 65 64 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | on_ignored.zig</kbd>.<span.class |
| 80840 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 | ="sgr-1m">/home/andy/dev/zig/doc |
| 80860 | 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 65 78 70 72 65 73 73 69 6f 6e 5f 69 67 6e 6f 72 65 64 | /langref/test_expression_ignored |
| 80880 | 2e 7a 69 67 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 73 67 | .zig:2:8:.</span><span.class="sg |
| 808a0 | 72 2d 33 31 6d 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 | r-31m">error:.</span><span.class |
| 808c0 | 3d 22 73 67 72 2d 31 6d 22 3e 76 61 6c 75 65 20 6f 66 20 74 79 70 65 20 27 69 33 32 27 20 69 67 | ="sgr-1m">value.of.type.'i32'.ig |
| 808e0 | 6e 6f 72 65 64 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 66 6f 6f 28 29 3b 0a 20 20 20 20 3c 73 70 61 | nored.</span>....foo();.....<spa |
| 80900 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 7e 7e 7e 5e 7e 0a 3c 2f 73 70 61 6e 3e 3c | n.class="sgr-32m">~~~^~.</span>< |
| 80920 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | span.class="sgr-1m">/home/andy/d |
| 80940 | 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 65 78 70 72 65 73 73 69 | ev/zig/doc/langref/test_expressi |
| 80960 | 6f 6e 5f 69 67 6e 6f 72 65 64 2e 7a 69 67 3a 32 3a 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | on_ignored.zig:2:8:.</span><span |
| 80980 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | .class="sgr-36m">note:.</span><s |
| 809a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 61 6c 6c 20 6e 6f 6e 2d 76 6f 69 64 20 | pan.class="sgr-1m">all.non-void. |
| 809c0 | 76 61 6c 75 65 73 20 6d 75 73 74 20 62 65 20 75 73 65 64 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | values.must.be.used.</span><span |
| 809e0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a | .class="sgr-1m">/home/andy/dev/z |
| 80a00 | 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 65 78 70 72 65 73 73 69 6f 6e 5f 69 | ig/doc/langref/test_expression_i |
| 80a20 | 67 6e 6f 72 65 64 2e 7a 69 67 3a 32 3a 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | gnored.zig:2:8:.</span><span.cla |
| 80a40 | 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | ss="sgr-36m">note:.</span><span. |
| 80a60 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 74 6f 20 64 69 73 63 61 72 64 20 74 68 65 20 76 61 | class="sgr-1m">to.discard.the.va |
| 80a80 | 6c 75 65 2c 20 61 73 73 69 67 6e 20 69 74 20 74 6f 20 27 5f 27 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f | lue,.assign.it.to.'_'.</span>.</ |
| 80aa0 | 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 48 | samp></pre></figure>........<p>H |
| 80ac0 | 6f 77 65 76 65 72 2c 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 | owever,.if.the.expression.has.ty |
| 80ae0 | 70 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | pe.<code><span.class="tok-type"> |
| 80b00 | 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 69 6c 6c 20 62 | void</span></code>,.there.will.b |
| 80b20 | 65 20 6e 6f 20 65 72 72 6f 72 2e 20 45 78 70 72 65 73 73 69 6f 6e 20 72 65 73 75 6c 74 73 20 63 | e.no.error..Expression.results.c |
| 80b40 | 61 6e 20 62 65 20 65 78 70 6c 69 63 69 74 6c 79 20 69 67 6e 6f 72 65 64 20 62 79 20 61 73 73 69 | an.be.explicitly.ignored.by.assi |
| 80b60 | 67 6e 69 6e 67 20 74 68 65 6d 20 74 6f 20 3c 63 6f 64 65 3e 5f 3c 2f 63 6f 64 65 3e 2e 20 3c 2f | gning.them.to.<code>_</code>..</ |
| 80b80 | 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | p>.......<figure><figcaption.cla |
| 80ba0 | 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | ss="zig-cap"><cite.class="file"> |
| 80bc0 | 74 65 73 74 5f 76 6f 69 64 5f 69 67 6e 6f 72 65 64 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 | test_void_ignored.zig</cite></fi |
| 80be0 | 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | gcaption><pre><code><span.class= |
| 80c00 | 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 |
| 80c20 | 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 65 64 | ="tok-str">"void.is.ignored |
| 80c40 | 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 64 28 | "</span>.{.....returnsVoid( |
| 80c60 | 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< |
| 80c80 | 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 |
| 80ca0 | 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 69 6f | ot;explicitly.ignoring.expressio |
| 80cc0 | 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 20 66 | n.value"</span>.{....._.=.f |
| 80ce0 | 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 66 6e | oo();.}..<span.class="tok-kw">fn |
| 80d00 | 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 65 74 | </span>.<span.class="tok-fn">ret |
| 80d20 | 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 22 74 | urnsVoid</span>().<span.class="t |
| 80d40 | 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 20 63 | ok-type">void</span>.{}..<span.c |
| 80d60 | 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 |
| 80d80 | 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 6e 20 | ass="tok-fn">foo</span>().<span. |
| 80da0 | 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>.{... |
| 80dc0 | 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 |
| 80de0 | 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 31 32 | pan>.<span.class="tok-number">12 |
| 80e00 | 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 2f 66 69 67 75 72 | 34</span>;.}</code></pre></figur |
| 80e20 | 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 | e><figure><figcaption.class="she |
| 80e40 | 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c | ll-cap">Shell</figcaption><pre>< |
| 80e60 | 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 76 6f 69 64 5f 69 | samp>$.<kbd>zig.test.test_void_i |
| 80e80 | 67 6e 6f 72 65 64 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 76 6f 69 64 5f 69 | gnored.zig</kbd>.1/2.test_void_i |
| 80ea0 | 67 6e 6f 72 65 64 2e 74 65 73 74 2e 76 6f 69 64 20 69 73 20 69 67 6e 6f 72 65 64 2e 2e 2e 4f 4b | gnored.test.void.is.ignored...OK |
| 80ec0 | 0a 32 2f 32 20 74 65 73 74 5f 76 6f 69 64 5f 69 67 6e 6f 72 65 64 2e 74 65 73 74 2e 65 78 70 6c | .2/2.test_void_ignored.test.expl |
| 80ee0 | 69 63 69 74 6c 79 20 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 | icitly.ignoring.expression.value |
| 80f00 | 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 | ...OK.All.2.tests.passed..</samp |
| 80f20 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a | ></pre></figure>................ |
| 80f40 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 2d 53 | .......<h2.id="Result-Location-S |
| 80f60 | 65 6d 61 6e 74 69 63 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 73 75 6c 74 2d 4c | emantics"><a.href="#toc-Result-L |
| 80f80 | 6f 63 61 74 69 6f 6e 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 | ocation-Semantics">Result.Locati |
| 80fa0 | 6f 6e 20 53 65 6d 61 6e 74 69 63 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | on.Semantics</a>.<a.class="hdr". |
| 80fc0 | 68 72 65 66 3d 22 23 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 | href="#Result-Location-Semantics |
| 80fe0 | 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 44 | ">..</a></h2>........<p>.......D |
| 81000 | 75 72 69 6e 67 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2c 20 65 76 65 72 79 20 5a 69 67 20 65 78 70 | uring.compilation,.every.Zig.exp |
| 81020 | 72 65 73 73 69 6f 6e 20 61 6e 64 20 73 75 62 2d 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 61 73 | ression.and.sub-expression.is.as |
| 81040 | 73 69 67 6e 65 64 20 6f 70 74 69 6f 6e 61 6c 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 0a | signed.optional.result.location. |
| 81060 | 20 20 20 20 20 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 20 54 68 69 73 20 69 6e 66 6f 72 6d 61 74 | ......information..This.informat |
| 81080 | 69 6f 6e 20 64 69 63 74 61 74 65 73 20 77 68 61 74 20 74 79 70 65 20 74 68 65 20 65 78 70 72 65 | ion.dictates.what.type.the.expre |
| 810a0 | 73 73 69 6f 6e 20 73 68 6f 75 6c 64 20 68 61 76 65 20 28 69 74 73 20 72 65 73 75 6c 74 20 74 79 | ssion.should.have.(its.result.ty |
| 810c0 | 70 65 29 2c 20 61 6e 64 0a 20 20 20 20 20 20 77 68 65 72 65 20 74 68 65 20 72 65 73 75 6c 74 69 | pe),.and.......where.the.resulti |
| 810e0 | 6e 67 20 76 61 6c 75 65 20 73 68 6f 75 6c 64 20 62 65 20 70 6c 61 63 65 64 20 69 6e 20 6d 65 6d | ng.value.should.be.placed.in.mem |
| 81100 | 6f 72 79 20 28 69 74 73 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 29 2e 20 54 68 65 20 69 | ory.(its.result.location)..The.i |
| 81120 | 6e 66 6f 72 6d 61 74 69 6f 6e 20 69 73 0a 20 20 20 20 20 20 6f 70 74 69 6f 6e 61 6c 20 69 6e 20 | nformation.is.......optional.in. |
| 81140 | 74 68 65 20 73 65 6e 73 65 20 74 68 61 74 20 6e 6f 74 20 65 76 65 72 79 20 65 78 70 72 65 73 73 | the.sense.that.not.every.express |
| 81160 | 69 6f 6e 20 68 61 73 20 74 68 69 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 3a 20 61 73 73 69 67 6e | ion.has.this.information:.assign |
| 81180 | 6d 65 6e 74 20 74 6f 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 5f 3c 2f 63 6f 64 65 3e 2c 20 66 6f | ment.to.......<code>_</code>,.fo |
| 811a0 | 72 20 69 6e 73 74 61 6e 63 65 2c 20 64 6f 65 73 20 6e 6f 74 20 70 72 6f 76 69 64 65 20 61 6e 79 | r.instance,.does.not.provide.any |
| 811c0 | 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 74 68 65 20 74 79 70 65 20 6f 66 20 61 | .information.about.the.type.of.a |
| 811e0 | 6e 0a 20 20 20 20 20 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 6e 6f 72 20 64 6f 65 73 20 69 74 20 | n.......expression,.nor.does.it. |
| 81200 | 70 72 6f 76 69 64 65 20 61 20 63 6f 6e 63 72 65 74 65 20 6d 65 6d 6f 72 79 20 6c 6f 63 61 74 69 | provide.a.concrete.memory.locati |
| 81220 | 6f 6e 20 74 6f 20 70 6c 61 63 65 20 69 74 20 69 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | on.to.place.it.in........</p>... |
| 81240 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 73 20 61 20 6d 6f 74 69 76 61 74 69 6e 67 20 65 78 | ....<p>.......As.a.motivating.ex |
| 81260 | 61 6d 70 6c 65 2c 20 63 6f 6e 73 69 64 65 72 20 74 68 65 20 73 74 61 74 65 6d 65 6e 74 20 3c 63 | ample,.consider.the.statement.<c |
| 81280 | 6f 64 65 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 | ode><span.class="tok-kw">const</ |
| 812a0 | 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"> |
| 812c0 | 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 |
| 812e0 | 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e 2e 20 54 68 65 20 74 79 70 | mber">42</span>;</code>..The.typ |
| 81300 | 65 0a 20 20 20 20 20 20 61 6e 6e 6f 74 61 74 69 6f 6e 20 68 65 72 65 20 70 72 6f 76 69 64 65 73 | e.......annotation.here.provides |
| 81320 | 20 61 20 72 65 73 75 6c 74 20 74 79 70 65 20 6f 66 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | .a.result.type.of.<code><span.cl |
| 81340 | 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 3c 2f 63 6f 64 65 3e | ass="tok-type">u32</span></code> |
| 81360 | 20 74 6f 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 | .to.the.initialization.expressio |
| 81380 | 6e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | n.......<code><span.class="tok-n |
| 813a0 | 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 69 6e 73 74 72 75 63 | umber">42</span></code>,.instruc |
| 813c0 | 74 69 6e 67 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 74 6f 20 63 6f 65 72 63 65 20 74 68 69 73 | ting.the.compiler.to.coerce.this |
| 813e0 | 20 69 6e 74 65 67 65 72 20 28 69 6e 69 74 69 61 6c 6c 79 20 6f 66 20 74 79 70 65 0a 20 20 20 20 | .integer.(initially.of.type..... |
| 81400 | 20 20 3c 63 6f 64 65 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 | ..<code><span.class="tok-type">c |
| 81420 | 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 29 20 74 6f 20 74 68 | omptime_int</span></code>).to.th |
| 81440 | 69 73 20 74 79 70 65 2e 20 57 65 20 77 69 6c 6c 20 73 65 65 20 6d 6f 72 65 20 65 78 61 6d 70 6c | is.type..We.will.see.more.exampl |
| 81460 | 65 73 20 73 68 6f 72 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 | es.shortly........</p>.......<p> |
| 81480 | 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 6e 6f 74 20 61 6e 20 69 6d 70 6c 65 6d 65 6e 74 61 | .......This.is.not.an.implementa |
| 814a0 | 74 69 6f 6e 20 64 65 74 61 69 6c 3a 20 74 68 65 20 6c 6f 67 69 63 20 6f 75 74 6c 69 6e 65 64 20 | tion.detail:.the.logic.outlined. |
| 814c0 | 61 62 6f 76 65 20 69 73 20 63 6f 64 69 66 69 65 64 20 69 6e 74 6f 20 74 68 65 20 5a 69 67 20 6c | above.is.codified.into.the.Zig.l |
| 814e0 | 61 6e 67 75 61 67 65 0a 20 20 20 20 20 20 73 70 65 63 69 66 69 63 61 74 69 6f 6e 2c 20 61 6e 64 | anguage.......specification,.and |
| 81500 | 20 69 73 20 74 68 65 20 70 72 69 6d 61 72 79 20 6d 65 63 68 61 6e 69 73 6d 20 6f 66 20 74 79 70 | .is.the.primary.mechanism.of.typ |
| 81520 | 65 20 69 6e 66 65 72 65 6e 63 65 20 69 6e 20 74 68 65 20 6c 61 6e 67 75 61 67 65 2e 20 54 68 69 | e.inference.in.the.language..Thi |
| 81540 | 73 20 73 79 73 74 65 6d 20 69 73 0a 20 20 20 20 20 20 63 6f 6c 6c 65 63 74 69 76 65 6c 79 20 72 | s.system.is.......collectively.r |
| 81560 | 65 66 65 72 72 65 64 20 74 6f 20 61 73 20 22 52 65 73 75 6c 74 20 4c 6f 63 61 74 69 6f 6e 20 53 | eferred.to.as."Result.Location.S |
| 81580 | 65 6d 61 6e 74 69 63 73 22 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 33 20 | emantics"........</p>.......<h3. |
| 815a0 | 69 64 3d 22 52 65 73 75 6c 74 2d 54 79 70 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | id="Result-Types"><a.href="#toc- |
| 815c0 | 52 65 73 75 6c 74 2d 54 79 70 65 73 22 3e 52 65 73 75 6c 74 20 54 79 70 65 73 3c 2f 61 3e 20 3c | Result-Types">Result.Types</a>.< |
| 815e0 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 65 73 75 6c 74 2d 54 79 70 65 | a.class="hdr".href="#Result-Type |
| 81600 | 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 20 20 20 | s">..</a></h3>........<p>....... |
| 81620 | 52 65 73 75 6c 74 20 74 79 70 65 73 20 61 72 65 20 70 72 6f 70 61 67 61 74 65 64 20 72 65 63 75 | Result.types.are.propagated.recu |
| 81640 | 72 73 69 76 65 6c 79 20 74 68 72 6f 75 67 68 20 65 78 70 72 65 73 73 69 6f 6e 73 20 77 68 65 72 | rsively.through.expressions.wher |
| 81660 | 65 20 70 6f 73 73 69 62 6c 65 2e 20 46 6f 72 20 69 6e 73 74 61 6e 63 65 2c 20 69 66 20 74 68 65 | e.possible..For.instance,.if.the |
| 81680 | 0a 20 20 20 20 20 20 65 78 70 72 65 73 73 69 6f 6e 20 3c 63 6f 64 65 3e 26 61 6d 70 3b 65 3c 2f | .......expression.<code>&e</ |
| 816a0 | 63 6f 64 65 3e 20 68 61 73 20 72 65 73 75 6c 74 20 74 79 70 65 20 3c 63 6f 64 65 3e 2a 3c 73 70 | code>.has.result.type.<code>*<sp |
| 816c0 | 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 3c 2f | an.class="tok-type">u32</span></ |
| 816e0 | 63 6f 64 65 3e 2c 20 74 68 65 6e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 65 3c 2f 63 6f 64 65 3e | code>,.then.......<code>e</code> |
| 81700 | 20 69 73 20 67 69 76 65 6e 20 61 20 72 65 73 75 6c 74 20 74 79 70 65 20 6f 66 20 3c 63 6f 64 65 | .is.given.a.result.type.of.<code |
| 81720 | 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 |
| 81740 | 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 6c 6c 6f 77 69 6e 67 20 74 68 65 0a 20 20 20 20 20 20 6c 61 | n></code>,.allowing.the.......la |
| 81760 | 6e 67 75 61 67 65 20 74 6f 20 70 65 72 66 6f 72 6d 20 74 68 69 73 20 63 6f 65 72 63 69 6f 6e 20 | nguage.to.perform.this.coercion. |
| 81780 | 62 65 66 6f 72 65 20 74 61 6b 69 6e 67 20 61 20 72 65 66 65 72 65 6e 63 65 2e 0a 20 20 20 20 20 | before.taking.a.reference....... |
| 817a0 | 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 72 65 73 75 6c 74 | .</p>.......<p>.......The.result |
| 817c0 | 20 74 79 70 65 20 6d 65 63 68 61 6e 69 73 6d 20 69 73 20 75 74 69 6c 69 7a 65 64 20 62 79 20 63 | .type.mechanism.is.utilized.by.c |
| 817e0 | 61 73 74 69 6e 67 20 62 75 69 6c 74 69 6e 73 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 3e 3c 73 | asting.builtins.such.as.<code><s |
| 81800 | 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 43 61 73 74 | pan.class="tok-builtin">@intCast |
| 81820 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 52 61 74 68 65 72 20 74 68 61 | </span></code>........Rather.tha |
| 81840 | 6e 20 74 61 6b 69 6e 67 20 61 73 20 61 6e 20 61 72 67 75 6d 65 6e 74 20 74 68 65 20 74 79 70 65 | n.taking.as.an.argument.the.type |
| 81860 | 20 74 6f 20 63 61 73 74 20 74 6f 2c 20 74 68 65 73 65 20 62 75 69 6c 74 69 6e 73 20 75 73 65 20 | .to.cast.to,.these.builtins.use. |
| 81880 | 74 68 65 69 72 20 72 65 73 75 6c 74 20 74 79 70 65 20 74 6f 0a 20 20 20 20 20 20 64 65 74 65 72 | their.result.type.to.......deter |
| 818a0 | 6d 69 6e 65 20 74 68 69 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 20 54 68 65 20 72 65 73 75 6c | mine.this.information..The.resul |
| 818c0 | 74 20 74 79 70 65 20 69 73 20 6f 66 74 65 6e 20 6b 6e 6f 77 6e 20 66 72 6f 6d 20 63 6f 6e 74 65 | t.type.is.often.known.from.conte |
| 818e0 | 78 74 3b 20 77 68 65 72 65 20 69 74 20 69 73 20 6e 6f 74 2c 20 74 68 65 0a 20 20 20 20 20 20 3c | xt;.where.it.is.not,.the.......< |
| 81900 | 63 6f 64 65 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 | code><span.class="tok-builtin">@ |
| 81920 | 61 73 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 75 69 6c 74 69 6e 20 63 61 6e 20 62 65 20 | as</span></code>.builtin.can.be. |
| 81940 | 75 73 65 64 20 74 6f 20 65 78 70 6c 69 63 69 74 6c 79 20 70 72 6f 76 69 64 65 20 61 20 72 65 73 | used.to.explicitly.provide.a.res |
| 81960 | 75 6c 74 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 0a 20 | ult.type........</p>.......<p>.. |
| 81980 | 20 20 20 20 20 57 65 20 63 61 6e 20 62 72 65 61 6b 20 64 6f 77 6e 20 74 68 65 20 72 65 73 75 6c | .....We.can.break.down.the.resul |
| 819a0 | 74 20 74 79 70 65 73 20 66 6f 72 20 65 61 63 68 20 63 6f 6d 70 6f 6e 65 6e 74 20 6f 66 20 61 20 | t.types.for.each.component.of.a. |
| 819c0 | 73 69 6d 70 6c 65 20 65 78 70 72 65 73 73 69 6f 6e 20 61 73 20 66 6f 6c 6c 6f 77 73 3a 0a 20 20 | simple.expression.as.follows:... |
| 819e0 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | ....</p>.......<figure><figcapti |
| 81a00 | 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 | on.class="zig-cap"><cite.class=" |
| 81a20 | 66 69 6c 65 22 3e 72 65 73 75 6c 74 5f 74 79 70 65 5f 70 72 6f 70 61 67 61 74 69 6f 6e 2e 7a 69 | file">result_type_propagation.zi |
| 81a40 | 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e | g</cite></figcaption><pre><code> |
| 81a60 | 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 |
| 81a80 | 3e 20 65 78 70 65 63 74 45 71 75 61 6c 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >.expectEqual.=.<span.class="tok |
| 81aa0 | 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 |
| 81ac0 | 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"</ |
| 81ae0 | 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 45 71 75 61 6c 3b 0a 3c 73 70 61 | span>).testing.expectEqual;.<spa |
| 81b00 | 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 |
| 81b20 | 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 65 73 75 6c 74 20 | an.class="tok-str">"result. |
| 81b40 | 74 79 70 65 20 70 72 6f 70 61 67 61 74 65 73 20 74 68 72 6f 75 67 68 20 73 74 72 75 63 74 20 69 | type.propagates.through.struct.i |
| 81b60 | 6e 69 74 69 61 6c 69 7a 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | nitializer"</span>.{.....<s |
| 81b80 | 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>. |
| 81ba0 | 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< |
| 81bc0 | 2f 73 70 61 6e 3e 20 7b 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | /span>.{.x:.<span.class="tok-typ |
| 81be0 | 65 22 3e 75 33 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 73 | e">u32</span>.};.....<span.class |
| 81c00 | 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 3a 20 3c 73 70 61 | ="tok-kw">const</span>.val:.<spa |
| 81c20 | 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 3d 20 | n.class="tok-type">u64</span>.=. |
| 81c40 | 3c 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 3c 2f 73 70 | <span.class="tok-number">123</sp |
| 81c60 | 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 6f | an>;.....<span.class="tok-kw">co |
| 81c80 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 3a 20 53 20 3d 20 2e 7b 20 2e 78 20 3d 20 3c 73 70 61 6e 20 | nst</span>.s:.S.=..{..x.=.<span. |
| 81ca0 | 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 70 | class="tok-builtin">@intCast</sp |
| 81cc0 | 61 6e 3e 28 76 61 6c 29 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>(val).};.....<span.class="tok |
| 81ce0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2e 7b 20 2e 78 20 3d 20 40 69 6e 74 43 61 73 74 28 76 61 | -comment">//..{..x.=.@intCast(va |
| 81d00 | 6c 29 20 7d 20 20 20 68 61 73 20 72 65 73 75 6c 74 20 74 79 70 65 20 60 53 60 20 64 75 65 20 74 | l).}...has.result.type.`S`.due.t |
| 81d20 | 6f 20 74 68 65 20 74 79 70 65 20 61 6e 6e 6f 74 61 74 69 6f 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | o.the.type.annotation</span>.... |
| 81d40 | 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 20 20 | .<span.class="tok-comment">//... |
| 81d60 | 20 20 20 20 20 20 40 69 6e 74 43 61 73 74 28 76 61 6c 29 20 20 20 20 20 68 61 73 20 72 65 73 75 | ......@intCast(val).....has.resu |
| 81d80 | 6c 74 20 74 79 70 65 20 60 75 33 32 60 20 64 75 65 20 74 6f 20 74 68 65 20 74 79 70 65 20 6f 66 | lt.type.`u32`.due.to.the.type.of |
| 81da0 | 20 74 68 65 20 66 69 65 6c 64 20 60 53 2e 78 60 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | .the.field.`S.x`</span>.....<spa |
| 81dc0 | 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 20 20 20 20 20 20 20 | n.class="tok-comment">//........ |
| 81de0 | 20 20 20 20 20 20 20 20 20 20 76 61 6c 20 20 20 20 20 20 68 61 73 20 6e 6f 20 72 65 73 75 6c 74 | ..........val......has.no.result |
| 81e00 | 20 74 79 70 65 2c 20 61 73 20 69 74 20 69 73 20 70 65 72 6d 69 74 74 65 64 20 74 6f 20 62 65 20 | .type,.as.it.is.permitted.to.be. |
| 81e20 | 61 6e 79 20 69 6e 74 65 67 65 72 20 74 79 70 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | any.integer.type</span>.....<spa |
| 81e40 | 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 |
| 81e60 | 63 74 45 71 75 61 6c 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 | ctEqual(<span.class="tok-builtin |
| 81e80 | 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 79 | ">@as</span>(<span.class="tok-ty |
| 81ea0 | 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 |
| 81ec0 | 2d 6e 75 6d 62 65 72 22 3e 31 32 33 3c 2f 73 70 61 6e 3e 29 2c 20 73 2e 78 29 3b 0a 7d 3c 2f 63 | -number">123</span>),.s.x);.}</c |
| 81ee0 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | ode></pre></figure><figure><figc |
| 81f00 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f | aption.class="shell-cap">Shell</ |
| 81f20 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 | figcaption><pre><samp>$.<kbd>zig |
| 81f40 | 20 74 65 73 74 20 72 65 73 75 6c 74 5f 74 79 70 65 5f 70 72 6f 70 61 67 61 74 69 6f 6e 2e 7a 69 | .test.result_type_propagation.zi |
| 81f60 | 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 72 65 73 75 6c 74 5f 74 79 70 65 5f 70 72 6f 70 61 67 61 74 | g</kbd>.1/1.result_type_propagat |
| 81f80 | 69 6f 6e 2e 74 65 73 74 2e 72 65 73 75 6c 74 20 74 79 70 65 20 70 72 6f 70 61 67 61 74 65 73 20 | ion.test.result.type.propagates. |
| 81fa0 | 74 68 72 6f 75 67 68 20 73 74 72 75 63 74 20 69 6e 69 74 69 61 6c 69 7a 65 72 2e 2e 2e 4f 4b 0a | through.struct.initializer...OK. |
| 81fc0 | 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 | All.1.tests.passed..</samp></pre |
| 81fe0 | 3e 3c 2f 66 69 67 75 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 | ></figure>........<p>.......This |
| 82000 | 20 72 65 73 75 6c 74 20 74 79 70 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 69 73 20 75 73 65 66 | .result.type.information.is.usef |
| 82020 | 75 6c 20 66 6f 72 20 74 68 65 20 61 66 6f 72 65 6d 65 6e 74 69 6f 6e 65 64 20 63 61 73 74 20 62 | ul.for.the.aforementioned.cast.b |
| 82040 | 75 69 6c 74 69 6e 73 2c 20 61 73 20 77 65 6c 6c 20 61 73 20 74 6f 20 61 76 6f 69 64 0a 20 20 20 | uiltins,.as.well.as.to.avoid.... |
| 82060 | 20 20 20 74 68 65 20 63 6f 6e 73 74 72 75 63 74 69 6f 6e 20 6f 66 20 70 72 65 2d 63 6f 65 72 63 | ...the.construction.of.pre-coerc |
| 82080 | 69 6f 6e 20 76 61 6c 75 65 73 2c 20 61 6e 64 20 74 6f 20 61 76 6f 69 64 20 74 68 65 20 6e 65 65 | ion.values,.and.to.avoid.the.nee |
| 820a0 | 64 20 66 6f 72 20 65 78 70 6c 69 63 69 74 20 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 73 20 69 6e | d.for.explicit.type.coercions.in |
| 820c0 | 20 73 6f 6d 65 0a 20 20 20 20 20 20 63 61 73 65 73 2e 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 | .some.......cases..The.following |
| 820e0 | 20 74 61 62 6c 65 20 64 65 74 61 69 6c 73 20 68 6f 77 20 73 6f 6d 65 20 63 6f 6d 6d 6f 6e 20 65 | .table.details.how.some.common.e |
| 82100 | 78 70 72 65 73 73 69 6f 6e 73 20 70 72 6f 70 61 67 61 74 65 20 72 65 73 75 6c 74 20 74 79 70 65 | xpressions.propagate.result.type |
| 82120 | 73 2c 20 77 68 65 72 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 61 6e | s,.where.......<code>x</code>.an |
| 82140 | 64 20 3c 63 6f 64 65 3e 79 3c 2f 63 6f 64 65 3e 20 61 72 65 20 61 72 62 69 74 72 61 72 79 20 73 | d.<code>y</code>.are.arbitrary.s |
| 82160 | 75 62 2d 65 78 70 72 65 73 73 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | ub-expressions........</p>...... |
| 82180 | 20 3c 64 69 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 | .<div.class="table-wrapper">.... |
| 821a0 | 20 20 20 3c 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 20 20 3c 74 68 65 61 64 3e 0a 20 20 20 20 20 | ...<table>.........<thead>...... |
| 821c0 | 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d | .....<tr>.............<th.scope= |
| 821e0 | 22 63 6f 6c 22 3e 45 78 70 72 65 73 73 69 6f 6e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 | "col">Expression</th>........... |
| 82200 | 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 50 61 72 65 6e 74 20 52 65 73 75 6c 74 20 | ..<th.scope="col">Parent.Result. |
| 82220 | 54 79 70 65 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d | Type</th>.............<th.scope= |
| 82240 | 22 63 6f 6c 22 3e 53 75 62 2d 65 78 70 72 65 73 73 69 6f 6e 20 52 65 73 75 6c 74 20 54 79 70 65 | "col">Sub-expression.Result.Type |
| 82260 | 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 2f | </th>...........</tr>.........</ |
| 82280 | 74 68 65 61 64 3e 0a 20 20 20 20 20 20 20 20 3c 74 62 6f 64 79 3e 0a 20 20 20 20 20 20 20 20 20 | thead>.........<tbody>.......... |
| 822a0 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 | .<tr>.............<th.scope="row |
| 822c0 | 22 3e 3c 63 6f 64 65 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 | "><code><span.class="tok-kw">con |
| 822e0 | 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 3a 20 54 20 3d 20 78 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e | st</span>.val:.T.=.x</code></th> |
| 82300 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 2d 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | .............<td>-</td>......... |
| 82320 | 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 3c 63 6f 64 | ....<td><code>x</code>.is.a.<cod |
| 82340 | 65 3e 54 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a | e>T</code></td>...........</tr>. |
| 82360 | 20 20 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 68 20 73 | ..........<tr>.............<th.s |
| 82380 | 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | cope="row"><code><span.class="to |
| 823a0 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 76 61 6c 3a 20 54 20 3d 20 78 3c 2f 63 6f 64 | k-kw">var</span>.val:.T.=.x</cod |
| 823c0 | 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 2d 3c 2f 74 64 3e 0a 20 | e></th>.............<td>-</td>.. |
| 823e0 | 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 | ...........<td><code>x</code>.is |
| 82400 | 20 61 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | .a.<code>T</code></td>.......... |
| 82420 | 20 3c 2f 74 72 3e 0a 20 20 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>........... |
| 82440 | 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 76 61 6c 20 3d 20 78 3c | ..<th.scope="row"><code>val.=.x< |
| 82460 | 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 2d 3c 2f 74 | /code></th>.............<td>-</t |
| 82480 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 | d>.............<td><code>x</code |
| 824a0 | 3e 20 69 73 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | >.is.a.<code><span.class="tok-bu |
| 824c0 | 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 29 3c 2f 63 6f 64 65 | iltin">@TypeOf</span>(val)</code |
| 824e0 | 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 20 | ></td>...........</tr>.......... |
| 82500 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 | .<tr>.............<th.scope="row |
| 82520 | 22 3e 3c 63 6f 64 65 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 | "><code><span.class="tok-builtin |
| 82540 | 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 54 2c 20 78 29 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 | ">@as</span>(T,.x)</code></th>.. |
| 82560 | 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 2d 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | ...........<td>-</td>........... |
| 82580 | 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 3c 63 6f 64 65 3e | ..<td><code>x</code>.is.a.<code> |
| 825a0 | 54 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 | T</code></td>...........</tr>... |
| 825c0 | 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 68 20 73 63 6f | ........<tr>.............<th.sco |
| 825e0 | 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 26 61 6d 70 3b 78 3c 2f 63 6f 64 65 3e 3c 2f 74 68 | pe="row"><code>&x</code></th |
| 82600 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 2a 54 3c 2f 63 6f 64 65 | >.............<td><code>*T</code |
| 82620 | 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f | ></td>.............<td><code>x</ |
| 82640 | 63 6f 64 65 3e 20 69 73 20 61 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 | code>.is.a.<code>T</code></td>.. |
| 82660 | 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 | .........</tr>...........<tr>... |
| 82680 | 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e | ..........<th.scope="row"><code> |
| 826a0 | 26 61 6d 70 3b 78 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | &x</code></th>.............< |
| 826c0 | 74 64 3e 3c 63 6f 64 65 3e 5b 5d 54 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | td><code>[]T</code></td>........ |
| 826e0 | 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 73 6f 6d 65 20 | .....<td><code>x</code>.is.some. |
| 82700 | 61 72 72 61 79 20 6f 66 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 | array.of.<code>T</code></td>.... |
| 82720 | 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 | .......</tr>...........<tr>..... |
| 82740 | 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 66 28 | ........<th.scope="row"><code>f( |
| 82760 | 78 29 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 2d | x)</code></th>.............<td>- |
| 82780 | 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 | </td>.............<td><code>x</c |
| 827a0 | 6f 64 65 3e 20 68 61 73 20 74 68 65 20 74 79 70 65 20 6f 66 20 74 68 65 20 66 69 72 73 74 20 70 | ode>.has.the.type.of.the.first.p |
| 827c0 | 61 72 61 6d 65 74 65 72 20 6f 66 20 3c 63 6f 64 65 3e 66 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a | arameter.of.<code>f</code></td>. |
| 827e0 | 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 | ..........</tr>...........<tr>.. |
| 82800 | 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 | ...........<th.scope="row"><code |
| 82820 | 3e 2e 7b 78 7d 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 | >.{x}</code></th>.............<t |
| 82840 | 64 3e 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | d><code>T</code></td>........... |
| 82860 | 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 3c 63 6f 64 65 3e | ..<td><code>x</code>.is.a.<code> |
| 82880 | 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 46 69 65 6c 64 | <span.class="tok-builtin">@Field |
| 828a0 | 54 79 70 65 3c 2f 73 70 61 6e 3e 28 54 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | Type</span>(T,.<span.class="tok- |
| 828c0 | 73 74 72 22 3e 26 71 75 6f 74 3b 30 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 | str">"0"</span>)</code |
| 828e0 | 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 20 | ></td>...........</tr>.......... |
| 82900 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 | .<tr>.............<th.scope="row |
| 82920 | 22 3e 3c 63 6f 64 65 3e 2e 7b 20 2e 61 20 3d 20 78 20 7d 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a | "><code>.{..a.=.x.}</code></th>. |
| 82940 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 3c 2f | ............<td><code>T</code></ |
| 82960 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 | td>.............<td><code>x</cod |
| 82980 | 65 3e 20 69 73 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | e>.is.a.<code><span.class="tok-b |
| 829a0 | 75 69 6c 74 69 6e 22 3e 40 46 69 65 6c 64 54 79 70 65 3c 2f 73 70 61 6e 3e 28 54 2c 20 3c 73 70 | uiltin">@FieldType</span>(T,.<sp |
| 829c0 | 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 75 6f 74 3b | an.class="tok-str">"a" |
| 829e0 | 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | </span>)</code></td>...........< |
| 82a00 | 2f 74 72 3e 0a 20 20 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 | /tr>...........<tr>............. |
| 82a20 | 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 54 7b 78 7d 3c 2f 63 6f 64 65 | <th.scope="row"><code>T{x}</code |
| 82a40 | 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 2d 3c 2f 74 64 3e 0a 20 20 | ></th>.............<td>-</td>... |
| 82a60 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 | ..........<td><code>x</code>.is. |
| 82a80 | 61 20 3c 63 6f 64 65 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 | a.<code><span.class="tok-builtin |
| 82aa0 | 22 3e 40 46 69 65 6c 64 54 79 70 65 3c 2f 73 70 61 6e 3e 28 54 2c 20 3c 73 70 61 6e 20 63 6c 61 | ">@FieldType</span>(T,.<span.cla |
| 82ac0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 30 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | ss="tok-str">"0"</span |
| 82ae0 | 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 | >)</code></td>...........</tr>.. |
| 82b00 | 20 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 68 20 73 63 | .........<tr>.............<th.sc |
| 82b20 | 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 54 7b 20 2e 61 20 3d 20 78 20 7d 3c 2f 63 6f 64 | ope="row"><code>T{..a.=.x.}</cod |
| 82b40 | 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 2d 3c 2f 74 64 3e 0a 20 | e></th>.............<td>-</td>.. |
| 82b60 | 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 | ...........<td><code>x</code>.is |
| 82b80 | 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | .a.<code><span.class="tok-builti |
| 82ba0 | 6e 22 3e 40 46 69 65 6c 64 54 79 70 65 3c 2f 73 70 61 6e 3e 28 54 2c 20 3c 73 70 61 6e 20 63 6c | n">@FieldType</span>(T,.<span.cl |
| 82bc0 | 61 73 73 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 | ass="tok-str">"a"</spa |
| 82be0 | 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a | n>)</code></td>...........</tr>. |
| 82c00 | 20 20 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 68 20 73 | ..........<tr>.............<th.s |
| 82c20 | 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | cope="row"><code><span.class="to |
| 82c40 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 3c 2f 73 70 61 6e 3e 28 78 29 3c 2f 63 6f 64 65 | k-builtin">@Type</span>(x)</code |
| 82c60 | 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 2d 3c 2f 74 64 3e 0a 20 20 | ></th>.............<td>-</td>... |
| 82c80 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 | ..........<td><code>x</code>.is. |
| 82ca0 | 61 20 3c 63 6f 64 65 3e 73 74 64 2e 62 75 69 6c 74 69 6e 2e 54 79 70 65 3c 2f 63 6f 64 65 3e 3c | a.<code>std.builtin.Type</code>< |
| 82cc0 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | /td>...........</tr>...........< |
| 82ce0 | 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e | tr>.............<th.scope="row"> |
| 82d00 | 3c 63 6f 64 65 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 | <code><span.class="tok-builtin"> |
| 82d20 | 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 78 29 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a | @typeInfo</span>(x)</code></th>. |
| 82d40 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 2d 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | ............<td>-</td>.......... |
| 82d60 | 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 3c 63 6f 64 65 | ...<td><code>x</code>.is.a.<code |
| 82d80 | 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 65 3c 2f 73 70 | ><span.class="tok-type">type</sp |
| 82da0 | 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 2f 74 72 3e 0a | an></code></td>...........</tr>. |
| 82dc0 | 20 20 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 68 20 73 | ..........<tr>.............<th.s |
| 82de0 | 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 78 20 26 6c 74 3b 26 6c 74 3b 20 79 3c 2f 63 | cope="row"><code>x.<<.y</c |
| 82e00 | 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 2d 3c 2f 74 64 3e | ode></th>.............<td>-</td> |
| 82e20 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 79 3c 2f 63 6f 64 65 3e 20 | .............<td><code>y</code>. |
| 82e40 | 69 73 20 61 20 3c 63 6f 64 65 3e 73 74 64 2e 6d 61 74 68 2e 4c 6f 67 32 49 6e 74 43 65 69 6c 28 | is.a.<code>std.math.Log2IntCeil( |
| 82e60 | 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 |
| 82e80 | 66 3c 2f 73 70 61 6e 3e 28 78 29 29 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | f</span>(x))</code></td>........ |
| 82ea0 | 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 62 6f 64 79 3e 0a 20 20 20 20 20 20 | ...</tr>.........</tbody>....... |
| 82ec0 | 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 20 20 0a 20 20 20 | </table>.......</div>........... |
| 82ee0 | 20 20 20 3c 68 33 20 69 64 3d 22 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 73 22 3e 3c 61 20 | ...<h3.id="Result-Locations"><a. |
| 82f00 | 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 73 22 3e 52 65 73 | href="#toc-Result-Locations">Res |
| 82f20 | 75 6c 74 20 4c 6f 63 61 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | ult.Locations</a>.<a.class="hdr" |
| 82f40 | 20 68 72 65 66 3d 22 23 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e | .href="#Result-Locations">..</a> |
| 82f60 | 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 61 64 64 69 74 69 | </h3>........<p>.......In.additi |
| 82f80 | 6f 6e 20 74 6f 20 72 65 73 75 6c 74 20 74 79 70 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2c 20 65 | on.to.result.type.information,.e |
| 82fa0 | 76 65 72 79 20 65 78 70 72 65 73 73 69 6f 6e 20 6d 61 79 20 62 65 20 6f 70 74 69 6f 6e 61 6c 6c | very.expression.may.be.optionall |
| 82fc0 | 79 20 61 73 73 69 67 6e 65 64 20 61 20 72 65 73 75 6c 74 0a 20 20 20 20 20 20 6c 6f 63 61 74 69 | y.assigned.a.result.......locati |
| 82fe0 | 6f 6e 3a 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 77 68 69 63 68 20 74 68 65 20 76 61 6c 75 65 | on:.a.pointer.to.which.the.value |
| 83000 | 20 6d 75 73 74 20 62 65 20 64 69 72 65 63 74 6c 79 20 77 72 69 74 74 65 6e 2e 20 54 68 69 73 20 | .must.be.directly.written..This. |
| 83020 | 73 79 73 74 65 6d 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 70 72 65 76 65 6e 74 0a 20 20 | system.can.be.used.to.prevent... |
| 83040 | 20 20 20 20 69 6e 74 65 72 6d 65 64 69 61 74 65 20 63 6f 70 69 65 73 20 77 68 65 6e 20 69 6e 69 | ....intermediate.copies.when.ini |
| 83060 | 74 69 61 6c 69 7a 69 6e 67 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 73 2c 20 77 68 69 63 68 | tializing.data.structures,.which |
| 83080 | 20 63 61 6e 20 62 65 20 69 6d 70 6f 72 74 61 6e 74 20 66 6f 72 20 74 79 70 65 73 20 77 68 69 63 | .can.be.important.for.types.whic |
| 830a0 | 68 20 6d 75 73 74 0a 20 20 20 20 20 20 68 61 76 65 20 61 20 66 69 78 65 64 20 6d 65 6d 6f 72 79 | h.must.......have.a.fixed.memory |
| 830c0 | 20 61 64 64 72 65 73 73 20 28 22 70 69 6e 6e 65 64 22 20 74 79 70 65 73 29 2e 0a 20 20 20 20 20 | .address.("pinned".types)....... |
| 830e0 | 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 20 63 6f 6d 70 69 | .</p>.......<p>.......When.compi |
| 83100 | 6c 69 6e 67 20 74 68 65 20 73 69 6d 70 6c 65 20 61 73 73 69 67 6e 6d 65 6e 74 20 65 78 70 72 65 | ling.the.simple.assignment.expre |
| 83120 | 73 73 69 6f 6e 20 3c 63 6f 64 65 3e 78 20 3d 20 65 3c 2f 63 6f 64 65 3e 2c 20 6d 61 6e 79 20 6c | ssion.<code>x.=.e</code>,.many.l |
| 83140 | 61 6e 67 75 61 67 65 73 20 77 6f 75 6c 64 0a 20 20 20 20 20 20 63 72 65 61 74 65 20 74 68 65 20 | anguages.would.......create.the. |
| 83160 | 74 65 6d 70 6f 72 61 72 79 20 76 61 6c 75 65 20 3c 63 6f 64 65 3e 65 3c 2f 63 6f 64 65 3e 20 6f | temporary.value.<code>e</code>.o |
| 83180 | 6e 20 74 68 65 20 73 74 61 63 6b 2c 20 61 6e 64 20 74 68 65 6e 20 61 73 73 69 67 6e 20 69 74 20 | n.the.stack,.and.then.assign.it. |
| 831a0 | 74 6f 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 2c 20 70 6f 74 65 6e 74 69 | to.......<code>x</code>,.potenti |
| 831c0 | 61 6c 6c 79 20 70 65 72 66 6f 72 6d 69 6e 67 20 61 20 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 | ally.performing.a.type.coercion. |
| 831e0 | 69 6e 20 74 68 65 20 70 72 6f 63 65 73 73 2e 20 5a 69 67 20 61 70 70 72 6f 61 63 68 65 73 20 74 | in.the.process..Zig.approaches.t |
| 83200 | 68 69 73 0a 20 20 20 20 20 20 64 69 66 66 65 72 65 6e 74 6c 79 2e 20 54 68 65 20 65 78 70 72 65 | his.......differently..The.expre |
| 83220 | 73 73 69 6f 6e 20 3c 63 6f 64 65 3e 65 3c 2f 63 6f 64 65 3e 20 69 73 20 67 69 76 65 6e 20 61 20 | ssion.<code>e</code>.is.given.a. |
| 83240 | 72 65 73 75 6c 74 20 74 79 70 65 20 6d 61 74 63 68 69 6e 67 20 74 68 65 20 74 79 70 65 20 6f 66 | result.type.matching.the.type.of |
| 83260 | 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 61 20 72 65 73 | .......<code>x</code>,.and.a.res |
| 83280 | 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 20 6f 66 20 3c 63 6f 64 65 3e 26 61 6d 70 3b 78 3c 2f 63 6f | ult.location.of.<code>&x</co |
| 832a0 | 64 65 3e 2e 20 46 6f 72 20 6d 61 6e 79 20 73 79 6e 74 61 63 74 69 63 0a 20 20 20 20 20 20 66 6f | de>..For.many.syntactic.......fo |
| 832c0 | 72 6d 73 20 6f 66 20 3c 63 6f 64 65 3e 65 3c 2f 63 6f 64 65 3e 2c 20 74 68 69 73 20 68 61 73 20 | rms.of.<code>e</code>,.this.has. |
| 832e0 | 6e 6f 20 70 72 61 63 74 69 63 61 6c 20 69 6d 70 61 63 74 2e 20 48 6f 77 65 76 65 72 2c 20 69 74 | no.practical.impact..However,.it |
| 83300 | 20 63 61 6e 20 68 61 76 65 20 69 6d 70 6f 72 74 61 6e 74 0a 20 20 20 20 20 20 73 65 6d 61 6e 74 | .can.have.important.......semant |
| 83320 | 69 63 20 65 66 66 65 63 74 73 20 77 68 65 6e 20 77 6f 72 6b 69 6e 67 20 77 69 74 68 20 6d 6f 72 | ic.effects.when.working.with.mor |
| 83340 | 65 20 63 6f 6d 70 6c 65 78 20 73 79 6e 74 61 78 20 66 6f 72 6d 73 2e 0a 20 20 20 20 20 20 3c 2f | e.complex.syntax.forms........</ |
| 83360 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 69 6e 73 74 61 6e 63 65 2c | p>.......<p>.......For.instance, |
| 83380 | 20 69 66 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 3c 63 6f 64 65 3e 2e 7b 20 2e 61 20 3d | .if.the.expression.<code>.{..a.= |
| 833a0 | 20 78 2c 20 2e 62 20 3d 20 79 20 7d 3c 2f 63 6f 64 65 3e 20 68 61 73 20 61 20 72 65 73 75 6c 74 | .x,..b.=.y.}</code>.has.a.result |
| 833c0 | 20 6c 6f 63 61 74 69 6f 6e 20 6f 66 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 70 74 72 3c 2f 63 6f | .location.of.......<code>ptr</co |
| 833e0 | 64 65 3e 2c 20 74 68 65 6e 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 67 69 76 65 | de>,.then.<code>x</code>.is.give |
| 83400 | 6e 20 61 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 20 6f 66 0a 20 20 20 20 20 20 3c 63 6f | n.a.result.location.of.......<co |
| 83420 | 64 65 3e 26 61 6d 70 3b 70 74 72 2e 61 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 3c 63 6f 64 65 3e | de>&ptr.a</code>,.and.<code> |
| 83440 | 79 3c 2f 63 6f 64 65 3e 20 61 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 20 6f 66 20 3c 63 | y</code>.a.result.location.of.<c |
| 83460 | 6f 64 65 3e 26 61 6d 70 3b 70 74 72 2e 62 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 57 69 74 | ode>&ptr.b</code>........Wit |
| 83480 | 68 6f 75 74 20 74 68 69 73 20 73 79 73 74 65 6d 2c 20 74 68 69 73 20 65 78 70 72 65 73 73 69 6f | hout.this.system,.this.expressio |
| 834a0 | 6e 20 77 6f 75 6c 64 20 63 6f 6e 73 74 72 75 63 74 20 61 20 74 65 6d 70 6f 72 61 72 79 20 73 74 | n.would.construct.a.temporary.st |
| 834c0 | 72 75 63 74 20 76 61 6c 75 65 20 65 6e 74 69 72 65 6c 79 20 6f 6e 20 74 68 65 20 73 74 61 63 6b | ruct.value.entirely.on.the.stack |
| 834e0 | 2c 20 61 6e 64 0a 20 20 20 20 20 20 6f 6e 6c 79 20 74 68 65 6e 20 63 6f 70 79 20 69 74 20 74 6f | ,.and.......only.then.copy.it.to |
| 83500 | 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 61 64 64 72 65 73 73 2e 20 49 6e 20 65 73 73 | .the.destination.address..In.ess |
| 83520 | 65 6e 63 65 2c 20 5a 69 67 20 64 65 73 75 67 61 72 73 20 74 68 65 20 61 73 73 69 67 6e 6d 65 6e | ence,.Zig.desugars.the.assignmen |
| 83540 | 74 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 66 6f 6f 20 3d 20 2e 7b 20 2e 61 20 3d 20 78 2c 20 2e | t.......<code>foo.=..{..a.=.x,.. |
| 83560 | 62 20 3d 20 79 20 7d 3c 2f 63 6f 64 65 3e 20 74 6f 20 74 68 65 20 74 77 6f 20 73 74 61 74 65 6d | b.=.y.}</code>.to.the.two.statem |
| 83580 | 65 6e 74 73 20 3c 63 6f 64 65 3e 66 6f 6f 2e 61 20 3d 20 78 3b 20 66 6f 6f 2e 62 20 3d 20 79 3b | ents.<code>foo.a.=.x;.foo.b.=.y; |
| 835a0 | 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>... |
| 835c0 | 20 20 20 20 54 68 69 73 20 63 61 6e 20 73 6f 6d 65 74 69 6d 65 73 20 62 65 20 69 6d 70 6f 72 74 | ....This.can.sometimes.be.import |
| 835e0 | 61 6e 74 20 77 68 65 6e 20 61 73 73 69 67 6e 69 6e 67 20 61 6e 20 61 67 67 72 65 67 61 74 65 20 | ant.when.assigning.an.aggregate. |
| 83600 | 76 61 6c 75 65 20 77 68 65 72 65 20 74 68 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 0a 20 | value.where.the.initialization.. |
| 83620 | 20 20 20 20 20 65 78 70 72 65 73 73 69 6f 6e 20 64 65 70 65 6e 64 73 20 6f 6e 20 74 68 65 20 70 | .....expression.depends.on.the.p |
| 83640 | 72 65 76 69 6f 75 73 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 61 67 67 72 65 67 61 74 65 2e 20 | revious.value.of.the.aggregate.. |
| 83660 | 54 68 65 20 65 61 73 69 65 73 74 20 77 61 79 20 74 6f 20 64 65 6d 6f 6e 73 74 72 61 74 65 20 74 | The.easiest.way.to.demonstrate.t |
| 83680 | 68 69 73 20 69 73 20 62 79 0a 20 20 20 20 20 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 73 77 | his.is.by.......attempting.to.sw |
| 836a0 | 61 70 20 66 69 65 6c 64 73 20 6f 66 20 61 20 73 74 72 75 63 74 20 6f 72 20 61 72 72 61 79 20 2d | ap.fields.of.a.struct.or.array.- |
| 836c0 | 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 6c 6f 67 69 63 20 6c 6f 6f 6b 73 20 73 6f 75 6e 64 | .the.following.logic.looks.sound |
| 836e0 | 2c 20 62 75 74 20 69 6e 20 66 61 63 74 20 69 73 20 6e 6f 74 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | ,.but.in.fact.is.not:.......</p> |
| 83700 | 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | .......<figure><figcaption.class |
| 83720 | 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 72 65 | ="zig-cap"><cite.class="file">re |
| 83740 | 73 75 6c 74 5f 6c 6f 63 61 74 69 6f 6e 5f 69 6e 74 65 72 66 65 72 69 6e 67 5f 77 69 74 68 5f 73 | sult_location_interfering_with_s |
| 83760 | 77 61 70 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | wap.zig</cite></figcaption><pre> |
| 83780 | 3c 63 6f 64 65 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 | <code><span.class="tok-kw">const |
| 837a0 | 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 |
| 837c0 | 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. |
| 837e0 | 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"< |
| 83800 | 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 6c | /span>).testing.expect;.<span.cl |
| 83820 | 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 |
| 83840 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 74 74 65 6d 70 74 20 74 6f 20 | lass="tok-str">"attempt.to. |
| 83860 | 73 77 61 70 20 61 72 72 61 79 20 65 6c 65 6d 65 6e 74 73 20 77 69 74 68 20 61 72 72 61 79 20 69 | swap.array.elements.with.array.i |
| 83880 | 6e 69 74 69 61 6c 69 7a 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | nitializer"</span>.{.....<s |
| 838a0 | 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 72 | pan.class="tok-kw">var</span>.ar |
| 838c0 | 72 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 32 3c 2f | r:.[<span.class="tok-number">2</ |
| 838e0 | 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 33 32 | span>]<span.class="tok-type">u32 |
| 83900 | 3c 2f 73 70 61 6e 3e 20 3d 20 2e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | </span>.=..{.<span.class="tok-nu |
| 83920 | 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 22 74 6f 6b | mber">1</span>,.<span.class="tok |
| 83940 | 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 61 72 72 20 3d 20 2e | -number">2</span>.};.....arr.=.. |
| 83960 | 7b 20 61 72 72 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 | {.arr[<span.class="tok-number">1 |
| 83980 | 3c 2f 73 70 61 6e 3e 5d 2c 20 61 72 72 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | </span>],.arr[<span.class="tok-n |
| 839a0 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | umber">0</span>].};.....<span.cl |
| 839c0 | 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 70 72 65 76 69 6f 75 | ass="tok-comment">//.The.previou |
| 839e0 | 73 20 6c 69 6e 65 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c | s.line.is.equivalent.to.the.foll |
| 83a00 | 6f 77 69 6e 67 20 74 77 6f 20 6c 69 6e 65 73 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | owing.two.lines:</span>.....<spa |
| 83a20 | 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 20 20 61 72 72 5b 30 | n.class="tok-comment">//...arr[0 |
| 83a40 | 5d 20 3d 20 61 72 72 5b 31 5d 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ].=.arr[1];</span>.....<span.cla |
| 83a60 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 20 20 61 72 72 5b 31 5d 20 3d 20 61 | ss="tok-comment">//...arr[1].=.a |
| 83a80 | 72 72 5b 30 5d 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 | rr[0];</span>.....<span.class="t |
| 83aa0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 6f 20 74 68 69 73 20 66 61 69 6c 73 21 3c 2f 73 | ok-comment">//.So.this.fails!</s |
| 83ac0 | 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 |
| 83ae0 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 72 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | y</span>.expect(arr[<span.class= |
| 83b00 | 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. |
| 83b20 | 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 20 3c 73 | class="tok-number">2</span>);.<s |
| 83b40 | 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 73 75 63 63 65 | pan.class="tok-comment">//.succe |
| 83b60 | 65 64 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 | eds</span>.....<span.class="tok- |
| 83b80 | 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 5b 3c 73 70 61 6e 20 | kw">try</span>.expect(arr[<span. |
| 83ba0 | 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 20 | class="tok-number">1</span>].==. |
| 83bc0 | 3c 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 |
| 83be0 | 3e 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 | >);.<span.class="tok-comment">// |
| 83c00 | 20 66 61 69 6c 73 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | .fails</span>.}</code></pre></fi |
| 83c20 | 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 | gure><figure><figcaption.class=" |
| 83c40 | 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 | shell-cap">Shell</figcaption><pr |
| 83c60 | 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 72 65 73 75 6c 74 5f 6c | e><samp>$.<kbd>zig.test.result_l |
| 83c80 | 6f 63 61 74 69 6f 6e 5f 69 6e 74 65 72 66 65 72 69 6e 67 5f 77 69 74 68 5f 73 77 61 70 2e 7a 69 | ocation_interfering_with_swap.zi |
| 83ca0 | 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 72 65 73 75 6c 74 5f 6c 6f 63 61 74 69 6f 6e 5f 69 6e 74 65 | g</kbd>.1/1.result_location_inte |
| 83cc0 | 72 66 65 72 69 6e 67 5f 77 69 74 68 5f 73 77 61 70 2e 74 65 73 74 2e 61 74 74 65 6d 70 74 20 74 | rfering_with_swap.test.attempt.t |
| 83ce0 | 6f 20 73 77 61 70 20 61 72 72 61 79 20 65 6c 65 6d 65 6e 74 73 20 77 69 74 68 20 61 72 72 61 79 | o.swap.array.elements.with.array |
| 83d00 | 20 69 6e 69 74 69 61 6c 69 7a 65 72 2e 2e 2e 46 41 49 4c 20 28 54 65 73 74 55 6e 65 78 70 65 63 | .initializer...FAIL.(TestUnexpec |
| 83d20 | 74 65 64 52 65 73 75 6c 74 29 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e | tedResult).<span.class="sgr-1m"> |
| 83d40 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 74 65 73 74 69 | /home/andy/dev/zig/lib/std/testi |
| 83d60 | 6e 67 2e 7a 69 67 3a 35 38 30 3a 31 34 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | ng.zig:580:14</span>:.<span.clas |
| 83d80 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 38 38 65 66 20 69 6e 20 65 78 70 65 63 74 20 28 | s="sgr-2m">0x10488ef.in.expect.( |
| 83da0 | 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 20 72 65 74 75 72 6e | test)</span>.....if.(!ok).return |
| 83dc0 | 20 65 72 72 6f 72 2e 54 65 73 74 55 6e 65 78 70 65 63 74 65 64 52 65 73 75 6c 74 3b 0a 20 20 20 | .error.TestUnexpectedResult;.... |
| 83de0 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e | ..........<span.class="sgr-32m"> |
| 83e00 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 | ^</span>.<span.class="sgr-1m">/h |
| 83e20 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 65 73 | ome/andy/dev/zig/doc/langref/res |
| 83e40 | 75 6c 74 5f 6c 6f 63 61 74 69 6f 6e 5f 69 6e 74 65 72 66 65 72 69 6e 67 5f 77 69 74 68 5f 73 77 | ult_location_interfering_with_sw |
| 83e60 | 61 70 2e 7a 69 67 3a 31 30 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ap.zig:10:5</span>:.<span.class= |
| 83e80 | 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 38 39 64 35 20 69 6e 20 74 65 73 74 2e 61 74 74 65 6d | "sgr-2m">0x10489d5.in.test.attem |
| 83ea0 | 70 74 20 74 6f 20 73 77 61 70 20 61 72 72 61 79 20 65 6c 65 6d 65 6e 74 73 20 77 69 74 68 20 61 | pt.to.swap.array.elements.with.a |
| 83ec0 | 72 72 61 79 20 69 6e 69 74 69 61 6c 69 7a 65 72 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 | rray.initializer.(test)</span>.. |
| 83ee0 | 20 20 20 74 72 79 20 65 78 70 65 63 74 28 61 72 72 5b 31 5d 20 3d 3d 20 31 29 3b 20 2f 2f 20 66 | ...try.expect(arr[1].==.1);.//.f |
| 83f00 | 61 69 6c 73 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e | ails.....<span.class="sgr-32m">^ |
| 83f20 | 3c 2f 73 70 61 6e 3e 0a 30 20 70 61 73 73 65 64 3b 20 30 20 73 6b 69 70 70 65 64 3b 20 31 20 66 | </span>.0.passed;.0.skipped;.1.f |
| 83f40 | 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 73 74 | ailed..error:.the.following.test |
| 83f60 | 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 20 31 | .command.failed.with.exit.code.1 |
| 83f80 | 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f | :./home/andy/dev/zig/.zig-cache/ |
| 83fa0 | 6f 2f 61 64 30 35 32 35 35 31 30 37 39 37 38 32 64 39 39 39 37 37 37 30 39 32 35 61 38 36 61 37 | o/ad052551079782d9997770925a86a7 |
| 83fc0 | 34 35 2f 74 65 73 74 20 2d 2d 73 65 65 64 3d 30 78 37 62 65 64 66 34 32 0a 3c 2f 73 61 6d 70 3e | 45/test.--seed=0x7bedf42.</samp> |
| 83fe0 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | </pre></figure>........<p>...... |
| 84000 | 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 20 64 65 74 61 69 6c 73 20 68 6f 77 | .The.following.table.details.how |
| 84020 | 20 73 6f 6d 65 20 63 6f 6d 6d 6f 6e 20 65 78 70 72 65 73 73 69 6f 6e 73 20 70 72 6f 70 61 67 61 | .some.common.expressions.propaga |
| 84040 | 74 65 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 73 2c 20 77 68 65 72 65 0a 20 20 20 20 20 | te.result.locations,.where...... |
| 84060 | 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 79 3c 2f 63 6f 64 | .<code>x</code>.and.<code>y</cod |
| 84080 | 65 3e 20 61 72 65 20 61 72 62 69 74 72 61 72 79 20 73 75 62 2d 65 78 70 72 65 73 73 69 6f 6e 73 | e>.are.arbitrary.sub-expressions |
| 840a0 | 2e 20 4e 6f 74 65 20 74 68 61 74 0a 20 20 20 20 20 20 73 6f 6d 65 20 65 78 70 72 65 73 73 69 6f | ..Note.that.......some.expressio |
| 840c0 | 6e 73 20 63 61 6e 6e 6f 74 20 70 72 6f 76 69 64 65 20 6d 65 61 6e 69 6e 67 66 75 6c 20 72 65 73 | ns.cannot.provide.meaningful.res |
| 840e0 | 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 73 20 74 6f 20 73 75 62 2d 65 78 70 72 65 73 73 69 6f 6e 73 | ult.locations.to.sub-expressions |
| 84100 | 2c 20 65 76 65 6e 20 69 66 20 74 68 65 79 0a 20 20 20 20 20 20 74 68 65 6d 73 65 6c 76 65 73 20 | ,.even.if.they.......themselves. |
| 84120 | 68 61 76 65 20 61 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f | have.a.result.location........</ |
| 84140 | 70 3e 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 77 72 61 70 70 | p>.......<div.class="table-wrapp |
| 84160 | 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 3c 74 68 65 61 | er">.......<table>.........<thea |
| 84180 | 64 3e 0a 20 20 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 | d>...........<tr>.............<t |
| 841a0 | 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 45 78 70 72 65 73 73 69 6f 6e 3c 2f 74 68 3e 0a 20 20 | h.scope="col">Expression</th>... |
| 841c0 | 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 52 65 73 75 6c 74 | ..........<th.scope="col">Result |
| 841e0 | 20 4c 6f 63 61 74 69 6f 6e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 | .Location</th>.............<th.s |
| 84200 | 63 6f 70 65 3d 22 63 6f 6c 22 3e 53 75 62 2d 65 78 70 72 65 73 73 69 6f 6e 20 52 65 73 75 6c 74 | cope="col">Sub-expression.Result |
| 84220 | 20 4c 6f 63 61 74 69 6f 6e 73 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a | .Locations</th>...........</tr>. |
| 84240 | 20 20 20 20 20 20 20 20 3c 2f 74 68 65 61 64 3e 0a 20 20 20 20 20 20 20 20 3c 74 62 6f 64 79 3e | ........</thead>.........<tbody> |
| 84260 | 0a 20 20 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 68 20 | ...........<tr>.............<th. |
| 84280 | 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | scope="row"><code><span.class="t |
| 842a0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 3a 20 54 20 3d 20 78 3c 2f | ok-kw">const</span>.val:.T.=.x</ |
| 842c0 | 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 2d 3c 2f 74 64 | code></th>.............<td>-</td |
| 842e0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e | >.............<td><code>x</code> |
| 84300 | 20 68 61 73 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 20 3c 63 6f 64 65 3e 26 61 6d 70 3b | .has.result.location.<code>& |
| 84320 | 76 61 6c 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a | val</code></td>...........</tr>. |
| 84340 | 20 20 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 68 20 73 | ..........<tr>.............<th.s |
| 84360 | 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | cope="row"><code><span.class="to |
| 84380 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 76 61 6c 3a 20 54 20 3d 20 78 3c 2f 63 6f 64 | k-kw">var</span>.val:.T.=.x</cod |
| 843a0 | 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 2d 3c 2f 74 64 3e 0a 20 | e></th>.............<td>-</td>.. |
| 843c0 | 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 68 61 | ...........<td><code>x</code>.ha |
| 843e0 | 73 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 20 3c 63 6f 64 65 3e 26 61 6d 70 3b 76 61 6c | s.result.location.<code>&val |
| 84400 | 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 | </code></td>...........</tr>.... |
| 84420 | 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 68 20 73 63 6f 70 | .......<tr>.............<th.scop |
| 84440 | 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 76 61 6c 20 3d 20 78 3c 2f 63 6f 64 65 3e 3c 2f 74 68 | e="row"><code>val.=.x</code></th |
| 84460 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 2d 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | >.............<td>-</td>........ |
| 84480 | 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 68 61 73 20 72 65 73 75 | .....<td><code>x</code>.has.resu |
| 844a0 | 6c 74 20 6c 6f 63 61 74 69 6f 6e 20 3c 63 6f 64 65 3e 26 61 6d 70 3b 76 61 6c 3c 2f 63 6f 64 65 | lt.location.<code>&val</code |
| 844c0 | 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 20 | ></td>...........</tr>.......... |
| 844e0 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 | .<tr>.............<th.scope="row |
| 84500 | 22 3e 3c 63 6f 64 65 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 | "><code><span.class="tok-builtin |
| 84520 | 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 54 2c 20 78 29 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 | ">@as</span>(T,.x)</code></th>.. |
| 84540 | 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 70 74 72 3c 2f 63 6f 64 65 3e 3c | ...........<td><code>ptr</code>< |
| 84560 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f | /td>.............<td><code>x</co |
| 84580 | 64 65 3e 20 68 61 73 20 6e 6f 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 3c 2f 74 64 3e 0a | de>.has.no.result.location</td>. |
| 845a0 | 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 | ..........</tr>...........<tr>.. |
| 845c0 | 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 | ...........<th.scope="row"><code |
| 845e0 | 3e 26 61 6d 70 3b 78 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | >&x</code></th>............. |
| 84600 | 3c 74 64 3e 3c 63 6f 64 65 3e 70 74 72 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | <td><code>ptr</code></td>....... |
| 84620 | 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 68 61 73 20 6e 6f 20 | ......<td><code>x</code>.has.no. |
| 84640 | 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | result.location</td>...........< |
| 84660 | 2f 74 72 3e 0a 20 20 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 | /tr>...........<tr>............. |
| 84680 | 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 66 28 78 29 3c 2f 63 6f 64 65 | <th.scope="row"><code>f(x)</code |
| 846a0 | 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 70 74 72 | ></th>.............<td><code>ptr |
| 846c0 | 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f | </code></td>.............<td><co |
| 846e0 | 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 68 61 73 20 6e 6f 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 | de>x</code>.has.no.result.locati |
| 84700 | 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 | on</td>...........</tr>......... |
| 84720 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f | ..<tr>.............<th.scope="ro |
| 84740 | 77 22 3e 3c 63 6f 64 65 3e 2e 7b 78 7d 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 | w"><code>.{x}</code></th>....... |
| 84760 | 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 70 74 72 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a | ......<td><code>ptr</code></td>. |
| 84780 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 68 | ............<td><code>x</code>.h |
| 847a0 | 61 73 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 20 3c 63 6f 64 65 3e 26 61 6d 70 3b 70 74 | as.result.location.<code>&pt |
| 847c0 | 72 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 | r[<span.class="tok-number">0</sp |
| 847e0 | 61 6e 3e 5d 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e | an>]</code></td>...........</tr> |
| 84800 | 0a 20 20 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 68 20 | ...........<tr>.............<th. |
| 84820 | 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 2e 7b 20 2e 61 20 3d 20 78 20 7d 3c 2f 63 | scope="row"><code>.{..a.=.x.}</c |
| 84840 | 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e | ode></th>.............<td><code> |
| 84860 | 70 74 72 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | ptr</code></td>.............<td> |
| 84880 | 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 68 61 73 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 | <code>x</code>.has.result.locati |
| 848a0 | 6f 6e 20 3c 63 6f 64 65 3e 26 61 6d 70 3b 70 74 72 2e 61 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a | on.<code>&ptr.a</code></td>. |
| 848c0 | 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 | ..........</tr>...........<tr>.. |
| 848e0 | 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 | ...........<th.scope="row"><code |
| 84900 | 3e 54 7b 78 7d 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 | >T{x}</code></th>.............<t |
| 84920 | 64 3e 3c 63 6f 64 65 3e 70 74 72 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | d><code>ptr</code></td>......... |
| 84940 | 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 68 61 73 20 6e 6f 20 72 65 | ....<td><code>x</code>.has.no.re |
| 84960 | 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 20 28 74 79 70 65 64 20 69 6e 69 74 69 61 6c 69 7a 65 72 | sult.location.(typed.initializer |
| 84980 | 73 20 64 6f 20 6e 6f 74 20 70 72 6f 70 61 67 61 74 65 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 | s.do.not.propagate.result.locati |
| 849a0 | 6f 6e 73 29 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 | ons)</td>...........</tr>....... |
| 849c0 | 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 | ....<tr>.............<th.scope=" |
| 849e0 | 72 6f 77 22 3e 3c 63 6f 64 65 3e 54 7b 20 2e 61 20 3d 20 78 20 7d 3c 2f 63 6f 64 65 3e 3c 2f 74 | row"><code>T{..a.=.x.}</code></t |
| 84a00 | 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 70 74 72 3c 2f 63 6f | h>.............<td><code>ptr</co |
| 84a20 | 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 | de></td>.............<td><code>x |
| 84a40 | 3c 2f 63 6f 64 65 3e 20 68 61 73 20 6e 6f 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 20 28 | </code>.has.no.result.location.( |
| 84a60 | 74 79 70 65 64 20 69 6e 69 74 69 61 6c 69 7a 65 72 73 20 64 6f 20 6e 6f 74 20 70 72 6f 70 61 67 | typed.initializers.do.not.propag |
| 84a80 | 61 74 65 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 73 29 3c 2f 74 64 3e 0a 20 20 20 20 20 | ate.result.locations)</td>...... |
| 84aa0 | 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 | .....</tr>...........<tr>....... |
| 84ac0 | 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 | ......<th.scope="row"><code><spa |
| 84ae0 | 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 2f 73 70 61 | n.class="tok-builtin">@Type</spa |
| 84b00 | 6e 3e 28 78 29 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 | n>(x)</code></th>.............<t |
| 84b20 | 64 3e 3c 63 6f 64 65 3e 70 74 72 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | d><code>ptr</code></td>......... |
| 84b40 | 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 68 61 73 20 6e 6f 20 72 65 | ....<td><code>x</code>.has.no.re |
| 84b60 | 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 | sult.location</td>...........</t |
| 84b80 | 72 3e 0a 20 20 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 | r>...........<tr>.............<t |
| 84ba0 | 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | h.scope="row"><code><span.class= |
| 84bc0 | 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 78 | "tok-builtin">@typeInfo</span>(x |
| 84be0 | 29 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 | )</code></th>.............<td><c |
| 84c00 | 6f 64 65 3e 70 74 72 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ode>ptr</code></td>............. |
| 84c20 | 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 68 61 73 20 6e 6f 20 72 65 73 75 6c 74 | <td><code>x</code>.has.no.result |
| 84c40 | 20 6c 6f 63 61 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 | .location</td>...........</tr>.. |
| 84c60 | 20 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 68 20 73 63 | .........<tr>.............<th.sc |
| 84c80 | 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 78 20 26 6c 74 3b 26 6c 74 3b 20 79 3c 2f 63 6f | ope="row"><code>x.<<.y</co |
| 84ca0 | 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 70 | de></th>.............<td><code>p |
| 84cc0 | 74 72 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c | tr</code></td>.............<td>< |
| 84ce0 | 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 79 3c 2f 63 6f 64 65 3e | code>x</code>.and.<code>y</code> |
| 84d00 | 20 64 6f 20 6e 6f 74 20 68 61 76 65 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 73 3c 2f 74 | .do.not.have.result.locations</t |
| 84d20 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 62 6f | d>...........</tr>.........</tbo |
| 84d40 | 64 79 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 | dy>.......</table>.......</div>. |
| 84d60 | 20 20 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 75 73 69 | .....................<h2.id="usi |
| 84d80 | 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 73 69 6e 67 | ngnamespace"><a.href="#toc-using |
| 84da0 | 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 20 3c 61 | namespace">usingnamespace</a>.<a |
| 84dc0 | 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 65 73 70 61 | .class="hdr".href="#usingnamespa |
| 84de0 | 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 20 | ce">..</a></h2>........<p>...... |
| 84e00 | 20 3c 63 6f 64 65 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 | .<code><span.class="tok-kw">usin |
| 84e20 | 67 6e 61 6d 65 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 64 65 | gnamespace</span></code>.is.a.de |
| 84e40 | 63 6c 61 72 61 74 69 6f 6e 20 74 68 61 74 20 6d 69 78 65 73 20 61 6c 6c 20 74 68 65 20 70 75 62 | claration.that.mixes.all.the.pub |
| 84e60 | 6c 69 63 0a 20 20 20 20 20 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 6f 70 | lic.......declarations.of.the.op |
| 84e80 | 65 72 61 6e 64 2c 20 77 68 69 63 68 20 6d 75 73 74 20 62 65 20 61 20 3c 61 20 68 72 65 66 3d 22 | erand,.which.must.be.a.<a.href=" |
| 84ea0 | 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 75 | #struct">struct</a>,.<a.href="#u |
| 84ec0 | 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 | nion">union</a>,.<a.href="#enum" |
| 84ee0 | 3e 65 6e 75 6d 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 6f 70 | >enum</a>,.......or.<a.href="#op |
| 84f00 | 61 71 75 65 22 3e 6f 70 61 71 75 65 3c 2f 61 3e 2c 20 69 6e 74 6f 20 74 68 65 20 6e 61 6d 65 73 | aque">opaque</a>,.into.the.names |
| 84f20 | 70 61 63 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | pace:.......</p>.......<figure>< |
| 84f40 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 | figcaption.class="zig-cap"><cite |
| 84f60 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 | .class="file">test_usingnamespac |
| 84f80 | 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 | e.zig</cite></figcaption><pre><c |
| 84fa0 | 6f 64 65 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 | ode><span.class="tok-kw">test</s |
| 84fc0 | 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">" |
| 84fe0 | 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 3c 2f 73 70 61 6e | ;using.std.namespace"</span |
| 85000 | 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 |
| 85020 | 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 2d 6b | st</span>.S.=.<span.class="tok-k |
| 85040 | 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 3c 73 70 61 6e | w">struct</span>.{.........<span |
| 85060 | 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</ |
| 85080 | 73 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 | span>.<span.class="tok-builtin"> |
| 850a0 | 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- |
| 850c0 | 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 20 20 | str">"std"</span>);... |
| 850e0 | 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 |
| 85100 | 79 3c 2f 73 70 61 6e 3e 20 53 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 28 3c 73 70 61 6e 20 | y</span>.S.testing.expect(<span. |
| 85120 | 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>);.} |
| 85140 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 | </code></pre></figure><figure><f |
| 85160 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c | igcaption.class="shell-cap">Shel |
| 85180 | 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e | l</figcaption><pre><samp>$.<kbd> |
| 851a0 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 2e 7a 69 67 | zig.test.test_usingnamespace.zig |
| 851c0 | 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 2e 74 | </kbd>.1/1.test_usingnamespace.t |
| 851e0 | 65 73 74 2e 75 73 69 6e 67 20 73 74 64 20 6e 61 6d 65 73 70 61 63 65 2e 2e 2e 4f 4b 0a 41 6c 6c | est.using.std.namespace...OK.All |
| 85200 | 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f | .1.tests.passed..</samp></pre></ |
| 85220 | 66 69 67 75 72 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 3e 3c | figure>........<p>.......<code>< |
| 85240 | 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 70 61 | span.class="tok-kw">usingnamespa |
| 85260 | 63 65 3c 2f 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 | ce</span></code>.has.an.importan |
| 85280 | 74 20 75 73 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 | t.use.case.when.organizing.the.p |
| 852a0 | 75 62 6c 69 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 | ublic.......API.of.a.file.or.pac |
| 852c0 | 6b 61 67 65 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 | kage..For.example,.one.might.hav |
| 852e0 | 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 2e 7a 69 67 3c 2f 63 6f 64 65 | e.<code.class="file">c.zig</code |
| 85300 | 3e 20 77 69 74 68 20 61 6c 6c 20 6f 66 20 74 68 65 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d | >.with.all.of.the.......<a.href= |
| 85320 | 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 43 20 69 | "#Import-from-C-Header-File">C.i |
| 85340 | 6d 70 6f 72 74 73 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 | mports</a>:.......</p>.......<fi |
| 85360 | 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 | gure><figcaption.class="zig-cap" |
| 85380 | 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 2e 7a 69 67 3c 2f 63 69 74 65 3e | ><cite.class="file">c.zig</cite> |
| 853a0 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </figcaption><pre><code><span.cl |
| 853c0 | 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 |
| 853e0 | 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 73 70 61 | ass="tok-kw">usingnamespace</spa |
| 85400 | 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 63 49 | n>.<span.class="tok-builtin">@cI |
| 85420 | 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 3d 22 | mport</span>({.....<span.class=" |
| 85440 | 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 28 3c 73 | tok-builtin">@cInclude</span>(<s |
| 85460 | 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 70 6f 78 79 2f | pan.class="tok-str">"epoxy/ |
| 85480 | 67 6c 2e 68 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 | gl.h"</span>);.....<span.cl |
| 854a0 | 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 73 70 61 | ass="tok-builtin">@cInclude</spa |
| 854c0 | 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 47 | n>(<span.class="tok-str">"G |
| 854e0 | 4c 46 57 2f 67 6c 66 77 33 2e 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c | LFW/glfw3.h"</span>);.....< |
| 85500 | 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 44 65 66 69 6e | span.class="tok-builtin">@cDefin |
| 85520 | 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">& |
| 85540 | 71 75 6f 74 3b 53 54 42 49 5f 4f 4e 4c 59 5f 50 4e 47 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c | quot;STBI_ONLY_PNG"</span>, |
| 85560 | 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 26 71 75 | .<span.class="tok-str">"&qu |
| 85580 | 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 22 74 6f | ot;</span>);.....<span.class="to |
| 855a0 | 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 3c 73 70 61 6e | k-builtin">@cDefine</span>(<span |
| 855c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 53 54 42 49 5f 4e 4f 5f 53 | .class="tok-str">"STBI_NO_S |
| 855e0 | 54 44 49 4f 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 | TDIO"</span>,.<span.class=" |
| 85600 | 74 6f 6b 2d 73 74 72 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 | tok-str">""</span>);.. |
| 85620 | 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 |
| 85640 | 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 |
| 85660 | 74 72 22 3e 26 71 75 6f 74 3b 73 74 62 5f 69 6d 61 67 65 2e 68 26 71 75 6f 74 3b 3c 2f 73 70 61 | tr">"stb_image.h"</spa |
| 85680 | 6e 3e 29 3b 0a 7d 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 | n>);.});</code></pre></figure>.. |
| 856a0 | 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 6c 65 | .....<p>.......The.above.example |
| 856c0 | 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 3e 3c 73 70 61 6e 20 | .demonstrates.using.<code><span. |
| 856e0 | 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 64 65 3e | class="tok-kw">pub</span></code> |
| 85700 | 20 74 6f 20 71 75 61 6c 69 66 79 20 74 68 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 | .to.qualify.the.......<code><spa |
| 85720 | 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 70 61 63 65 3c | n.class="tok-kw">usingnamespace< |
| 85740 | 2f 73 70 61 6e 3e 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 | /span></code>.additionally.makes |
| 85760 | 20 74 68 65 20 69 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 | .the.imported.declarations...... |
| 85780 | 20 3c 63 6f 64 65 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 | .<code><span.class="tok-kw">pub< |
| 857a0 | 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 20 75 73 65 64 20 | /span></code>..This.can.be.used. |
| 857c0 | 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 69 76 69 6e 67 20 | to.forward.declarations,.giving. |
| 857e0 | 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 20 77 68 61 74 20 | precise.control.......over.what. |
| 85800 | 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 65 78 70 6f 73 65 | declarations.a.given.file.expose |
| 85820 | 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 0a 20 20 20 20 20 20 3c 68 32 | s........</p>................<h2 |
| 85840 | 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 63 2d 63 6f 6d | .id="comptime"><a.href="#toc-com |
| 85860 | 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 73 3d 22 68 64 | ptime">comptime</a>.<a.class="hd |
| 85880 | 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 2f 68 32 3e 0a | r".href="#comptime">..</a></h2>. |
| 858a0 | 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 20 69 6d 70 6f | .......<p>.......Zig.places.impo |
| 858c0 | 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 65 74 68 65 72 | rtance.on.the.concept.of.whether |
| 858e0 | 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 63 6f 6d 70 69 | .an.expression.is.known.at.compi |
| 85900 | 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 66 65 77 20 64 | le-time........There.are.a.few.d |
| 85920 | 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 74 20 69 73 20 | ifferent.places.this.concept.is. |
| 85940 | 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 6f 63 6b 73 20 | used,.and.these.building.blocks. |
| 85960 | 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 6c 61 6e 67 75 | are.used.......to.keep.the.langu |
| 85980 | 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 77 65 72 66 75 | age.small,.readable,.and.powerfu |
| 859a0 | 6c 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 49 6e 74 72 | l........</p>.......<h3.id="Intr |
| 859c0 | 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 6e 63 65 70 74 | oducing-the-Compile-Time-Concept |
| 859e0 | 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 2d 74 68 65 2d | "><a.href="#toc-Introducing-the- |
| 85a00 | 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 64 75 63 69 6e | Compile-Time-Concept">Introducin |
| 85a20 | 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 2f 61 3e 20 3c | g.the.Compile-Time.Concept</a>.< |
| 85a40 | 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 69 6e 67 | a.class="hdr".href="#Introducing |
| 85a60 | 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 c2 a7 3c 2f 61 | -the-Compile-Time-Concept">..</a |
| 85a80 | 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 43 6f 6d 70 69 6c 65 2d 54 69 | ></h3>........<h4.id="Compile-Ti |
| 85aa0 | 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 63 2d 43 6f 6d | me-Parameters"><a.href="#toc-Com |
| 85ac0 | 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 6c 65 2d 54 69 | pile-Time-Parameters">Compile-Ti |
| 85ae0 | 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 22 68 64 72 22 | me.Parameters</a>.<a.class="hdr" |
| 85b00 | 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 74 65 72 73 22 | .href="#Compile-Time-Parameters" |
| 85b20 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f | >..</a></h4>........<p>.......Co |
| 85b40 | 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 77 20 5a 69 67 | mpile-time.parameters.is.how.Zig |
| 85b60 | 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 20 63 6f 6d 70 | .implements.generics..It.is.comp |
| 85b80 | 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 20 3c 2f 70 3e | ile-time.duck.typing........</p> |
| 85ba0 | 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | .......<figure><figcaption.class |
| 85bc0 | 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 6f | ="zig-cap"><cite.class="file">co |
| 85be0 | 6d 70 69 6c 65 2d 74 69 6d 65 5f 64 75 63 6b 5f 74 79 70 69 6e 67 2e 7a 69 67 3c 2f 63 69 74 65 | mpile-time_duck_typing.zig</cite |
| 85c00 | 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></figcaption><pre><code><span.c |
| 85c20 | 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 |
| 85c40 | 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 |
| 85c60 | 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:. |
| 85c80 | 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 |
| 85ca0 | 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 |
| 85cc0 | 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 |
| 85ce0 | 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.> |
| 85d00 | 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 |
| 85d20 | 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 |
| 85d40 | 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" |
| 85d60 | 3e 67 69 6d 6d 65 54 68 65 42 69 67 67 65 72 46 6c 6f 61 74 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c | >gimmeTheBiggerFloat</span>(a:.< |
| 85d80 | 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 3e | span.class="tok-type">f32</span> |
| 85da0 | 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 66 33 32 3c | ,.b:.<span.class="tok-type">f32< |
| 85dc0 | 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 66 | /span>).<span.class="tok-type">f |
| 85de0 | 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 6b | 32</span>.{.....<span.class="tok |
| 85e00 | 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 6c 61 | -kw">return</span>.max(<span.cla |
| 85e20 | 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 20 61 2c 20 62 29 3b | ss="tok-type">f32</span>,.a,.b); |
| 85e40 | 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 |
| 85e60 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 67 69 6d 6d 65 54 68 65 42 | >.<span.class="tok-fn">gimmeTheB |
| 85e80 | 69 67 67 65 72 49 6e 74 65 67 65 72 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 | iggerInteger</span>(a:.<span.cla |
| 85ea0 | 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 62 3a 20 3c 73 70 | ss="tok-type">u64</span>,.b:.<sp |
| 85ec0 | 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 29 20 | an.class="tok-type">u64</span>). |
| 85ee0 | 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 |
| 85f00 | 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 |
| 85f20 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 6d 61 78 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | urn</span>.max(<span.class="tok- |
| 85f40 | 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 2c 20 61 2c 20 62 29 3b 0a 7d 3c 2f 63 6f 64 65 | type">u64</span>,.a,.b);.}</code |
| 85f60 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | ></pre></figure>........<p>..... |
| 85f80 | 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. |
| 85fa0 | 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 |
| 85fc0 | 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 |
| 85fe0 | 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 |
| 86000 | 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 |
| 86020 | 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 |
| 86040 | 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- |
| 86060 | 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 |
| 86080 | 65 20 70 61 72 61 6d 65 74 65 72 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 20 69 6e 20 74 68 | e.parameter.<code>T</code>.in.th |
| 860a0 | 65 20 61 62 6f 76 65 20 73 6e 69 70 70 65 74 20 6d 75 73 74 20 62 65 20 6d 61 72 6b 65 64 20 77 | e.above.snippet.must.be.marked.w |
| 860c0 | 69 74 68 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ith.<code><span.class="tok-kw">c |
| 860e0 | 6f 6d 70 74 69 6d 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 | omptime</span></code>........</p |
| 86100 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | >.......<p>.......A.<code><span. |
| 86120 | 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></ |
| 86140 | 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 20 20 20 20 | code>.parameter.means.that:..... |
| 86160 | 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 41 74 | ..</p>.......<ul>.........<li>At |
| 86180 | 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 74 20 62 65 | .the.callsite,.the.value.must.be |
| 861a0 | 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 74 20 69 73 | .known.at.compile-time,.or.it.is |
| 861c0 | 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 20 20 20 3c | .a.compile.error.</li>.........< |
| 861e0 | 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 6e 2c 20 74 | li>In.the.function.definition,.t |
| 86200 | 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 2d 74 69 6d | he.value.is.known.at.compile-tim |
| 86220 | 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 3e 0a 20 20 | e.</li>.......</ul>.......<p>... |
| 86240 | 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 74 6f 20 69 | ....For.example,.if.we.were.to.i |
| 86260 | 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 20 74 68 65 | ntroduce.another.function.to.the |
| 86280 | 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 20 20 20 20 | .above.snippet:.......</p>...... |
| 862a0 | 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d | .<figure><figcaption.class="zig- |
| 862c0 | 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 75 6e 72 | cap"><cite.class="file">test_unr |
| 862e0 | 65 73 6f 6c 76 65 64 5f 63 6f 6d 70 74 69 6d 65 5f 76 61 6c 75 65 2e 7a 69 67 3c 2f 63 69 74 65 | esolved_comptime_value.zig</cite |
| 86300 | 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></figcaption><pre><code><span.c |
| 86320 | 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 |
| 86340 | 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 |
| 86360 | 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:. |
| 86380 | 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 |
| 863a0 | 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 |
| 863c0 | 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 |
| 863e0 | 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.> |
| 86400 | 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 |
| 86420 | 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 |
| 86440 | 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 |
| 86460 | 74 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 | tr">"try.to.pass.a.runtime. |
| 86480 | 74 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 | type"</span>.{.....foo(<spa |
| 864a0 | 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 29 | n.class="tok-null">false</span>) |
| 864c0 | 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 66 6e 3c 2f 73 70 61 | ;.}.<span.class="tok-kw">fn</spa |
| 864e0 | 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 73 70 61 | n>.<span.class="tok-fn">foo</spa |
| 86500 | 6e 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 | n>(condition:.<span.class="tok-t |
| 86520 | 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 73 3d 22 74 | ype">bool</span>).<span.class="t |
| 86540 | 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 |
| 86560 | 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 73 | .class="tok-kw">const</span>.res |
| 86580 | 75 6c 74 20 3d 20 6d 61 78 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 | ult.=.max(<span.class="tok-kw">i |
| 865a0 | 66 3c 2f 73 70 61 6e 3e 20 28 63 6f 6e 64 69 74 69 6f 6e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | f</span>.(condition).<span.class |
| 865c0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-type">f32</span>.<span.cla |
| 865e0 | 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 63 6c | ss="tok-kw">else</span>.<span.cl |
| 86600 | 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 3c 73 70 61 6e | ass="tok-type">u64</span>,.<span |
| 86620 | 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>, |
| 86640 | 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 2f | .<span.class="tok-number">5678</ |
| 86660 | 73 70 61 6e 3e 29 3b 0a 20 20 20 20 5f 20 3d 20 72 65 73 75 6c 74 3b 0a 7d 3c 2f 63 6f 64 65 3e | span>);....._.=.result;.}</code> |
| 86680 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | </pre></figure><figure><figcapti |
| 866a0 | 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 | on.class="shell-cap">Shell</figc |
| 866c0 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 | aption><pre><samp>$.<kbd>zig.tes |
| 866e0 | 74 20 74 65 73 74 5f 75 6e 72 65 73 6f 6c 76 65 64 5f 63 6f 6d 70 74 69 6d 65 5f 76 61 6c 75 65 | t.test_unresolved_comptime_value |
| 86700 | 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e | .zig</kbd>.<span.class="sgr-1m"> |
| 86720 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 | /home/andy/dev/zig/doc/langref/t |
| 86740 | 65 73 74 5f 75 6e 72 65 73 6f 6c 76 65 64 5f 63 6f 6d 70 74 69 6d 65 5f 76 61 6c 75 65 2e 7a 69 | est_unresolved_comptime_value.zi |
| 86760 | 67 3a 38 3a 32 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | g:8:28:.</span><span.class="sgr- |
| 86780 | 33 31 6d 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 | 31m">error:.</span><span.class=" |
| 867a0 | 73 67 72 2d 31 6d 22 3e 75 6e 61 62 6c 65 20 74 6f 20 72 65 73 6f 6c 76 65 20 63 6f 6d 70 74 69 | sgr-1m">unable.to.resolve.compti |
| 867c0 | 6d 65 20 76 61 6c 75 65 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 72 65 73 75 6c 74 | me.value.</span>....const.result |
| 867e0 | 20 3d 20 6d 61 78 28 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 | .=.max(if.(condition).f32.else.u |
| 86800 | 36 34 2c 20 31 32 33 34 2c 20 35 36 37 38 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | 64,.1234,.5678);................ |
| 86820 | 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 73 67 72 2d 33 32 6d | ............<span.class="sgr-32m |
| 86840 | 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">^~~~~~~~~.</span><span.class=" |
| 86860 | 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c | sgr-1m">/home/andy/dev/zig/doc/l |
| 86880 | 61 6e 67 72 65 66 2f 74 65 73 74 5f 75 6e 72 65 73 6f 6c 76 65 64 5f 63 6f 6d 70 74 69 6d 65 5f | angref/test_unresolved_comptime_ |
| 868a0 | 76 61 6c 75 65 2e 7a 69 67 3a 38 3a 32 34 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | value.zig:8:24:.</span><span.cla |
| 868c0 | 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | ss="sgr-36m">note:.</span><span. |
| 868e0 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 61 72 67 75 6d 65 6e 74 20 74 6f 20 63 6f 6d 70 74 | class="sgr-1m">argument.to.compt |
| 86900 | 69 6d 65 20 70 61 72 61 6d 65 74 65 72 20 6d 75 73 74 20 62 65 20 63 6f 6d 70 74 69 6d 65 2d 6b | ime.parameter.must.be.comptime-k |
| 86920 | 6e 6f 77 6e 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 72 65 73 75 6c 74 20 3d 20 6d | nown.</span>....const.result.=.m |
| 86940 | 61 78 28 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 20 | ax(if.(condition).f32.else.u64,. |
| 86960 | 31 32 33 34 2c 20 35 36 37 38 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | 1234,.5678);.................... |
| 86980 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e | ....<span.class="sgr-32m">^~~~~~ |
| 869a0 | 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 | ~~~~~~~~~~~~~~~~~~~~~.</span><sp |
| 869c0 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 | an.class="sgr-1m">/home/andy/dev |
| 869e0 | 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 75 6e 72 65 73 6f 6c 76 65 64 | /zig/doc/langref/test_unresolved |
| 86a00 | 5f 63 6f 6d 70 74 69 6d 65 5f 76 61 6c 75 65 2e 7a 69 67 3a 31 3a 38 3a 20 3c 2f 73 70 61 6e 3e | _comptime_value.zig:1:8:.</span> |
| 86a20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 | <span.class="sgr-36m">note:.</sp |
| 86a40 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 70 61 72 61 6d 65 74 65 | an><span.class="sgr-1m">paramete |
| 86a60 | 72 20 64 65 63 6c 61 72 65 64 20 63 6f 6d 70 74 69 6d 65 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e | r.declared.comptime.here.</span> |
| 86a80 | 66 6e 20 6d 61 78 28 63 6f 6d 70 74 69 6d 65 20 54 3a 20 74 79 70 65 2c 20 61 3a 20 54 2c 20 62 | fn.max(comptime.T:.type,.a:.T,.b |
| 86aa0 | 3a 20 54 29 20 54 20 7b 0a 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | :.T).T.{........<span.class="sgr |
| 86ac0 | 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | -32m">^~~~~~~~.</span><span.clas |
| 86ae0 | 73 3d 22 73 67 72 2d 32 6d 22 3e 72 65 66 65 72 65 6e 63 65 64 20 62 79 3a 0a 20 20 20 20 74 65 | s="sgr-2m">referenced.by:.....te |
| 86b00 | 73 74 2e 74 72 79 20 74 6f 20 70 61 73 73 20 61 20 72 75 6e 74 69 6d 65 20 74 79 70 65 3a 20 2f | st.try.to.pass.a.runtime.type:./ |
| 86b20 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 | home/andy/dev/zig/doc/langref/te |
| 86b40 | 73 74 5f 75 6e 72 65 73 6f 6c 76 65 64 5f 63 6f 6d 70 74 69 6d 65 5f 76 61 6c 75 65 2e 7a 69 67 | st_unresolved_comptime_value.zig |
| 86b60 | 3a 35 3a 38 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | :5:8.</span>.</samp></pre></figu |
| 86b80 | 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 69 73 20 61 6e 20 | re>........<p>.......This.is.an. |
| 86ba0 | 65 72 72 6f 72 20 62 65 63 61 75 73 65 20 74 68 65 20 70 72 6f 67 72 61 6d 6d 65 72 20 61 74 74 | error.because.the.programmer.att |
| 86bc0 | 65 6d 70 74 65 64 20 74 6f 20 70 61 73 73 20 61 20 76 61 6c 75 65 20 6f 6e 6c 79 20 6b 6e 6f 77 | empted.to.pass.a.value.only.know |
| 86be0 | 6e 20 61 74 20 72 75 6e 2d 74 69 6d 65 0a 20 20 20 20 20 20 74 6f 20 61 20 66 75 6e 63 74 69 6f | n.at.run-time.......to.a.functio |
| 86c00 | 6e 20 77 68 69 63 68 20 65 78 70 65 63 74 73 20 61 20 76 61 6c 75 65 20 6b 6e 6f 77 6e 20 61 74 | n.which.expects.a.value.known.at |
| 86c20 | 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 20 20 20 20 20 | .compile-time........</p>....... |
| 86c40 | 3c 70 3e 0a 20 20 20 20 20 20 41 6e 6f 74 68 65 72 20 77 61 79 20 74 6f 20 67 65 74 20 61 6e 20 | <p>.......Another.way.to.get.an. |
| 86c60 | 65 72 72 6f 72 20 69 73 20 69 66 20 77 65 20 70 61 73 73 20 61 20 74 79 70 65 20 74 68 61 74 20 | error.is.if.we.pass.a.type.that. |
| 86c80 | 76 69 6f 6c 61 74 65 73 20 74 68 65 20 74 79 70 65 20 63 68 65 63 6b 65 72 20 77 68 65 6e 20 74 | violates.the.type.checker.when.t |
| 86ca0 | 68 65 0a 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 61 6e 61 6c 79 7a 65 64 2e 20 54 | he.......function.is.analyzed..T |
| 86cc0 | 68 69 73 20 69 73 20 77 68 61 74 20 69 74 20 6d 65 61 6e 73 20 74 6f 20 68 61 76 65 20 3c 65 6d | his.is.what.it.means.to.have.<em |
| 86ce0 | 3e 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 64 75 63 6b 20 74 79 70 69 6e 67 3c 2f 65 6d 3e 2e 0a | >compile-time.duck.typing</em>.. |
| 86d00 | 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 6f 72 20 65 | ......</p>.......<p>.......For.e |
| 86d20 | 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 66 69 67 75 72 65 | xample:.......</p>.......<figure |
| 86d40 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 | ><figcaption.class="zig-cap"><ci |
| 86d60 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 6d 69 | te.class="file">test_comptime_mi |
| 86d80 | 73 6d 61 74 63 68 65 64 5f 74 79 70 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | smatched_type.zig</cite></figcap |
| 86da0 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tion><pre><code><span.class="tok |
| 86dc0 | 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- |
| 86de0 | 66 6e 22 3e 6d 61 78 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 | fn">max</span>(<span.class="tok- |
| 86e00 | 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 |
| 86e20 | 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 3a 20 54 2c | ss="tok-type">type</span>,.a:.T, |
| 86e40 | 20 62 3a 20 54 29 20 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 | .b:.T).T.{.....<span.class="tok- |
| 86e60 | 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 |
| 86e80 | 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 26 67 74 3b 20 62 29 20 61 20 3c 73 | ok-kw">if</span>.(a.>.b).a.<s |
| 86ea0 | 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 62 | pan.class="tok-kw">else</span>.b |
| 86ec0 | 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 74 65 73 74 3c 2f 73 | ;.}.<span.class="tok-kw">test</s |
| 86ee0 | 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">" |
| 86f00 | 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 3c 2f 73 70 61 | ;try.to.compare.bools"</spa |
| 86f20 | 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 6d 61 78 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n>.{....._.=.max(<span.class="to |
| 86f40 | 6b 2d 74 79 70 65 22 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 | k-type">bool</span>,.<span.class |
| 86f60 | 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 20 63 | ="tok-null">true</span>,.<span.c |
| 86f80 | 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 7d | lass="tok-null">false</span>);.} |
| 86fa0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 | </code></pre></figure><figure><f |
| 86fc0 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c | igcaption.class="shell-cap">Shel |
| 86fe0 | 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e | l</figcaption><pre><samp>$.<kbd> |
| 87000 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 6d 69 73 6d 61 74 63 68 65 | zig.test.test_comptime_mismatche |
| 87020 | 64 5f 74 79 70 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | d_type.zig</kbd>.<span.class="sg |
| 87040 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e | r-1m">/home/andy/dev/zig/doc/lan |
| 87060 | 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 6d 69 73 6d 61 74 63 68 65 64 5f 74 79 | gref/test_comptime_mismatched_ty |
| 87080 | 70 65 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 6c 61 73 73 3d | pe.zig:2:18:.</span><span.class= |
| 870a0 | 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | "sgr-31m">error:.</span><span.cl |
| 870c0 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 6f 70 65 72 61 74 6f 72 20 26 67 74 3b 20 6e 6f 74 20 61 | ass="sgr-1m">operator.>.not.a |
| 870e0 | 6c 6c 6f 77 65 64 20 66 6f 72 20 74 79 70 65 20 27 62 6f 6f 6c 27 0a 3c 2f 73 70 61 6e 3e 20 20 | llowed.for.type.'bool'.</span>.. |
| 87100 | 20 20 72 65 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 | ..return.if.(a.>.b).a.else.b; |
| 87120 | 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 73 73 3d 22 73 67 72 | ................<span.class="sgr |
| 87140 | 2d 33 32 6d 22 3e 7e 7e 5e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -32m">~~^~~.</span><span.class=" |
| 87160 | 73 67 72 2d 32 6d 22 3e 72 65 66 65 72 65 6e 63 65 64 20 62 79 3a 0a 20 20 20 20 74 65 73 74 2e | sgr-2m">referenced.by:.....test. |
| 87180 | 74 72 79 20 74 6f 20 63 6f 6d 70 61 72 65 20 62 6f 6f 6c 73 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 | try.to.compare.bools:./home/andy |
| 871a0 | 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 | /dev/zig/doc/langref/test_compti |
| 871c0 | 6d 65 5f 6d 69 73 6d 61 74 63 68 65 64 5f 74 79 70 65 2e 7a 69 67 3a 35 3a 31 32 0a 3c 2f 73 70 | me_mismatched_type.zig:5:12.</sp |
| 871e0 | 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 | an>.</samp></pre></figure>...... |
| 87200 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 6e 20 74 68 65 20 66 6c 69 70 20 73 69 64 65 2c 20 69 6e | ..<p>.......On.the.flip.side,.in |
| 87220 | 73 69 64 65 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 64 65 66 69 6e 69 74 69 6f 6e 20 77 69 74 | side.the.function.definition.wit |
| 87240 | 68 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | h.the.<code><span.class="tok-kw" |
| 87260 | 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 70 61 72 61 6d 65 74 65 | >comptime</span></code>.paramete |
| 87280 | 72 2c 20 74 68 65 0a 20 20 20 20 20 20 76 61 6c 75 65 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 | r,.the.......value.is.known.at.c |
| 872a0 | 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 77 65 20 | ompile-time..This.means.that.we. |
| 872c0 | 61 63 74 75 61 6c 6c 79 20 63 6f 75 6c 64 20 6d 61 6b 65 20 74 68 69 73 20 77 6f 72 6b 20 66 6f | actually.could.make.this.work.fo |
| 872e0 | 72 20 74 68 65 20 62 6f 6f 6c 20 74 79 70 65 0a 20 20 20 20 20 20 69 66 20 77 65 20 77 61 6e 74 | r.the.bool.type.......if.we.want |
| 87300 | 65 64 20 74 6f 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e | ed.to:.......</p>.......<figure> |
| 87320 | 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 | <figcaption.class="zig-cap"><cit |
| 87340 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 6d 61 78 | e.class="file">test_comptime_max |
| 87360 | 5f 77 69 74 68 5f 62 6f 6f 6c 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | _with_bool.zig</cite></figcaptio |
| 87380 | 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n><pre><code><span.class="tok-kw |
| 873a0 | 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" |
| 873c0 | 3e 6d 61 78 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 | >max</span>(<span.class="tok-kw" |
| 873e0 | 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= |
| 87400 | 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 62 3a | "tok-type">type</span>,.a:.T,.b: |
| 87420 | 20 54 29 20 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 | .T).T.{.....<span.class="tok-kw" |
| 87440 | 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 54 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >if</span>.(T.==.<span.class="to |
| 87460 | 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c | k-type">bool</span>).{.........< |
| 87480 | 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 |
| 874a0 | 3e 20 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 3c 2f 73 70 61 | >.a.<span.class="tok-kw">or</spa |
| 874c0 | 6e 3e 20 62 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 | n>.b;.....}.<span.class="tok-kw" |
| 874e0 | 3e 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 6b 77 | >else</span>.<span.class="tok-kw |
| 87500 | 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 26 67 74 3b 20 62 29 20 7b 0a 20 20 20 20 20 20 20 | ">if</span>.(a.>.b).{........ |
| 87520 | 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 |
| 87540 | 61 6e 3e 20 61 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 | an>.a;.....}.<span.class="tok-kw |
| 87560 | 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 70 61 6e 20 63 6c | ">else</span>.{.........<span.cl |
| 87580 | 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 3b 0a 20 20 | ass="tok-kw">return</span>.b;... |
| 875a0 | 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 74 65 73 74 3c | ..}.}.<span.class="tok-kw">test< |
| 875c0 | 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 |
| 875e0 | 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 75 6f 74 3b 3c 2f 73 | ot;try.to.compare.bools"</s |
| 87600 | 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"> |
| 87620 | 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 62 75 69 6c | try</span>.<span.class="tok-buil |
| 87640 | 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= |
| 87660 | 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> |
| 87680 | 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 28 6d 61 78 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ).testing.expect(max(<span.class |
| 876a0 | 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 70 61 6e 20 63 | ="tok-type">bool</span>,.<span.c |
| 876c0 | 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 |
| 876e0 | 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> |
| 87700 | 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 3e 74 72 75 65 | ).==.<span.class="tok-null">true |
| 87720 | 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 2f 66 69 67 75 72 65 | </span>);.}</code></pre></figure |
| 87740 | 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c | ><figure><figcaption.class="shel |
| 87760 | 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 | l-cap">Shell</figcaption><pre><s |
| 87780 | 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d | amp>$.<kbd>zig.test.test_comptim |
| 877a0 | 65 5f 6d 61 78 5f 77 69 74 68 5f 62 6f 6f 6c 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 | e_max_with_bool.zig</kbd>.1/1.te |
| 877c0 | 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 6d 61 78 5f 77 69 74 68 5f 62 6f 6f 6c 2e 74 65 73 74 2e 74 | st_comptime_max_with_bool.test.t |
| 877e0 | 72 79 20 74 6f 20 63 6f 6d 70 61 72 65 20 62 6f 6f 6c 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 | ry.to.compare.bools...OK.All.1.t |
| 87800 | 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | ests.passed..</samp></pre></figu |
| 87820 | 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 77 6f 72 6b 73 20 | re>........<p>.......This.works. |
| 87840 | 62 65 63 61 75 73 65 20 5a 69 67 20 69 6d 70 6c 69 63 69 74 6c 79 20 69 6e 6c 69 6e 65 73 20 3c | because.Zig.implicitly.inlines.< |
| 87860 | 63 6f 64 65 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 | code><span.class="tok-kw">if</sp |
| 87880 | 61 6e 3e 3c 2f 63 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 | an></code>.expressions.when.the. |
| 878a0 | 63 6f 6e 64 69 74 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 | condition.......is.known.at.comp |
| 878c0 | 69 6c 65 2d 74 69 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 | ile-time,.and.the.compiler.guara |
| 878e0 | 6e 74 65 65 73 20 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 | ntees.that.it.will.skip.analysis |
| 87900 | 20 6f 66 0a 20 20 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 | .of.......the.branch.not.taken.. |
| 87920 | 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 20 | ......</p>.......<p>.......This. |
| 87940 | 6d 65 61 6e 73 20 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 | means.that.the.actual.function.g |
| 87960 | 65 6e 65 72 61 74 65 64 20 66 6f 72 20 3c 63 6f 64 65 3e 6d 61 78 3c 2f 63 6f 64 65 3e 20 69 6e | enerated.for.<code>max</code>.in |
| 87980 | 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 0a 20 20 20 20 20 | .this.situation.looks.like...... |
| 879a0 | 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 66 69 67 75 72 65 3e | .this:.......</p>.......<figure> |
| 879c0 | 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 | <figcaption.class="zig-cap"><cit |
| 879e0 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 6f 6d 70 69 6c 65 72 5f 67 65 6e 65 72 61 74 65 | e.class="file">compiler_generate |
| 87a00 | 64 5f 66 75 6e 63 74 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | d_function.zig</cite></figcaptio |
| 87a20 | 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n><pre><code><span.class="tok-kw |
| 87a40 | 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" |
| 87a60 | 3e 6d 61 78 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 | >max</span>(a:.<span.class="tok- |
| 87a80 | 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 63 6c 61 73 | type">bool</span>,.b:.<span.clas |
| 87aa0 | 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 73 70 61 6e 20 | s="tok-type">bool</span>).<span. |
| 87ac0 | 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 0a 20 | class="tok-type">bool</span>.{.. |
| 87ae0 | 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 77 | ...{.........<span.class="tok-kw |
| 87b00 | 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 6c 61 73 73 3d 22 74 | ">return</span>.a.<span.class="t |
| 87b20 | 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 0a 7d 3c 2f 63 6f 64 | ok-kw">or</span>.b;.....}.}</cod |
| 87b40 | 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | e></pre></figure>........<p>.... |
| 87b60 | 20 20 20 41 6c 6c 20 74 68 65 20 63 6f 64 65 20 74 68 61 74 20 64 65 61 6c 74 20 77 69 74 68 20 | ...All.the.code.that.dealt.with. |
| 87b80 | 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 20 76 61 6c 75 65 73 20 69 73 20 65 6c 69 | compile-time.known.values.is.eli |
| 87ba0 | 6d 69 6e 61 74 65 64 20 61 6e 64 20 77 65 20 61 72 65 20 6c 65 66 74 20 77 69 74 68 20 6f 6e 6c | minated.and.we.are.left.with.onl |
| 87bc0 | 79 0a 20 20 20 20 20 20 74 68 65 20 6e 65 63 65 73 73 61 72 79 20 72 75 6e 2d 74 69 6d 65 20 63 | y.......the.necessary.run-time.c |
| 87be0 | 6f 64 65 20 74 6f 20 61 63 63 6f 6d 70 6c 69 73 68 20 74 68 65 20 74 61 73 6b 2e 0a 20 20 20 20 | ode.to.accomplish.the.task...... |
| 87c00 | 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 77 6f 72 6b | ..</p>.......<p>.......This.work |
| 87c20 | 73 20 74 68 65 20 73 61 6d 65 20 77 61 79 20 66 6f 72 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | s.the.same.way.for.<code><span.c |
| 87c40 | 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 |
| 87c60 | 65 3e 20 65 78 70 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 | e>.expressions.-.they.are.implic |
| 87c80 | 69 74 6c 79 20 69 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 | itly.inlined.......when.the.targ |
| 87ca0 | 65 74 20 65 78 70 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 | et.expression.is.compile-time.kn |
| 87cc0 | 6f 77 6e 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 34 | own........</p>..............<h4 |
| 87ce0 | 20 69 64 3d 22 43 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 | .id="Compile-Time-Variables"><a. |
| 87d00 | 68 72 65 66 3d 22 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 | href="#toc-Compile-Time-Variable |
| 87d20 | 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 61 3e 20 3c 61 | s">Compile-Time.Variables</a>.<a |
| 87d40 | 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 2d 54 69 6d 65 | .class="hdr".href="#Compile-Time |
| 87d60 | 2d 56 61 72 69 61 62 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c | -Variables">..</a></h4>........< |
| 87d80 | 70 3e 0a 20 20 20 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 | p>.......In.Zig,.the.programmer. |
| 87da0 | 63 61 6e 20 6c 61 62 65 6c 20 76 61 72 69 61 62 6c 65 73 20 61 73 20 3c 63 6f 64 65 3e 3c 73 70 | can.label.variables.as.<code><sp |
| 87dc0 | 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 |
| 87de0 | 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 74 6f 20 74 68 65 | ></code>..This.guarantees.to.the |
| 87e00 | 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 20 6c 6f 61 64 20 | .compiler.......that.every.load. |
| 87e20 | 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 69 73 20 70 65 72 | and.store.of.the.variable.is.per |
| 87e40 | 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 79 20 76 69 6f 6c | formed.at.compile-time..Any.viol |
| 87e60 | 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 0a 20 20 20 20 20 | ation.of.this.results.in.a...... |
| 87e80 | 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 0a 20 20 20 20 20 | .compile.error........</p>...... |
| 87ea0 | 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 69 74 68 20 74 68 | .<p>.......This.combined.with.th |
| 87ec0 | 65 20 66 61 63 74 20 74 68 61 74 20 77 65 20 63 61 6e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | e.fact.that.we.can.<code><span.c |
| 87ee0 | 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 6f 64 | lass="tok-kw">inline</span></cod |
| 87f00 | 65 3e 20 6c 6f 6f 70 73 20 61 6c 6c 6f 77 73 20 75 73 20 74 6f 20 77 72 69 74 65 0a 20 20 20 20 | e>.loops.allows.us.to.write..... |
| 87f20 | 20 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 68 69 63 68 20 69 73 20 70 61 72 74 69 61 6c 6c 79 20 | ..a.function.which.is.partially. |
| 87f40 | 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 20 61 6e 64 20 70 61 | evaluated.at.compile-time.and.pa |
| 87f60 | 72 74 69 61 6c 6c 79 20 61 74 20 72 75 6e 2d 74 69 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | rtially.at.run-time........</p>. |
| 87f80 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 | ......<p>.......For.example:.... |
| 87fa0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | ...</p>.......<figure><figcaptio |
| 87fc0 | 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 | n.class="zig-cap"><cite.class="f |
| 87fe0 | 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 65 76 61 6c 75 61 74 69 6f 6e 2e 7a 69 | ile">test_comptime_evaluation.zi |
| 88000 | 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e | g</cite></figcaption><pre><code> |
| 88020 | 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 |
| 88040 | 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 |
| 88060 | 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= |
| 88080 | 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> |
| 880a0 | 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=" |
| 880c0 | 74 6f 6b 2d 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 | tok-kw">const</span>.CmdFn.=.<sp |
| 880e0 | 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>. |
| 88100 | 7b 0a 20 20 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 | {.....name:.[]<span.class="tok-k |
| 88120 | 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 |
| 88140 | 2d 74 79 70 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 | -type">u8</span>,.....func:.<spa |
| 88160 | 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 28 3c 73 70 61 | n.class="tok-kw">fn</span>.(<spa |
| 88180 | 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 20 3c | n.class="tok-type">i32</span>).< |
| 881a0 | 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> |
| 881c0 | 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 63 6f 6e 73 74 | ,.};..<span.class="tok-kw">const |
| 881e0 | 3c 2f 73 70 61 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 | </span>.cmd_fns.=.[_]CmdFn{..... |
| 88200 | 43 6d 64 46 6e 7b 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 | CmdFn{..name.=.<span.class="tok- |
| 88220 | 73 74 72 22 3e 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 | str">"one"</span>,..fu |
| 88240 | 6e 63 20 3d 20 6f 6e 65 20 7d 2c 0a 20 20 20 20 43 6d 64 46 6e 7b 20 2e 6e 61 6d 65 20 3d 20 3c | nc.=.one.},.....CmdFn{..name.=.< |
| 88260 | 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 77 6f 26 71 | span.class="tok-str">"two&q |
| 88280 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 66 75 6e 63 20 3d 20 74 77 6f 20 7d 2c 0a 20 20 20 20 | uot;</span>,..func.=.two.},..... |
| 882a0 | 43 6d 64 46 6e 7b 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 | CmdFn{..name.=.<span.class="tok- |
| 882c0 | 73 74 72 22 3e 26 71 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 | str">"three"</span>,.. |
| 882e0 | 66 75 6e 63 20 3d 20 74 68 72 65 65 20 7d 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | func.=.three.},.};.<span.class=" |
| 88300 | 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 |
| 88320 | 6f 6b 2d 66 6e 22 3e 6f 6e 65 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 | ok-fn">one</span>(value:.<span.c |
| 88340 | 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 61 | lass="tok-type">i32</span>).<spa |
| 88360 | 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>.{. |
| 88380 | 20 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< |
| 883a0 | 2f 73 70 61 6e 3e 20 76 61 6c 75 65 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>.value.+.<span.class="tok- |
| 883c0 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | number">1</span>;.}.<span.class= |
| 883e0 | 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=" |
| 88400 | 74 6f 6b 2d 66 6e 22 3e 74 77 6f 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 | tok-fn">two</span>(value:.<span. |
| 88420 | 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 |
| 88440 | 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 7b | an.class="tok-type">i32</span>.{ |
| 88460 | 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 |
| 88480 | 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | </span>.value.+.<span.class="tok |
| 884a0 | 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | -number">2</span>;.}.<span.class |
| 884c0 | 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= |
| 884e0 | 22 74 6f 6b 2d 66 6e 22 3e 74 68 72 65 65 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 | "tok-fn">three</span>(value:.<sp |
| 88500 | 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 20 | an.class="tok-type">i32</span>). |
| 88520 | 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 |
| 88540 | 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 |
| 88560 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | urn</span>.value.+.<span.class=" |
| 88580 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | tok-number">3</span>;.}..<span.c |
| 885a0 | 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 |
| 885c0 | 61 73 73 3d 22 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 3c 73 | ass="tok-fn">performFn</span>(<s |
| 885e0 | 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 |
| 88600 | 6e 3e 20 70 72 65 66 69 78 5f 63 68 61 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>.prefix_char:.<span.class="tok |
| 88620 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 73 74 61 72 74 5f 76 61 6c 75 65 3a 20 3c | -type">u8</span>,.start_value:.< |
| 88640 | 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> |
| 88660 | 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 73 70 | ).<span.class="tok-type">i32</sp |
| 88680 | 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 |
| 886a0 | 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 |
| 886c0 | 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 61 6c 75 | ok-type">i32</span>.=.start_valu |
| 886e0 | 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 63 6f 6d 70 | e;.....<span.class="tok-kw">comp |
| 88700 | 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" |
| 88720 | 3e 76 61 72 3c 2f 73 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 | >var</span>.i.=.<span.class="tok |
| 88740 | 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 63 6c 61 | -number">0</span>;.....<span.cla |
| 88760 | 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 20 3c 73 70 61 6e 20 | ss="tok-kw">inline</span>.<span. |
| 88780 | 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 26 | class="tok-kw">while</span>.(i.& |
| 887a0 | 6c 74 3b 20 63 6d 64 5f 66 6e 73 2e 6c 65 6e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 | lt;.cmd_fns.len).:.(i.+=.<span.c |
| 887c0 | 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>).{... |
| 887e0 | 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 |
| 88800 | 70 61 6e 3e 20 28 63 6d 64 5f 66 6e 73 5b 69 5d 2e 6e 61 6d 65 5b 3c 73 70 61 6e 20 63 6c 61 73 | pan>.(cmd_fns[i].name[<span.clas |
| 88820 | 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 70 72 65 66 | s="tok-number">0</span>].==.pref |
| 88840 | 69 78 5f 63 68 61 72 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 73 75 6c 74 20 3d 20 | ix_char).{.............result.=. |
| 88860 | 63 6d 64 5f 66 6e 73 5b 69 5d 2e 66 75 6e 63 28 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 20 20 20 | cmd_fns[i].func(result);........ |
| 88880 | 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 2d 6b 77 | .}.....}.....<span.class="tok-kw |
| 888a0 | 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 6e | ">return</span>.result;.}..<span |
| 888c0 | 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 |
| 888e0 | 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 72 66 6f 72 6d 20 | n.class="tok-str">"perform. |
| 88900 | 66 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 20 63 6c 61 73 | fn"</span>.{.....<span.clas |
| 88920 | 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 70 65 72 | s="tok-kw">try</span>.expect(per |
| 88940 | 66 6f 72 6d 46 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 74 27 | formFn(<span.class="tok-str">'t' |
| 88960 | 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 |
| 88980 | 22 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 | ">1</span>).==.<span.class="tok- |
| 889a0 | 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 |
| 889c0 | 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 70 65 | ss="tok-kw">try</span>.expect(pe |
| 889e0 | 72 66 6f 72 6d 46 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6f | rformFn(<span.class="tok-str">'o |
| 88a00 | 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 6b 2d 6e 75 6d 62 65 | '</span>,.<span.class="tok-numbe |
| 88a20 | 72 22 3e 30 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">0</span>).==.<span.class="tok |
| 88a40 | 2d 6e 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 | -number">1</span>);.....<span.cl |
| 88a60 | 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 70 | ass="tok-kw">try</span>.expect(p |
| 88a80 | 65 72 66 6f 72 6d 46 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 | erformFn(<span.class="tok-str">' |
| 88aa0 | 77 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 6b 2d 6e 75 6d 62 | w'</span>,.<span.class="tok-numb |
| 88ac0 | 65 72 22 3e 39 39 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 | er">99</span>).==.<span.class="t |
| 88ae0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | ok-number">99</span>);.}</code>< |
| 88b00 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | /pre></figure><figure><figcaptio |
| 88b20 | 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 | n.class="shell-cap">Shell</figca |
| 88b40 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 | ption><pre><samp>$.<kbd>zig.test |
| 88b60 | 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 65 76 61 6c 75 61 74 69 6f 6e 2e 7a 69 67 3c 2f 6b | .test_comptime_evaluation.zig</k |
| 88b80 | 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 65 76 61 6c 75 61 74 69 6f 6e | bd>.1/1.test_comptime_evaluation |
| 88ba0 | 2e 74 65 73 74 2e 70 65 72 66 6f 72 6d 20 66 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 | .test.perform.fn...OK.All.1.test |
| 88bc0 | 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | s.passed..</samp></pre></figure> |
| 88be0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 65 78 61 6d 70 6c 65 20 69 | ........<p>.......This.example.i |
| 88c00 | 73 20 61 20 62 69 74 20 63 6f 6e 74 72 69 76 65 64 2c 20 62 65 63 61 75 73 65 20 74 68 65 20 63 | s.a.bit.contrived,.because.the.c |
| 88c20 | 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 65 76 61 6c 75 61 74 69 6f 6e 20 63 6f 6d 70 6f 6e 65 6e 74 | ompile-time.evaluation.component |
| 88c40 | 20 69 73 20 75 6e 6e 65 63 65 73 73 61 72 79 3b 0a 20 20 20 20 20 20 74 68 69 73 20 63 6f 64 65 | .is.unnecessary;.......this.code |
| 88c60 | 20 77 6f 75 6c 64 20 77 6f 72 6b 20 66 69 6e 65 20 69 66 20 69 74 20 77 61 73 20 61 6c 6c 20 64 | .would.work.fine.if.it.was.all.d |
| 88c80 | 6f 6e 65 20 61 74 20 72 75 6e 2d 74 69 6d 65 2e 20 42 75 74 20 69 74 20 64 6f 65 73 20 65 6e 64 | one.at.run-time..But.it.does.end |
| 88ca0 | 20 75 70 20 67 65 6e 65 72 61 74 69 6e 67 0a 20 20 20 20 20 20 64 69 66 66 65 72 65 6e 74 20 63 | .up.generating.......different.c |
| 88cc0 | 6f 64 65 2e 20 49 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 66 75 6e 63 74 69 | ode..In.this.example,.the.functi |
| 88ce0 | 6f 6e 20 3c 63 6f 64 65 3e 70 65 72 66 6f 72 6d 46 6e 3c 2f 63 6f 64 65 3e 20 69 73 20 67 65 6e | on.<code>performFn</code>.is.gen |
| 88d00 | 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,... |
| 88d20 | 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 |
| 88d40 | 20 6f 66 20 3c 63 6f 64 65 3e 70 72 65 66 69 78 5f 63 68 61 72 3c 2f 63 6f 64 65 3e 20 70 72 6f | .of.<code>prefix_char</code>.pro |
| 88d60 | 76 69 64 65 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e | vided:.......</p>.......<figure> |
| 88d80 | 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 | <figcaption.class="zig-cap"><cit |
| 88da0 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 70 65 72 66 6f 72 6d 46 6e 5f 31 3c 2f 63 69 74 65 | e.class="file">performFn_1</cite |
| 88dc0 | 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></figcaption><pre><code><span.c |
| 88de0 | 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 |
| 88e00 | 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 |
| 88e20 | 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 20 31 | ment">//.expect(performFn('t',.1 |
| 88e40 | 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 6f 6b | ).==.6);</span>.<span.class="tok |
| 88e60 | 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- |
| 88e80 | 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 |
| 88ea0 | 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 |
| 88ec0 | 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< |
| 88ee0 | 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 |
| 88f00 | 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 |
| 88f20 | 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 |
| 88f40 | 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 3b 0a | alue;.....result.=.two(result);. |
| 88f60 | 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 20 20 | ....result.=.three(result);..... |
| 88f80 | 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 |
| 88fa0 | 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 2f 66 69 67 75 72 | n>.result;.}</code></pre></figur |
| 88fc0 | 65 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | e>.......<figure><figcaption.cla |
| 88fe0 | 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | ss="zig-cap"><cite.class="file"> |
| 89000 | 70 65 72 66 6f 72 6d 46 6e 5f 32 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | performFn_2</cite></figcaption>< |
| 89020 | 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | pre><code><span.class="tok-comme |
| 89040 | 6e 74 22 3e 2f 2f 20 46 72 6f 6d 20 74 68 65 20 6c 69 6e 65 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | nt">//.From.the.line:</span>.<sp |
| 89060 | 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 65 78 70 65 63 74 | an.class="tok-comment">//.expect |
| 89080 | 28 70 65 72 66 6f 72 6d 46 6e 28 27 6f 27 2c 20 30 29 20 3d 3d 20 31 29 3b 3c 2f 73 70 61 6e 3e | (performFn('o',.0).==.1);</span> |
| 890a0 | 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>. |
| 890c0 | 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 46 6e 3c 2f | <span.class="tok-fn">performFn</ |
| 890e0 | 73 70 61 6e 3e 28 73 74 61 72 74 5f 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>(start_value:.<span.class=" |
| 89100 | 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 |
| 89120 | 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 |
| 89140 | 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 72 65 | pan.class="tok-kw">var</span>.re |
| 89160 | 73 75 6c 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 33 32 | sult:.<span.class="tok-type">i32 |
| 89180 | 3c 2f 73 70 61 6e 3e 20 3d 20 73 74 61 72 74 5f 76 61 6c 75 65 3b 0a 20 20 20 20 72 65 73 75 6c | </span>.=.start_value;.....resul |
| 891a0 | 74 20 3d 20 6f 6e 65 28 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | t.=.one(result);.....<span.class |
| 891c0 | 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 0a | ="tok-kw">return</span>.result;. |
| 891e0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 66 | }</code></pre></figure>.......<f |
| 89200 | 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 | igure><figcaption.class="zig-cap |
| 89220 | 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 70 65 72 66 6f 72 6d 46 6e 5f 33 | "><cite.class="file">performFn_3 |
| 89240 | 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | </cite></figcaption><pre><code>< |
| 89260 | 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 46 72 6f 6d | span.class="tok-comment">//.From |
| 89280 | 20 74 68 65 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 | .the.line:</span>.<span.class="t |
| 892a0 | 6f 6b 2d 63 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 | ok-comment">//.expect(performFn( |
| 892c0 | 27 77 27 2c 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 | 'w',.99).==.99);</span>.<span.cl |
| 892e0 | 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 |
| 89300 | 73 73 3d 22 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 | ss="tok-fn">performFn</span>(sta |
| 89320 | 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 22 | rt_value:.<span.class="tok-type" |
| 89340 | 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 79 | >i32</span>).<span.class="tok-ty |
| 89360 | 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 73 | pe">i32</span>.{.....<span.class |
| 89380 | 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 70 | ="tok-kw">var</span>.result:.<sp |
| 893a0 | 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>.= |
| 893c0 | 20 73 74 61 72 74 5f 76 61 6c 75 65 3b 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 72 65 73 75 6c | .start_value;....._.=.&resul |
| 893e0 | 74 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 | t;.....<span.class="tok-kw">retu |
| 89400 | 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 3e 3c 2f 70 72 65 3e | rn</span>.result;.}</code></pre> |
| 89420 | 3c 2f 66 69 67 75 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 | </figure>.......<p>.......Note.t |
| 89440 | 68 61 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 | hat.this.happens.even.in.a.debug |
| 89460 | 20 62 75 69 6c 64 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 6e 6f 74 20 61 20 77 61 79 20 | .build........This.is.not.a.way. |
| 89480 | 74 6f 20 77 72 69 74 65 20 6d 6f 72 65 20 6f 70 74 69 6d 69 7a 65 64 20 63 6f 64 65 2c 20 62 75 | to.write.more.optimized.code,.bu |
| 894a0 | 74 20 69 74 20 69 73 20 61 20 77 61 79 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 61 74 20 | t.it.is.a.way.to.make.sure.that. |
| 894c0 | 77 68 61 74 20 3c 65 6d 3e 73 68 6f 75 6c 64 3c 2f 65 6d 3e 20 68 61 70 70 65 6e 0a 20 20 20 20 | what.<em>should</em>.happen..... |
| 894e0 | 20 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 3c 65 6d 3e 64 6f 65 73 3c 2f 65 6d 3e | ..at.compile-time,.<em>does</em> |
| 89500 | 20 68 61 70 70 65 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 20 54 68 69 73 20 63 61 | .happen.at.compile-time..This.ca |
| 89520 | 74 63 68 65 73 20 6d 6f 72 65 20 65 72 72 6f 72 73 20 61 6e 64 20 61 6c 6c 6f 77 73 20 65 78 70 | tches.more.errors.and.allows.exp |
| 89540 | 72 65 73 73 69 76 65 6e 65 73 73 0a 20 20 20 20 20 20 74 68 61 74 20 69 6e 20 6f 74 68 65 72 20 | ressiveness.......that.in.other. |
| 89560 | 6c 61 6e 67 75 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 | languages.requires.using.macros, |
| 89580 | 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 73 | .generated.code,.or.a.preprocess |
| 895a0 | 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 20 | or.to.accomplish........</p>.... |
| 895c0 | 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 45 | ..........<h4.id="Compile-Time-E |
| 895e0 | 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 6c | xpressions"><a.href="#toc-Compil |
| 89600 | 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 65 | e-Time-Expressions">Compile-Time |
| 89620 | 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 20 | .Expressions</a>.<a.class="hdr". |
| 89640 | 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 22 | href="#Compile-Time-Expressions" |
| 89660 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e | >..</a></h4>........<p>.......In |
| 89680 | 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 6e | .Zig,.it.matters.whether.a.given |
| 896a0 | 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 2d | .expression.is.known.at.compile- |
| 896c0 | 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 63 | time.or.run-time..A.programmer.c |
| 896e0 | 61 6e 0a 20 20 20 20 20 20 75 73 65 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | an.......use.a.<code><span.class |
| 89700 | 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 3e | ="tok-kw">comptime</span></code> |
| 89720 | 20 65 78 70 72 65 73 73 69 6f 6e 20 74 6f 20 67 75 61 72 61 6e 74 65 65 20 74 68 61 74 20 74 68 | .expression.to.guarantee.that.th |
| 89740 | 65 20 65 78 70 72 65 73 73 69 6f 6e 20 77 69 6c 6c 20 62 65 20 65 76 61 6c 75 61 74 65 64 20 61 | e.expression.will.be.evaluated.a |
| 89760 | 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 0a 20 20 20 20 20 20 49 66 20 74 68 69 73 20 63 61 | t.compile-time........If.this.ca |
| 89780 | 6e 6e 6f 74 20 62 65 20 61 63 63 6f 6d 70 6c 69 73 68 65 64 2c 20 74 68 65 20 63 6f 6d 70 69 6c | nnot.be.accomplished,.the.compil |
| 897a0 | 65 72 20 77 69 6c 6c 20 65 6d 69 74 20 61 6e 20 65 72 72 6f 72 2e 20 46 6f 72 20 65 78 61 6d 70 | er.will.emit.an.error..For.examp |
| 897c0 | 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 | le:.......</p>.......<figure><fi |
| 897e0 | 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 | gcaption.class="zig-cap"><cite.c |
| 89800 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 63 61 6c 6c 5f 65 | lass="file">test_comptime_call_e |
| 89820 | 78 74 65 72 6e 5f 66 75 6e 63 74 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | xtern_function.zig</cite></figca |
| 89840 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ption><pre><code><span.class="to |
| 89860 | 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 3d | k-kw">extern</span>.<span.class= |
| 89880 | 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=" |
| 898a0 | 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 63 6c 61 73 | tok-fn">exit</span>().<span.clas |
| 898c0 | 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 3b 0a 0a 3c | s="tok-type">noreturn</span>;..< |
| 898e0 | 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>. |
| 89900 | 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 6f 6f 26 | <span.class="tok-str">"foo& |
| 89920 | 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=" |
| 89940 | 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>.{....... |
| 89960 | 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 65 3e 3c 2f | ..exit();.....}.}</code></pre></ |
| 89980 | 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | figure><figure><figcaption.class |
| 899a0 | 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | ="shell-cap">Shell</figcaption>< |
| 899c0 | 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 | pre><samp>$.<kbd>zig.test.test_c |
| 899e0 | 6f 6d 70 74 69 6d 65 5f 63 61 6c 6c 5f 65 78 74 65 72 6e 5f 66 75 6e 63 74 69 6f 6e 2e 7a 69 67 | omptime_call_extern_function.zig |
| 89a00 | 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d | </kbd>.<span.class="sgr-1m">/hom |
| 89a20 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f | e/andy/dev/zig/doc/langref/test_ |
| 89a40 | 63 6f 6d 70 74 69 6d 65 5f 63 61 6c 6c 5f 65 78 74 65 72 6e 5f 66 75 6e 63 74 69 6f 6e 2e 7a 69 | comptime_call_extern_function.zi |
| 89a60 | 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 73 67 72 2d | g:5:13:.</span><span.class="sgr- |
| 89a80 | 33 31 6d 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 | 31m">error:.</span><span.class=" |
| 89aa0 | 73 67 72 2d 31 6d 22 3e 63 6f 6d 70 74 69 6d 65 20 63 61 6c 6c 20 6f 66 20 65 78 74 65 72 6e 20 | sgr-1m">comptime.call.of.extern. |
| 89ac0 | 66 75 6e 63 74 69 6f 6e 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 20 20 20 20 65 78 69 74 28 29 3b 0a | function.</span>........exit();. |
| 89ae0 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 7e 7e | ........<span.class="sgr-32m">~~ |
| 89b00 | 7e 7e 5e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 | ~~^~.</span><span.class="sgr-1m" |
| 89b20 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f | >/home/andy/dev/zig/doc/langref/ |
| 89b40 | 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 63 61 6c 6c 5f 65 78 74 65 72 6e 5f 66 75 6e 63 74 69 | test_comptime_call_extern_functi |
| 89b60 | 6f 6e 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 73 73 3d 22 | on.zig:4:5:.</span><span.class=" |
| 89b80 | 73 67 72 2d 33 36 6d 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 | sgr-36m">note:.</span><span.clas |
| 89ba0 | 73 3d 22 73 67 72 2d 31 6d 22 3e 27 63 6f 6d 70 74 69 6d 65 27 20 6b 65 79 77 6f 72 64 20 66 6f | s="sgr-1m">'comptime'.keyword.fo |
| 89bc0 | 72 63 65 73 20 63 6f 6d 70 74 69 6d 65 20 65 76 61 6c 75 61 74 69 6f 6e 0a 3c 2f 73 70 61 6e 3e | rces.comptime.evaluation.</span> |
| 89be0 | 20 20 20 20 63 6f 6d 70 74 69 6d 65 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ....comptime.{.....<span.class=" |
| 89c00 | 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 | sgr-32m">^~~~~~~~.</span>.</samp |
| 89c20 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | ></pre></figure>........<p>..... |
| 89c40 | 20 20 49 74 20 64 6f 65 73 6e 27 74 20 6d 61 6b 65 20 73 65 6e 73 65 20 74 68 61 74 20 61 20 70 | ..It.doesn't.make.sense.that.a.p |
| 89c60 | 72 6f 67 72 61 6d 20 63 6f 75 6c 64 20 63 61 6c 6c 20 3c 63 6f 64 65 3e 65 78 69 74 28 29 3c 2f | rogram.could.call.<code>exit()</ |
| 89c80 | 63 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 | code>.(or.any.other.external.fun |
| 89ca0 | 63 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 | ction)...........at.compile-time |
| 89cc0 | 2c 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 | ,.so.this.is.a.compile.error..Ho |
| 89ce0 | 77 65 76 65 72 2c 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | wever,.a.<code><span.class="tok- |
| 89d00 | 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 65 78 70 72 65 | kw">comptime</span></code>.expre |
| 89d20 | 73 73 69 6f 6e 20 64 6f 65 73 20 6d 75 63 68 0a 20 20 20 20 20 20 6d 6f 72 65 20 74 68 61 6e 20 | ssion.does.much.......more.than. |
| 89d40 | 73 6f 6d 65 74 69 6d 65 73 20 63 61 75 73 65 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e | sometimes.cause.a.compile.error. |
| 89d60 | 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 69 74 68 | .......</p>.......<p>.......With |
| 89d80 | 69 6e 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | in.a.<code><span.class="tok-kw"> |
| 89da0 | 63 6f 6d 70 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 | comptime</span></code>.expressio |
| 89dc0 | 6e 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 | n:.......</p>.......<ul>........ |
| 89de0 | 20 20 20 3c 6c 69 3e 41 6c 6c 20 76 61 72 69 61 62 6c 65 73 20 61 72 65 20 3c 63 6f 64 65 3e 3c | ...<li>All.variables.are.<code>< |
| 89e00 | 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 |
| 89e20 | 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 20 20 20 | an></code>.variables.</li>...... |
| 89e40 | 20 20 20 20 20 3c 6c 69 3e 41 6c 6c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .....<li>All.<code><span.class=" |
| 89e60 | 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e | tok-kw">if</span></code>,.<code> |
| 89e80 | 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 70 61 6e | <span.class="tok-kw">while</span |
| 89ea0 | 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ></code>,.<code><span.class="tok |
| 89ec0 | 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 6e 64 20 3c 63 6f 64 | -kw">for</span></code>,.and.<cod |
| 89ee0 | 65 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 | e><span.class="tok-kw">switch</s |
| 89f00 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 65 78 70 72 65 73 73 69 6f 6e | pan></code>...........expression |
| 89f20 | 73 20 61 72 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 2c | s.are.evaluated.at.compile-time, |
| 89f40 | 20 6f 72 20 65 6d 69 74 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 66 20 74 68 69 73 | .or.emit.a.compile.error.if.this |
| 89f60 | 20 69 73 20 6e 6f 74 20 70 6f 73 73 69 62 6c 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | .is.not.possible.</li>.......... |
| 89f80 | 20 3c 6c 69 3e 41 6c 6c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .<li>All.<code><span.class="tok- |
| 89fa0 | 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f | kw">return</span></code>.and.<co |
| 89fc0 | 64 65 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 70 61 | de><span.class="tok-kw">try</spa |
| 89fe0 | 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 20 61 72 65 20 69 6e 76 61 6c 69 | n></code>.expressions.are.invali |
| 8a000 | 64 20 28 75 6e 6c 65 73 73 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 69 74 73 65 6c 66 20 69 73 | d.(unless.the.function.itself.is |
| 8a020 | 20 63 61 6c 6c 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 29 2e 3c 2f 6c 69 3e 0a 20 | .called.at.compile-time).</li>.. |
| 8a040 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6c 6c 20 63 6f 64 65 20 77 69 74 68 20 72 75 6e 74 69 | .........<li>All.code.with.runti |
| 8a060 | 6d 65 20 73 69 64 65 20 65 66 66 65 63 74 73 20 6f 72 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 | me.side.effects.or.depending.on. |
| 8a080 | 72 75 6e 74 69 6d 65 20 76 61 6c 75 65 73 20 65 6d 69 74 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 | runtime.values.emits.a.compile.e |
| 8a0a0 | 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6c 6c 20 66 75 6e | rror.</li>...........<li>All.fun |
| 8a0c0 | 63 74 69 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 | ction.calls.cause.the.compiler.t |
| 8a0e0 | 6f 20 69 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 | o.interpret.the.function.at.comp |
| 8a100 | 69 6c 65 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 | ile-time,.emitting.a...........c |
| 8a120 | 6f 6d 70 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 | ompile.error.if.the.function.tri |
| 8a140 | 65 73 20 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 | es.to.do.something.that.has.glob |
| 8a160 | 61 6c 20 72 75 6e 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 | al.runtime.side.effects.</li>... |
| 8a180 | 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 54 68 69 73 20 6d | ....</ul>.......<p>.......This.m |
| 8a1a0 | 65 61 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 | eans.that.a.programmer.can.creat |
| 8a1c0 | 65 20 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 | e.a.function.which.is.called.bot |
| 8a1e0 | 68 20 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 | h.at.compile-time.and.run-time,. |
| 8a200 | 77 69 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 | with.......no.modification.to.th |
| 8a220 | 65 20 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 | e.function.required........</p>. |
| 8a240 | 20 20 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 | ......<p>.......Let's.look.at.an |
| 8a260 | 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 66 69 67 75 | .example:.......</p>.......<figu |
| 8a280 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c | re><figcaption.class="zig-cap">< |
| 8a2a0 | 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 66 69 62 6f 6e 61 63 63 69 | cite.class="file">test_fibonacci |
| 8a2c0 | 5f 72 65 63 75 72 73 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | _recursion.zig</cite></figcaptio |
| 8a2e0 | 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n><pre><code><span.class="tok-kw |
| 8a300 | 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 |
| 8a320 | 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> |
| 8a340 | 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 |
| 8a360 | 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;.. |
| 8a380 | 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>.< |
| 8a3a0 | 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 61 63 63 69 3c 2f 73 | span.class="tok-fn">fibonacci</s |
| 8a3c0 | 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 74 6f 6b 2d 74 79 70 | pan>(index:.<span.class="tok-typ |
| 8a3e0 | 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- |
| 8a400 | 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 61 6e 20 63 6c 61 | type">u32</span>.{.....<span.cla |
| 8a420 | 73 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 | ss="tok-kw">if</span>.(index.< |
| 8a440 | 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 73 70 | ;.<span.class="tok-number">2</sp |
| 8a460 | 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 72 65 74 75 72 6e | an>).<span.class="tok-kw">return |
| 8a480 | 3c 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 | </span>.index;.....<span.class=" |
| 8a4a0 | 74 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 | tok-kw">return</span>.fibonacci( |
| 8a4c0 | 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 22 | index.-.<span.class="tok-number" |
| 8a4e0 | 3e 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 | >1</span>).+.fibonacci(index.-.< |
| 8a500 | 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> |
| 8a520 | 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< |
| 8a540 | 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 |
| 8a560 | 6f 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 | ot;fibonacci"</span>.{..... |
| 8a580 | 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 65 73 | <span.class="tok-comment">//.tes |
| 8a5a0 | 74 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 | t.fibonacci.at.run-time</span>.. |
| 8a5c0 | 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 |
| 8a5e0 | 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 73 3d | n>.expect(fibonacci(<span.class= |
| 8a600 | 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 6e 20 | "tok-number">7</span>).==.<span. |
| 8a620 | 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 0a 0a | class="tok-number">13</span>);.. |
| 8a640 | 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">// |
| 8a660 | 20 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 | .test.fibonacci.at.compile-time< |
| 8a680 | 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"> |
| 8a6a0 | 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 22 3e | try</span>.<span.class="tok-kw"> |
| 8a6c0 | 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 69 62 6f 6e 61 63 63 69 | comptime</span>.expect(fibonacci |
| 8a6e0 | 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 37 3c 2f 73 70 61 | (<span.class="tok-number">7</spa |
| 8a700 | 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 72 22 3e | n>).==.<span.class="tok-number"> |
| 8a720 | 31 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 2f 66 69 67 75 | 13</span>);.}</code></pre></figu |
| 8a740 | 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 | re><figure><figcaption.class="sh |
| 8a760 | 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | ell-cap">Shell</figcaption><pre> |
| 8a780 | 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 66 69 62 6f 6e | <samp>$.<kbd>zig.test.test_fibon |
| 8a7a0 | 61 63 63 69 5f 72 65 63 75 72 73 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 | acci_recursion.zig</kbd>.1/1.tes |
| 8a7c0 | 74 5f 66 69 62 6f 6e 61 63 63 69 5f 72 65 63 75 72 73 69 6f 6e 2e 74 65 73 74 2e 66 69 62 6f 6e | t_fibonacci_recursion.test.fibon |
| 8a7e0 | 61 63 63 69 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f | acci...OK.All.1.tests.passed..</ |
| 8a800 | 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | samp></pre></figure>........<p>. |
| 8a820 | 20 20 20 20 20 20 49 6d 61 67 69 6e 65 20 69 66 20 77 65 20 68 61 64 20 66 6f 72 67 6f 74 74 65 | ......Imagine.if.we.had.forgotte |
| 8a840 | 6e 20 74 68 65 20 62 61 73 65 20 63 61 73 65 20 6f 66 20 74 68 65 20 72 65 63 75 72 73 69 76 65 | n.the.base.case.of.the.recursive |
| 8a860 | 20 66 75 6e 63 74 69 6f 6e 20 61 6e 64 20 74 72 69 65 64 20 74 6f 20 72 75 6e 20 74 68 65 20 74 | .function.and.tried.to.run.the.t |
| 8a880 | 65 73 74 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | ests:.......</p>.......<figure>< |
| 8a8a0 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 | figcaption.class="zig-cap"><cite |
| 8a8c0 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 66 69 62 6f 6e 61 63 63 69 5f 63 6f 6d | .class="file">test_fibonacci_com |
| 8a8e0 | 70 74 69 6d 65 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | ptime_overflow.zig</cite></figca |
| 8a900 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ption><pre><code><span.class="to |
| 8a920 | 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 |
| 8a940 | 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 |
| 8a960 | 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">" |
| 8a980 | 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 |
| 8a9a0 | 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 |
| 8a9c0 | 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 61 63 63 | n>.<span.class="tok-fn">fibonacc |
| 8a9e0 | 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 74 6f 6b | i</span>(index:.<span.class="tok |
| 8aa00 | 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 3d 22 | -type">u32</span>).<span.class=" |
| 8aa20 | 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 61 6e | tok-type">u32</span>.{.....<span |
| 8aa40 | 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 64 65 78 | .class="tok-comment">//if.(index |
| 8aa60 | 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 0a 20 20 | .<.2).return.index;</span>... |
| 8aa80 | 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 |
| 8aaa0 | 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 63 6c 61 | pan>.fibonacci(index.-.<span.cla |
| 8aac0 | 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 69 62 6f | ss="tok-number">1</span>).+.fibo |
| 8aae0 | 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 6b 2d 6e | nacci(index.-.<span.class="tok-n |
| 8ab00 | 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 61 73 73 | umber">2</span>);.}..<span.class |
| 8ab20 | 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 |
| 8ab40 | 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 75 6f 74 | s="tok-str">"fibonacci" |
| 8ab60 | 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- |
| 8ab80 | 6b 77 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 | kw">try</span>.<span.class="tok- |
| 8aba0 | 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 69 62 6f 6e | kw">comptime</span>.expect(fibon |
| 8abc0 | 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 72 22 3e 37 3c | acci(<span.class="tok-number">7< |
| 8abe0 | 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 62 | /span>).==.<span.class="tok-numb |
| 8ac00 | 65 72 22 3e 31 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 2f | er">13</span>);.}</code></pre></ |
| 8ac20 | 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | figure><figure><figcaption.class |
| 8ac40 | 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | ="shell-cap">Shell</figcaption>< |
| 8ac60 | 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 66 | pre><samp>$.<kbd>zig.test.test_f |
| 8ac80 | 69 62 6f 6e 61 63 63 69 5f 63 6f 6d 70 74 69 6d 65 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3c 2f | ibonacci_comptime_overflow.zig</ |
| 8aca0 | 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f | kbd>.<span.class="sgr-1m">/home/ |
| 8acc0 | 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 66 69 | andy/dev/zig/doc/langref/test_fi |
| 8ace0 | 62 6f 6e 61 63 63 69 5f 63 6f 6d 70 74 69 6d 65 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3a 35 3a | bonacci_comptime_overflow.zig:5: |
| 8ad00 | 32 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 | 28:.</span><span.class="sgr-31m" |
| 8ad20 | 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 73 67 72 2d | >error:.</span><span.class="sgr- |
| 8ad40 | 31 6d 22 3e 6f 76 65 72 66 6c 6f 77 20 6f 66 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 27 75 33 | 1m">overflow.of.integer.type.'u3 |
| 8ad60 | 32 27 20 77 69 74 68 20 76 61 6c 75 65 20 27 2d 31 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 72 65 | 2'.with.value.'-1'.</span>....re |
| 8ad80 | 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 62 6f | turn.fibonacci(index.-.1).+.fibo |
| 8ada0 | 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 20 20 | nacci(index.-.2);............... |
| 8adc0 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 7e 7e 7e | .......<span.class="sgr-32m">~~~ |
| 8ade0 | 7e 7e 7e 5e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 | ~~~^~~.</span><span.class="sgr-1 |
| 8ae00 | 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 | m">/home/andy/dev/zig/doc/langre |
| 8ae20 | 66 2f 74 65 73 74 5f 66 69 62 6f 6e 61 63 63 69 5f 63 6f 6d 70 74 69 6d 65 5f 6f 76 65 72 66 6c | f/test_fibonacci_comptime_overfl |
| 8ae40 | 6f 77 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 | ow.zig:5:21:.</span><span.class= |
| 8ae60 | 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | "sgr-36m">note:.</span><span.cla |
| 8ae80 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 | ss="sgr-1m">called.from.here</sp |
| 8aea0 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 20 28 37 20 74 69 6d 65 | an><span.class="sgr-2m">.(7.time |
| 8aec0 | 73 29 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 | s).</span>....return.fibonacci(i |
| 8aee0 | 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) |
| 8af00 | 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 73 67 72 2d 33 32 | ;............<span.class="sgr-32 |
| 8af20 | 6d 22 3e 7e 7e 7e 7e 7e 7e 7e 7e 7e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c | m">~~~~~~~~~^~~~~~~~~~~.</span>< |
| 8af40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | span.class="sgr-1m">/home/andy/d |
| 8af60 | 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 66 69 62 6f 6e 61 63 63 | ev/zig/doc/langref/test_fibonacc |
| 8af80 | 69 5f 63 6f 6d 70 74 69 6d 65 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3a 39 3a 33 34 3a 20 3c 2f | i_comptime_overflow.zig:9:34:.</ |
| 8afa0 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a | span><span.class="sgr-36m">note: |
| 8afc0 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 63 61 6c | .</span><span.class="sgr-1m">cal |
| 8afe0 | 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 74 72 79 20 63 6f 6d | led.from.here.</span>....try.com |
| 8b000 | 70 74 69 6d 65 20 65 78 70 65 63 74 28 66 69 62 6f 6e 61 63 63 69 28 37 29 20 3d 3d 20 31 33 29 | ptime.expect(fibonacci(7).==.13) |
| 8b020 | 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 3c 73 70 61 6e 20 | ;.........................<span. |
| 8b040 | 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 7e 7e 7e 7e 7e 7e 7e 7e 7e 5e 7e 7e 0a 3c 2f 73 | class="sgr-32m">~~~~~~~~~^~~.</s |
| 8b060 | 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 | pan>.</samp></pre></figure>..... |
| 8b080 | 20 20 20 3c 70 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 | ...<p>.......The.compiler.produc |
| 8b0a0 | 65 73 20 61 6e 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 | es.an.error.which.is.a.stack.tra |
| 8b0c0 | 63 65 20 66 72 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 | ce.from.trying.to.evaluate.the.. |
| 8b0e0 | 20 20 20 20 20 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 | .....function.at.compile-time... |
| 8b100 | 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 75 63 6b 69 6c | .....</p>.......<p>.......Luckil |
| 8b120 | 79 2c 20 77 65 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 | y,.we.used.an.unsigned.integer,. |
| 8b140 | 61 6e 64 20 73 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 | and.so.when.we.tried.to.subtract |
| 8b160 | 20 31 20 66 72 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 3c 61 | .1.from.0,.it.triggered.......<a |
| 8b180 | 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 | .href="#Illegal-Behavior">Illega |
| 8b1a0 | 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2c 20 77 68 69 63 68 20 69 73 20 61 6c 77 61 79 73 20 | l.Behavior</a>,.which.is.always. |
| 8b1c0 | 61 20 63 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 | a.compile.error.if.the.compiler. |
| 8b1e0 | 6b 6e 6f 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 | knows.it.happened........But.wha |
| 8b200 | 74 20 77 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 | t.would.have.happened.if.we.used |
| 8b220 | 20 61 20 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 | .a.signed.integer?.......</p>... |
| 8b240 | 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a | ....<figure><figcaption.class="z |
| 8b260 | 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 66 69 62 6f 6e | ig-cap"><cite.class="file">fibon |
| 8b280 | 61 63 63 69 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 66 69 6e 69 74 65 5f 72 65 63 75 72 73 69 6f 6e | acci_comptime_infinite_recursion |
| 8b2a0 | 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f | .zig</cite></figcaption><pre><co |
| 8b2c0 | 64 65 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 | de><span.class="tok-kw">const</s |
| 8b2e0 | 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | pan>.assert.=.<span.class="tok-b |
| 8b300 | 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 |
| 8b320 | 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 |
| 8b340 | 61 6e 3e 29 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 | an>).debug.assert;..<span.class= |
| 8b360 | 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=" |
| 8b380 | 74 6f 6b 2d 66 6e 22 3e 66 69 62 6f 6e 61 63 63 69 3c 2f 73 70 61 6e 3e 28 69 6e 64 65 78 3a 20 | tok-fn">fibonacci</span>(index:. |
| 8b3a0 | 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 |
| 8b3c0 | 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 2f 73 | >).<span.class="tok-type">i32</s |
| 8b3e0 | 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 |
| 8b400 | 65 6e 74 22 3e 2f 2f 69 66 20 28 69 6e 64 65 78 20 26 6c 74 3b 20 32 29 20 72 65 74 75 72 6e 20 | ent">//if.(index.<.2).return. |
| 8b420 | 69 6e 64 65 78 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 | index;</span>.....<span.class="t |
| 8b440 | 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 |
| 8b460 | 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"> |
| 8b480 | 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 |
| 8b4a0 | 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>) |
| 8b4c0 | 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</ |
| 8b4e0 | 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 |
| 8b500 | 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>.{.....< |
| 8b520 | 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 3c | span.class="tok-kw">try</span>.< |
| 8b540 | 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 |
| 8b560 | 61 6e 3e 20 61 73 73 65 72 74 28 66 69 62 6f 6e 61 63 63 69 28 3c 73 70 61 6e 20 63 6c 61 73 73 | an>.assert(fibonacci(<span.class |
| 8b580 | 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 6e | ="tok-number">7</span>).==.<span |
| 8b5a0 | 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 0a | .class="tok-number">13</span>);. |
| 8b5c0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c | }</code></pre></figure>........< |
| 8b5e0 | 70 3e 0a 20 20 20 20 20 20 54 68 65 20 63 6f 6d 70 69 6c 65 72 20 69 73 20 73 75 70 70 6f 73 65 | p>.......The.compiler.is.suppose |
| 8b600 | 64 20 74 6f 20 6e 6f 74 69 63 65 20 74 68 61 74 20 65 76 61 6c 75 61 74 69 6e 67 20 74 68 69 73 | d.to.notice.that.evaluating.this |
| 8b620 | 20 66 75 6e 63 74 69 6f 6e 20 61 74 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 | .function.at.......compile-time. |
| 8b640 | 74 6f 6f 6b 20 6d 6f 72 65 20 74 68 61 6e 20 31 30 30 30 20 62 72 61 6e 63 68 65 73 2c 20 61 6e | took.more.than.1000.branches,.an |
| 8b660 | 64 20 74 68 75 73 20 65 6d 69 74 73 20 61 6e 20 65 72 72 6f 72 20 61 6e 64 0a 20 20 20 20 20 20 | d.thus.emits.an.error.and....... |
| 8b680 | 67 69 76 65 73 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 | gives.up..If.the.programmer.want |
| 8b6a0 | 73 20 74 6f 20 69 6e 63 72 65 61 73 65 20 74 68 65 20 62 75 64 67 65 74 20 66 6f 72 20 63 6f 6d | s.to.increase.the.budget.for.com |
| 8b6c0 | 70 69 6c 65 2d 74 69 6d 65 0a 20 20 20 20 20 20 63 6f 6d 70 75 74 61 74 69 6f 6e 2c 20 74 68 65 | pile-time.......computation,.the |
| 8b6e0 | 79 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 | y.can.use.a.built-in.function.ca |
| 8b700 | 6c 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 | lled.......<a.href="#setEvalBran |
| 8b720 | 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 3e | chQuota">@setEvalBranchQuota</a> |
| 8b740 | 20 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 | .to.change.the.default.number.10 |
| 8b760 | 30 30 20 74 6f 0a 20 20 20 20 20 20 73 6f 6d 65 74 68 69 6e 67 20 65 6c 73 65 2e 0a 20 20 20 20 | 00.to.......something.else...... |
| 8b780 | 20 20 3c 2f 70 3e 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 | ..</p>.......<p>.......However,. |
| 8b7a0 | 74 68 65 72 65 20 69 73 20 61 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 | there.is.a.<a.href="https://gith |
| 8b7c0 | 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 33 37 32 34 22 | ub.com/ziglang/zig/issues/13724" |
| 8b7e0 | 3e 64 65 73 69 67 6e 0a 20 20 20 20 20 20 66 6c 61 77 20 69 6e 20 74 68 65 20 63 6f 6d 70 69 6c | >design.......flaw.in.the.compil |
| 8b800 | 65 72 3c 2f 61 3e 20 63 61 75 73 69 6e 67 20 69 74 20 74 6f 20 73 74 61 63 6b 20 6f 76 65 72 66 | er</a>.causing.it.to.stack.overf |
| 8b820 | 6c 6f 77 20 69 6e 73 74 65 61 64 20 6f 66 20 68 61 76 69 6e 67 20 74 68 65 20 70 72 6f 70 65 72 | low.instead.of.having.the.proper |
| 8b840 | 0a 20 20 20 20 20 20 62 65 68 61 76 69 6f 72 20 68 65 72 65 2e 20 49 27 6d 20 74 65 72 72 69 62 | .......behavior.here..I'm.terrib |
| 8b860 | 6c 79 20 73 6f 72 72 79 20 61 62 6f 75 74 20 74 68 61 74 2e 20 49 20 68 6f 70 65 20 74 6f 20 67 | ly.sorry.about.that..I.hope.to.g |
| 8b880 | 65 74 20 74 68 69 73 20 72 65 73 6f 6c 76 65 64 0a 20 20 20 20 20 20 62 65 66 6f 72 65 20 74 68 | et.this.resolved.......before.th |
| 8b8a0 | 65 20 6e 65 78 74 20 72 65 6c 65 61 73 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | e.next.release........</p>...... |
| 8b8c0 | 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 68 65 20 62 61 | .<p>.......What.if.we.fix.the.ba |
| 8b8e0 | 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 76 61 6c 75 65 | se.case,.but.put.the.wrong.value |
| 8b900 | 20 69 6e 20 74 68 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 65 78 70 65 63 74 3c 2f 63 6f 64 65 | .in.the.......<code>expect</code |
| 8b920 | 3e 20 6c 69 6e 65 3f 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 | >.line?.......</p>.......<figure |
| 8b940 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 | ><figcaption.class="zig-cap"><ci |
| 8b960 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 66 69 62 6f 6e 61 63 63 69 5f 63 | te.class="file">test_fibonacci_c |
| 8b980 | 6f 6d 70 74 69 6d 65 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | omptime_unreachable.zig</cite></ |
| 8b9a0 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | figcaption><pre><code><span.clas |
| 8b9c0 | 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 74 20 3d | s="tok-kw">const</span>.assert.= |
| 8b9e0 | 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 |
| 8ba00 | 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"> |
| 8ba20 | 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 61 73 | "std"</span>).debug.as |
| 8ba40 | 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 77 22 3e 66 6e 3c 2f | sert;..<span.class="tok-kw">fn</ |
| 8ba60 | 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 |
| 8ba80 | 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=" |
| 8baa0 | 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 |
| 8bac0 | 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 |
| 8bae0 | 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 69 6e | pan.class="tok-kw">if</span>.(in |
| 8bb00 | 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 62 65 72 | dex.<.<span.class="tok-number |
| 8bb20 | 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 6b 77 22 | ">2</span>).<span.class="tok-kw" |
| 8bb40 | 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 61 6e 20 | >return</span>.index;.....<span. |
| 8bb60 | 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 66 69 62 | class="tok-kw">return</span>.fib |
| 8bb80 | 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 6b 2d | onacci(index.-.<span.class="tok- |
| 8bba0 | 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 28 69 6e | number">1</span>).+.fibonacci(in |
| 8bbc0 | 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 32 | dex.-.<span.class="tok-number">2 |
| 8bbe0 | 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 |
| 8bc00 | 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 |
| 8bc20 | 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 61 6e 3e | tr">"fibonacci"</span> |
| 8bc40 | 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< |
| 8bc60 | 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 6d 70 | /span>.<span.class="tok-kw">comp |
| 8bc80 | 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 28 66 69 62 6f 6e 61 63 63 69 28 3c 73 70 | time</span>.assert(fibonacci(<sp |
| 8bca0 | 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 29 20 | an.class="tok-number">7</span>). |
| 8bcc0 | 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 39 39 39 | ==.<span.class="tok-number">9999 |
| 8bce0 | 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 2f 66 69 67 75 72 | 9</span>);.}</code></pre></figur |
| 8bd00 | 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 | e><figure><figcaption.class="she |
| 8bd20 | 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c | ll-cap">Shell</figcaption><pre>< |
| 8bd40 | 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 66 69 62 6f 6e 61 | samp>$.<kbd>zig.test.test_fibona |
| 8bd60 | 63 63 69 5f 63 6f 6d 70 74 69 6d 65 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3c 2f 6b 62 | cci_comptime_unreachable.zig</kb |
| 8bd80 | 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e | d>.<span.class="sgr-1m">/home/an |
| 8bda0 | 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 64 65 62 75 67 2e 7a 69 67 3a 35 35 30 | dy/dev/zig/lib/std/debug.zig:550 |
| 8bdc0 | 3a 31 34 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d | :14:.</span><span.class="sgr-31m |
| 8bde0 | 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 73 67 72 | ">error:.</span><span.class="sgr |
| 8be00 | 2d 31 6d 22 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 0a 3c 2f | -1m">reached.unreachable.code.</ |
| 8be20 | 73 70 61 6e 3e 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 | span>....if.(!ok).unreachable;./ |
| 8be40 | 2f 20 61 73 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 | /.assertion.failure............. |
| 8be60 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e | .<span.class="sgr-32m">^~~~~~~~~ |
| 8be80 | 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f | ~~.</span><span.class="sgr-1m">/ |
| 8bea0 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 | home/andy/dev/zig/doc/langref/te |
| 8bec0 | 73 74 5f 66 69 62 6f 6e 61 63 63 69 5f 63 6f 6d 70 74 69 6d 65 5f 75 6e 72 65 61 63 68 61 62 6c | st_fibonacci_comptime_unreachabl |
| 8bee0 | 65 2e 7a 69 67 3a 39 3a 32 34 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | e.zig:9:24:.</span><span.class=" |
| 8bf00 | 73 67 72 2d 33 36 6d 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 | sgr-36m">note:.</span><span.clas |
| 8bf20 | 73 3d 22 73 67 72 2d 31 6d 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 0a 3c 2f 73 70 | s="sgr-1m">called.from.here.</sp |
| 8bf40 | 61 6e 3e 20 20 20 20 74 72 79 20 63 6f 6d 70 74 69 6d 65 20 61 73 73 65 72 74 28 66 69 62 6f 6e | an>....try.comptime.assert(fibon |
| 8bf60 | 61 63 63 69 28 37 29 20 3d 3d 20 39 39 39 39 39 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | acci(7).==.99999);.............. |
| 8bf80 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 7e 7e 7e 7e 7e 7e | ....<span.class="sgr-32m">~~~~~~ |
| 8bfa0 | 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a | ^~~~~~~~~~~~~~~~~~~~~~~.</span>. |
| 8bfc0 | 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 0a 20 20 20 20 20 20 3c | </samp></pre></figure>.........< |
| 8bfe0 | 70 3e 0a 20 20 20 20 20 20 41 74 20 3c 61 20 68 72 65 66 3d 22 23 43 6f 6e 74 61 69 6e 65 72 73 | p>.......At.<a.href="#Containers |
| 8c000 | 22 3e 63 6f 6e 74 61 69 6e 65 72 3c 2f 61 3e 20 6c 65 76 65 6c 20 28 6f 75 74 73 69 64 65 20 6f | ">container</a>.level.(outside.o |
| 8c020 | 66 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 | f.any.function),.all.expressions |
| 8c040 | 20 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 3e 3c 73 70 61 | .are.implicitly.......<code><spa |
| 8c060 | 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> |
| 8c080 | 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 | </code>.expressions..This.means. |
| 8c0a0 | 74 68 61 74 20 77 65 20 63 61 6e 20 75 73 65 20 66 75 6e 63 74 69 6f 6e 73 20 74 6f 0a 20 20 20 | that.we.can.use.functions.to.... |
| 8c0c0 | 20 20 20 69 6e 69 74 69 61 6c 69 7a 65 20 63 6f 6d 70 6c 65 78 20 73 74 61 74 69 63 20 64 61 74 | ...initialize.complex.static.dat |
| 8c0e0 | 61 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 20 | a..For.example:.......</p>...... |
| 8c100 | 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d | .<figure><figcaption.class="zig- |
| 8c120 | 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6e | cap"><cite.class="file">test_con |
| 8c140 | 74 61 69 6e 65 72 2d 6c 65 76 65 6c 5f 63 6f 6d 70 74 69 6d 65 5f 65 78 70 72 65 73 73 69 6f 6e | tainer-level_comptime_expression |
| 8c160 | 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 | s.zig</cite></figcaption><pre><c |
| 8c180 | 6f 64 65 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 | ode><span.class="tok-kw">const</ |
| 8c1a0 | 73 70 61 6e 3e 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 | span>.first_25_primes.=.firstNPr |
| 8c1c0 | 69 6d 65 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 32 35 | imes(<span.class="tok-number">25 |
| 8c1e0 | 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 |
| 8c200 | 6f 6e 73 74 3c 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 | onst</span>.sum_of_first_25_prim |
| 8c220 | 65 73 20 3d 20 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 | es.=.sum(&first_25_primes);. |
| 8c240 | 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>. |
| 8c260 | 3c 73 70 61 6e 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 | <span.class="tok-fn">firstNPrime |
| 8c280 | 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 6b 77 22 3e 63 6f | s</span>(<span.class="tok-kw">co |
| 8c2a0 | 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 73 73 3d 22 74 6f | mptime</span>.n:.<span.class="to |
| 8c2c0 | 6b 2d 74 79 70 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 | k-type">usize</span>).[n]<span.c |
| 8c2e0 | 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>.{.... |
| 8c300 | 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> |
| 8c320 | 20 70 72 69 6d 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 | .prime_list:.[n]<span.class="tok |
| 8c340 | 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 73 3d | -type">i32</span>.=.<span.class= |
| 8c360 | 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>;.... |
| 8c380 | 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> |
| 8c3a0 | 20 6e 65 78 74 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 | .next_index:.<span.class="tok-ty |
| 8c3c0 | 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 22 | pe">usize</span>.=.<span.class=" |
| 8c3e0 | 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. |
| 8c400 | 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 74 65 73 74 5f 6e | class="tok-kw">var</span>.test_n |
| 8c420 | 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 69 33 | umber:.<span.class="tok-type">i3 |
| 8c440 | 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 |
| 8c460 | 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 3d 22 74 | er">2</span>;.....<span.class="t |
| 8c480 | 6f 6b 2d 6b 77 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 | ok-kw">while</span>.(next_index. |
| 8c4a0 | 26 6c 74 3b 20 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 | <.prime_list.len).:.(test_num |
| 8c4c0 | 62 65 72 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 | ber.+=.<span.class="tok-number"> |
| 8c4e0 | 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 6c 61 73 73 3d | 1</span>).{.........<span.class= |
| 8c500 | 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 70 72 69 6d 65 5f 69 | "tok-kw">var</span>.test_prime_i |
| 8c520 | 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 69 | ndex:.<span.class="tok-type">usi |
| 8c540 | 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 6d | ze</span>.=.<span.class="tok-num |
| 8c560 | 62 65 72 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 | ber">0</span>;.........<span.cla |
| 8c580 | 73 73 3d 22 74 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 | ss="tok-kw">var</span>.is_prime. |
| 8c5a0 | 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 65 3c 2f 73 | =.<span.class="tok-null">true</s |
| 8c5c0 | 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 6f 6b 2d 6b | pan>;.........<span.class="tok-k |
| 8c5e0 | 77 22 3e 77 68 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 | w">while</span>.(test_prime_inde |
| 8c600 | 78 20 26 6c 74 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 | x.<.next_index).:.(test_prime |
| 8c620 | 5f 69 6e 64 65 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 | _index.+=.<span.class="tok-numbe |
| 8c640 | 72 22 3e 31 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 | r">1</span>).{.............<span |
| 8c660 | 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 74 65 73 74 5f | .class="tok-kw">if</span>.(test_ |
| 8c680 | 6e 75 6d 62 65 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 | number.%.prime_list[test_prime_i |
| 8c6a0 | 6e 64 65 78 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 | ndex].==.<span.class="tok-number |
| 8c6c0 | 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 20 20 20 20 69 73 | ">0</span>).{.................is |
| 8c6e0 | 5f 70 72 69 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 22 3e | _prime.=.<span.class="tok-null"> |
| 8c700 | 66 61 6c 73 65 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 | false</span>;.................<s |
| 8c720 | 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 3b | pan.class="tok-kw">break</span>; |
| 8c740 | 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 20 20 20 | .............}.........}........ |
| 8c760 | 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>. |
| 8c780 | 28 69 73 5f 70 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 | (is_prime).{.............prime_l |
| 8c7a0 | 69 73 74 5b 6e 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 | ist[next_index].=.test_number;.. |
| 8c7c0 | 20 20 20 20 20 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 | ...........next_index.+=.<span.c |
| 8c7e0 | 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>;..... |
| 8c800 | 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 |
| 8c820 | 2d 6b 77 22 3e 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 | -kw">return</span>.prime_list;.} |
| 8c840 | 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> |
| 8c860 | 20 3c 73 70 61 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 | .<span.class="tok-fn">sum</span> |
| 8c880 | 28 6e 75 6d 62 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 | (numbers:.[]<span.class="tok-kw" |
| 8c8a0 | 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 |
| 8c8c0 | 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 |
| 8c8e0 | 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 6e 20 63 | k-type">i32</span>.{.....<span.c |
| 8c900 | 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 72 65 73 75 6c 74 3a | lass="tok-kw">var</span>.result: |
| 8c920 | 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 |
| 8c940 | 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< |
| 8c960 | 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" |
| 8c980 | 3e 66 6f 72 3c 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 | >for</span>.(numbers).|x|.{..... |
| 8c9a0 | 20 20 20 20 72 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 | ....result.+=.x;.....}.....<span |
| 8c9c0 | 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 72 65 | .class="tok-kw">return</span>.re |
| 8c9e0 | 73 75 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 | sult;.}..<span.class="tok-kw">te |
| 8ca00 | 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"> |
| 8ca20 | 26 71 75 6f 74 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 | "variable.values"</spa |
| 8ca40 | 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 |
| 8ca60 | 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 62 75 69 6c 74 69 | y</span>.<span.class="tok-builti |
| 8ca80 | 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 |
| 8caa0 | 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>). |
| 8cac0 | 74 65 73 74 69 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 | testing.expect(sum_of_first_25_p |
| 8cae0 | 72 69 6d 65 73 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 | rimes.==.<span.class="tok-number |
| 8cb00 | 22 3e 31 30 36 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 2f | ">1060</span>);.}</code></pre></ |
| 8cb20 | 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | figure><figure><figcaption.class |
| 8cb40 | 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | ="shell-cap">Shell</figcaption>< |
| 8cb60 | 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 | pre><samp>$.<kbd>zig.test.test_c |
| 8cb80 | 6f 6e 74 61 69 6e 65 72 2d 6c 65 76 65 6c 5f 63 6f 6d 70 74 69 6d 65 5f 65 78 70 72 65 73 73 69 | ontainer-level_comptime_expressi |
| 8cba0 | 6f 6e 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 63 6f 6e 74 61 69 6e 65 72 | ons.zig</kbd>.1/1.test_container |
| 8cbc0 | 2d 6c 65 76 65 6c 5f 63 6f 6d 70 74 69 6d 65 5f 65 78 70 72 65 73 73 69 6f 6e 73 2e 74 65 73 74 | -level_comptime_expressions.test |
| 8cbe0 | 2e 76 61 72 69 61 62 6c 65 20 76 61 6c 75 65 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 | .variable.values...OK.All.1.test |
| 8cc00 | 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | s.passed..</samp></pre></figure> |
| 8cc20 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 77 65 20 63 6f 6d 70 69 6c | ........<p>.......When.we.compil |
| 8cc40 | 65 20 74 68 69 73 20 70 72 6f 67 72 61 6d 2c 20 5a 69 67 20 67 65 6e 65 72 61 74 65 73 20 74 68 | e.this.program,.Zig.generates.th |
| 8cc60 | 65 20 63 6f 6e 73 74 61 6e 74 73 0a 20 20 20 20 20 20 77 69 74 68 20 74 68 65 20 61 6e 73 77 65 | e.constants.......with.the.answe |
| 8cc80 | 72 20 70 72 65 2d 63 6f 6d 70 75 74 65 64 2e 20 48 65 72 65 20 61 72 65 20 74 68 65 20 6c 69 6e | r.pre-computed..Here.are.the.lin |
| 8cca0 | 65 73 20 66 72 6f 6d 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 4c 4c 56 4d 20 49 52 3a 0a 20 | es.from.the.generated.LLVM.IR:.. |
| 8ccc0 | 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 |
| 8cce0 | 3d 22 6c 6c 76 6d 22 3e 40 30 20 3d 20 69 6e 74 65 72 6e 61 6c 20 75 6e 6e 61 6d 65 64 5f 61 64 | ="llvm">@0.=.internal.unnamed_ad |
| 8cd00 | 64 72 20 63 6f 6e 73 74 61 6e 74 20 5b 32 35 20 78 20 69 33 32 5d 20 5b 69 33 32 20 32 2c 20 69 | dr.constant.[25.x.i32].[i32.2,.i |
| 8cd20 | 33 32 20 33 2c 20 69 33 32 20 35 2c 20 69 33 32 20 37 2c 20 69 33 32 20 31 31 2c 20 69 33 32 20 | 32.3,.i32.5,.i32.7,.i32.11,.i32. |
| 8cd40 | 31 33 2c 20 69 33 32 20 31 37 2c 20 69 33 32 20 31 39 2c 20 69 33 32 20 32 33 2c 20 69 33 32 20 | 13,.i32.17,.i32.19,.i32.23,.i32. |
| 8cd60 | 32 39 2c 20 69 33 32 20 33 31 2c 20 69 33 32 20 33 37 2c 20 69 33 32 20 34 31 2c 20 69 33 32 20 | 29,.i32.31,.i32.37,.i32.41,.i32. |
| 8cd80 | 34 33 2c 20 69 33 32 20 34 37 2c 20 69 33 32 20 35 33 2c 20 69 33 32 20 35 39 2c 20 69 33 32 20 | 43,.i32.47,.i32.53,.i32.59,.i32. |
| 8cda0 | 36 31 2c 20 69 33 32 20 36 37 2c 20 69 33 32 20 37 31 2c 20 69 33 32 20 37 33 2c 20 69 33 32 20 | 61,.i32.67,.i32.71,.i32.73,.i32. |
| 8cdc0 | 37 39 2c 20 69 33 32 20 38 33 2c 20 69 33 32 20 38 39 2c 20 69 33 32 20 39 37 5d 0a 40 31 20 3d | 79,.i32.83,.i32.89,.i32.97].@1.= |
| 8cde0 | 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 61 6e 74 20 | .internal.unnamed_addr.constant. |
| 8ce00 | 69 33 32 20 31 30 36 30 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | i32.1060</code></pre>.......<p>. |
| 8ce20 | 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 77 65 20 64 69 64 20 6e 6f 74 20 68 61 76 65 20 | ......Note.that.we.did.not.have. |
| 8ce40 | 74 6f 20 64 6f 20 61 6e 79 74 68 69 6e 67 20 73 70 65 63 69 61 6c 20 77 69 74 68 20 74 68 65 20 | to.do.anything.special.with.the. |
| 8ce60 | 73 79 6e 74 61 78 20 6f 66 20 74 68 65 73 65 20 66 75 6e 63 74 69 6f 6e 73 2e 20 46 6f 72 20 65 | syntax.of.these.functions..For.e |
| 8ce80 | 78 61 6d 70 6c 65 2c 0a 20 20 20 20 20 20 77 65 20 63 6f 75 6c 64 20 63 61 6c 6c 20 74 68 65 20 | xample,.......we.could.call.the. |
| 8cea0 | 3c 63 6f 64 65 3e 73 75 6d 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 61 73 20 69 73 20 | <code>sum</code>.function.as.is. |
| 8cec0 | 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 65 20 6c 65 | with.a.slice.of.numbers.whose.le |
| 8cee0 | 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 6e 6c 79 20 | ngth.and.values.were.......only. |
| 8cf00 | 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 3e 0a 20 20 | known.at.run-time........</p>... |
| 8cf20 | 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 47 65 6e 65 72 69 | ..................<h3.id="Generi |
| 8cf40 | 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 23 74 6f 63 | c-Data-Structures"><a.href="#toc |
| 8cf60 | 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 6e 65 72 69 | -Generic-Data-Structures">Generi |
| 8cf80 | 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 73 73 3d 22 | c.Data.Structures</a>.<a.class=" |
| 8cfa0 | 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 75 63 74 75 | hdr".href="#Generic-Data-Structu |
| 8cfc0 | 72 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 20 | res">..</a></h3>........<p>..... |
| 8cfe0 | 20 20 5a 69 67 20 75 73 65 73 20 63 6f 6d 70 74 69 6d 65 20 63 61 70 61 62 69 6c 69 74 69 65 73 | ..Zig.uses.comptime.capabilities |
| 8d000 | 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 63 | .to.implement.generic.data.struc |
| 8d020 | 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 20 | tures.without.introducing.any... |
| 8d040 | 20 20 20 20 73 70 65 63 69 61 6c 2d 63 61 73 65 20 73 79 6e 74 61 78 2e 0a 20 20 20 20 20 20 3c | ....special-case.syntax........< |
| 8d060 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 09 09 09 48 65 72 65 20 69 73 20 61 6e 20 65 78 61 6d | /p>.......<p>....Here.is.an.exam |
| 8d080 | 70 6c 65 20 6f 66 20 61 20 67 65 6e 65 72 69 63 20 3c 63 6f 64 65 3e 4c 69 73 74 3c 2f 63 6f 64 | ple.of.a.generic.<code>List</cod |
| 8d0a0 | 65 3e 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | e>.data.structure........</p>... |
| 8d0c0 | 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a | ....<figure><figcaption.class="z |
| 8d0e0 | 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 67 65 6e 65 72 | ig-cap"><cite.class="file">gener |
| 8d100 | 69 63 5f 64 61 74 61 5f 73 74 72 75 63 74 75 72 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 | ic_data_structure.zig</cite></fi |
| 8d120 | 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | gcaption><pre><code><span.class= |
| 8d140 | 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=" |
| 8d160 | 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 63 6c 61 73 73 3d | tok-fn">List</span>(<span.class= |
| 8d180 | 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 73 70 61 | "tok-kw">comptime</span>.T:.<spa |
| 8d1a0 | 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 29 20 | n.class="tok-type">type</span>). |
| 8d1c0 | 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 |
| 8d1e0 | 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 |
| 8d200 | 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" |
| 8d220 | 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 74 65 6d 73 3a 20 | >struct</span>.{.........items:. |
| 8d240 | 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 61 73 73 3d 22 74 | []T,.........len:.<span.class="t |
| 8d260 | 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 20 7d 3b 0a 7d 0a | ok-type">usize</span>,.....};.}. |
| 8d280 | 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 54 68 | .<span.class="tok-comment">//.Th |
| 8d2a0 | 65 20 67 65 6e 65 72 69 63 20 4c 69 73 74 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 20 63 61 | e.generic.List.data.structure.ca |
| 8d2c0 | 6e 20 62 65 20 69 6e 73 74 61 6e 74 69 61 74 65 64 20 62 79 20 70 61 73 73 69 6e 67 20 69 6e 20 | n.be.instantiated.by.passing.in. |
| 8d2e0 | 61 20 74 79 70 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 | a.type:</span>.<span.class="tok- |
| 8d300 | 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 6e 20 63 6c | kw">var</span>.buffer:.[<span.cl |
| 8d320 | 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 73 70 61 6e | ass="tok-number">10</span>]<span |
| 8d340 | 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>.=.< |
| 8d360 | 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< |
| 8d380 | 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 76 61 72 | /span>;.<span.class="tok-kw">var |
| 8d3a0 | 3c 2f 73 70 61 6e 3e 20 6c 69 73 74 20 3d 20 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | </span>.list.=.List(<span.class= |
| 8d3c0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 7b 0a 20 20 20 20 2e 69 74 65 | "tok-type">i32</span>){......ite |
| 8d3e0 | 6d 73 20 3d 20 26 61 6d 70 3b 62 75 66 66 65 72 2c 0a 20 20 20 20 2e 6c 65 6e 20 3d 20 3c 73 70 | ms.=.&buffer,......len.=.<sp |
| 8d400 | 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 2c 0a | an.class="tok-number">0</span>,. |
| 8d420 | 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 | };</code></pre></figure>........ |
| 8d440 | 3c 70 3e 0a 20 20 20 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 | <p>.......That's.it..It's.a.func |
| 8d460 | 74 69 6f 6e 20 74 68 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 | tion.that.returns.an.anonymous.< |
| 8d480 | 63 6f 64 65 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 | code><span.class="tok-kw">struct |
| 8d4a0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 46 6f 72 20 74 68 65 20 70 75 | </span></code>........For.the.pu |
| 8d4c0 | 72 70 6f 73 65 73 20 6f 66 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 73 20 61 6e 64 20 64 65 62 | rposes.of.error.messages.and.deb |
| 8d4e0 | 75 67 67 69 6e 67 2c 20 5a 69 67 20 69 6e 66 65 72 73 20 74 68 65 20 6e 61 6d 65 0a 20 20 20 20 | ugging,.Zig.infers.the.name..... |
| 8d500 | 20 20 3c 63 6f 64 65 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 | ..<code><span.class="tok-str">&q |
| 8d520 | 75 6f 74 3b 4c 69 73 74 28 69 33 32 29 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | uot;List(i32)"</span></code |
| 8d540 | 3e 20 66 72 6f 6d 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 6e 61 6d 65 20 61 6e 64 20 70 61 72 | >.from.the.function.name.and.par |
| 8d560 | 61 6d 65 74 65 72 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 63 72 65 61 74 69 6e 67 0a 20 20 | ameters.invoked.when.creating... |
| 8d580 | 20 20 20 20 74 68 65 20 61 6e 6f 6e 79 6d 6f 75 73 20 73 74 72 75 63 74 2e 0a 20 20 20 20 20 20 | ....the.anonymous.struct........ |
| 8d5a0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 65 78 70 6c 69 63 69 74 | </p>.......<p>.......To.explicit |
| 8d5c0 | 6c 79 20 67 69 76 65 20 61 20 74 79 70 65 20 61 20 6e 61 6d 65 2c 20 77 65 20 61 73 73 69 67 6e | ly.give.a.type.a.name,.we.assign |
| 8d5e0 | 20 69 74 20 74 6f 20 61 20 63 6f 6e 73 74 61 6e 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | .it.to.a.constant........</p>... |
| 8d600 | 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a | ....<figure><figcaption.class="z |
| 8d620 | 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 61 6e 6f 6e 79 | ig-cap"><cite.class="file">anony |
| 8d640 | 6d 6f 75 73 5f 73 74 72 75 63 74 5f 6e 61 6d 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | mous_struct_name.zig</cite></fig |
| 8d660 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | caption><pre><code><span.class=" |
| 8d680 | 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 3c 73 70 61 | tok-kw">const</span>.Node.=.<spa |
| 8d6a0 | 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 7b | n.class="tok-kw">struct</span>.{ |
| 8d6c0 | 0a 20 20 20 20 6e 65 78 74 3a 20 3f 2a 4e 6f 64 65 2c 0a 20 20 20 20 6e 61 6d 65 3a 20 5b 5d 3c | .....next:.?*Node,.....name:.[]< |
| 8d6e0 | 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> |
| 8d700 | 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 |
| 8d720 | 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 76 61 72 3c | >,.};..<span.class="tok-kw">var< |
| 8d740 | 2f 73 70 61 6e 3e 20 6e 6f 64 65 5f 61 20 3d 20 4e 6f 64 65 7b 0a 20 20 20 20 2e 6e 65 78 74 20 | /span>.node_a.=.Node{......next. |
| 8d760 | 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 73 | =.<span.class="tok-null">null</s |
| 8d780 | 70 61 6e 3e 2c 0a 20 20 20 20 2e 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pan>,......name.=.<span.class="t |
| 8d7a0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 4e 6f 64 65 20 41 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | ok-str">"Node.A"</span |
| 8d7c0 | 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 76 61 72 3c | >,.};..<span.class="tok-kw">var< |
| 8d7e0 | 2f 73 70 61 6e 3e 20 6e 6f 64 65 5f 62 20 3d 20 4e 6f 64 65 7b 0a 20 20 20 20 2e 6e 65 78 74 20 | /span>.node_b.=.Node{......next. |
| 8d800 | 3d 20 26 61 6d 70 3b 6e 6f 64 65 5f 61 2c 0a 20 20 20 20 2e 6e 61 6d 65 20 3d 20 3c 73 70 61 6e | =.&node_a,......name.=.<span |
| 8d820 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 4e 6f 64 65 20 42 26 71 75 | .class="tok-str">"Node.B&qu |
| 8d840 | 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | ot;</span>,.};</code></pre></fig |
| 8d860 | 75 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 68 69 73 20 65 78 | ure>........<p>.......In.this.ex |
| 8d880 | 61 6d 70 6c 65 2c 20 74 68 65 20 3c 63 6f 64 65 3e 4e 6f 64 65 3c 2f 63 6f 64 65 3e 20 73 74 72 | ample,.the.<code>Node</code>.str |
| 8d8a0 | 75 63 74 20 72 65 66 65 72 73 20 74 6f 20 69 74 73 65 6c 66 2e 0a 20 20 20 20 20 20 54 68 69 73 | uct.refers.to.itself........This |
| 8d8c0 | 20 77 6f 72 6b 73 20 62 65 63 61 75 73 65 20 61 6c 6c 20 74 6f 70 20 6c 65 76 65 6c 20 64 65 63 | .works.because.all.top.level.dec |
| 8d8e0 | 6c 61 72 61 74 69 6f 6e 73 20 61 72 65 20 6f 72 64 65 72 2d 69 6e 64 65 70 65 6e 64 65 6e 74 2e | larations.are.order-independent. |
| 8d900 | 0a 20 20 20 20 20 20 41 73 20 6c 6f 6e 67 20 61 73 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 63 | .......As.long.as.the.compiler.c |
| 8d920 | 61 6e 20 64 65 74 65 72 6d 69 6e 65 20 74 68 65 20 73 69 7a 65 20 6f 66 20 74 68 65 20 73 74 72 | an.determine.the.size.of.the.str |
| 8d940 | 75 63 74 2c 20 69 74 20 69 73 20 66 72 65 65 20 74 6f 20 72 65 66 65 72 20 74 6f 20 69 74 73 65 | uct,.it.is.free.to.refer.to.itse |
| 8d960 | 6c 66 2e 0a 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 3c 63 6f 64 65 3e 4e 6f | lf........In.this.case,.<code>No |
| 8d980 | 64 65 3c 2f 63 6f 64 65 3e 20 72 65 66 65 72 73 20 74 6f 20 69 74 73 65 6c 66 20 61 73 20 61 20 | de</code>.refers.to.itself.as.a. |
| 8d9a0 | 70 6f 69 6e 74 65 72 2c 20 77 68 69 63 68 20 68 61 73 20 61 0a 20 20 20 20 20 20 77 65 6c 6c 2d | pointer,.which.has.a.......well- |
| 8d9c0 | 64 65 66 69 6e 65 64 20 73 69 7a 65 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 2c 20 73 6f | defined.size.at.compile.time,.so |
| 8d9e0 | 20 69 74 20 77 6f 72 6b 73 20 66 69 6e 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | .it.works.fine........</p>...... |
| 8da00 | 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 61 73 65 2d 53 74 75 64 79 2d 70 72 69 6e 74 | ........<h3.id="Case-Study-print |
| 8da20 | 2d 69 6e 2d 5a 69 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 61 73 65 2d 53 74 75 64 | -in-Zig"><a.href="#toc-Case-Stud |
| 8da40 | 79 2d 70 72 69 6e 74 2d 69 6e 2d 5a 69 67 22 3e 43 61 73 65 20 53 74 75 64 79 3a 20 70 72 69 6e | y-print-in-Zig">Case.Study:.prin |
| 8da60 | 74 20 69 6e 20 5a 69 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 | t.in.Zig</a>.<a.class="hdr".href |
| 8da80 | 3d 22 23 43 61 73 65 2d 53 74 75 64 79 2d 70 72 69 6e 74 2d 69 6e 2d 5a 69 67 22 3e c2 a7 3c 2f | ="#Case-Study-print-in-Zig">..</ |
| 8daa0 | 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 50 75 74 74 69 6e 67 | a></h3>........<p>.......Putting |
| 8dac0 | 20 61 6c 6c 20 6f 66 20 74 68 69 73 20 74 6f 67 65 74 68 65 72 2c 20 6c 65 74 27 73 20 73 65 65 | .all.of.this.together,.let's.see |
| 8dae0 | 20 68 6f 77 20 3c 63 6f 64 65 3e 70 72 69 6e 74 3c 2f 63 6f 64 65 3e 20 77 6f 72 6b 73 20 69 6e | .how.<code>print</code>.works.in |
| 8db00 | 20 5a 69 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | .Zig........</p>.......<figure>< |
| 8db20 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 | figcaption.class="zig-cap"><cite |
| 8db40 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 70 72 69 6e 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | .class="file">print.zig</cite></ |
| 8db60 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | figcaption><pre><code><span.clas |
| 8db80 | 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 20 | s="tok-kw">const</span>.print.=. |
| 8dba0 | 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 |
| 8dbc0 | 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">& |
| 8dbe0 | 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 69 | quot;std"</span>).debug.pri |
| 8dc00 | 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 63 6f 6e 73 74 3c | nt;..<span.class="tok-kw">const< |
| 8dc20 | 2f 73 70 61 6e 3e 20 61 5f 6e 75 6d 62 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | /span>.a_number:.<span.class="to |
| 8dc40 | 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 73 | k-type">i32</span>.=.<span.class |
| 8dc60 | 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 3c 73 70 61 6e | ="tok-number">1234</span>;.<span |
| 8dc80 | 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 5f 73 | .class="tok-kw">const</span>.a_s |
| 8dca0 | 74 72 69 6e 67 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 | tring.=.<span.class="tok-str">&q |
| 8dcc0 | 75 6f 74 3b 66 6f 6f 62 61 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 | uot;foobar"</span>;..<span. |
| 8dce0 | 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. |
| 8dd00 | 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 |
| 8dd20 | 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 |
| 8dd40 | 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>.{ |
| 8dd60 | 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" |
| 8dd80 | 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 20 68 | >"here.is.a.string:.'{s}'.h |
| 8dda0 | 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 70 61 | ere.is.a.number:.{}\n"</spa |
| 8ddc0 | 6e 3e 2c 20 2e 7b 20 61 5f 73 74 72 69 6e 67 2c 20 61 5f 6e 75 6d 62 65 72 20 7d 29 3b 0a 7d 3c | n>,..{.a_string,.a_number.});.}< |
| 8dde0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 | /code></pre></figure><figure><fi |
| 8de00 | 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c | gcaption.class="shell-cap">Shell |
| 8de20 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a | </figcaption><pre><samp>$.<kbd>z |
| 8de40 | 69 67 20 62 75 69 6c 64 2d 65 78 65 20 70 72 69 6e 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c | ig.build-exe.print.zig</kbd>.$.< |
| 8de60 | 6b 62 64 3e 2e 2f 70 72 69 6e 74 3c 2f 6b 62 64 3e 0a 68 65 72 65 20 69 73 20 61 20 73 74 72 69 | kbd>./print</kbd>.here.is.a.stri |
| 8de80 | 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 62 65 72 3a 20 31 | ng:.'foobar'.here.is.a.number:.1 |
| 8dea0 | 32 33 34 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 0a 20 20 20 | 234.</samp></pre></figure>...... |
| 8dec0 | 20 20 20 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 | ...<p>.......Let's.crack.open.th |
| 8dee0 | 65 20 69 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 | e.implementation.of.this.and.see |
| 8df00 | 20 68 6f 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 | .how.it.works:.......</p>....... |
| 8df20 | 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d | .<figure><figcaption.class="zig- |
| 8df40 | 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 70 6f 63 5f 70 72 69 6e | cap"><cite.class="file">poc_prin |
| 8df60 | 74 5f 66 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | t_fn.zig</cite></figcaption><pre |
| 8df80 | 3e 3c 63 6f 64 65 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 | ><code><span.class="tok-kw">cons |
| 8dfa0 | 74 3c 2f 73 70 61 6e 3e 20 57 72 69 74 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | t</span>.Writer.=.<span.class="t |
| 8dfc0 | 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 70 61 6e | ok-kw">struct</span>.{.....<span |
| 8dfe0 | 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 43 61 6c 6c 73 20 70 | .class="tok-comment">///.Calls.p |
| 8e000 | 72 69 6e 74 20 61 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 | rint.and.then.flushes.the.buffer |
| 8e020 | 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 |
| 8e040 | 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 |
| 8e060 | 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" |
| 8e080 | 3e 70 72 69 6e 74 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 2a 57 72 69 74 65 72 2c 20 3c 73 70 | >print</span>(self:.*Writer,.<sp |
| 8e0a0 | 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 |
| 8e0c0 | 3e 20 66 6f 72 6d 61 74 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | >.format:.[]<span.class="tok-kw" |
| 8e0e0 | 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 |
| 8e100 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 61 72 67 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | ype">u8</span>,.args:.<span.clas |
| 8e120 | 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 |
| 8e140 | 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 6e | .class="tok-type">anyerror</span |
| 8e160 | 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 64 3c 2f 73 | >!<span.class="tok-type">void</s |
| 8e180 | 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- |
| 8e1a0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 74 61 74 65 20 3d 20 3c 73 70 61 6e 20 63 | kw">const</span>.State.=.<span.c |
| 8e1c0 | 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>.{..... |
| 8e1e0 | 20 20 20 20 20 20 20 20 73 74 61 72 74 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 6f 70 65 6e 5f | ........start,.............open_ |
| 8e200 | 62 72 61 63 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6c 6f 73 65 5f 62 72 61 63 65 2c 0a | brace,.............close_brace,. |
| 8e220 | 20 20 20 20 20 20 20 20 7d 3b 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ........};..........<span.class= |
| 8e240 | 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 |
| 8e260 | 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 74 61 72 74 5f 69 | lass="tok-kw">var</span>.start_i |
| 8e280 | 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 69 | ndex:.<span.class="tok-type">usi |
| 8e2a0 | 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 6d | ze</span>.=.<span.class="tok-num |
| 8e2c0 | 62 65 72 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 | ber">0</span>;.........<span.cla |
| 8e2e0 | 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 73 70 61 | ss="tok-kw">comptime</span>.<spa |
| 8e300 | 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 74 61 74 | n.class="tok-kw">var</span>.stat |
| 8e320 | 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 3c 73 70 61 6e 20 63 | e.=.State.start;.........<span.c |
| 8e340 | 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 73 | lass="tok-kw">comptime</span>.<s |
| 8e360 | 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 65 | pan.class="tok-kw">var</span>.ne |
| 8e380 | 78 74 5f 61 72 67 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 | xt_arg:.<span.class="tok-type">u |
| 8e3a0 | 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 |
| 8e3c0 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | umber">0</span>;..........<span. |
| 8e3e0 | 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 20 3c 73 70 | class="tok-kw">inline</span>.<sp |
| 8e400 | 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 66 6f | an.class="tok-kw">for</span>.(fo |
| 8e420 | 72 6d 61 74 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 | rmat,.<span.class="tok-number">0 |
| 8e440 | 3c 2f 73 70 61 6e 3e 2e 2e 29 20 7c 63 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | </span>..).|c,.i|.{............. |
| 8e460 | 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 |
| 8e480 | 6e 3e 20 28 73 74 61 74 65 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 74 61 | n>.(state).{.................Sta |
| 8e4a0 | 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 3d 22 74 6f 6b 2d | te.start.=>.<span.class="tok- |
| 8e4c0 | 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 20 20 20 20 20 20 | kw">switch</span>.(c).{......... |
| 8e4e0 | 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 74 72 | ............<span.class="tok-str |
| 8e500 | 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 20 20 | ">'{'</span>.=>.{............ |
| 8e520 | 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 6b 77 | .............<span.class="tok-kw |
| 8e540 | 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 3b 20 69 29 | ">if</span>.(start_index.<.i) |
| 8e560 | 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> |
| 8e580 | 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 2e | .self.write(format[start_index.. |
| 8e5a0 | 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 20 20 20 20 73 74 61 | i]);.........................sta |
| 8e5c0 | 74 65 20 3d 20 53 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 | te.=.State.open_brace;.......... |
| 8e5e0 | 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 20 20 20 | ...........},................... |
| 8e600 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 7d 27 3c 2f 73 70 61 | ..<span.class="tok-str">'}'</spa |
| 8e620 | 6e 3e 20 3d 26 67 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 | n>.=>.{...................... |
| 8e640 | 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 |
| 8e660 | 3e 20 28 73 74 61 72 74 5f 69 6e 64 65 78 20 26 6c 74 3b 20 69 29 20 3c 73 70 61 6e 20 63 6c 61 | >.(start_index.<.i).<span.cla |
| 8e680 | 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 77 72 69 74 | ss="tok-kw">try</span>.self.writ |
| 8e6a0 | 65 28 66 6f 72 6d 61 74 5b 73 74 61 72 74 5f 69 6e 64 65 78 2e 2e 69 5d 29 3b 0a 20 20 20 20 20 | e(format[start_index..i]);...... |
| 8e6c0 | 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 74 61 74 65 | ...................state.=.State |
| 8e6e0 | 2e 63 6c 6f 73 65 5f 62 72 61 63 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .close_brace;................... |
| 8e700 | 20 20 7d 2c 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 | ..},.....................<span.c |
| 8e720 | 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>.=>. |
| 8e740 | 7b 7d 2c 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 20 | {},.................},.......... |
| 8e760 | 20 20 20 20 20 20 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 | .......State.open_brace.=>.<s |
| 8e780 | 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> |
| 8e7a0 | 20 28 63 29 20 7b 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 | .(c).{.....................<span |
| 8e7c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 7b 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 | .class="tok-str">'{'</span>.=> |
| 8e7e0 | 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 73 74 61 74 | ;.{.........................stat |
| 8e800 | 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 20 20 20 20 | e.=.State.start;................ |
| 8e820 | 20 20 20 20 20 20 20 20 20 73 74 61 72 74 5f 69 6e 64 65 78 20 3d 20 69 3b 0a 20 20 20 20 20 20 | .........start_index.=.i;....... |
| 8e840 | 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 | ..............},................ |
| 8e860 | 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 3e 27 7d 27 3c 2f | .....<span.class="tok-str">'}'</ |
| 8e880 | 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 20 20 20 20 20 20 | span>.=>.{................... |
| 8e8a0 | 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</ |
| 8e8c0 | 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 74 5f | span>.self.printValue(args[next_ |
| 8e8e0 | 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 20 20 20 20 6e | arg]);.........................n |
| 8e900 | 65 78 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 | ext_arg.+=.<span.class="tok-numb |
| 8e920 | 65 72 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 | er">1</span>;................... |
| 8e940 | 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 20 20 20 20 20 | ......state.=.State.start;...... |
| 8e960 | 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 3d | ...................start_index.= |
| 8e980 | 20 69 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 | .i.+.<span.class="tok-number">1< |
| 8e9a0 | 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 7d 2c 0a 20 | /span>;.....................},.. |
| 8e9c0 | 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=" |
| 8e9e0 | 74 6f 6b 2d 73 74 72 22 3e 27 73 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 | tok-str">'s'</span>.=>.{..... |
| 8ea00 | 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= |
| 8ea20 | 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 20 20 20 | "tok-kw">continue</span>;....... |
| 8ea40 | 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 | ..............},................ |
| 8ea60 | 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 2f | .....<span.class="tok-kw">else</ |
| 8ea80 | 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 62 75 69 | span>.=>.<span.class="tok-bui |
| 8eaa0 | 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 70 61 6e | ltin">@compileError</span>(<span |
| 8eac0 | 20 63 6c 61 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 | .class="tok-str">"Unknown.f |
| 8eae0 | 6f 72 6d 61 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 | ormat.character:."</span>.+ |
| 8eb00 | 2b 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 31 3c 2f 73 | +.[<span.class="tok-number">1</s |
| 8eb20 | 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 3c 2f | pan>]<span.class="tok-type">u8</ |
| 8eb40 | 73 70 61 6e 3e 7b 63 7d 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 | span>{c}),.................},... |
| 8eb60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 74 61 74 65 2e 63 6c 6f 73 65 5f 62 72 61 63 65 20 | ..............State.close_brace. |
| 8eb80 | 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 3e 73 77 69 74 63 | =>.<span.class="tok-kw">switc |
| 8eba0 | 68 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | h</span>.(c).{.................. |
| 8ebc0 | 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 27 7d 27 3c 2f 73 70 | ...<span.class="tok-str">'}'</sp |
| 8ebe0 | 61 6e 3e 20 3d 26 67 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 | an>.=>.{..................... |
| 8ec00 | 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 20 20 20 20 20 20 20 | ....state.=.State.start;........ |
| 8ec20 | 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 3d 20 69 | .................start_index.=.i |
| 8ec40 | 3b 0a 20 20 20 20 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 | ;.....................},........ |
| 8ec60 | 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 6b 77 | .............<span.class="tok-kw |
| 8ec80 | 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= |
| 8eca0 | 22 74 6f 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 | "tok-builtin">@compileError</spa |
| 8ecc0 | 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 53 | n>(<span.class="tok-str">"S |
| 8ece0 | 69 6e 67 6c 65 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 | ingle.'}'.encountered.in.format. |
| 8ed00 | 73 74 72 69 6e 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 | string"</span>),........... |
| 8ed20 | 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d | ......},.............}.........} |
| 8ed40 | 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 6f | .........<span.class="tok-kw">co |
| 8ed60 | 6d 70 74 69 6d 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 | mptime</span>.{.............<spa |
| 8ed80 | 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 72 67 73 | n.class="tok-kw">if</span>.(args |
| 8eda0 | 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 20 20 20 20 20 20 20 | .len.!=.next_arg).{............. |
| 8edc0 | 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 63 | ....<span.class="tok-builtin">@c |
| 8ede0 | 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 3d 22 | ompileError</span>(<span.class=" |
| 8ee00 | 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 74 73 26 | tok-str">"Unused.arguments& |
| 8ee20 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 | quot;</span>);.............}.... |
| 8ee40 | 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 69 66 | .........<span.class="tok-kw">if |
| 8ee60 | 3c 2f 73 70 61 6e 3e 20 28 73 74 61 74 65 20 21 3d 20 53 74 61 74 65 2e 73 74 61 72 74 29 20 7b | </span>.(state.!=.State.start).{ |
| 8ee80 | 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 |
| 8eea0 | 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>( |
| 8eec0 | 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 49 6e 63 6f | <span.class="tok-str">"Inco |
| 8eee0 | 6d 70 6c 65 74 65 20 66 6f 72 6d 61 74 20 73 74 72 69 6e 67 3a 20 26 71 75 6f 74 3b 3c 2f 73 70 | mplete.format.string:."</sp |
| 8ef00 | 61 6e 3e 20 2b 2b 20 66 6f 72 6d 61 74 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 | an>.++.format);.............}... |
| 8ef20 | 20 20 20 20 20 20 7d 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 |
| 8ef40 | 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 3b | -kw">if</span>.(start_index.< |
| 8ef60 | 20 66 6f 72 6d 61 74 2e 6c 65 6e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | .format.len).{.............<span |
| 8ef80 | 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 6c 66 2e | .class="tok-kw">try</span>.self. |
| 8efa0 | 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 66 6f 72 6d 61 74 | write(format[start_index..format |
| 8efc0 | 2e 6c 65 6e 5d 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | .len]);.........}.........<span. |
| 8efe0 | 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 6c 66 2e 66 | class="tok-kw">try</span>.self.f |
| 8f000 | 6c 75 73 68 28 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 | lush();.....}......<span.class=" |
| 8f020 | 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 |
| 8f040 | 6f 6b 2d 66 6e 22 3e 77 72 69 74 65 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 2a 57 72 69 74 65 | ok-fn">write</span>(self:.*Write |
| 8f060 | 72 2c 20 76 61 6c 75 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 | r,.value:.[]<span.class="tok-kw" |
| 8f080 | 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 |
| 8f0a0 | 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 61 73 73 3d 22 74 6f | ype">u8</span>).!<span.class="to |
| 8f0c0 | 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 20 20 20 20 5f 20 | k-type">void</span>.{........._. |
| 8f0e0 | 3d 20 73 65 6c 66 3b 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 76 61 6c 75 65 3b 0a 20 20 20 20 7d | =.self;........._.=.value;.....} |
| 8f100 | 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 |
| 8f120 | 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 |
| 8f140 | 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 56 61 | an>.<span.class="tok-fn">printVa |
| 8f160 | 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 65 3a | lue</span>(self:.*Writer,.value: |
| 8f180 | 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 2f 73 | .<span.class="tok-kw">anytype</s |
| 8f1a0 | 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 76 6f | pan>).!<span.class="tok-type">vo |
| 8f1c0 | 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 73 65 6c 66 3b 0a 20 20 | id</span>.{........._.=.self;... |
| 8f1e0 | 20 20 20 20 20 20 5f 20 3d 20 76 61 6c 75 65 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e | ......_.=.value;.....}.....<span |
| 8f200 | 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. |
| 8f220 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6c 75 73 68 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 | class="tok-fn">flush</span>(self |
| 8f240 | 3a 20 2a 57 72 69 74 65 72 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | :.*Writer).!<span.class="tok-typ |
| 8f260 | 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 73 65 6c | e">void</span>.{........._.=.sel |
| 8f280 | 66 3b 0a 20 20 20 20 7d 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | f;.....}.};</code></pre></figure |
| 8f2a0 | 3e 0a 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 61 20 70 72 6f | >........<p>.......This.is.a.pro |
| 8f2c0 | 6f 66 20 6f 66 20 63 6f 6e 63 65 70 74 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 3b 20 74 68 | of.of.concept.implementation;.th |
| 8f2e0 | 65 20 61 63 74 75 61 6c 20 66 75 6e 63 74 69 6f 6e 20 69 6e 20 74 68 65 20 73 74 61 6e 64 61 72 | e.actual.function.in.the.standar |
| 8f300 | 64 20 6c 69 62 72 61 72 79 20 68 61 73 20 6d 6f 72 65 0a 20 20 20 20 20 20 66 6f 72 6d 61 74 74 | d.library.has.more.......formatt |
| 8f320 | 69 6e 67 20 63 61 70 61 62 69 6c 69 74 69 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | ing.capabilities........</p>.... |
| 8f340 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 74 68 69 73 20 69 73 20 6e | ...<p>.......Note.that.this.is.n |
| 8f360 | 6f 74 20 68 61 72 64 2d 63 6f 64 65 64 20 69 6e 74 6f 20 74 68 65 20 5a 69 67 20 63 6f 6d 70 69 | ot.hard-coded.into.the.Zig.compi |
| 8f380 | 6c 65 72 3b 20 74 68 69 73 20 69 73 20 75 73 65 72 6c 61 6e 64 20 63 6f 64 65 20 69 6e 20 74 68 | ler;.this.is.userland.code.in.th |
| 8f3a0 | 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | e.standard.library........</p>.. |
| 8f3c0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 74 68 69 73 20 66 75 6e 63 74 69 6f | .....<p>.......When.this.functio |
| 8f3e0 | 6e 20 69 73 20 61 6e 61 6c 79 7a 65 64 20 66 72 6f 6d 20 6f 75 72 20 65 78 61 6d 70 6c 65 20 63 | n.is.analyzed.from.our.example.c |
| 8f400 | 6f 64 65 20 61 62 6f 76 65 2c 20 5a 69 67 20 70 61 72 74 69 61 6c 6c 79 20 65 76 61 6c 75 61 74 | ode.above,.Zig.partially.evaluat |
| 8f420 | 65 73 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20 61 6e 64 20 65 6d 69 74 73 20 | es.the.function.......and.emits. |
| 8f440 | 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 61 63 74 75 61 6c 6c 79 20 6c 6f 6f 6b 73 20 6c | a.function.that.actually.looks.l |
| 8f460 | 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 66 69 67 75 | ike.this:.......</p>.......<figu |
| 8f480 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c | re><figcaption.class="zig-cap">< |
| 8f4a0 | 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 45 6d 69 74 74 65 64 20 70 72 69 6e 74 20 | cite.class="file">Emitted.print. |
| 8f4c0 | 46 75 6e 63 74 69 6f 6e 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | Function</cite></figcaption><pre |
| 8f4e0 | 3e 3c 63 6f 64 65 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 | ><code><span.class="tok-kw">pub< |
| 8f500 | 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</ |
| 8f520 | 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 |
| 8f540 | 3c 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 5b 5d 3c | </span>(self:.*Writer,.arg0:.[]< |
| 8f560 | 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> |
| 8f580 | 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 |
| 8f5a0 | 3e 2c 20 61 72 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 | >,.arg1:.<span.class="tok-type"> |
| 8f5c0 | 69 33 32 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 | i32</span>).!<span.class="tok-ty |
| 8f5e0 | 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 73 | pe">void</span>.{.....<span.clas |
| 8f600 | 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 77 72 69 74 65 | s="tok-kw">try</span>.self.write |
| 8f620 | 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 68 65 72 | (<span.class="tok-str">"her |
| 8f640 | 65 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 | e.is.a.string:.'"</span>);. |
| 8f660 | 20 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 |
| 8f680 | 61 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 | an>.self.printValue(arg0);.....< |
| 8f6a0 | 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 |
| 8f6c0 | 65 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 | elf.write(<span.class="tok-str"> |
| 8f6e0 | 26 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 | "'.here.is.a.number:." |
| 8f700 | 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 |
| 8f720 | 77 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 | w">try</span>.self.printValue(ar |
| 8f740 | 67 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 | g1);.....<span.class="tok-kw">tr |
| 8f760 | 79 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 | y</span>.self.write(<span.class= |
| 8f780 | 22 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 | "tok-str">"\n"</span>) |
| 8f7a0 | 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</ |
| 8f7c0 | 73 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 | span>.self.flush();.}</code></pr |
| 8f7e0 | 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 | e></figure>.......<p>.......<cod |
| 8f800 | 65 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 69 6f | e>printValue</code>.is.a.functio |
| 8f820 | 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 79 20 | n.that.takes.a.parameter.of.any. |
| 8f840 | 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 73 20 | type,.and.does.different.things. |
| 8f860 | 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 20 20 | depending.......on.the.type:.... |
| 8f880 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | ...</p>.......<figure><figcaptio |
| 8f8a0 | 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 | n.class="zig-cap"><cite.class="f |
| 8f8c0 | 69 6c 65 22 3e 70 6f 63 5f 70 72 69 6e 74 56 61 6c 75 65 5f 66 6e 2e 7a 69 67 3c 2f 63 69 74 65 | ile">poc_printValue_fn.zig</cite |
| 8f8e0 | 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></figcaption><pre><code><span.c |
| 8f900 | 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 57 72 69 74 65 | lass="tok-kw">const</span>.Write |
| 8f920 | 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 73 74 72 75 63 74 3c | r.=.<span.class="tok-kw">struct< |
| 8f940 | 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 |
| 8f960 | 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 |
| 8f980 | 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" |
| 8f9a0 | 3e 70 72 69 6e 74 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 | >printValue</span>(self:.*Writer |
| 8f9c0 | 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 2d 6b 77 22 3e 61 6e | ,.value:.<span.class="tok-kw">an |
| 8f9e0 | 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 73 3d 22 74 6f 6b 2d | ytype</span>).!<span.class="tok- |
| 8fa00 | 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | type">void</span>.{.........<spa |
| 8fa20 | 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>.( |
| 8fa40 | 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 49 | <span.class="tok-builtin">@typeI |
| 8fa60 | 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 69 6c | nfo</span>(<span.class="tok-buil |
| 8fa80 | 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 29 29 20 7b 0a 20 | tin">@TypeOf</span>(value))).{.. |
| 8faa0 | 20 20 20 20 20 20 20 20 20 20 20 2e 69 6e 74 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 | ............int.=>.{......... |
| 8fac0 | 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 |
| 8fae0 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 74 65 49 6e 74 28 76 61 6c 75 65 29 3b | urn</span>.self.writeInt(value); |
| 8fb00 | 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 2e 66 6c 6f | .............},..............flo |
| 8fb20 | 61 74 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | at.=>.{.................<span |
| 8fb40 | 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 73 65 | .class="tok-kw">return</span>.se |
| 8fb60 | 6c 66 2e 77 72 69 74 65 46 6c 6f 61 74 28 76 61 6c 75 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | lf.writeFloat(value);........... |
| 8fb80 | 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 70 6f 69 6e 74 65 72 20 3d 26 67 74 3b 20 | ..},..............pointer.=>. |
| 8fba0 | 7b 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 | {.................<span.class="t |
| 8fbc0 | 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 77 72 69 74 65 28 | ok-kw">return</span>.self.write( |
| 8fbe0 | 76 61 6c 75 65 29 3b 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 | value);.............},.......... |
| 8fc00 | 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 2f 73 70 | ...<span.class="tok-kw">else</sp |
| 8fc20 | 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | an>.=>.{.................<spa |
| 8fc40 | 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 45 72 | n.class="tok-builtin">@compileEr |
| 8fc60 | 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 74 72 22 | ror</span>(<span.class="tok-str" |
| 8fc80 | 3e 26 71 75 6f 74 3b 55 6e 61 62 6c 65 20 74 6f 20 70 72 69 6e 74 20 74 79 70 65 20 27 26 71 75 | >"Unable.to.print.type.'&qu |
| 8fca0 | 6f 74 3b 3c 2f 73 70 61 6e 3e 20 2b 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | ot;</span>.++.<span.class="tok-b |
| 8fcc0 | 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 |
| 8fce0 | 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 |
| 8fd00 | 3e 28 76 61 6c 75 65 29 29 20 2b 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | >(value)).++.<span.class="tok-st |
| 8fd20 | 72 22 3e 26 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 | r">"'"</span>);....... |
| 8fd40 | 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 | ......},.........}.....}......<s |
| 8fd60 | 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 |
| 8fd80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 77 72 69 74 65 3c 2f 73 70 61 6e 3e 28 73 | an.class="tok-fn">write</span>(s |
| 8fda0 | 65 6c 66 3a 20 2a 57 72 69 74 65 72 2c 20 76 61 6c 75 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 | elf:.*Writer,.value:.[]<span.cla |
| 8fdc0 | 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 |
| 8fde0 | 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 3c 73 70 61 | lass="tok-type">u8</span>).!<spa |
| 8fe00 | 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>.{ |
| 8fe20 | 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 73 65 6c 66 3b 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 76 | ........._.=.self;........._.=.v |
| 8fe40 | 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 |
| 8fe60 | 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- |
| 8fe80 | 66 6e 22 3e 77 72 69 74 65 49 6e 74 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 2a 57 72 69 74 65 | fn">writeInt</span>(self:.*Write |
| 8fea0 | 72 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 2d 6b 77 22 3e 61 | r,.value:.<span.class="tok-kw">a |
| 8fec0 | 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 73 3d 22 74 6f 6b | nytype</span>).!<span.class="tok |
| 8fee0 | 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 20 20 20 20 5f 20 3d | -type">void</span>.{........._.= |
| 8ff00 | 20 73 65 6c 66 3b 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 76 61 6c 75 65 3b 0a 20 20 20 20 7d 0a | .self;........._.=.value;.....}. |
| 8ff20 | 20 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 70 61 | ....<span.class="tok-kw">fn</spa |
| 8ff40 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 77 72 69 74 65 46 6c 6f | n>.<span.class="tok-fn">writeFlo |
| 8ff60 | 61 74 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 65 3a 20 | at</span>(self:.*Writer,.value:. |
| 8ff80 | 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 |
| 8ffa0 | 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 76 6f 69 | an>).!<span.class="tok-type">voi |
| 8ffc0 | 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 73 65 6c 66 3b 0a 20 20 20 | d</span>.{........._.=.self;.... |
| 8ffe0 | 20 20 20 20 20 5f 20 3d 20 76 61 6c 75 65 3b 0a 20 20 20 20 7d 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c | ....._.=.value;.....}.};</code>< |
| 90000 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | /pre></figure>........<p>....... |
| 90020 | 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 65 20 67 69 76 65 | And.now,.what.happens.if.we.give |
| 90040 | 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 64 65 3e 70 72 69 | .too.many.arguments.to.<code>pri |
| 90060 | 6e 74 3c 2f 63 6f 64 65 3e 3f 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 | nt</code>?.......</p>.......<fig |
| 90080 | 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e | ure><figcaption.class="zig-cap"> |
| 900a0 | 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 70 72 69 6e 74 5f 74 6f | <cite.class="file">test_print_to |
| 900c0 | 6f 5f 6d 61 6e 79 5f 61 72 67 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | o_many_args.zig</cite></figcapti |
| 900e0 | 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | on><pre><code><span.class="tok-k |
| 90100 | 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 |
| 90120 | 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> |
| 90140 | 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 |
| 90160 | 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 73 70 | "</span>).debug.print;..<sp |
| 90180 | 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 |
| 901a0 | 5f 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 22 3e | _number:.<span.class="tok-type"> |
| 901c0 | 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 |
| 901e0 | 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=" |
| 90200 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 5f 73 74 72 69 6e 67 20 3d 20 | tok-kw">const</span>.a_string.=. |
| 90220 | 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 6f 6f 62 | <span.class="tok-str">"foob |
| 90240 | 61 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ar"</span>;..<span.class="t |
| 90260 | 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=" |
| 90280 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 72 69 6e 74 20 74 6f 6f 20 6d 61 6e 79 20 61 72 | tok-str">"print.too.many.ar |
| 902a0 | 67 75 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 70 72 69 6e 74 | guments"</span>.{.....print |
| 902c0 | 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 68 65 72 | (<span.class="tok-str">"her |
| 902e0 | 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 |
| 90300 | 75 6d 62 65 72 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 | umber:.{}\n"</span>,..{.... |
| 90320 | 20 20 20 20 20 61 5f 73 74 72 69 6e 67 2c 0a 20 20 20 20 20 20 20 20 61 5f 6e 75 6d 62 65 72 2c | .....a_string,.........a_number, |
| 90340 | 0a 20 20 20 20 20 20 20 20 61 5f 6e 75 6d 62 65 72 2c 0a 20 20 20 20 7d 29 3b 0a 7d 3c 2f 63 6f | .........a_number,.....});.}</co |
| 90360 | 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | de></pre></figure><figure><figca |
| 90380 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 | ption.class="shell-cap">Shell</f |
| 903a0 | 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 | igcaption><pre><samp>$.<kbd>zig. |
| 903c0 | 74 65 73 74 20 74 65 73 74 5f 70 72 69 6e 74 5f 74 6f 6f 5f 6d 61 6e 79 5f 61 72 67 73 2e 7a 69 | test.test_print_too_many_args.zi |
| 903e0 | 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f | g</kbd>.<span.class="sgr-1m">/ho |
| 90400 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 66 6d 74 2e 7a 69 67 3a | me/andy/dev/zig/lib/std/fmt.zig: |
| 90420 | 32 31 31 3a 31 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | 211:18:.</span><span.class="sgr- |
| 90440 | 33 31 6d 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 | 31m">error:.</span><span.class=" |
| 90460 | 73 67 72 2d 31 6d 22 3e 75 6e 75 73 65 64 20 61 72 67 75 6d 65 6e 74 20 69 6e 20 27 68 65 72 65 | sgr-1m">unused.argument.in.'here |
| 90480 | 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 75 | .is.a.string:.'{s}'.here.is.a.nu |
| 904a0 | 6d 62 65 72 3a 20 7b 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | mber:.{}........................ |
| 904c0 | 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 27 0a 3c 2f 73 | ...........................'.</s |
| 904e0 | 70 61 6e 3e 20 20 20 20 20 20 20 20 20 20 20 20 31 20 3d 26 67 74 3b 20 40 63 6f 6d 70 69 6c 65 | pan>............1.=>.@compile |
| 90500 | 45 72 72 6f 72 28 26 71 75 6f 74 3b 75 6e 75 73 65 64 20 61 72 67 75 6d 65 6e 74 20 69 6e 20 27 | Error("unused.argument.in.' |
| 90520 | 26 71 75 6f 74 3b 20 2b 2b 20 66 6d 74 20 2b 2b 20 26 71 75 6f 74 3b 27 26 71 75 6f 74 3b 29 2c | ".++.fmt.++."'"), |
| 90540 | 0a 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 73 | ..................<span.class="s |
| 90560 | 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e | gr-32m">^~~~~~~~~~~~~~~~~~~~~~~~ |
| 90580 | 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~.</sp |
| 905a0 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 72 65 66 65 72 65 6e 63 | an><span.class="sgr-2m">referenc |
| 905c0 | 65 64 20 62 79 3a 0a 20 20 20 20 70 72 69 6e 74 5f 5f 61 6e 6f 6e 5f 36 38 30 3a 20 2f 68 6f 6d | ed.by:.....print__anon_680:./hom |
| 905e0 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 69 6f 2f 57 72 69 74 65 72 | e/andy/dev/zig/lib/std/io/Writer |
| 90600 | 2e 7a 69 67 3a 32 34 3a 32 36 0a 20 20 20 20 70 72 69 6e 74 5f 5f 61 6e 6f 6e 5f 34 32 30 3a 20 | .zig:24:26.....print__anon_420:. |
| 90620 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 69 6f 2e 7a 69 | /home/andy/dev/zig/lib/std/io.zi |
| 90640 | 67 3a 33 31 32 3a 34 37 0a 20 20 20 20 31 20 72 65 66 65 72 65 6e 63 65 28 73 29 20 68 69 64 64 | g:312:47.....1.reference(s).hidd |
| 90660 | 65 6e 3b 20 75 73 65 20 27 2d 66 72 65 66 65 72 65 6e 63 65 2d 74 72 61 63 65 3d 33 27 20 74 6f | en;.use.'-freference-trace=3'.to |
| 90680 | 20 73 65 65 20 61 6c 6c 20 72 65 66 65 72 65 6e 63 65 73 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 | .see.all.references.</span>.</sa |
| 906a0 | 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | mp></pre></figure>........<p>... |
| 906c0 | 20 20 20 20 5a 69 67 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 | ....Zig.gives.programmers.the.to |
| 906e0 | 6f 6c 73 20 6e 65 65 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 | ols.needed.to.protect.themselves |
| 90700 | 20 61 67 61 69 6e 73 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 | .against.their.own.mistakes..... |
| 90720 | 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 69 67 20 64 6f 65 73 | ...</p>.......<p>.......Zig.does |
| 90740 | 6e 27 74 20 63 61 72 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 | n't.care.whether.the.format.argu |
| 90760 | 6d 65 6e 74 20 69 73 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 | ment.is.a.string.literal,....... |
| 90780 | 6f 6e 6c 79 20 74 68 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 | only.that.it.is.a.compile-time.k |
| 907a0 | 6e 6f 77 6e 20 76 61 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 | nown.value.that.can.be.coerced.t |
| 907c0 | 6f 20 61 20 3c 63 6f 64 65 3e 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | o.a.<code>[]<span.class="tok-kw" |
| 907e0 | 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 |
| 90800 | 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 20 20 3c 2f 70 | ype">u8</span></code>:.......</p |
| 90820 | 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 | >.......<figure><figcaption.clas |
| 90840 | 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 70 | s="zig-cap"><cite.class="file">p |
| 90860 | 72 69 6e 74 5f 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 5f 66 6f 72 6d 61 74 2e 7a 69 67 3c 2f | rint_comptime-known_format.zig</ |
| 90880 | 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 | cite></figcaption><pre><code><sp |
| 908a0 | 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 |
| 908c0 | 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" |
| 908e0 | 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 |
| 90900 | 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 |
| 90920 | 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" |
| 90940 | 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 61 6e 20 63 6c | >const</span>.a_number:.<span.cl |
| 90960 | 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 |
| 90980 | 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> |
| 909a0 | 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 |
| 909c0 | 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 22 74 6f 6b 2d | an>.a_string.=.<span.class="tok- |
| 909e0 | 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 61 6e 3e 3b 0a | str">"foobar"</span>;. |
| 90a00 | 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 |
| 90a20 | 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 72 22 3e 26 71 | >.fmt.=.<span.class="tok-str">&q |
| 90a40 | 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 20 68 65 72 65 | uot;here.is.a.string:.'{s}'.here |
| 90a60 | 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 70 61 6e 3e 3b | .is.a.number:.{}\n"</span>; |
| 90a80 | 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 |
| 90aa0 | 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> |
| 90ac0 | 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 |
| 90ae0 | 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< |
| 90b00 | 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 20 61 5f 73 74 72 | /span>.{.....print(fmt,..{.a_str |
| 90b20 | 69 6e 67 2c 20 61 5f 6e 75 6d 62 65 72 20 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ing,.a_number.});.}</code></pre> |
| 90b40 | 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | </figure><figure><figcaption.cla |
| 90b60 | 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e | ss="shell-cap">Shell</figcaption |
| 90b80 | 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 | ><pre><samp>$.<kbd>zig.build-exe |
| 90ba0 | 20 70 72 69 6e 74 5f 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 5f 66 6f 72 6d 61 74 2e 7a 69 67 | .print_comptime-known_format.zig |
| 90bc0 | 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 70 72 69 6e 74 5f 63 6f 6d 70 74 69 6d 65 2d 6b | </kbd>.$.<kbd>./print_comptime-k |
| 90be0 | 6e 6f 77 6e 5f 66 6f 72 6d 61 74 3c 2f 6b 62 64 3e 0a 68 65 72 65 20 69 73 20 61 20 73 74 72 69 | nown_format</kbd>.here.is.a.stri |
| 90c00 | 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 62 65 72 3a 20 31 | ng:.'foobar'.here.is.a.number:.1 |
| 90c20 | 32 33 34 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 | 234.</samp></pre></figure>...... |
| 90c40 | 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 6e 65 2e 0a 20 20 20 | ..<p>.......This.works.fine..... |
| 90c60 | 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 69 67 20 64 6f 65 73 | ...</p>.......<p>.......Zig.does |
| 90c80 | 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 66 6f 72 6d 61 74 74 | .not.special.case.string.formatt |
| 90ca0 | 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 6e 73 74 65 61 64 20 | ing.in.the.compiler.and.instead. |
| 90cc0 | 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 63 63 6f 6d 70 6c 69 | exposes.enough.power.to.accompli |
| 90ce0 | 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 72 6c 61 6e 64 2e 20 | sh.this.......task.in.userland.. |
| 90d00 | 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 75 63 69 6e 67 20 61 | It.does.so.without.introducing.a |
| 90d20 | 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 20 5a 69 67 2c 20 73 | nother.language.on.top.of.Zig,.s |
| 90d40 | 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 75 61 67 65 20 6f 72 | uch.as.......a.macro.language.or |
| 90d60 | 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 20 49 74 27 73 20 5a | .a.preprocessor.language..It's.Z |
| 90d80 | 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 20 20 3c 2f 70 3e 0a | ig.all.the.way.down........</p>. |
| 90da0 | 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 3c 75 6c | .............<p>See.also:</p><ul |
| 90dc0 | 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 69 6c 65 22 3e 69 6e | >.<li><a.href="#inline-while">in |
| 90de0 | 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 61 20 68 72 65 66 3d | line.while</a></li>.<li><a.href= |
| 90e00 | 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 3c 2f 6c 69 | "#inline-for">inline.for</a></li |
| 90e20 | 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 41 73 | >.</ul>...............<h2.id="As |
| 90e40 | 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 65 6d 62 6c 79 22 3e | sembly"><a.href="#toc-Assembly"> |
| 90e60 | 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 72 22 20 68 72 65 66 | Assembly</a>.<a.class="hdr".href |
| 90e80 | 3d 22 23 41 73 73 65 6d 62 6c 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | ="#Assembly">..</a></h2>........ |
| 90ea0 | 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 73 65 73 2c 20 69 74 | <p>.......For.some.use.cases,.it |
| 90ec0 | 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 63 74 6c 79 20 63 6f | .may.be.necessary.to.directly.co |
| 90ee0 | 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 6e 65 72 61 74 65 64 | ntrol.the.machine.code.generated |
| 90f00 | 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 61 74 68 65 72 20 74 | .......by.Zig.programs,.rather.t |
| 90f20 | 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 20 67 65 6e 65 72 61 | han.relying.on.Zig's.code.genera |
| 90f40 | 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 65 0a 20 20 20 20 20 | tion..For.these.cases,.one...... |
| 90f60 | 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 20 48 65 72 65 20 69 | .can.use.inline.assembly..Here.i |
| 90f80 | 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 69 6e 67 20 48 65 6c | s.an.example.of.implementing.Hel |
| 90fa0 | 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 0a 20 20 20 20 20 20 | lo,.World.on.x86_64.Linux....... |
| 90fc0 | 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 20 20 20 20 3c 2f 70 | using.inline.assembly:.......</p |
| 90fe0 | 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 | >.......<figure><figcaption.clas |
| 91000 | 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 69 | s="zig-cap"><cite.class="file">i |
| 91020 | 6e 6c 69 6e 65 5f 61 73 73 65 6d 62 6c 79 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | nline_assembly.zig</cite></figca |
| 91040 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ption><pre><code><span.class="to |
| 91060 | 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 |
| 91080 | 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 |
| 910a0 | 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 3d 22 | -fn">main</span>().<span.class=" |
| 910c0 | 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 20 7b 0a 20 20 20 20 | tok-type">noreturn</span>.{..... |
| 910e0 | 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 |
| 91100 | 3e 20 6d 73 67 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 | >.msg.=.<span.class="tok-str">&q |
| 91120 | 75 6f 74 3b 68 65 6c 6c 6f 20 77 6f 72 6c 64 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a | uot;hello.world\n"</span>;. |
| 91140 | 20 20 20 20 5f 20 3d 20 73 79 73 63 61 6c 6c 33 28 53 59 53 5f 77 72 69 74 65 2c 20 53 54 44 4f | ...._.=.syscall3(SYS_write,.STDO |
| 91160 | 55 54 5f 46 49 4c 45 4e 4f 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | UT_FILENO,.<span.class="tok-buil |
| 91180 | 74 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 50 74 72 3c 2f 73 70 61 6e 3e 28 6d 73 67 29 2c 20 6d 73 | tin">@intFromPtr</span>(msg),.ms |
| 911a0 | 67 2e 6c 65 6e 29 3b 0a 20 20 20 20 5f 20 3d 20 73 79 73 63 61 6c 6c 31 28 53 59 53 5f 65 78 69 | g.len);....._.=.syscall1(SYS_exi |
| 911c0 | 74 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 3c 2f 73 | t,.<span.class="tok-number">0</s |
| 911e0 | 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"> |
| 91200 | 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 6e 20 63 6c 61 | unreachable</span>;.}..<span.cla |
| 91220 | 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 |
| 91240 | 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 77 72 69 | ss="tok-kw">const</span>.SYS_wri |
| 91260 | 74 65 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 | te.=.<span.class="tok-number">1< |
| 91280 | 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 75 62 | /span>;.<span.class="tok-kw">pub |
| 912a0 | 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 |
| 912c0 | 73 74 3c 2f 73 70 61 6e 3e 20 53 59 53 5f 65 78 69 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | st</span>.SYS_exit.=.<span.class |
| 912e0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 30 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 | ="tok-number">60</span>;..<span. |
| 91300 | 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. |
| 91320 | 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 54 44 4f | class="tok-kw">const</span>.STDO |
| 91340 | 55 54 5f 46 49 4c 45 4e 4f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | UT_FILENO.=.<span.class="tok-num |
| 91360 | 62 65 72 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 | ber">1</span>;..<span.class="tok |
| 91380 | 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 |
| 913a0 | 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- |
| 913c0 | 66 6e 22 3e 73 79 73 63 61 6c 6c 31 3c 2f 73 70 61 6e 3e 28 6e 75 6d 62 65 72 3a 20 3c 73 70 61 | fn">syscall1</span>(number:.<spa |
| 913e0 | 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 2c | n.class="tok-type">usize</span>, |
| 91400 | 20 61 72 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 | .arg1:.<span.class="tok-type">us |
| 91420 | 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 |
| 91440 | 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 63 6c 61 73 | e">usize</span>.{.....<span.clas |
| 91460 | 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 |
| 91480 | 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 3c 73 70 61 6e 20 63 | lass="tok-kw">asm</span>.<span.c |
| 914a0 | 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 28 3c | lass="tok-kw">volatile</span>.(< |
| 914c0 | 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 79 73 63 61 | span.class="tok-str">"sysca |
| 914e0 | 6c 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3a 20 5b 72 65 74 5d 20 | ll"</span>.........:.[ret]. |
| 91500 | 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 3d 7b 72 61 | <span.class="tok-str">"={ra |
| 91520 | 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 2d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 | x}"</span>.(->.<span.cla |
| 91540 | 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 2c 0a 20 20 20 | ss="tok-type">usize</span>),.... |
| 91560 | 20 20 20 20 20 3a 20 5b 6e 75 6d 62 65 72 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .....:.[number].<span.class="tok |
| 91580 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 72 61 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 | -str">"{rax}"</span>.( |
| 915a0 | 6e 75 6d 62 65 72 29 2c 0a 20 20 20 20 20 20 20 20 20 20 5b 61 72 67 31 5d 20 3c 73 70 61 6e 20 | number),...........[arg1].<span. |
| 915c0 | 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 69 7d 26 71 75 6f 74 | class="tok-str">"{rdi}" |
| 915e0 | 3b 3c 2f 73 70 61 6e 3e 20 28 61 72 67 31 29 2c 0a 20 20 20 20 20 20 20 20 3a 20 3c 73 70 61 6e | ;</span>.(arg1),.........:.<span |
| 91600 | 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 3b | .class="tok-str">"rcx" |
| 91620 | 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 26 | </span>,.<span.class="tok-str">& |
| 91640 | 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 0a 0a | quot;r11"</span>.....);.}.. |
| 91660 | 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>. |
| 91680 | 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>.< |
| 916a0 | 73 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 33 3c 2f 73 70 | span.class="tok-fn">syscall3</sp |
| 916c0 | 61 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 | an>(number:.<span.class="tok-typ |
| 916e0 | 65 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 | e">usize</span>,.arg1:.<span.cla |
| 91700 | 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 67 32 | ss="tok-type">usize</span>,.arg2 |
| 91720 | 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</ |
| 91740 | 73 70 61 6e 3e 2c 20 61 72 67 33 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | span>,.arg3:.<span.class="tok-ty |
| 91760 | 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 |
| 91780 | 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 3c 73 70 61 | ok-type">usize</span>.{.....<spa |
| 917a0 | 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>.< |
| 917c0 | 73 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 20 3c | span.class="tok-kw">asm</span>.< |
| 917e0 | 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 |
| 91800 | 61 6e 3e 20 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 | an>.(<span.class="tok-str">" |
| 91820 | 3b 73 79 73 63 61 6c 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3a 20 | ;syscall"</span>.........:. |
| 91840 | 5b 72 65 74 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 | [ret].<span.class="tok-str">&quo |
| 91860 | 74 3b 3d 7b 72 61 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 2d 26 67 74 3b 20 3c 73 70 | t;={rax}"</span>.(->.<sp |
| 91880 | 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> |
| 918a0 | 29 2c 0a 20 20 20 20 20 20 20 20 3a 20 5b 6e 75 6d 62 65 72 5d 20 3c 73 70 61 6e 20 63 6c 61 73 | ),.........:.[number].<span.clas |
| 918c0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 72 61 78 7d 26 71 75 6f 74 3b 3c 2f 73 | s="tok-str">"{rax}"</s |
| 918e0 | 70 61 6e 3e 20 28 6e 75 6d 62 65 72 29 2c 0a 20 20 20 20 20 20 20 20 20 20 5b 61 72 67 31 5d 20 | pan>.(number),...........[arg1]. |
| 91900 | 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 64 69 | <span.class="tok-str">"{rdi |
| 91920 | 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 61 72 67 31 29 2c 0a 20 20 20 20 20 20 20 20 20 | }"</span>.(arg1),.......... |
| 91940 | 20 5b 61 72 67 32 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 | .[arg2].<span.class="tok-str">&q |
| 91960 | 75 6f 74 3b 7b 72 73 69 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 61 72 67 32 29 2c 0a 20 | uot;{rsi}"</span>.(arg2),.. |
| 91980 | 20 20 20 20 20 20 20 20 20 5b 61 72 67 33 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .........[arg3].<span.class="tok |
| 919a0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 72 64 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 | -str">"{rdx}"</span>.( |
| 919c0 | 61 72 67 33 29 2c 0a 20 20 20 20 20 20 20 20 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | arg3),.........:.<span.class="to |
| 919e0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 63 78 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c | k-str">"rcx"</span>,.< |
| 91a00 | 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 31 31 26 71 | span.class="tok-str">"r11&q |
| 91a20 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | uot;</span>.....);.}</code></pre |
| 91a40 | 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | ></figure><figure><figcaption.cl |
| 91a60 | 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f | ass="shell-cap">Shell</figcaptio |
| 91a80 | 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 | n><pre><samp>$.<kbd>zig.build-ex |
| 91aa0 | 65 20 69 6e 6c 69 6e 65 5f 61 73 73 65 6d 62 6c 79 2e 7a 69 67 20 2d 74 61 72 67 65 74 20 78 38 | e.inline_assembly.zig.-target.x8 |
| 91ac0 | 36 5f 36 34 2d 6c 69 6e 75 78 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 69 6e 6c 69 6e 65 | 6_64-linux</kbd>.$.<kbd>./inline |
| 91ae0 | 5f 61 73 73 65 6d 62 6c 79 3c 2f 6b 62 64 3e 0a 68 65 6c 6c 6f 20 77 6f 72 6c 64 0a 3c 2f 73 61 | _assembly</kbd>.hello.world.</sa |
| 91b00 | 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | mp></pre></figure>........<p>... |
| 91b20 | 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 20 20 20 | ....Dissecting.the.syntax:...... |
| 91b40 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | .</p>.......<figure><figcaption. |
| 91b60 | 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c | class="zig-cap"><cite.class="fil |
| 91b80 | 65 22 3e 41 73 73 65 6d 62 6c 79 20 53 79 6e 74 61 78 20 45 78 70 6c 61 69 6e 65 64 2e 7a 69 67 | e">Assembly.Syntax.Explained.zig |
| 91ba0 | 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | </cite></figcaption><pre><code>< |
| 91bc0 | 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>.< |
| 91be0 | 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 |
| 91c00 | 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 |
| 91c20 | 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 |
| 91c40 | 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 |
| 91c60 | 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 |
| 91c80 | 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>.{ |
| 91ca0 | 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">/ |
| 91cc0 | 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 69 | /.Inline.assembly.is.an.expressi |
| 91ce0 | 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 3e | on.which.returns.a.value.</span> |
| 91d00 | 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">/ |
| 91d20 | 2f 20 74 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 | /.the.`asm`.keyword.begins.the.e |
| 91d40 | 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 6c 61 73 | xpression.</span>.....<span.clas |
| 91d60 | 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 |
| 91d80 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 6d 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | lass="tok-kw">asm</span>.....<sp |
| 91da0 | 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 60 76 6f 6c 61 74 | an.class="tok-comment">//.`volat |
| 91dc0 | 69 6c 65 60 20 69 73 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 6d 6f 64 69 66 69 65 72 20 74 68 61 | ile`.is.an.optional.modifier.tha |
| 91de0 | 74 20 74 65 6c 6c 73 20 5a 69 67 20 74 68 69 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | t.tells.Zig.this</span>.....<spa |
| 91e00 | 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 6c 69 6e 65 20 | n.class="tok-comment">//.inline. |
| 91e20 | 61 73 73 65 6d 62 6c 79 20 65 78 70 72 65 73 73 69 6f 6e 20 68 61 73 20 73 69 64 65 2d 65 66 66 | assembly.expression.has.side-eff |
| 91e40 | 65 63 74 73 2e 20 57 69 74 68 6f 75 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ects..Without</span>.....<span.c |
| 91e60 | 6c 61 73 73 3d 22 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 | lass="tok-comment">//.`volatile` |
| 91e80 | 2c 20 5a 69 67 20 69 73 20 61 6c 6c 6f 77 65 64 20 74 6f 20 64 65 6c 65 74 65 20 74 68 65 20 69 | ,.Zig.is.allowed.to.delete.the.i |
| 91ea0 | 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | nline.assembly</span>.....<span. |
| 91ec0 | 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 64 65 20 69 66 20 74 | class="tok-comment">//.code.if.t |
| 91ee0 | 68 65 20 72 65 73 75 6c 74 20 69 73 20 75 6e 75 73 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | he.result.is.unused.</span>..... |
| 91f00 | 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 6c 65 3c 2f 73 | <span.class="tok-kw">volatile</s |
| 91f20 | 70 61 6e 3e 20 28 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 |
| 91f40 | 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 69 6e | ent">//.Next.is.a.comptime.strin |
| 91f60 | 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 2f 73 | g.which.is.the.assembly.code.</s |
| 91f80 | 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 |
| 91fa0 | 74 22 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 | t">//.Inside.this.string.one.may |
| 91fc0 | 20 75 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 | .use.`%[ret]`,.`%[number]`,</spa |
| 91fe0 | 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 22 | n>.....<span.class="tok-comment" |
| 92000 | 3e 2f 2f 20 6f 72 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 | >//.or.`%[arg1]`.where.a.registe |
| 92020 | 72 20 69 73 20 65 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 | r.is.expected,.to.specify</span> |
| 92040 | 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">/ |
| 92060 | 2f 20 74 68 65 20 72 65 67 69 73 74 65 72 20 74 68 61 74 20 5a 69 67 20 75 73 65 73 20 66 6f 72 | /.the.register.that.Zig.uses.for |
| 92080 | 20 74 68 65 20 61 72 67 75 6d 65 6e 74 20 6f 72 20 72 65 74 75 72 6e 20 76 61 6c 75 65 2c 3c 2f | .the.argument.or.return.value,</ |
| 920a0 | 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 65 | span>.....<span.class="tok-comme |
| 920c0 | 6e 74 22 3e 2f 2f 20 69 66 20 74 68 65 20 72 65 67 69 73 74 65 72 20 63 6f 6e 73 74 72 61 69 6e | nt">//.if.the.register.constrain |
| 920e0 | 74 20 73 74 72 69 6e 67 73 20 61 72 65 20 75 73 65 64 2e 20 48 6f 77 65 76 65 72 20 69 6e 3c 2f | t.strings.are.used..However.in</ |
| 92100 | 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 65 | span>.....<span.class="tok-comme |
| 92120 | 6e 74 22 3e 2f 2f 20 74 68 65 20 62 65 6c 6f 77 20 63 6f 64 65 2c 20 74 68 69 73 20 69 73 20 6e | nt">//.the.below.code,.this.is.n |
| 92140 | 6f 74 20 75 73 65 64 2e 20 41 20 6c 69 74 65 72 61 6c 20 60 25 60 20 63 61 6e 20 62 65 3c 2f 73 | ot.used..A.literal.`%`.can.be</s |
| 92160 | 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 |
| 92180 | 74 22 3e 2f 2f 20 6f 62 74 61 69 6e 65 64 20 62 79 20 65 73 63 61 70 69 6e 67 20 69 74 20 77 69 | t">//.obtained.by.escaping.it.wi |
| 921a0 | 74 68 20 61 20 64 6f 75 62 6c 65 20 70 65 72 63 65 6e 74 3a 20 60 25 25 60 2e 3c 2f 73 70 61 6e | th.a.double.percent:.`%%`.</span |
| 921c0 | 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"> |
| 921e0 | 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 73 79 6e 74 61 78 | //.Often.multiline.string.syntax |
| 92200 | 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 6e 3e 0a 20 20 20 | .comes.in.handy.here.</span>.... |
| 92220 | 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 3e 5c 5c 73 79 73 | .....<span.class="tok-str">\\sys |
| 92240 | 63 61 6c 6c 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 | call</span>.........<span.class= |
| 92260 | 22 74 6f 6b 2d 63 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 | "tok-comment">//.Next.is.the.out |
| 92280 | 70 75 74 2e 20 49 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 | put..It.is.possible.in.the.futur |
| 922a0 | 65 20 5a 69 67 20 77 69 6c 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | e.Zig.will</span>.........<span. |
| 922c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 73 75 70 70 6f 72 74 20 6d | class="tok-comment">//.support.m |
| 922e0 | 75 6c 74 69 70 6c 65 20 6f 75 74 70 75 74 73 2c 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 68 6f | ultiple.outputs,.depending.on.ho |
| 92300 | 77 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 | w</span>.........<span.class="to |
| 92320 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d | k-comment">//.https://github.com |
| 92340 | 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 32 31 35 20 69 73 20 72 65 73 6f 6c | /ziglang/zig/issues/215.is.resol |
| 92360 | 76 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 61 73 73 3d | ved.</span>.........<span.class= |
| 92380 | 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 20 66 | "tok-comment">//.It.is.allowed.f |
| 923a0 | 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 77 68 | or.there.to.be.no.outputs,.in.wh |
| 923c0 | 69 63 68 20 63 61 73 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | ich.case</span>.........<span.cl |
| 923e0 | 61 73 73 3d 22 74 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 | ass="tok-comment">//.this.colon. |
| 92400 | 77 6f 75 6c 64 20 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 | would.be.directly.followed.by.th |
| 92420 | 65 20 63 6f 6c 6f 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 | e.colon.for.the.inputs.</span>.. |
| 92440 | 20 20 20 20 20 20 20 3a 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 |
| 92460 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 73 70 65 63 69 66 69 65 73 20 74 68 65 | k-comment">//.This.specifies.the |
| 92480 | 20 6e 61 6d 65 20 74 6f 20 62 65 20 75 73 65 64 20 69 6e 20 60 25 5b 72 65 74 5d 60 20 73 79 6e | .name.to.be.used.in.`%[ret]`.syn |
| 924a0 | 74 61 78 20 69 6e 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 | tax.in</span>.........<span.clas |
| 924c0 | 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 76 65 20 61 73 73 | s="tok-comment">//.the.above.ass |
| 924e0 | 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 20 64 6f 65 73 20 | embly.string..This.example.does. |
| 92500 | 6e 6f 74 20 75 73 65 20 69 74 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | not.use.it,</span>.........<span |
| 92520 | 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 68 65 20 | .class="tok-comment">//.but.the. |
| 92540 | 73 79 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 | syntax.is.mandatory.</span>..... |
| 92560 | 20 20 20 20 20 20 5b 72 65 74 5d 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ......[ret]...........<span.clas |
| 92580 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 65 78 74 20 69 73 20 74 68 65 20 6f | s="tok-comment">//.Next.is.the.o |
| 925a0 | 75 74 70 75 74 20 63 6f 6e 73 74 72 61 69 6e 74 20 73 74 72 69 6e 67 2e 20 54 68 69 73 20 66 65 | utput.constraint.string..This.fe |
| 925c0 | 61 74 75 72 65 20 69 73 20 73 74 69 6c 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 | ature.is.still</span>........... |
| 925e0 | 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 6e | <span.class="tok-comment">//.con |
| 92600 | 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 20 73 6f 20 | sidered.unstable.in.Zig,.and.so. |
| 92620 | 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 3e 0a 20 20 | LLVM/GCC.documentation</span>... |
| 92640 | 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 |
| 92660 | 22 3e 2f 2f 20 6d 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 | ">//.must.be.used.to.understand. |
| 92680 | 74 68 65 20 73 65 6d 61 6e 74 69 63 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 | the.semantics.</span>........... |
| 926a0 | 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 68 74 74 | <span.class="tok-comment">//.htt |
| 926c0 | 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 |
| 926e0 | 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 |
| 92700 | 61 69 6e 74 2d 73 74 72 69 6e 67 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 | aint-string</span>...........<sp |
| 92720 | 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 68 74 74 70 73 3a | an.class="tok-comment">//.https: |
| 92740 | 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 45 78 74 | //gcc.gnu.org/onlinedocs/gcc/Ext |
| 92760 | 65 6e 64 65 64 2d 41 73 6d 2e 68 74 6d 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 | ended-Asm.html</span>........... |
| 92780 | 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 6e 20 | <span.class="tok-comment">//.In. |
| 927a0 | 74 68 69 73 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 | this.example,.the.constraint.str |
| 927c0 | 69 6e 67 20 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 | ing.means."the.result.value |
| 927e0 | 20 6f 66 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .of</span>...........<span.class |
| 92800 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 69 73 20 69 6e 6c 69 6e 65 20 61 73 | ="tok-comment">//.this.inline.as |
| 92820 | 73 65 6d 62 6c 79 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 69 73 20 77 68 61 74 65 76 65 72 20 69 | sembly.instruction.is.whatever.i |
| 92840 | 73 20 69 6e 20 24 72 61 78 26 71 75 6f 74 3b 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 | s.in.$rax".</span>......... |
| 92860 | 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 71 75 6f 74 3b 3d 7b | ..<span.class="tok-str">"={ |
| 92880 | 72 61 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | rax}"</span>...........<spa |
| 928a0 | 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 69 73 | n.class="tok-comment">//.Next.is |
| 928c0 | 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 26 67 | .either.a.value.binding,.or.`-&g |
| 928e0 | 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 3e 0a | t;`.and.then.a.type..The</span>. |
| 92900 | 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 6d 65 | ..........<span.class="tok-comme |
| 92920 | 6e 74 22 3e 2f 2f 20 74 79 70 65 20 69 73 20 74 68 65 20 72 65 73 75 6c 74 20 74 79 70 65 20 6f | nt">//.type.is.the.result.type.o |
| 92940 | 66 20 74 68 65 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 | f.the.inline.assembly.expression |
| 92960 | 2e 3c 2f 73 70 61 6e 3e 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=" |
| 92980 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 69 74 20 69 73 20 61 20 76 61 6c 75 65 | tok-comment">//.If.it.is.a.value |
| 929a0 | 20 62 69 6e 64 69 6e 67 2c 20 74 68 65 6e 20 60 25 5b 72 65 74 5d 60 20 73 79 6e 74 61 78 20 77 | .binding,.then.`%[ret]`.syntax.w |
| 929c0 | 6f 75 6c 64 20 62 65 20 75 73 65 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 | ould.be.used</span>...........<s |
| 929e0 | 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 72 65 | pan.class="tok-comment">//.to.re |
| 92a00 | 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 20 74 68 65 | fer.to.the.register.bound.to.the |
| 92a20 | 20 76 61 6c 75 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 28 2d 26 67 74 3b 20 | .value.</span>...........(->. |
| 92a40 | 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 70 | <span.class="tok-type">usize</sp |
| 92a60 | 61 6e 3e 29 2c 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 6f 6b | an>),...........<span.class="tok |
| 92a80 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 65 78 74 20 69 73 20 74 68 65 20 6c 69 73 74 20 6f 66 | -comment">//.Next.is.the.list.of |
| 92aa0 | 20 69 6e 70 75 74 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | .inputs.</span>...........<span. |
| 92ac0 | 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 6f 6e 73 74 | class="tok-comment">//.The.const |
| 92ae0 | 72 61 69 6e 74 20 66 6f 72 20 74 68 65 73 65 20 69 6e 70 75 74 73 20 6d 65 61 6e 73 2c 20 26 71 | raint.for.these.inputs.means,.&q |
| 92b00 | 75 6f 74 3b 77 68 65 6e 20 74 68 65 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65 20 69 73 3c 2f 73 | uot;when.the.assembly.code.is</s |
| 92b20 | 70 61 6e 3e 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 6f 6b 2d | pan>...........<span.class="tok- |
| 92b40 | 63 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 | comment">//.executed,.$rax.shall |
| 92b60 | 20 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 | .have.the.value.of.`number`.and. |
| 92b80 | 24 72 64 69 20 73 68 61 6c 6c 20 68 61 76 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 | $rdi.shall.have</span>.......... |
| 92ba0 | 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 74 68 | .<span.class="tok-comment">//.th |
| 92bc0 | 65 20 76 61 6c 75 65 20 6f 66 20 60 61 72 67 31 60 26 71 75 6f 74 3b 2e 20 41 6e 79 20 6e 75 6d | e.value.of.`arg1`"..Any.num |
| 92be0 | 62 65 72 20 6f 66 20 69 6e 70 75 74 20 70 61 72 61 6d 65 74 65 72 73 20 69 73 20 61 6c 6c 6f 77 | ber.of.input.parameters.is.allow |
| 92c00 | 65 64 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ed,</span>...........<span.class |
| 92c20 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6e 63 6c 75 64 69 6e 67 20 6e 6f 6e 65 | ="tok-comment">//.including.none |
| 92c40 | 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3a 20 5b 6e 75 6d 62 65 72 5d 20 3c 73 70 61 | .</span>.........:.[number].<spa |
| 92c60 | 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 71 75 | n.class="tok-str">"{rax}&qu |
| 92c80 | 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 20 5b | ot;</span>.(number),...........[ |
| 92ca0 | 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 75 6f | arg1].<span.class="tok-str">&quo |
| 92cc0 | 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 2c 0a 20 20 20 | t;{rdi}"</span>.(arg1),.... |
| 92ce0 | 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" |
| 92d00 | 3e 2f 2f 20 4e 65 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 | >//.Next.is.the.list.of.clobbers |
| 92d20 | 2e 20 54 68 65 73 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 | ..These.declare.a.set.of.registe |
| 92d40 | 72 73 20 77 68 6f 73 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | rs.whose</span>...........<span. |
| 92d60 | 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 73 20 77 69 | class="tok-comment">//.values.wi |
| 92d80 | 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 63 75 | ll.not.be.preserved.by.the.execu |
| 92da0 | 74 69 6f 6e 20 6f 66 20 74 68 69 73 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65 2e 3c 2f 73 70 61 | tion.of.this.assembly.code.</spa |
| 92dc0 | 6e 3e 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 6f 6b 2d 63 6f | n>...........<span.class="tok-co |
| 92de0 | 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 6c 75 64 65 20 6f | mment">//.These.do.not.include.o |
| 92e00 | 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 54 68 65 20 73 70 | utput.or.input.registers..The.sp |
| 92e20 | 65 63 69 61 6c 20 63 6c 6f 62 62 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | ecial.clobber</span>...........< |
| 92e40 | 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 61 6c 75 | span.class="tok-comment">//.valu |
| 92e60 | 65 20 6f 66 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 | e.of."memory".means.th |
| 92e80 | 61 74 20 74 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 | at.the.assembly.writes.to.arbitr |
| 92ea0 | 61 72 79 20 75 6e 64 65 63 6c 61 72 65 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 | ary.undeclared</span>........... |
| 92ec0 | 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 65 6d | <span.class="tok-comment">//.mem |
| 92ee0 | 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 68 65 20 6d 65 6d | ory.locations.-.not.only.the.mem |
| 92f00 | 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 65 64 20 69 6e 64 | ory.pointed.to.by.a.declared.ind |
| 92f20 | 69 72 65 63 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | irect</span>...........<span.cla |
| 92f40 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 75 74 70 75 74 2e 20 49 6e 20 74 | ss="tok-comment">//.output..In.t |
| 92f60 | 68 69 73 20 65 78 61 6d 70 6c 65 20 77 65 20 6c 69 73 74 20 24 72 63 78 20 61 6e 64 20 24 72 31 | his.example.we.list.$rcx.and.$r1 |
| 92f80 | 31 20 62 65 63 61 75 73 65 20 69 74 20 69 73 20 6b 6e 6f 77 6e 20 74 68 65 3c 2f 73 70 61 6e 3e | 1.because.it.is.known.the</span> |
| 92fa0 | 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 6f 6b 2d 63 6f 6d 6d | ...........<span.class="tok-comm |
| 92fc0 | 65 6e 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 | ent">//.kernel.syscall.does.not. |
| 92fe0 | 70 72 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 | preserve.these.registers.</span> |
| 93000 | 0a 20 20 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 | .........:.<span.class="tok-str" |
| 93020 | 3e 26 71 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 | >"rcx"</span>,.<span.c |
| 93040 | 6c 61 73 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 | lass="tok-str">"r11"</ |
| 93060 | 73 70 61 6e 3e 0a 20 20 20 20 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | span>.....);.}</code></pre></fig |
| 93080 | 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 78 38 36 20 61 6e | ure>........<p>.......For.x86.an |
| 930a0 | 64 20 78 38 36 5f 36 34 20 74 61 72 67 65 74 73 2c 20 74 68 65 20 73 79 6e 74 61 78 20 69 73 20 | d.x86_64.targets,.the.syntax.is. |
| 930c0 | 41 54 26 61 6d 70 3b 54 20 73 79 6e 74 61 78 2c 20 72 61 74 68 65 72 20 74 68 61 6e 20 74 68 65 | AT&T.syntax,.rather.than.the |
| 930e0 | 20 6d 6f 72 65 0a 20 20 20 20 20 20 70 6f 70 75 6c 61 72 20 49 6e 74 65 6c 20 73 79 6e 74 61 78 | .more.......popular.Intel.syntax |
| 93100 | 2e 20 54 68 69 73 20 69 73 20 64 75 65 20 74 6f 20 74 65 63 68 6e 69 63 61 6c 20 63 6f 6e 73 74 | ..This.is.due.to.technical.const |
| 93120 | 72 61 69 6e 74 73 3b 20 61 73 73 65 6d 62 6c 79 20 70 61 72 73 69 6e 67 20 69 73 0a 20 20 20 20 | raints;.assembly.parsing.is..... |
| 93140 | 20 20 70 72 6f 76 69 64 65 64 20 62 79 20 4c 4c 56 4d 20 61 6e 64 20 69 74 73 20 73 75 70 70 6f | ..provided.by.LLVM.and.its.suppo |
| 93160 | 72 74 20 66 6f 72 20 49 6e 74 65 6c 20 73 79 6e 74 61 78 20 69 73 20 62 75 67 67 79 20 61 6e 64 | rt.for.Intel.syntax.is.buggy.and |
| 93180 | 20 6e 6f 74 20 77 65 6c 6c 20 74 65 73 74 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | .not.well.tested........</p>.... |
| 931a0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 6f 6d 65 20 64 61 79 20 5a 69 67 20 6d 61 79 20 68 61 | ...<p>.......Some.day.Zig.may.ha |
| 931c0 | 76 65 20 69 74 73 20 6f 77 6e 20 61 73 73 65 6d 62 6c 65 72 2e 20 54 68 69 73 20 77 6f 75 6c 64 | ve.its.own.assembler..This.would |
| 931e0 | 20 61 6c 6c 6f 77 20 69 74 20 74 6f 20 69 6e 74 65 67 72 61 74 65 20 6d 6f 72 65 20 73 65 61 6d | .allow.it.to.integrate.more.seam |
| 93200 | 6c 65 73 73 6c 79 0a 20 20 20 20 20 20 69 6e 74 6f 20 74 68 65 20 6c 61 6e 67 75 61 67 65 2c 20 | lessly.......into.the.language,. |
| 93220 | 61 73 20 77 65 6c 6c 20 61 73 20 62 65 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 74 68 | as.well.as.be.compatible.with.th |
| 93240 | 65 20 70 6f 70 75 6c 61 72 20 4e 41 53 4d 20 73 79 6e 74 61 78 2e 20 54 68 69 73 20 64 6f 63 75 | e.popular.NASM.syntax..This.docu |
| 93260 | 6d 65 6e 74 61 74 69 6f 6e 0a 20 20 20 20 20 20 73 65 63 74 69 6f 6e 20 77 69 6c 6c 20 62 65 20 | mentation.......section.will.be. |
| 93280 | 75 70 64 61 74 65 64 20 62 65 66 6f 72 65 20 31 2e 30 2e 30 20 69 73 20 72 65 6c 65 61 73 65 64 | updated.before.1.0.0.is.released |
| 932a0 | 2c 20 77 69 74 68 20 61 20 63 6f 6e 63 6c 75 73 69 76 65 20 73 74 61 74 65 6d 65 6e 74 20 61 62 | ,.with.a.conclusive.statement.ab |
| 932c0 | 6f 75 74 20 74 68 65 20 73 74 61 74 75 73 0a 20 20 20 20 20 20 6f 66 20 41 54 26 61 6d 70 3b 54 | out.the.status.......of.AT&T |
| 932e0 | 20 76 73 20 49 6e 74 65 6c 2f 4e 41 53 4d 20 73 79 6e 74 61 78 2e 0a 20 20 20 20 20 20 3c 2f 70 | .vs.Intel/NASM.syntax........</p |
| 93300 | 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 4f 75 74 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e | >.......<h3.id="Output-Constrain |
| 93320 | 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4f 75 74 70 75 74 2d 43 6f 6e 73 74 72 61 | ts"><a.href="#toc-Output-Constra |
| 93340 | 69 6e 74 73 22 3e 4f 75 74 70 75 74 20 43 6f 6e 73 74 72 61 69 6e 74 73 3c 2f 61 3e 20 3c 61 20 | ints">Output.Constraints</a>.<a. |
| 93360 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4f 75 74 70 75 74 2d 43 6f 6e 73 74 72 | class="hdr".href="#Output-Constr |
| 93380 | 61 69 6e 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 0a 20 20 | aints">..</a></h3>........<p>... |
| 933a0 | 20 20 20 20 4f 75 74 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 | ....Output.constraints.are.still |
| 933c0 | 20 63 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 | .considered.to.be.unstable.in.Zi |
| 933e0 | 67 2c 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 | g,.and.......so.......<a.href="h |
| 93400 | 74 74 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 | ttp://releases.llvm.org/10.0.0/d |
| 93420 | 6f 63 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 | ocs/LangRef.html#inline-asm-cons |
| 93440 | 74 72 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 | traint-string">LLVM.documentatio |
| 93460 | 6e 3c 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 | n</a>.......and.......<a.href="h |
| 93480 | 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 63 | ttps://gcc.gnu.org/onlinedocs/gc |
| 934a0 | 63 2f 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 | c/Extended-Asm.html">GCC.documen |
| 934c0 | 74 61 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 | tation</a>.......must.be.used.to |
| 934e0 | 20 75 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 | .understand.the.semantics....... |
| 93500 | 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 61 74 20 | .</p>.......<p>.......Note.that. |
| 93520 | 73 6f 6d 65 20 62 72 65 61 6b 69 6e 67 20 63 68 61 6e 67 65 73 20 74 6f 20 6f 75 74 70 75 74 20 | some.breaking.changes.to.output. |
| 93540 | 63 6f 6e 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 | constraints.are.planned.with.... |
| 93560 | 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 2f 7a | ...<a.href="https://github.com/z |
| 93580 | 69 67 6c 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 | iglang/zig/issues/215">issue.#21 |
| 935a0 | 35 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 20 20 20 20 | 5</a>........</p>............... |
| 935c0 | 3c 68 33 20 69 64 3d 22 49 6e 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e 3c 61 20 68 72 | <h3.id="Input-Constraints"><a.hr |
| 935e0 | 65 66 3d 22 23 74 6f 63 2d 49 6e 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e 49 6e 70 75 | ef="#toc-Input-Constraints">Inpu |
| 93600 | 74 20 43 6f 6e 73 74 72 61 69 6e 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | t.Constraints</a>.<a.class="hdr" |
| 93620 | 20 68 72 65 66 3d 22 23 49 6e 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e c2 a7 3c 2f 61 | .href="#Input-Constraints">..</a |
| 93640 | 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 6e 70 75 74 20 63 6f | ></h3>........<p>.......Input.co |
| 93660 | 6e 73 74 72 61 69 6e 74 73 20 61 72 65 20 73 74 69 6c 6c 20 63 6f 6e 73 69 64 65 72 65 64 20 74 | nstraints.are.still.considered.t |
| 93680 | 6f 20 62 65 20 75 6e 73 74 61 62 6c 65 20 69 6e 20 5a 69 67 2c 20 61 6e 64 0a 20 20 20 20 20 20 | o.be.unstable.in.Zig,.and....... |
| 936a0 | 73 6f 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 3a 2f 2f 72 65 6c 65 61 73 65 | so.......<a.href="http://release |
| 936c0 | 73 2e 6c 6c 76 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 | s.llvm.org/10.0.0/docs/LangRef.h |
| 936e0 | 74 6d 6c 23 69 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 | tml#inline-asm-constraint-string |
| 93700 | 22 3e 4c 4c 56 4d 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 61 | ">LLVM.documentation</a>.......a |
| 93720 | 6e 64 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 67 6e | nd.......<a.href="https://gcc.gn |
| 93740 | 75 2e 6f 72 67 2f 6f 6e 6c 69 6e 65 64 6f 63 73 2f 67 63 63 2f 45 78 74 65 6e 64 65 64 2d 41 73 | u.org/onlinedocs/gcc/Extended-As |
| 93760 | 6d 2e 68 74 6d 6c 22 3e 47 43 43 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3c 2f 61 3e 0a 20 20 | m.html">GCC.documentation</a>... |
| 93780 | 20 20 20 20 6d 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 | ....must.be.used.to.understand.t |
| 937a0 | 68 65 20 73 65 6d 61 6e 74 69 63 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | he.semantics........</p>.......< |
| 937c0 | 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 73 6f 6d 65 20 62 72 65 61 6b 69 6e 67 | p>.......Note.that.some.breaking |
| 937e0 | 20 63 68 61 6e 67 65 73 20 74 6f 20 69 6e 70 75 74 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 61 72 | .changes.to.input.constraints.ar |
| 93800 | 65 20 70 6c 61 6e 6e 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 | e.planned.with.......<a.href="ht |
| 93820 | 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 73 73 | tps://github.com/ziglang/zig/iss |
| 93840 | 75 65 73 2f 32 31 35 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 | ues/215">issue.#215</a>........< |
| 93860 | 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 6c 6f 62 62 65 | /p>...............<h3.id="Clobbe |
| 93880 | 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6c 6f 62 62 65 72 73 22 3e 43 6c 6f 62 | rs"><a.href="#toc-Clobbers">Clob |
| 938a0 | 62 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 66 3d 22 23 43 | bers</a>.<a.class="hdr".href="#C |
| 938c0 | 6c 6f 62 62 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 | lobbers">..</a></h3>........<p>. |
| 938e0 | 20 20 20 20 20 20 43 6c 6f 62 62 65 72 73 20 61 72 65 20 74 68 65 20 73 65 74 20 6f 66 20 72 65 | ......Clobbers.are.the.set.of.re |
| 93900 | 67 69 73 74 65 72 73 20 77 68 6f 73 65 20 76 61 6c 75 65 73 20 77 69 6c 6c 20 6e 6f 74 20 62 65 | gisters.whose.values.will.not.be |
| 93920 | 20 70 72 65 73 65 72 76 65 64 20 62 79 20 74 68 65 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 0a 20 | .preserved.by.the.execution.of.. |
| 93940 | 20 20 20 20 20 74 68 65 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65 2e 20 54 68 65 73 65 20 64 6f | .....the.assembly.code..These.do |
| 93960 | 20 6e 6f 74 20 69 6e 63 6c 75 64 65 20 6f 75 74 70 75 74 20 6f 72 20 69 6e 70 75 74 20 72 65 67 | .not.include.output.or.input.reg |
| 93980 | 69 73 74 65 72 73 2e 20 54 68 65 20 73 70 65 63 69 61 6c 20 63 6c 6f 62 62 65 72 0a 20 20 20 20 | isters..The.special.clobber..... |
| 939a0 | 20 20 76 61 6c 75 65 20 6f 66 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ..value.of.<code><span.class="to |
| 939c0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 65 6d 6f 72 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | k-str">"memory"</span> |
| 939e0 | 3c 2f 63 6f 64 65 3e 20 6d 65 61 6e 73 20 74 68 61 74 20 74 68 65 20 61 73 73 65 6d 62 6c 79 20 | </code>.means.that.the.assembly. |
| 93a00 | 63 61 75 73 65 73 20 77 72 69 74 65 73 20 74 6f 0a 20 20 20 20 20 20 61 72 62 69 74 72 61 72 79 | causes.writes.to.......arbitrary |
| 93a20 | 20 75 6e 64 65 63 6c 61 72 65 64 20 6d 65 6d 6f 72 79 20 6c 6f 63 61 74 69 6f 6e 73 20 2d 20 6e | .undeclared.memory.locations.-.n |
| 93a40 | 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 20 62 79 | ot.only.the.memory.pointed.to.by |
| 93a60 | 20 61 20 64 65 63 6c 61 72 65 64 0a 20 20 20 20 20 20 69 6e 64 69 72 65 63 74 20 6f 75 74 70 75 | .a.declared.......indirect.outpu |
| 93a80 | 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 46 61 | t........</p>.......<p>.......Fa |
| 93aa0 | 69 6c 75 72 65 20 74 6f 20 64 65 63 6c 61 72 65 20 74 68 65 20 66 75 6c 6c 20 73 65 74 20 6f 66 | ilure.to.declare.the.full.set.of |
| 93ac0 | 20 63 6c 6f 62 62 65 72 73 20 66 6f 72 20 61 20 67 69 76 65 6e 20 69 6e 6c 69 6e 65 20 61 73 73 | .clobbers.for.a.given.inline.ass |
| 93ae0 | 65 6d 62 6c 79 0a 20 20 20 20 20 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 75 6e 63 68 65 63 | embly.......expression.is.unchec |
| 93b00 | 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e | ked.<a.href="#Illegal-Behavior"> |
| 93b20 | 49 6c 6c 65 67 61 6c 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 | Illegal.Behavior</a>........</p> |
| 93b40 | 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 47 6c 6f 62 61 6c 2d 41 73 | ...............<h3.id="Global-As |
| 93b60 | 73 65 6d 62 6c 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 | sembly"><a.href="#toc-Global-Ass |
| 93b80 | 65 6d 62 6c 79 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 | embly">Global.Assembly</a>.<a.cl |
| 93ba0 | 61 73 73 3d 22 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 | ass="hdr".href="#Global-Assembly |
| 93bc0 | 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 57 | ">..</a></h3>........<p>.......W |
| 93be0 | 68 65 6e 20 61 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 | hen.an.assembly.expression.occur |
| 93c00 | 73 20 69 6e 20 61 20 3c 61 20 68 72 65 66 3d 22 23 43 6f 6e 74 61 69 6e 65 72 73 22 3e 63 6f 6e | s.in.a.<a.href="#Containers">con |
| 93c20 | 74 61 69 6e 65 72 3c 2f 61 3e 20 6c 65 76 65 6c 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 | tainer</a>.level.<a.href="#compt |
| 93c40 | 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 73 | ime">comptime</a>.block,.this.is |
| 93c60 | 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 2f | .......<strong>global.assembly</ |
| 93c80 | 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 20 | strong>........</p>.......<p>... |
| 93ca0 | 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 69 | ....This.kind.of.assembly.has.di |
| 93cc0 | 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 62 | fferent.rules.than.inline.assemb |
| 93ce0 | 6c 79 2e 20 46 69 72 73 74 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ly..First,.<code><span.class="to |
| 93d00 | 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 0a 20 20 20 | k-kw">volatile</span></code>.... |
| 93d20 | 20 20 20 69 73 20 6e 6f 74 20 76 61 6c 69 64 20 62 65 63 61 75 73 65 20 61 6c 6c 20 67 6c 6f 62 | ...is.not.valid.because.all.glob |
| 93d40 | 61 6c 20 61 73 73 65 6d 62 6c 79 20 69 73 20 75 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 20 69 | al.assembly.is.unconditionally.i |
| 93d60 | 6e 63 6c 75 64 65 64 2e 0a 20 20 20 20 20 20 53 65 63 6f 6e 64 2c 20 74 68 65 72 65 20 61 72 65 | ncluded........Second,.there.are |
| 93d80 | 20 6e 6f 20 69 6e 70 75 74 73 2c 20 6f 75 74 70 75 74 73 2c 20 6f 72 20 63 6c 6f 62 62 65 72 73 | .no.inputs,.outputs,.or.clobbers |
| 93da0 | 2e 20 41 6c 6c 20 67 6c 6f 62 61 6c 20 61 73 73 65 6d 62 6c 79 20 69 73 20 63 6f 6e 63 61 74 65 | ..All.global.assembly.is.concate |
| 93dc0 | 6e 61 74 65 64 0a 20 20 20 20 20 20 76 65 72 62 61 74 69 6d 20 69 6e 74 6f 20 6f 6e 65 20 6c 6f | nated.......verbatim.into.one.lo |
| 93de0 | 6e 67 20 73 74 72 69 6e 67 20 61 6e 64 20 61 73 73 65 6d 62 6c 65 64 20 74 6f 67 65 74 68 65 72 | ng.string.and.assembled.together |
| 93e00 | 2e 20 54 68 65 72 65 20 61 72 65 20 6e 6f 20 74 65 6d 70 6c 61 74 65 20 73 75 62 73 74 69 74 75 | ..There.are.no.template.substitu |
| 93e20 | 74 69 6f 6e 20 72 75 6c 65 73 20 72 65 67 61 72 64 69 6e 67 0a 20 20 20 20 20 20 3c 63 6f 64 65 | tion.rules.regarding.......<code |
| 93e40 | 3e 25 3c 2f 63 6f 64 65 3e 20 61 73 20 74 68 65 72 65 20 61 72 65 20 69 6e 20 69 6e 6c 69 6e 65 | >%</code>.as.there.are.in.inline |
| 93e60 | 20 61 73 73 65 6d 62 6c 79 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 | .assembly.expressions........</p |
| 93e80 | 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 | >.......<figure><figcaption.clas |
| 93ea0 | 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | s="zig-cap"><cite.class="file">t |
| 93ec0 | 65 73 74 5f 67 6c 6f 62 61 6c 5f 61 73 73 65 6d 62 6c 79 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | est_global_assembly.zig</cite></ |
| 93ee0 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | figcaption><pre><code><span.clas |
| 93f00 | 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 |
| 93f20 | 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< |
| 93f40 | 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 |
| 93f60 | 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 |
| 93f80 | 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.= |
| 93fa0 | 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 |
| 93fc0 | 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>.{.... |
| 93fe0 | 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 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">asm</span> |
| 94000 | 20 28 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 74 72 22 | .(.........<span.class="tok-str" |
| 94020 | 3e 5c 5c 2e 67 6c 6f 62 61 6c 20 6d 79 5f 66 75 6e 63 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 | >\\.global.my_func;</span>...... |
| 94040 | 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 74 79 70 65 | ...<span.class="tok-str">\\.type |
| 94060 | 20 6d 79 5f 66 75 6e 63 2c 20 40 66 75 6e 63 74 69 6f 6e 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | .my_func,.@function;</span>..... |
| 94080 | 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 6d 79 5f 66 | ....<span.class="tok-str">\\my_f |
| 940a0 | 75 6e 63 3a 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 | unc:</span>.........<span.class= |
| 940c0 | 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 20 20 6c 65 61 20 28 25 72 64 69 2c 25 72 73 69 2c 31 29 2c | "tok-str">\\..lea.(%rdi,%rsi,1), |
| 940e0 | 25 65 61 78 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 | %eax</span>.........<span.class= |
| 94100 | 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 20 20 72 65 74 71 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 29 3b | "tok-str">\\..retq</span>.....); |
| 94120 | 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 65 78 74 65 72 6e 3c | .}..<span.class="tok-kw">extern< |
| 94140 | 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</ |
| 94160 | 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 79 5f 66 75 | span>.<span.class="tok-fn">my_fu |
| 94180 | 6e 63 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 74 79 | nc</span>(a:.<span.class="tok-ty |
| 941a0 | 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 73 73 3d 22 | pe">i32</span>,.b:.<span.class=" |
| 941c0 | 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 |
| 941e0 | 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 3c 73 70 61 6e 20 | s="tok-type">i32</span>;..<span. |
| 94200 | 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 |
| 94220 | 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 61 73 | .class="tok-str">"global.as |
| 94240 | 73 65 6d 62 6c 79 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 | sembly"</span>.{.....<span. |
| 94260 | 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 |
| 94280 | 28 6d 79 5f 66 75 6e 63 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | (my_func(<span.class="tok-number |
| 942a0 | 22 3e 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 2d 6e 75 | ">12</span>,.<span.class="tok-nu |
| 942c0 | 6d 62 65 72 22 3e 33 34 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | mber">34</span>).==.<span.class= |
| 942e0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 36 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 | "tok-number">46</span>);.}</code |
| 94300 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | ></pre></figure><figure><figcapt |
| 94320 | 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 | ion.class="shell-cap">Shell</fig |
| 94340 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 | caption><pre><samp>$.<kbd>zig.te |
| 94360 | 73 74 20 74 65 73 74 5f 67 6c 6f 62 61 6c 5f 61 73 73 65 6d 62 6c 79 2e 7a 69 67 20 2d 74 61 72 | st.test_global_assembly.zig.-tar |
| 94380 | 67 65 74 20 78 38 36 5f 36 34 2d 6c 69 6e 75 78 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f | get.x86_64-linux</kbd>.1/1.test_ |
| 943a0 | 67 6c 6f 62 61 6c 5f 61 73 73 65 6d 62 6c 79 2e 74 65 73 74 2e 67 6c 6f 62 61 6c 20 61 73 73 65 | global_assembly.test.global.asse |
| 943c0 | 6d 62 6c 79 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f | mbly...OK.All.1.tests.passed..</ |
| 943e0 | 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 | samp></pre></figure>............ |
| 94400 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 41 74 6f 6d 69 63 73 22 3e 3c 61 20 68 | ...........<h2.id="Atomics"><a.h |
| 94420 | 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 2f 61 3e 20 3c | ref="#toc-Atomics">Atomics</a>.< |
| 94440 | 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 73 22 3e c2 a7 | a.class="hdr".href="#Atomics">.. |
| 94460 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 40 61 74 6f 6d 69 | </a></h2>........<p>TODO:.@atomi |
| 94480 | 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 6e | c.rmw</p>.......<p>TODO:.builtin |
| 944a0 | 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 3e | .atomic.memory.ordering.enum</p> |
| 944c0 | 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 |
| 944e0 | 3e 3c 61 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 4c 6f 61 64 22 3e 40 61 74 6f 6d 69 63 4c 6f | ><a.href="#atomicLoad">@atomicLo |
| 94500 | 61 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 | ad</a></li>.<li><a.href="#atomic |
| 94520 | 53 74 6f 72 65 22 3e 40 61 74 6f 6d 69 63 53 74 6f 72 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 | Store">@atomicStore</a></li>.<li |
| 94540 | 3e 3c 61 20 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 | ><a.href="#atomicRmw">@atomicRmw |
| 94560 | 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 68 67 57 | </a></li>.<li><a.href="#cmpxchgW |
| 94580 | 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 3c 6c 69 3e 3c | eak">@cmpxchgWeak</a></li>.<li>< |
| 945a0 | 61 20 68 72 65 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 | a.href="#cmpxchgStrong">@cmpxchg |
| 945c0 | 53 74 72 6f 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 0a 20 20 20 20 20 20 0a 0a | Strong</a></li>.</ul>........... |
| 945e0 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 3c | ......<h2.id="Async-Functions">< |
| 94600 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 41 73 | a.href="#toc-Async-Functions">As |
| 94620 | 79 6e 63 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | ync.Functions</a>.<a.class="hdr" |
| 94640 | 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 c2 a7 3c 2f 61 3e 3c | .href="#Async-Functions">..</a>< |
| 94660 | 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 73 20 72 | /h2>........<p>Async.functions.r |
| 94680 | 65 67 72 65 73 73 65 64 20 77 69 74 68 20 74 68 65 20 72 65 6c 65 61 73 65 20 6f 66 20 30 2e 31 | egressed.with.the.release.of.0.1 |
| 946a0 | 31 2e 30 2e 20 54 68 65 69 72 20 66 75 74 75 72 65 20 69 6e 0a 20 20 20 20 20 20 74 68 65 20 5a | 1.0..Their.future.in.......the.Z |
| 946c0 | 69 67 20 6c 61 6e 67 75 61 67 65 20 69 73 20 75 6e 63 6c 65 61 72 20 64 75 65 20 74 6f 20 6d 75 | ig.language.is.unclear.due.to.mu |
| 946e0 | 6c 74 69 70 6c 65 20 75 6e 73 6f 6c 76 65 64 20 70 72 6f 62 6c 65 6d 73 3a 3c 2f 70 3e 0a 20 20 | ltiple.unsolved.problems:</p>... |
| 94700 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4c 4c 56 4d 27 73 20 6c 61 63 6b | ....<ul>.........<li>LLVM's.lack |
| 94720 | 20 6f 66 20 61 62 69 6c 69 74 79 20 74 6f 20 6f 70 74 69 6d 69 7a 65 20 74 68 65 6d 2e 3c 2f 6c | .of.ability.to.optimize.them.</l |
| 94740 | 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 68 69 72 64 2d 70 61 72 74 79 20 64 65 62 75 67 | i>.........<li>Third-party.debug |
| 94760 | 67 65 72 73 27 20 6c 61 63 6b 20 6f 66 20 61 62 69 6c 69 74 79 20 74 6f 20 64 65 62 75 67 20 74 | gers'.lack.of.ability.to.debug.t |
| 94780 | 68 65 6d 2e 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 68 | hem.</li>.........<li><a.href="h |
| 947a0 | 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 73 | ttps://github.com/ziglang/zig/is |
| 947c0 | 73 75 65 73 2f 35 39 31 33 22 3e 54 68 65 20 63 61 6e 63 65 6c 6c 61 74 69 6f 6e 20 70 72 6f 62 | sues/5913">The.cancellation.prob |
| 947e0 | 6c 65 6d 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 73 79 6e 63 20 | lem</a>.</li>.........<li>Async. |
| 94800 | 66 75 6e 63 74 69 6f 6e 20 70 6f 69 6e 74 65 72 73 20 70 72 65 76 65 6e 74 69 6e 67 20 74 68 65 | function.pointers.preventing.the |
| 94820 | 20 73 74 61 63 6b 20 73 69 7a 65 20 66 72 6f 6d 20 62 65 69 6e 67 20 6b 6e 6f 77 6e 2e 3c 2f 6c | .stack.size.from.being.known.</l |
| 94840 | 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 68 65 73 65 20 70 72 | i>.......</ul>.......<p>These.pr |
| 94860 | 6f 62 6c 65 6d 73 20 61 72 65 20 73 75 72 6d 6f 75 6e 74 61 62 6c 65 2c 20 62 75 74 20 69 74 20 | oblems.are.surmountable,.but.it. |
| 94880 | 77 69 6c 6c 20 74 61 6b 65 20 74 69 6d 65 2e 20 54 68 65 20 5a 69 67 20 74 65 61 6d 0a 20 20 20 | will.take.time..The.Zig.team.... |
| 948a0 | 20 20 20 69 73 20 63 75 72 72 65 6e 74 6c 79 20 66 6f 63 75 73 65 64 20 6f 6e 20 6f 74 68 65 72 | ...is.currently.focused.on.other |
| 948c0 | 20 70 72 69 6f 72 69 74 69 65 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c | .priorities.</p>...............< |
| 948e0 | 68 32 20 69 64 3d 22 42 75 69 6c 74 69 6e 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 3c 61 20 68 72 65 | h2.id="Builtin-Functions"><a.hre |
| 94900 | 66 3d 22 23 74 6f 63 2d 42 75 69 6c 74 69 6e 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 42 75 69 6c 74 | f="#toc-Builtin-Functions">Built |
| 94920 | 69 6e 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | in.Functions</a>.<a.class="hdr". |
| 94940 | 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 c2 a7 3c 2f 61 3e | href="#Builtin-Functions">..</a> |
| 94960 | 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 42 75 69 6c 74 69 6e 20 66 | </h2>........<p>.......Builtin.f |
| 94980 | 75 6e 63 74 69 6f 6e 73 20 61 72 65 20 70 72 6f 76 69 64 65 64 20 62 79 20 74 68 65 20 63 6f 6d | unctions.are.provided.by.the.com |
| 949a0 | 70 69 6c 65 72 20 61 6e 64 20 61 72 65 20 70 72 65 66 69 78 65 64 20 77 69 74 68 20 3c 63 6f 64 | piler.and.are.prefixed.with.<cod |
| 949c0 | 65 3e 40 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 | e>@</code>........The.<code><spa |
| 949e0 | 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> |
| 94a00 | 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 6f 6e 20 61 20 70 61 72 61 6d 65 74 65 72 20 6d | </code>.keyword.on.a.parameter.m |
| 94a20 | 65 61 6e 73 20 74 68 61 74 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 20 6d 75 73 74 20 62 65 20 | eans.that.the.parameter.must.be. |
| 94a40 | 6b 6e 6f 77 6e 0a 20 20 20 20 20 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 2e 0a 20 20 20 | known.......at.compile.time..... |
| 94a60 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 61 64 64 72 53 70 61 63 65 43 | ...</p>.......<h3.id="addrSpaceC |
| 94a80 | 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 64 64 72 53 70 61 63 65 43 61 73 74 | ast"><a.href="#toc-addrSpaceCast |
| 94aa0 | 22 3e 40 61 64 64 72 53 70 61 63 65 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | ">@addrSpaceCast</a>.<a.class="h |
| 94ac0 | 64 72 22 20 68 72 65 66 3d 22 23 61 64 64 72 53 70 61 63 65 43 61 73 74 22 3e c2 a7 3c 2f 61 3e | dr".href="#addrSpaceCast">..</a> |
| 94ae0 | 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </h3>........<pre><code><span.cl |
| 94b00 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 64 64 72 53 70 61 63 65 43 61 73 74 | ass="tok-builtin">@addrSpaceCast |
| 94b20 | 3c 2f 73 70 61 6e 3e 28 70 74 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | </span>(ptr:.<span.class="tok-kw |
| 94b40 | 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 |
| 94b60 | 6f 6b 2d 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 | ok-kw">anytype</span></code></pr |
| 94b80 | 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 20 70 6f | e>.......<p>.......Converts.a.po |
| 94ba0 | 69 6e 74 65 72 20 66 72 6f 6d 20 6f 6e 65 20 61 64 64 72 65 73 73 20 73 70 61 63 65 20 74 6f 20 | inter.from.one.address.space.to. |
| 94bc0 | 61 6e 6f 74 68 65 72 2e 20 54 68 65 20 6e 65 77 20 61 64 64 72 65 73 73 20 73 70 61 63 65 20 69 | another..The.new.address.space.i |
| 94be0 | 73 20 69 6e 66 65 72 72 65 64 0a 09 09 09 62 61 73 65 64 20 6f 6e 20 74 68 65 20 72 65 73 75 6c | s.inferred....based.on.the.resul |
| 94c00 | 74 20 74 79 70 65 2e 20 44 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 63 75 72 72 65 6e 74 | t.type..Depending.on.the.current |
| 94c20 | 20 74 61 72 67 65 74 20 61 6e 64 20 61 64 64 72 65 73 73 20 73 70 61 63 65 73 2c 20 74 68 69 73 | .target.and.address.spaces,.this |
| 94c40 | 20 63 61 73 74 0a 09 09 09 6d 61 79 20 62 65 20 61 20 6e 6f 2d 6f 70 2c 20 61 20 63 6f 6d 70 6c | .cast....may.be.a.no-op,.a.compl |
| 94c60 | 65 78 20 6f 70 65 72 61 74 69 6f 6e 2c 20 6f 72 20 69 6c 6c 65 67 61 6c 2e 20 49 66 20 74 68 65 | ex.operation,.or.illegal..If.the |
| 94c80 | 20 63 61 73 74 20 69 73 20 6c 65 67 61 6c 2c 20 74 68 65 6e 20 74 68 65 20 72 65 73 75 6c 74 69 | .cast.is.legal,.then.the.resulti |
| 94ca0 | 6e 67 0a 09 09 09 70 6f 69 6e 74 65 72 20 70 6f 69 6e 74 73 20 74 6f 20 74 68 65 20 73 61 6d 65 | ng....pointer.points.to.the.same |
| 94cc0 | 20 6d 65 6d 6f 72 79 20 6c 6f 63 61 74 69 6f 6e 20 61 73 20 74 68 65 20 70 6f 69 6e 74 65 72 20 | .memory.location.as.the.pointer. |
| 94ce0 | 6f 70 65 72 61 6e 64 2e 20 49 74 20 69 73 20 61 6c 77 61 79 73 20 76 61 6c 69 64 20 74 6f 0a 09 | operand..It.is.always.valid.to.. |
| 94d00 | 09 09 63 61 73 74 20 61 20 70 6f 69 6e 74 65 72 20 62 65 74 77 65 65 6e 20 74 68 65 20 73 61 6d | ..cast.a.pointer.between.the.sam |
| 94d20 | 65 20 61 64 64 72 65 73 73 20 73 70 61 63 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | e.address.spaces........</p>.... |
| 94d40 | 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f | ..........<h3.id="addWithOverflo |
| 94d60 | 77 22 3e 3c 61 20 68 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 | w"><a.href="#toc-addWithOverflow |
| 94d80 | 22 3e 40 61 64 64 57 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 | ">@addWithOverflow</a>.<a.class= |
| 94da0 | 22 68 64 72 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 c2 a7 | "hdr".href="#addWithOverflow">.. |
| 94dc0 | 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 | </a></h3>........<pre><code><spa |
| 94de0 | 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 69 74 68 4f 76 | n.class="tok-builtin">@addWithOv |
| 94e00 | 65 72 66 6c 6f 77 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 | erflow</span>(a:.<span.class="to |
| 94e20 | 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 | k-kw">anytype</span>,.b:.<span.c |
| 94e40 | 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 |
| 94e60 | 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> |
| 94e80 | 20 7b 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 |
| 94ea0 | 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | peOf</span>(a,.b),.<span.class=" |
| 94ec0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 31 3c 2f 73 70 61 6e 3e 20 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | tok-type">u1</span>.}</code></pr |
| 94ee0 | 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 63 6f 64 | e>.......<p>.......Performs.<cod |
| 94f00 | 65 3e 61 20 2b 20 62 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 72 65 74 75 72 6e 73 20 61 20 74 75 70 | e>a.+.b</code>.and.returns.a.tup |
| 94f20 | 6c 65 20 77 69 74 68 20 74 68 65 20 72 65 73 75 6c 74 20 61 6e 64 20 61 20 70 6f 73 73 69 62 6c | le.with.the.result.and.a.possibl |
| 94f40 | 65 20 6f 76 65 72 66 6c 6f 77 20 62 69 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | e.overflow.bit........</p>...... |
| 94f60 | 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 61 6c 69 67 6e 43 61 73 74 22 3e 3c 61 20 68 72 | ........<h3.id="alignCast"><a.hr |
| 94f80 | 65 66 3d 22 23 74 6f 63 2d 61 6c 69 67 6e 43 61 73 74 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f | ef="#toc-alignCast">@alignCast</ |
| 94fa0 | 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 69 67 6e 43 61 | a>.<a.class="hdr".href="#alignCa |
| 94fc0 | 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | st">..</a></h3>........<pre><cod |
| 94fe0 | 65 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 6c 69 | e><span.class="tok-builtin">@ali |
| 95000 | 67 6e 43 61 73 74 3c 2f 73 70 61 6e 3e 28 70 74 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | gnCast</span>(ptr:.<span.class=" |
| 95020 | 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 |
| 95040 | 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 6f 64 | ass="tok-kw">anytype</span></cod |
| 95060 | 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 6f 64 65 3e 70 | e></pre>.......<p>.......<code>p |
| 95080 | 74 72 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 3c 63 6f 64 65 3e 2a 54 3c 2f 63 6f 64 65 3e | tr</code>.can.be.<code>*T</code> |
| 950a0 | 2c 20 3c 63 6f 64 65 3e 3f 2a 54 3c 2f 63 6f 64 65 3e 2c 20 6f 72 20 3c 63 6f 64 65 3e 5b 5d 54 | ,.<code>?*T</code>,.or.<code>[]T |
| 950c0 | 3c 2f 63 6f 64 65 3e 2e 0a 09 09 09 43 68 61 6e 67 65 73 20 74 68 65 20 61 6c 69 67 6e 6d 65 6e | </code>.....Changes.the.alignmen |
| 950e0 | 74 20 6f 66 20 61 20 70 6f 69 6e 74 65 72 2e 20 54 68 65 20 61 6c 69 67 6e 6d 65 6e 74 20 74 6f | t.of.a.pointer..The.alignment.to |
| 95100 | 20 75 73 65 20 69 73 20 69 6e 66 65 72 72 65 64 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 72 65 | .use.is.inferred.based.on.the.re |
| 95120 | 73 75 6c 74 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 41 | sult.type........</p>.......<p>A |
| 95140 | 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 |
| 95160 | 67 6e 6d 65 6e 74 22 3e 70 6f 69 6e 74 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 73 61 66 65 74 79 | gnment">pointer.alignment.safety |
| 95180 | 20 63 68 65 63 6b 3c 2f 61 3e 20 69 73 20 61 64 64 65 64 0a 20 20 20 20 20 20 74 6f 20 74 68 65 | .check</a>.is.added.......to.the |
| 951a0 | 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 65 | .generated.code.to.make.sure.the |
| 951c0 | 20 70 6f 69 6e 74 65 72 20 69 73 20 61 6c 69 67 6e 65 64 20 61 73 20 70 72 6f 6d 69 73 65 64 2e | .pointer.is.aligned.as.promised. |
| 951e0 | 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 61 6c 69 67 6e | </p>...............<h3.id="align |
| 95200 | 4f 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 6c 69 67 6e 4f 66 22 3e 40 61 6c 69 67 | Of"><a.href="#toc-alignOf">@alig |
| 95220 | 6e 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 23 61 6c | nOf</a>.<a.class="hdr".href="#al |
| 95240 | 69 67 6e 4f 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | ignOf">..</a></h3>........<pre>< |
| 95260 | 63 6f 64 65 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 | code><span.class="tok-builtin">@ |
| 95280 | 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 6b 2d | alignOf</span>(<span.class="tok- |
| 952a0 | 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 |
| 952c0 | 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 70 61 6e | ss="tok-type">type</span>).<span |
| 952e0 | 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 74 3c 2f | .class="tok-type">comptime_int</ |
| 95300 | 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 20 | span></code></pre>.......<p>.... |
| 95320 | 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 6e 75 6d | ...This.function.returns.the.num |
| 95340 | 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 68 6f 75 | ber.of.bytes.that.this.type.shou |
| 95360 | 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 65 20 63 | ld.be.aligned.to.......for.the.c |
| 95380 | 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 41 42 49 | urrent.target.to.match.the.C.ABI |
| 953a0 | 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 69 6e 74 | ..When.the.child.type.of.a.point |
| 953c0 | 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 74 68 65 | er.has.......this.alignment,.the |
| 953e0 | 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 6d 20 74 | .alignment.can.be.omitted.from.t |
| 95400 | 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 65 3e 3c | he.type........</p>.......<pre>< |
| 95420 | 63 6f 64 65 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 | code><span.class="tok-kw">const< |
| 95440 | 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>.assert.=.<span.class="tok |
| 95460 | 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 |
| 95480 | 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"</ |
| 954a0 | 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | span>).debug.assert;.<span.class |
| 954c0 | 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 20 | ="tok-kw">comptime</span>.{..... |
| 954e0 | 61 73 73 65 72 74 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 75 | assert(*<span.class="tok-type">u |
| 95500 | 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 3d 22 74 6f 6b 2d 6b | 32</span>.==.*<span.class="tok-k |
| 95520 | 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 |
| 95540 | 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 70 61 6e 20 | -builtin">@alignOf</span>(<span. |
| 95560 | 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 29 20 3c 73 | class="tok-type">u32</span>)).<s |
| 95580 | 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>) |
| 955a0 | 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 20 | ;.}</code></pre>.......<p>...... |
| 955c0 | 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 70 65 63 69 66 69 63 | .The.result.is.a.target-specific |
| 955e0 | 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 2e 20 49 74 20 69 73 20 67 75 | .compile.time.constant..It.is.gu |
| 95600 | 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 0a 20 20 20 20 20 20 6c 65 73 73 20 74 68 61 6e 20 6f | aranteed.to.be.......less.than.o |
| 95620 | 72 20 65 71 75 61 6c 20 74 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 69 7a 65 4f 66 22 3e 40 73 69 | r.equal.to.<a.href="#sizeOf">@si |
| 95640 | 7a 65 4f 66 28 54 29 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 | zeOf(T)</a>........</p>.......<p |
| 95660 | 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=" |
| 95680 | 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 3c | #Alignment">Alignment</a></li>.< |
| 956a0 | 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 61 73 22 3e | /ul>................<h3.id="as"> |
| 956c0 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 73 22 3e 40 61 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 | <a.href="#toc-as">@as</a>.<a.cla |
| 956e0 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 61 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | ss="hdr".href="#as">..</a></h3>. |
| 95700 | 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .......<pre><code><span.class="t |
| 95720 | 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 61 | ok-builtin">@as</span>(<span.cla |
| 95740 | 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:.< |
| 95760 | 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 |
| 95780 | 3e 2c 20 65 78 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 | >,.expression).T</code></pre>... |
| 957a0 | 20 20 20 20 3c 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 | ....<p>.......Performs.<a.href=" |
| 957c0 | 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 |
| 957e0 | 3e 2e 20 54 68 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 | >..This.cast.is.allowed.when.the |
| 95800 | 20 63 6f 6e 76 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 | .conversion.is.unambiguous.and.s |
| 95820 | 61 66 65 2c 0a 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 | afe,.......and.is.the.preferred. |
| 95840 | 77 61 79 20 74 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 | way.to.convert.between.types,.wh |
| 95860 | 65 6e 65 76 65 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 | enever.possible........</p>..... |
| 95880 | 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 61 74 6f 6d 69 63 4c 6f 61 64 22 3e 3c 61 | ..........<h3.id="atomicLoad"><a |
| 958a0 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 74 6f 6d 69 63 4c 6f 61 64 22 3e 40 61 74 6f 6d 69 63 4c | .href="#toc-atomicLoad">@atomicL |
| 958c0 | 6f 61 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 61 74 | oad</a>.<a.class="hdr".href="#at |
| 958e0 | 6f 6d 69 63 4c 6f 61 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 | omicLoad">..</a></h3>........<pr |
| 95900 | 65 3e 3c 63 6f 64 65 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 | e><code><span.class="tok-builtin |
| 95920 | 22 3e 40 61 74 6f 6d 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 | ">@atomicLoad</span>(<span.class |
| 95940 | 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 73 70 | ="tok-kw">comptime</span>.T:.<sp |
| 95960 | 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 2c | an.class="tok-type">type</span>, |
| 95980 | 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 3e 63 6f 6e 73 | .ptr:.*<span.class="tok-kw">cons |
| 959a0 | 74 3c 2f 73 70 61 6e 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 | t</span>.T,.<span.class="tok-kw" |
| 959c0 | 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 41 74 6f 6d 69 | >comptime</span>.ordering:.Atomi |
| 959e0 | 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 3e | cOrder).T</code></pre>.......<p> |
| 95a00 | 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 6f | .......This.builtin.function.ato |
| 95a20 | 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 74 | mically.dereferences.a.pointer.t |
| 95a40 | 6f 20 61 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 72 65 74 75 72 6e 73 20 74 | o.a.<code>T</code>.and.returns.t |
| 95a60 | 68 65 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 | he.value........</p>.......<p>.. |
| 95a80 | 20 20 20 20 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 20 70 6f | .....<code>T</code>.must.be.a.po |
| 95aa0 | 69 6e 74 65 72 2c 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | inter,.a.<code><span.class="tok- |
| 95ac0 | 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 20 66 6c 6f 61 | type">bool</span></code>,.a.floa |
| 95ae0 | 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 6e 75 6d 2e 0a | t,.......an.integer.or.an.enum.. |
| 95b00 | 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 3e 41 74 6f 6d 69 63 | ......</p>.......<p><code>Atomic |
| 95b20 | 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 3c | Order</code>.can.be.found.with.< |
| 95b40 | 63 6f 64 65 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 | code><span.class="tok-builtin">@ |
| 95b60 | 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 |
| 95b80 | 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 |
| 95ba0 | 74 69 6e 2e 41 74 6f 6d 69 63 4f 72 64 65 72 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 | tin.AtomicOrder</code>.</p>..... |
| 95bc0 | 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 |
| 95be0 | 65 66 3d 22 23 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 | ef="#atomicStore">@atomicStore</ |
| 95c00 | 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 52 6d 77 22 | a></li>.<li><a.href="#atomicRmw" |
| 95c20 | 3e 40 61 74 6f 6d 69 63 52 6d 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 | >@atomicRmw</a></li>.<li><a.href |
| 95c40 | 3d 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 | ="#cmpxchgWeak">@cmpxchgWeak</a> |
| 95c60 | 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 68 67 53 74 72 6f 6e | </li>.<li><a.href="#cmpxchgStron |
| 95c80 | 67 22 3e 40 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e | g">@cmpxchgStrong</a></li>.</ul> |
| 95ca0 | 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 61 74 6f 6d 69 63 52 6d | ................<h3.id="atomicRm |
| 95cc0 | 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 74 6f 6d 69 63 52 6d 77 22 3e 40 61 74 6f | w"><a.href="#toc-atomicRmw">@ato |
| 95ce0 | 6d 69 63 52 6d 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 | micRmw</a>.<a.class="hdr".href=" |
| 95d00 | 23 61 74 6f 6d 69 63 52 6d 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c | #atomicRmw">..</a></h3>........< |
| 95d20 | 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | pre><code><span.class="tok-built |
| 95d40 | 69 6e 22 3e 40 61 74 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 | in">@atomicRmw</span>(<span.clas |
| 95d60 | 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 73 | s="tok-kw">comptime</span>.T:.<s |
| 95d80 | 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> |
| 95da0 | 2c 20 70 74 72 3a 20 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 | ,.ptr:.*T,.<span.class="tok-kw"> |
| 95dc0 | 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6f 70 3a 20 41 74 6f 6d 69 63 52 6d 77 4f 70 2c | comptime</span>.op:.AtomicRmwOp, |
| 95de0 | 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 77 | .operand:.T,.<span.class="tok-kw |
| 95e00 | 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 41 74 6f 6d | ">comptime</span>.ordering:.Atom |
| 95e20 | 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 |
| 95e40 | 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 64 65 | >.......This.builtin.function.de |
| 95e60 | 72 65 66 65 72 65 6e 63 65 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 3c 63 6f 64 65 3e | references.a.pointer.to.a.<code> |
| 95e80 | 54 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 61 74 6f 6d 69 63 61 6c 6c 79 0a 20 20 20 20 20 20 6d 6f | T</code>.and.atomically.......mo |
| 95ea0 | 64 69 66 69 65 73 20 74 68 65 20 76 61 6c 75 65 20 61 6e 64 20 72 65 74 75 72 6e 73 20 74 68 65 | difies.the.value.and.returns.the |
| 95ec0 | 20 70 72 65 76 69 6f 75 73 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | .previous.value........</p>..... |
| 95ee0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 | ..<p>.......<code>T</code>.must. |
| 95f00 | 62 65 20 61 20 70 6f 69 6e 74 65 72 2c 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | be.a.pointer,.a.<code><span.clas |
| 95f20 | 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 2c | s="tok-type">bool</span></code>, |
| 95f40 | 20 61 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 | .a.float,.......an.integer.or.an |
| 95f60 | 20 65 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 | .enum........</p>.......<p><code |
| 95f80 | 3e 41 74 6f 6d 69 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 | >AtomicOrder</code>.can.be.found |
| 95fa0 | 20 77 69 74 68 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | .with.<code><span.class="tok-bui |
| 95fc0 | 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 |
| 95fe0 | 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 |
| 96000 | 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 64 65 3e 2e 3c 2f | >).builtin.AtomicOrder</code>.</ |
| 96020 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 41 74 6f 6d 69 63 52 6d 77 4f 70 3c 2f 63 | p>.......<p><code>AtomicRmwOp</c |
| 96040 | 6f 64 65 3e 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 77 69 74 68 20 3c 63 6f 64 65 3e 3c 73 70 | ode>.can.be.found.with.<code><sp |
| 96060 | 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</ |
| 96080 | 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 |
| 960a0 | 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 41 74 6f 6d | t;std"</span>).builtin.Atom |
| 960c0 | 69 63 52 6d 77 4f 70 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 | icRmwOp</code>.</p>.......<p>See |
| 960e0 | 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 61 74 6f | .also:</p><ul>.<li><a.href="#ato |
| 96100 | 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 3e 3c 2f 6c 69 3e 0a | micStore">@atomicStore</a></li>. |
| 96120 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 4c 6f 61 64 22 3e 40 61 74 6f 6d 69 | <li><a.href="#atomicLoad">@atomi |
| 96140 | 63 4c 6f 61 64 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 | cLoad</a></li>.<li><a.href="#cmp |
| 96160 | 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 3c 2f 6c 69 3e 0a | xchgWeak">@cmpxchgWeak</a></li>. |
| 96180 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 22 3e 40 63 6d | <li><a.href="#cmpxchgStrong">@cm |
| 961a0 | 70 78 63 68 67 53 74 72 6f 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 | pxchgStrong</a></li>.</ul>...... |
| 961c0 | 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 61 74 6f 6d 69 63 53 74 6f 72 65 22 3e 3c | ..........<h3.id="atomicStore">< |
| 961e0 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 74 6f 6d 69 63 53 74 6f 72 65 22 3e 40 61 74 6f 6d 69 | a.href="#toc-atomicStore">@atomi |
| 96200 | 63 53 74 6f 72 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 | cStore</a>.<a.class="hdr".href=" |
| 96220 | 23 61 74 6f 6d 69 63 53 74 6f 72 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | #atomicStore">..</a></h3>....... |
| 96240 | 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | .<pre><code><span.class="tok-bui |
| 96260 | 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 61 6e 20 | ltin">@atomicStore</span>(<span. |
| 96280 | 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 |
| 962a0 | 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 |
| 962c0 | 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 6e 20 63 | pan>,.ptr:.*T,.value:.T,.<span.c |
| 962e0 | 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 6f 72 | lass="tok-kw">comptime</span>.or |
| 96300 | 64 65 72 69 6e 67 3a 20 41 74 6f 6d 69 63 4f 72 64 65 72 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | dering:.AtomicOrder).<span.class |
| 96320 | 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 6f 64 65 3e 3c 2f | ="tok-type">void</span></code></ |
| 96340 | 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 62 75 69 6c 74 69 | pre>.......<p>.......This.builti |
| 96360 | 6e 20 66 75 6e 63 74 69 6f 6e 20 64 65 72 65 66 65 72 65 6e 63 65 73 20 61 20 70 6f 69 6e 74 65 | n.function.dereferences.a.pointe |
| 96380 | 72 20 74 6f 20 61 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 61 74 6f 6d 69 63 | r.to.a.<code>T</code>.and.atomic |
| 963a0 | 61 6c 6c 79 20 73 74 6f 72 65 73 20 74 68 65 20 67 69 76 65 6e 20 76 61 6c 75 65 2e 0a 20 20 20 | ally.stores.the.given.value..... |
| 963c0 | 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 65 3e 54 3c | ...</p>.......<p>.......<code>T< |
| 963e0 | 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 |
| 96400 | 65 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 | e><span.class="tok-type">bool</s |
| 96420 | 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 20 69 | pan></code>,.a.float,.......an.i |
| 96440 | 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 20 20 | nteger.or.an.enum........</p>... |
| 96460 | 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 41 74 6f 6d 69 63 4f 72 64 65 72 3c 2f 63 6f 64 65 3e 20 | ....<p><code>AtomicOrder</code>. |
| 96480 | 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 77 69 74 68 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | can.be.found.with.<code><span.cl |
| 964a0 | 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> |
| 964c0 | 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 |
| 964e0 | 26 71 75 6f 74 3b 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 | "</span>).builtin.AtomicOrd |
| 96500 | 65 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 20 61 6c 73 6f | er</code>.</p>.......<p>See.also |
| 96520 | 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 4c 6f | :</p><ul>.<li><a.href="#atomicLo |
| 96540 | 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 3c 6c 69 3e 3c 61 20 | ad">@atomicLoad</a></li>.<li><a. |
| 96560 | 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> |
| 96580 | 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 68 67 57 65 61 6b 22 | </li>.<li><a.href="#cmpxchgWeak" |
| 965a0 | 3e 40 63 6d 70 78 63 68 67 57 65 61 6b 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 | >@cmpxchgWeak</a></li>.<li><a.hr |
| 965c0 | 65 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 | ef="#cmpxchgStrong">@cmpxchgStro |
| 965e0 | 6e 67 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 | ng</a></li>.</ul>............... |
| 96600 | 20 3c 68 33 20 69 64 3d 22 62 69 74 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | .<h3.id="bitCast"><a.href="#toc- |
| 96620 | 62 69 74 43 61 73 74 22 3e 40 62 69 74 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | bitCast">@bitCast</a>.<a.class=" |
| 96640 | 68 64 72 22 20 68 72 65 66 3d 22 23 62 69 74 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e | hdr".href="#bitCast">..</a></h3> |
| 96660 | 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ........<pre><code><span.class=" |
| 96680 | 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 76 61 6c | tok-builtin">@bitCast</span>(val |
| 966a0 | 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 65 | ue:.<span.class="tok-kw">anytype |
| 966c0 | 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 61 6e | </span>).<span.class="tok-kw">an |
| 966e0 | 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 20 20 20 20 20 20 | ytype</span></code></pre>....... |
| 96700 | 3c 70 3e 0a 20 20 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 | <p>.......Converts.a.value.of.on |
| 96720 | 65 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 68 65 72 20 74 79 70 65 2e 20 54 68 65 20 72 65 74 75 | e.type.to.another.type..The.retu |
| 96740 | 72 6e 20 74 79 70 65 20 69 73 20 74 68 65 0a 09 09 09 69 6e 66 65 72 72 65 64 20 72 65 73 75 6c | rn.type.is.the....inferred.resul |
| 96760 | 74 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 0a 20 20 20 | t.type........</p>.......<p>.... |
| 96780 | 20 20 20 41 73 73 65 72 74 73 20 74 68 61 74 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | ...Asserts.that.<code><span.clas |
| 967a0 | 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 3c | s="tok-builtin">@sizeOf</span>(< |
| 967c0 | 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 |
| 967e0 | 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </span>(value)).==.<span.class=" |
| 96800 | 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 65 73 74 | tok-builtin">@sizeOf</span>(Dest |
| 96820 | 54 79 70 65 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 | Type)</code>........</p>.......< |
| 96840 | 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 3e 3c 73 70 61 | p>.......Asserts.that.<code><spa |
| 96860 | 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 6f 3c | n.class="tok-builtin">@typeInfo< |
| 96880 | 2f 73 70 61 6e 3e 28 44 65 73 74 54 79 70 65 29 20 21 3d 20 2e 70 6f 69 6e 74 65 72 3c 2f 63 6f | /span>(DestType).!=..pointer</co |
| 968a0 | 64 65 3e 2e 20 55 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de>..Use.<code><span.class="tok- |
| 968c0 | 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | builtin">@ptrCast</span></code>. |
| 968e0 | 6f 72 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | or.<code><span.class="tok-builti |
| 96900 | 6e 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 | n">@ptrFromInt</span></code>.if. |
| 96920 | 79 6f 75 20 6e 65 65 64 20 74 68 69 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | you.need.this........</p>....... |
| 96940 | 3c 70 3e 0a 20 20 20 20 20 20 43 61 6e 20 62 65 20 75 73 65 64 20 66 6f 72 20 74 68 65 73 65 20 | <p>.......Can.be.used.for.these. |
| 96960 | 74 68 69 6e 67 73 20 66 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | things.for.example:.......</p>.. |
| 96980 | 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6e 76 65 72 74 20 | .....<ul>...........<li>Convert. |
| 969a0 | 3c 63 6f 64 65 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 33 32 | <code><span.class="tok-type">f32 |
| 969c0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </span></code>.to.<code><span.cl |
| 969e0 | 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 3c 2f 63 6f 64 65 3e | ass="tok-type">u32</span></code> |
| 96a00 | 20 62 69 74 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6e 76 65 72 74 | .bits</li>...........<li>Convert |
| 96a20 | 20 3c 63 6f 64 65 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 | .<code><span.class="tok-type">i3 |
| 96a40 | 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | 2</span></code>.to.<code><span.c |
| 96a60 | 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 3c 2f 63 6f 64 65 | lass="tok-type">u32</span></code |
| 96a80 | 3e 20 70 72 65 73 65 72 76 69 6e 67 20 74 77 6f 73 20 63 6f 6d 70 6c 65 6d 65 6e 74 3c 2f 6c 69 | >.preserving.twos.complement</li |
| 96aa0 | 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 57 6f | >.......</ul>.......<p>.......Wo |
| 96ac0 | 72 6b 73 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 69 66 20 3c 63 6f 64 65 3e 76 61 6c | rks.at.compile-time.if.<code>val |
| 96ae0 | 75 65 3c 2f 63 6f 64 65 3e 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 | ue</code>.is.known.at.compile.ti |
| 96b00 | 6d 65 2e 20 49 74 27 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 74 6f 20 62 69 74 63 | me..It's.a.compile.error.to.bitc |
| 96b20 | 61 73 74 20 61 20 76 61 6c 75 65 20 6f 66 20 75 6e 64 65 66 69 6e 65 64 20 6c 61 79 6f 75 74 3b | ast.a.value.of.undefined.layout; |
| 96b40 | 20 74 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 2c 20 62 65 73 69 64 65 73 20 74 68 65 20 72 65 | .this.means.that,.besides.the.re |
| 96b60 | 73 74 72 69 63 74 69 6f 6e 20 66 72 6f 6d 20 74 79 70 65 73 20 77 68 69 63 68 20 70 6f 73 73 65 | striction.from.types.which.posse |
| 96b80 | 73 73 20 64 65 64 69 63 61 74 65 64 20 63 61 73 74 69 6e 67 20 62 75 69 6c 74 69 6e 73 20 28 65 | ss.dedicated.casting.builtins.(e |
| 96ba0 | 6e 75 6d 73 2c 20 70 6f 69 6e 74 65 72 73 2c 20 65 72 72 6f 72 20 73 65 74 73 29 2c 20 62 61 72 | nums,.pointers,.error.sets),.bar |
| 96bc0 | 65 20 73 74 72 75 63 74 73 2c 20 65 72 72 6f 72 20 75 6e 69 6f 6e 73 2c 20 73 6c 69 63 65 73 2c | e.structs,.error.unions,.slices, |
| 96be0 | 20 6f 70 74 69 6f 6e 61 6c 73 2c 20 61 6e 64 20 61 6e 79 20 6f 74 68 65 72 20 74 79 70 65 20 77 | .optionals,.and.any.other.type.w |
| 96c00 | 69 74 68 6f 75 74 20 61 20 77 65 6c 6c 2d 64 65 66 69 6e 65 64 20 6d 65 6d 6f 72 79 20 6c 61 79 | ithout.a.well-defined.memory.lay |
| 96c20 | 6f 75 74 2c 20 61 6c 73 6f 20 63 61 6e 6e 6f 74 20 62 65 20 75 73 65 64 20 69 6e 20 74 68 69 73 | out,.also.cannot.be.used.in.this |
| 96c40 | 20 6f 70 65 72 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 | .operation........</p>.......... |
| 96c60 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 62 69 74 4f 66 66 73 65 74 4f 66 22 3e 3c 61 20 68 72 65 | .....<h3.id="bitOffsetOf"><a.hre |
| 96c80 | 66 3d 22 23 74 6f 63 2d 62 69 74 4f 66 66 73 65 74 4f 66 22 3e 40 62 69 74 4f 66 66 73 65 74 4f | f="#toc-bitOffsetOf">@bitOffsetO |
| 96ca0 | 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 23 62 69 74 4f | f</a>.<a.class="hdr".href="#bitO |
| 96cc0 | 66 66 73 65 74 4f 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 | ffsetOf">..</a></h3>........<pre |
| 96ce0 | 3e 3c 63 6f 64 65 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 | ><code><span.class="tok-builtin" |
| 96d00 | 3e 40 62 69 74 4f 66 66 73 65 74 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | >@bitOffsetOf</span>(<span.class |
| 96d20 | 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 73 70 | ="tok-kw">comptime</span>.T:.<sp |
| 96d40 | 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 2c | an.class="tok-type">type</span>, |
| 96d60 | 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</ |
| 96d80 | 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 73 3d | span>.field_name:.[]<span.class= |
| 96da0 | 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 73 | "tok-kw">const</span>.<span.clas |
| 96dc0 | 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 73 70 61 6e 20 63 6c | s="tok-type">u8</span>).<span.cl |
| 96de0 | 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 |
| 96e00 | 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>....... |
| 96e20 | 52 65 74 75 72 6e 73 20 74 68 65 20 62 69 74 20 6f 66 66 73 65 74 20 6f 66 20 61 20 66 69 65 6c | Returns.the.bit.offset.of.a.fiel |
| 96e40 | 64 20 72 65 6c 61 74 69 76 65 20 74 6f 20 69 74 73 20 63 6f 6e 74 61 69 6e 69 6e 67 20 73 74 72 | d.relative.to.its.containing.str |
| 96e60 | 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 20 20 20 20 | uct........</p>.......<p>....... |
| 96e80 | 46 6f 72 20 6e 6f 6e 20 3c 61 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 | For.non.<a.href="#packed-struct" |
| 96ea0 | 3e 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 3c 2f 61 3e 2c 20 74 68 69 73 20 77 69 6c 6c 20 61 | >packed.structs</a>,.this.will.a |
| 96ec0 | 6c 77 61 79 73 20 62 65 20 64 69 76 69 73 69 62 6c 65 20 62 79 20 3c 63 6f 64 65 3e 3c 73 70 61 | lways.be.divisible.by.<code><spa |
| 96ee0 | 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 3c 2f 63 | n.class="tok-number">8</span></c |
| 96f00 | 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 73 2c 20 | ode>........For.packed.structs,. |
| 96f20 | 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 73 68 61 | non-byte-aligned.fields.will.sha |
| 96f40 | 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 6c 6c 20 | re.a.byte.offset,.but.they.will. |
| 96f60 | 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 65 74 73 | have.different.......bit.offsets |
| 96f80 | 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:< |
| 96fa0 | 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 6f 66 66 73 65 74 4f 66 22 3e | /p><ul>.<li><a.href="#offsetOf"> |
| 96fc0 | 40 6f 66 66 73 65 74 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 | @offsetOf</a></li>.</ul>........ |
| 96fe0 | 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 62 69 74 53 69 7a 65 4f 66 22 3e 3c 61 20 68 72 | ........<h3.id="bitSizeOf"><a.hr |
| 97000 | 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 2f | ef="#toc-bitSizeOf">@bitSizeOf</ |
| 97020 | 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 65 | a>.<a.class="hdr".href="#bitSize |
| 97040 | 4f 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | Of">..</a></h3>........<pre><cod |
| 97060 | 65 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 62 69 74 | e><span.class="tok-builtin">@bit |
| 97080 | 53 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 6b | SizeOf</span>(<span.class="tok-k |
| 970a0 | 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 |
| 970c0 | 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 70 61 6e 20 | s="tok-type">type</span>).<span. |
| 970e0 | 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 |
| 97100 | 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 20 20 | pan></code></pre>.......<p>..... |
| 97120 | 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 6e 75 6d 62 | ..This.function.returns.the.numb |
| 97140 | 65 72 20 6f 66 20 62 69 74 73 20 69 74 20 74 61 6b 65 73 20 74 6f 20 73 74 6f 72 65 20 3c 63 6f | er.of.bits.it.takes.to.store.<co |
| 97160 | 64 65 3e 54 3c 2f 63 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 | de>T</code>.in.memory.if.the.typ |
| 97180 | 65 0a 20 20 20 20 20 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 | e.......were.a.field.in.a.packed |
| 971a0 | 20 73 74 72 75 63 74 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 | .struct/union........The.result. |
| 971c0 | 69 73 20 61 20 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 | is.a.target-specific.compile.tim |
| 971e0 | 65 20 63 6f 6e 73 74 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 | e.constant........</p>.......<p> |
| 97200 | 0a 20 20 20 20 20 20 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 | .......This.function.measures.th |
| 97220 | 65 20 73 69 7a 65 20 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 | e.size.at.runtime..For.types.tha |
| 97240 | 74 20 61 72 65 20 64 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 | t.are.disallowed.at.runtime,.suc |
| 97260 | 68 20 61 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | h.as.......<code><span.class="to |
| 97280 | 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 64 | k-type">comptime_int</span></cod |
| 972a0 | 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | e>.and.<code><span.class="tok-ty |
| 972c0 | 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 |
| 972e0 | 6c 74 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | lt.is.<code><span.class="tok-num |
| 97300 | 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 70 3e | ber">0</span></code>........</p> |
| 97320 | 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> |
| 97340 | 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 3c 2f 6c | <a.href="#sizeOf">@sizeOf</a></l |
| 97360 | 69 3e 0a 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 | i>.<li><a.href="#typeInfo">@type |
| 97380 | 49 6e 66 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 | Info</a></li>.</ul>............. |
| 973a0 | 20 20 20 3c 68 33 20 69 64 3d 22 62 72 61 6e 63 68 48 69 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 | ...<h3.id="branchHint"><a.href=" |
| 973c0 | 23 74 6f 63 2d 62 72 61 6e 63 68 48 69 6e 74 22 3e 40 62 72 61 6e 63 68 48 69 6e 74 3c 2f 61 3e | #toc-branchHint">@branchHint</a> |
| 973e0 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 62 72 61 6e 63 68 48 69 6e | .<a.class="hdr".href="#branchHin |
| 97400 | 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | t">..</a></h3>........<pre><code |
| 97420 | 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 62 72 61 6e | ><span.class="tok-builtin">@bran |
| 97440 | 63 68 48 69 6e 74 3c 2f 73 70 61 6e 3e 28 68 69 6e 74 3a 20 42 72 61 6e 63 68 48 69 6e 74 29 20 | chHint</span>(hint:.BranchHint). |
| 97460 | 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 |
| 97480 | 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 48 69 6e 74 73 20 74 | n></code></pre>.......<p>Hints.t |
| 974a0 | 6f 20 74 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 68 6f 77 20 6c 69 6b 65 6c 79 20 61 20 67 69 76 | o.the.optimizer.how.likely.a.giv |
| 974c0 | 65 6e 20 62 72 61 6e 63 68 20 6f 66 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 69 73 20 74 6f 20 | en.branch.of.control.flow.is.to. |
| 974e0 | 62 65 20 72 65 61 63 68 65 64 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 42 | be.reached.</p>.......<p><code>B |
| 97500 | 72 61 6e 63 68 48 69 6e 74 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 77 69 | ranchHint</code>.can.be.found.wi |
| 97520 | 74 68 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | th.<code><span.class="tok-builti |
| 97540 | 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 |
| 97560 | 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>). |
| 97580 | 62 75 69 6c 74 69 6e 2e 42 72 61 6e 63 68 48 69 6e 74 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 | builtin.BranchHint</code>.</p>.. |
| 975a0 | 20 20 20 20 20 3c 70 3e 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 6f 6e 6c 79 20 76 61 | .....<p>This.function.is.only.va |
| 975c0 | 6c 69 64 20 61 73 20 74 68 65 20 66 69 72 73 74 20 73 74 61 74 65 6d 65 6e 74 20 69 6e 20 61 20 | lid.as.the.first.statement.in.a. |
| 975e0 | 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 62 72 61 6e 63 68 2c 20 6f 72 20 74 68 65 20 66 69 72 73 | control.flow.branch,.or.the.firs |
| 97600 | 74 20 73 74 61 74 65 6d 65 6e 74 20 69 6e 20 61 20 66 75 6e 63 74 69 6f 6e 2e 3c 2f 70 3e 0a 20 | t.statement.in.a.function.</p>.. |
| 97620 | 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 62 72 65 61 6b 70 6f 69 6e 74 22 | .............<h3.id="breakpoint" |
| 97640 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 72 65 61 6b 70 6f 69 6e 74 22 3e 40 62 72 65 61 | ><a.href="#toc-breakpoint">@brea |
| 97660 | 6b 70 6f 69 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 | kpoint</a>.<a.class="hdr".href=" |
| 97680 | 23 62 72 65 61 6b 70 6f 69 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | #breakpoint">..</a></h3>........ |
| 976a0 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | <pre><code><span.class="tok-buil |
| 976c0 | 74 69 6e 22 3e 40 62 72 65 61 6b 70 6f 69 6e 74 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 | tin">@breakpoint</span>().<span. |
| 976e0 | 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 6f | class="tok-type">void</span></co |
| 97700 | 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 |
| 97720 | 75 6e 63 74 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 | unction.inserts.a.platform-speci |
| 97740 | 66 69 63 20 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 | fic.debug.trap.instruction.which |
| 97760 | 20 63 61 75 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 | .causes.......debuggers.to.break |
| 97780 | 20 74 68 65 72 65 2e 0a 20 20 20 20 20 20 55 6e 6c 69 6b 65 20 66 6f 72 20 3c 63 6f 64 65 3e 3c | .there........Unlike.for.<code>< |
| 977a0 | 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 72 61 70 3c 2f | span.class="tok-builtin">@trap</ |
| 977c0 | 73 70 61 6e 3e 28 29 3c 2f 63 6f 64 65 3e 2c 20 65 78 65 63 75 74 69 6f 6e 20 6d 61 79 20 63 6f | span>()</code>,.execution.may.co |
| 977e0 | 6e 74 69 6e 75 65 20 61 66 74 65 72 20 74 68 69 73 20 70 6f 69 6e 74 20 69 66 20 74 68 65 20 70 | ntinue.after.this.point.if.the.p |
| 97800 | 72 6f 67 72 61 6d 20 69 73 20 72 65 73 75 6d 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | rogram.is.resumed........</p>... |
| 97820 | 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 69 73 20 6f | ....<p>.......This.function.is.o |
| 97840 | 6e 6c 79 20 76 61 6c 69 64 20 77 69 74 68 69 6e 20 66 75 6e 63 74 69 6f 6e 20 73 63 6f 70 65 2e | nly.valid.within.function.scope. |
| 97860 | 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 2f | .......</p>.......<p>See.also:</ |
| 97880 | 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 74 72 61 70 22 3e 40 74 72 61 70 | p><ul>.<li><a.href="#trap">@trap |
| 978a0 | 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>................< |
| 978c0 | 68 33 20 69 64 3d 22 6d 75 6c 41 64 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6d 75 6c | h3.id="mulAdd"><a.href="#toc-mul |
| 978e0 | 41 64 64 22 3e 40 6d 75 6c 41 64 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | Add">@mulAdd</a>.<a.class="hdr". |
| 97900 | 68 72 65 66 3d 22 23 6d 75 6c 41 64 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 | href="#mulAdd">..</a></h3>...... |
| 97920 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | ..<pre><code><span.class="tok-bu |
| 97940 | 69 6c 74 69 6e 22 3e 40 6d 75 6c 41 64 64 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | iltin">@mulAdd</span>(<span.clas |
| 97960 | 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 73 | s="tok-kw">comptime</span>.T:.<s |
| 97980 | 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> |
| 979a0 | 2c 20 61 3a 20 54 2c 20 62 3a 20 54 2c 20 63 3a 20 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ,.a:.T,.b:.T,.c:.T).T</code></pr |
| 979c0 | 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 75 73 65 64 20 6d 75 6c 74 69 70 6c | e>.......<p>.......Fused.multipl |
| 979e0 | 79 2d 61 64 64 2c 20 73 69 6d 69 6c 61 72 20 74 6f 20 3c 63 6f 64 65 3e 28 61 20 2a 20 62 29 20 | y-add,.similar.to.<code>(a.*.b). |
| 97a00 | 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 79 20 72 6f | +.c</code>,.except.......only.ro |
| 97a20 | 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 61 63 63 75 | unds.once,.and.is.thus.more.accu |
| 97a40 | 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 20 20 20 20 | rate........</p>.......<p>...... |
| 97a60 | 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 |
| 97a80 | 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 |
| 97aa0 | 63 74 6f 72 73 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | ctors</a>.of.floats........</p>. |
| 97ac0 | 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 62 79 74 65 53 77 61 70 22 3e | ..............<h3.id="byteSwap"> |
| 97ae0 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 79 74 65 53 77 61 70 22 3e 40 62 79 74 65 53 77 61 | <a.href="#toc-byteSwap">@byteSwa |
| 97b00 | 70 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 62 79 74 65 | p</a>.<a.class="hdr".href="#byte |
| 97b20 | 53 77 61 70 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | Swap">..</a></h3>........<pre><c |
| 97b40 | 6f 64 65 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 62 | ode><span.class="tok-builtin">@b |
| 97b60 | 79 74 65 53 77 61 70 3c 2f 73 70 61 6e 3e 28 6f 70 65 72 61 6e 64 3a 20 3c 73 70 61 6e 20 63 6c | yteSwap</span>(operand:.<span.cl |
| 97b80 | 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 54 3c 2f | ass="tok-kw">anytype</span>).T</ |
| 97ba0 | 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 3e 3c 73 70 61 6e | code></pre>.......<p><code><span |
| 97bc0 | 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 |
| 97be0 | 61 6e 3e 28 6f 70 65 72 61 6e 64 29 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 6e 20 69 | an>(operand)</code>.must.be.an.i |
| 97c00 | 6e 74 65 67 65 72 20 74 79 70 65 20 6f 72 20 61 6e 20 69 6e 74 65 67 65 72 20 76 65 63 74 6f 72 | nteger.type.or.an.integer.vector |
| 97c20 | 20 74 79 70 65 20 77 69 74 68 20 62 69 74 20 63 6f 75 6e 74 20 65 76 65 6e 6c 79 20 64 69 76 69 | .type.with.bit.count.evenly.divi |
| 97c40 | 73 69 62 6c 65 20 62 79 20 38 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 6f | sible.by.8.</p>.......<p><code>o |
| 97c60 | 70 65 72 61 6e 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 | perand</code>.may.be.an.<a.href= |
| 97c80 | 22 23 49 6e 74 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 | "#Integers">integer</a>.or.<a.hr |
| 97ca0 | 65 66 3d 22 23 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 | ef="#Vectors">vector</a>.</p>... |
| 97cc0 | 20 20 20 20 3c 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 | ....<p>.......Swaps.the.byte.ord |
| 97ce0 | 65 72 20 6f 66 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 | er.of.the.integer..This.converts |
| 97d00 | 20 61 20 62 69 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 | .a.big.endian.integer.to.a.littl |
| 97d20 | 65 20 65 6e 64 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 | e.endian.integer,.......and.conv |
| 97d40 | 65 72 74 73 20 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 | erts.a.little.endian.integer.to. |
| 97d60 | 61 20 62 69 67 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 | a.big.endian.integer........</p> |
| 97d80 | 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 66 6f 72 20 74 | .......<p>.......Note.that.for.t |
| 97da0 | 68 65 20 70 75 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 | he.purposes.of.memory.layout.wit |
| 97dc0 | 68 20 72 65 73 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 | h.respect.to.endianness,.the.int |
| 97de0 | 65 67 65 72 20 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 | eger.type.should.be.......relate |
| 97e00 | 64 20 74 6f 20 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 | d.to.the.number.of.bytes.reporte |
| 97e20 | 64 20 62 79 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 | d.by.<a.href="#sizeOf">@sizeOf</ |
| 97e40 | 61 3e 20 62 79 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 | a>.bytes..This.is.demonstrated.w |
| 97e60 | 69 74 68 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ith.......<code><span.class="tok |
| 97e80 | 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 20 3c 63 6f 64 65 3e | -type">u24</span></code>..<code> |
| 97ea0 | 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 4f | <span.class="tok-builtin">@sizeO |
| 97ec0 | 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"> |
| 97ee0 | 75 32 34 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 | u24</span>).==.<span.class="tok- |
| 97f00 | 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 77 68 69 63 68 20 6d | number">4</span></code>,.which.m |
| 97f20 | 65 61 6e 73 20 74 68 61 74 20 61 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | eans.that.a.......<code><span.cl |
| 97f40 | 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 3c 2f 63 6f 64 65 3e | ass="tok-type">u24</span></code> |
| 97f60 | 20 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 | .stored.in.memory.takes.4.bytes, |
| 97f80 | 20 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 | .and.those.4.bytes.are.what.are. |
| 97fa0 | 73 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 | swapped.on.......a.little.vs.big |
| 97fc0 | 20 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 | .endian.system..On.the.other.han |
| 97fe0 | 64 2c 20 69 66 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 20 69 73 20 73 70 65 63 69 66 69 65 | d,.if.<code>T</code>.is.specifie |
| 98000 | 64 20 74 6f 0a 20 20 20 20 20 20 62 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | d.to.......be.<code><span.class= |
| 98020 | 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 2c 20 74 68 | "tok-type">u24</span></code>,.th |
| 98040 | 65 6e 20 6f 6e 6c 79 20 33 20 62 79 74 65 73 20 61 72 65 20 72 65 76 65 72 73 65 64 2e 0a 20 20 | en.only.3.bytes.are.reversed.... |
| 98060 | 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 33 20 69 64 3d 22 62 | ....</p>...............<h3.id="b |
| 98080 | 69 74 52 65 76 65 72 73 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 69 74 52 65 76 65 | itReverse"><a.href="#toc-bitReve |
| 980a0 | 72 73 65 22 3e 40 62 69 74 52 65 76 65 72 73 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | rse">@bitReverse</a>.<a.class="h |
| 980c0 | 64 72 22 20 68 72 65 66 3d 22 23 62 69 74 52 65 76 65 72 73 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | dr".href="#bitReverse">..</a></h |
| 980e0 | 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | 3>........<pre><code><span.class |
| 98100 | 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 70 61 6e | ="tok-builtin">@bitReverse</span |
| 98120 | 3e 28 69 6e 74 65 67 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 | >(integer:.<span.class="tok-kw"> |
| 98140 | 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | anytype</span>).T</code></pre>.. |
| 98160 | 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | .....<p><code><span.class="tok-b |
| 98180 | 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 6e 20 63 6c 61 | uiltin">@TypeOf</span>(<span.cla |
| 981a0 | 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 3c 2f 63 6f 64 | ss="tok-kw">anytype</span>)</cod |
| 981c0 | 65 3e 20 61 63 63 65 70 74 73 20 61 6e 79 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 6f 72 20 69 | e>.accepts.any.integer.type.or.i |
| 981e0 | 6e 74 65 67 65 72 20 76 65 63 74 6f 72 20 74 79 70 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | nteger.vector.type.</p>.......<p |
| 98200 | 3e 0a 20 20 20 20 20 20 52 65 76 65 72 73 65 73 20 74 68 65 20 62 69 74 70 61 74 74 65 72 6e 20 | >.......Reverses.the.bitpattern. |
| 98220 | 6f 66 20 61 6e 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 2c 20 69 6e 63 6c 75 64 69 6e 67 20 74 | of.an.integer.value,.including.t |
| 98240 | 68 65 20 73 69 67 6e 20 62 69 74 20 69 66 20 61 70 70 6c 69 63 61 62 6c 65 2e 0a 20 20 20 20 20 | he.sign.bit.if.applicable....... |
| 98260 | 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 65 78 61 6d 70 6c | .</p>.......<p>.......For.exampl |
| 98280 | 65 20 30 62 31 30 31 31 30 31 31 30 20 28 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e.0b10110110.(<code><span.class= |
| 982a0 | 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 61 | "tok-type">u8</span>.=.<span.cla |
| 982c0 | 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 64 65 | ss="tok-number">182</span></code |
| 982e0 | 3e 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | >,.<code><span.class="tok-type"> |
| 98300 | 69 38 3c 2f 73 70 61 6e 3e 20 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | i8</span>.=.-<span.class="tok-nu |
| 98320 | 6d 62 65 72 22 3e 37 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 0a 20 20 20 20 20 20 62 65 | mber">74</span></code>).......be |
| 98340 | 63 6f 6d 65 73 20 30 62 30 31 31 30 31 31 30 31 20 28 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | comes.0b01101101.(<code><span.cl |
| 98360 | 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 73 70 61 6e | ass="tok-type">u8</span>.=.<span |
| 98380 | 20 63 6c 61 73 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 | .class="tok-number">109</span></ |
| 983a0 | 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | code>,.<code><span.class="tok-ty |
| 983c0 | 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 6b | pe">i8</span>.=.<span.class="tok |
| 983e0 | 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 29 2e 0a 20 20 20 | -number">109</span></code>)..... |
| 98400 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 6f 66 | ...</p>...............<h3.id="of |
| 98420 | 66 73 65 74 4f 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6f 66 66 73 65 74 4f 66 22 3e | fsetOf"><a.href="#toc-offsetOf"> |
| 98440 | 40 6f 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 68 72 65 | @offsetOf</a>.<a.class="hdr".hre |
| 98460 | 66 3d 22 23 6f 66 66 73 65 74 4f 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | f="#offsetOf">..</a></h3>....... |
| 98480 | 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | .<pre><code><span.class="tok-bui |
| 984a0 | 6c 74 69 6e 22 3e 40 6f 66 66 73 65 74 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ltin">@offsetOf</span>(<span.cla |
| 984c0 | 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:.< |
| 984e0 | 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 |
| 98500 | 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 |
| 98520 | 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 |
| 98540 | 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 |
| 98560 | 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 73 70 61 6e 20 | ass="tok-type">u8</span>).<span. |
| 98580 | 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 |
| 985a0 | 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 20 20 | pan></code></pre>.......<p>..... |
| 985c0 | 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 6f 66 20 61 20 66 | ..Returns.the.byte.offset.of.a.f |
| 985e0 | 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 69 6e 69 6e 67 20 | ield.relative.to.its.containing. |
| 98600 | 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 53 65 65 20 | struct........</p>.......<p>See. |
| 98620 | 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 62 69 74 4f | also:</p><ul>.<li><a.href="#bitO |
| 98640 | 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 2f 6c 69 3e 0a 3c | ffsetOf">@bitOffsetOf</a></li>.< |
| 98660 | 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 63 61 6c 6c | /ul>................<h3.id="call |
| 98680 | 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 6c 3c 2f 61 3e 20 | "><a.href="#toc-call">@call</a>. |
| 986a0 | 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 22 3e c2 a7 3c 2f | <a.class="hdr".href="#call">..</ |
| 986c0 | 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | a></h3>........<pre><code><span. |
| 986e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 61 6c 6c 3c 2f 73 70 61 6e 3e | class="tok-builtin">@call</span> |
| 98700 | 28 6d 6f 64 69 66 69 65 72 3a 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 43 61 6c 6c 4d 6f 64 69 66 | (modifier:.std.builtin.CallModif |
| 98720 | 69 65 72 2c 20 66 75 6e 63 74 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ier,.function:.<span.class="tok- |
| 98740 | 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 72 67 73 3a 20 3c 73 70 61 6e 20 | kw">anytype</span>,.args:.<span. |
| 98760 | 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>).< |
| 98780 | 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 |
| 987a0 | 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>....... |
| 987c0 | 43 61 6c 6c 73 20 61 20 66 75 6e 63 74 69 6f 6e 2c 20 69 6e 20 74 68 65 20 73 61 6d 65 20 77 61 | Calls.a.function,.in.the.same.wa |
| 987e0 | 79 20 74 68 61 74 20 69 6e 76 6f 6b 69 6e 67 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 77 69 | y.that.invoking.an.expression.wi |
| 98800 | 74 68 20 70 61 72 65 6e 74 68 65 73 65 73 20 64 6f 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | th.parentheses.does:.......</p>. |
| 98820 | 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | ......<figure><figcaption.class= |
| 98840 | 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | "zig-cap"><cite.class="file">tes |
| 98860 | 74 5f 63 61 6c 6c 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | t_call_builtin.zig</cite></figca |
| 98880 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ption><pre><code><span.class="to |
| 988a0 | 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 |
| 988c0 | 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 |
| 988e0 | 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">" |
| 98900 | 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 |
| 98920 | 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 |
| 98940 | 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">" |
| 98960 | 3b 6e 6f 69 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 3c 2f 73 | ;noinline.function.call"</s |
| 98980 | 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"> |
| 989a0 | 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 74 | try</span>.expect(<span.class="t |
| 989c0 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 61 6c 6c 3c 2f 73 70 61 6e 3e 28 2e 61 75 74 6f 2c 20 | ok-builtin">@call</span>(.auto,. |
| 989e0 | 61 64 64 2c 20 2e 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 | add,..{.<span.class="tok-number" |
| 98a00 | 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 62 | >3</span>,.<span.class="tok-numb |
| 98a20 | 65 72 22 3e 39 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 | er">9</span>.}).==.<span.class=" |
| 98a40 | 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 70 61 6e | tok-number">12</span>);.}..<span |
| 98a60 | 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. |
| 98a80 | 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 3c 73 70 | class="tok-fn">add</span>(a:.<sp |
| 98aa0 | 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 2c 20 | an.class="tok-type">i32</span>,. |
| 98ac0 | 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 3c 2f 73 | b:.<span.class="tok-type">i32</s |
| 98ae0 | 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 32 | pan>).<span.class="tok-type">i32 |
| 98b00 | 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 |
| 98b20 | 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 3c 2f 63 6f 64 65 3e | w">return</span>.a.+.b;.}</code> |
| 98b40 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | </pre></figure><figure><figcapti |
| 98b60 | 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 | on.class="shell-cap">Shell</figc |
| 98b80 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 | aption><pre><samp>$.<kbd>zig.tes |
| 98ba0 | 74 20 74 65 73 74 5f 63 61 6c 6c 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f | t.test_call_builtin.zig</kbd>.1/ |
| 98bc0 | 31 20 74 65 73 74 5f 63 61 6c 6c 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 6e 6f 69 6e 6c 69 6e | 1.test_call_builtin.test.noinlin |
| 98be0 | 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 | e.function.call...OK.All.1.tests |
| 98c00 | 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a | .passed..</samp></pre></figure>. |
| 98c20 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | .......<p>.......<code><span.cla |
| 98c40 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 61 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 | ss="tok-builtin">@call</span></c |
| 98c60 | 6f 64 65 3e 20 61 6c 6c 6f 77 73 20 6d 6f 72 65 20 66 6c 65 78 69 62 69 6c 69 74 79 20 74 68 61 | ode>.allows.more.flexibility.tha |
| 98c80 | 6e 20 6e 6f 72 6d 61 6c 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 73 79 6e 74 61 78 20 64 6f | n.normal.function.call.syntax.do |
| 98ca0 | 65 73 2e 20 54 68 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 43 61 6c 6c 4d 6f 64 69 66 69 65 72 | es..The.......<code>CallModifier |
| 98cc0 | 3c 2f 63 6f 64 65 3e 20 65 6e 75 6d 20 69 73 20 72 65 70 72 6f 64 75 63 65 64 20 68 65 72 65 3a | </code>.enum.is.reproduced.here: |
| 98ce0 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | .......</p>.......<figure><figca |
| 98d00 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 | ption.class="zig-cap"><cite.clas |
| 98d20 | 73 3d 22 66 69 6c 65 22 3e 62 75 69 6c 74 69 6e 2e 43 61 6c 6c 4d 6f 64 69 66 69 65 72 20 73 74 | s="file">builtin.CallModifier.st |
| 98d40 | 72 75 63 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | ruct.zig</cite></figcaption><pre |
| 98d60 | 3e 3c 63 6f 64 65 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 | ><code><span.class="tok-kw">pub< |
| 98d80 | 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 |
| 98da0 | 74 3c 2f 73 70 61 6e 3e 20 43 61 6c 6c 4d 6f 64 69 66 69 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c | t</span>.CallModifier.=.<span.cl |
| 98dc0 | 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 3c | ass="tok-kw">enum</span>.{.....< |
| 98de0 | 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 45 71 75 | span.class="tok-comment">///.Equ |
| 98e00 | 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 6e 74 61 78 2e | ivalent.to.function.call.syntax. |
| 98e20 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 75 74 6f 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | </span>.....auto,......<span.cla |
| 98e40 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 45 71 75 69 76 61 6c 65 6e 74 20 | ss="tok-comment">///.Equivalent. |
| 98e60 | 74 6f 20 61 73 79 6e 63 20 6b 65 79 77 6f 72 64 20 75 73 65 64 20 77 69 74 68 20 66 75 6e 63 74 | to.async.keyword.used.with.funct |
| 98e80 | 69 6f 6e 20 63 61 6c 6c 20 73 79 6e 74 61 78 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 79 6e | ion.call.syntax.</span>.....asyn |
| 98ea0 | 63 5f 6b 77 2c 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 | c_kw,......<span.class="tok-comm |
| 98ec0 | 65 6e 74 22 3e 2f 2f 2f 20 50 72 65 76 65 6e 74 73 20 74 61 69 6c 20 63 61 6c 6c 20 6f 70 74 69 | ent">///.Prevents.tail.call.opti |
| 98ee0 | 6d 69 7a 61 74 69 6f 6e 2e 20 54 68 69 73 20 67 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 74 | mization..This.guarantees.that.t |
| 98f00 | 68 65 20 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | he.return</span>.....<span.class |
| 98f20 | 3d 22 74 6f 6b 2d 63 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 | ="tok-comment">///.address.will. |
| 98f40 | 70 6f 69 6e 74 20 74 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 | point.to.the.callsite,.as.oppose |
| 98f60 | 64 20 74 6f 20 74 68 65 20 63 61 6c 6c 73 69 74 65 27 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | d.to.the.callsite's</span>.....< |
| 98f80 | 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 63 61 6c | span.class="tok-comment">///.cal |
| 98fa0 | 6c 73 69 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 | lsite..If.the.call.is.otherwise. |
| 98fc0 | 72 65 71 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 | required.to.be.tail-called</span |
| 98fe0 | 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"> |
| 99000 | 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 20 | ///.or.inlined,.a.compile.error. |
| 99020 | 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 6e | is.emitted.instead.</span>.....n |
| 99040 | 65 76 65 72 5f 74 61 69 6c 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ever_tail,......<span.class="tok |
| 99060 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 47 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 74 68 | -comment">///.Guarantees.that.th |
| 99080 | 65 20 63 61 6c 6c 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 69 6e 6c 69 6e 65 64 2e 20 49 66 20 74 | e.call.will.not.be.inlined..If.t |
| 990a0 | 68 65 20 63 61 6c 6c 20 69 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | he.call.is</span>.....<span.clas |
| 990c0 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 6f 74 68 65 72 77 69 73 65 20 72 65 | s="tok-comment">///.otherwise.re |
| 990e0 | 71 75 69 72 65 64 20 74 6f 20 62 65 20 69 6e 6c 69 6e 65 64 2c 20 61 20 63 6f 6d 70 69 6c 65 20 | quired.to.be.inlined,.a.compile. |
| 99100 | 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 3e | error.is.emitted.instead.</span> |
| 99120 | 0a 20 20 20 20 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | .....never_inline,......<span.cl |
| 99140 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 41 73 73 65 72 74 73 20 74 68 | ass="tok-comment">///.Asserts.th |
| 99160 | 61 74 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 77 69 6c 6c 20 6e 6f 74 20 73 75 | at.the.function.call.will.not.su |
| 99180 | 73 70 65 6e 64 2e 20 54 68 69 73 20 61 6c 6c 6f 77 73 20 61 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | spend..This.allows.a</span>..... |
| 991a0 | 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 6e 6f | <span.class="tok-comment">///.no |
| 991c0 | 6e 2d 61 73 79 6e 63 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 | n-async.function.to.call.an.asyn |
| 991e0 | 63 20 66 75 6e 63 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 6e 6f 5f 61 73 79 6e 63 2c | c.function.</span>.....no_async, |
| 99200 | 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"> |
| 99220 | 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 6c | ///.Guarantees.that.the.call.wil |
| 99240 | 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 70 | l.be.generated.with.tail.call.op |
| 99260 | 74 69 6d 69 7a 61 74 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 | timization.</span>.....<span.cla |
| 99280 | 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 73 20 69 73 20 | ss="tok-comment">///.If.this.is. |
| 992a0 | 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 6f 72 20 69 73 | not.possible,.a.compile.error.is |
| 992c0 | 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 61 6c 77 | .emitted.instead.</span>.....alw |
| 992e0 | 61 79 73 5f 74 61 69 6c 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ays_tail,......<span.class="tok- |
| 99300 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 47 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 74 68 65 | comment">///.Guarantees.that.the |
| 99320 | 20 63 61 6c 6c 20 77 69 6c 6c 20 62 65 20 69 6e 6c 69 6e 65 64 20 61 74 20 74 68 65 20 63 61 6c | .call.will.be.inlined.at.the.cal |
| 99340 | 6c 73 69 74 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 | lsite.</span>.....<span.class="t |
| 99360 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 49 66 20 74 68 69 73 20 69 73 20 6e 6f 74 20 70 | ok-comment">///.If.this.is.not.p |
| 99380 | 6f 73 73 69 62 6c 65 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 | ossible,.a.compile.error.is.emit |
| 993a0 | 74 65 64 20 69 6e 73 74 65 61 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 6c 77 61 79 73 5f 69 | ted.instead.</span>.....always_i |
| 993c0 | 6e 6c 69 6e 65 2c 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 | nline,......<span.class="tok-com |
| 993e0 | 6d 65 6e 74 22 3e 2f 2f 2f 20 45 76 61 6c 75 61 74 65 73 20 74 68 65 20 63 61 6c 6c 20 61 74 20 | ment">///.Evaluates.the.call.at. |
| 99400 | 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 20 49 66 20 74 68 65 20 63 61 6c 6c 20 63 61 6e 6e 6f 74 | compile-time..If.the.call.cannot |
| 99420 | 20 62 65 20 63 6f 6d 70 6c 65 74 65 64 20 61 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | .be.completed.at</span>.....<spa |
| 99440 | 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 6f 6d 70 69 6c | n.class="tok-comment">///.compil |
| 99460 | 65 2d 74 69 6d 65 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 | e-time,.a.compile.error.is.emitt |
| 99480 | 65 64 20 69 6e 73 74 65 61 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6d 70 69 6c 65 5f 74 | ed.instead.</span>.....compile_t |
| 994a0 | 69 6d 65 2c 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 | ime,.};</code></pre></figure>... |
| 994c0 | 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 63 44 65 66 69 6e 65 22 3e 3c 61 | .............<h3.id="cDefine"><a |
| 994e0 | 20 68 72 65 66 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 | .href="#toc-cDefine">@cDefine</a |
| 99500 | 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 44 65 66 69 6e 65 22 | >.<a.class="hdr".href="#cDefine" |
| 99520 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | >..</a></h3>........<pre><code>< |
| 99540 | 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 44 65 66 69 6e | span.class="tok-builtin">@cDefin |
| 99560 | 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 6b 77 22 3e 63 6f | e</span>(<span.class="tok-kw">co |
| 99580 | 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 20 63 6c 61 73 | mptime</span>.name:.[]<span.clas |
| 995a0 | 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 |
| 995c0 | 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 61 6c 75 65 29 | ass="tok-type">u8</span>,.value) |
| 995e0 | 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 |
| 99600 | 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>...... |
| 99620 | 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 69 6e | .This.function.can.only.occur.in |
| 99640 | 73 69 64 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | side.<code><span.class="tok-buil |
| 99660 | 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 2e 0a 20 20 20 | tin">@cImport</span></code>..... |
| 99680 | 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 61 70 70 | ...</p>.......<p>.......This.app |
| 996a0 | 65 6e 64 73 20 3c 63 6f 64 65 3e 23 64 65 66 69 6e 65 20 24 6e 61 6d 65 20 24 76 61 6c 75 65 3c | ends.<code>#define.$name.$value< |
| 996c0 | 2f 63 6f 64 65 3e 20 74 6f 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | /code>.to.the.<code><span.class= |
| 996e0 | 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 63 | "tok-builtin">@cImport</span></c |
| 99700 | 6f 64 65 3e 0a 20 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 | ode>.......temporary.buffer..... |
| 99720 | 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 6f 20 64 65 66 69 6e | ...</p>.......<p>.......To.defin |
| 99740 | 65 20 77 69 74 68 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 | e.without.a.value,.like.this:... |
| 99760 | 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= |
| 99780 | 22 63 22 3e 23 64 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 | "c">#define._GNU_SOURCE</code></ |
| 997a0 | 70 72 65 3e 0a 20 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 | pre>.......<p>.......Use.the.voi |
| 997c0 | 64 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 70 3e 0a 20 | d.value,.like.this:.......</p>.. |
| 997e0 | 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .....<pre><code><span.class="tok |
| 99800 | 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 3c 73 70 61 6e 20 | -builtin">@cDefine</span>(<span. |
| 99820 | 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 5f 53 4f 55 52 43 | class="tok-str">"_GNU_SOURC |
| 99840 | 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 3c 2f 70 72 65 3e | E"</span>,.{})</code></pre> |
| 99860 | 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> |
| 99880 | 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 2d 46 | <a.href="#Import-from-C-Header-F |
| 998a0 | 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 3c 2f | ile">Import.from.C.Header.File</ |
| 998c0 | 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 22 3e | a></li>.<li><a.href="#cInclude"> |
| 998e0 | 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 3d 22 | @cInclude</a></li>.<li><a.href=" |
| 99900 | 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 6c 69 3e | #cImport">@cImport</a></li>.<li> |
| 99920 | 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 2f 6c | <a.href="#cUndef">@cUndef</a></l |
| 99940 | 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 2f 61 3e 3c | i>.<li><a.href="#void">void</a>< |
| 99960 | 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 69 64 3d | /li>.</ul>...............<h3.id= |
| 99980 | 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 6d 70 6f 72 74 22 | "cImport"><a.href="#toc-cImport" |
| 999a0 | 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 72 22 20 68 72 65 | >@cImport</a>.<a.class="hdr".hre |
| 999c0 | 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | f="#cImport">..</a></h3>........ |
| 999e0 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | <pre><code><span.class="tok-buil |
| 99a00 | 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 65 78 70 72 65 73 73 69 6f 6e 29 | tin">@cImport</span>(expression) |
| 99a20 | 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 |
| 99a40 | 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>...... |
| 99a60 | 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 73 20 43 20 63 6f 64 65 20 61 6e 64 | .This.function.parses.C.code.and |
| 99a80 | 20 69 6d 70 6f 72 74 73 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 73 2c 20 74 79 70 65 73 2c 20 76 | .imports.the.functions,.types,.v |
| 99aa0 | 61 72 69 61 62 6c 65 73 2c 0a 20 20 20 20 20 20 61 6e 64 20 63 6f 6d 70 61 74 69 62 6c 65 20 6d | ariables,.......and.compatible.m |
| 99ac0 | 61 63 72 6f 20 64 65 66 69 6e 69 74 69 6f 6e 73 20 69 6e 74 6f 20 61 20 6e 65 77 20 65 6d 70 74 | acro.definitions.into.a.new.empt |
| 99ae0 | 79 20 73 74 72 75 63 74 20 74 79 70 65 2c 20 61 6e 64 20 74 68 65 6e 0a 20 20 20 20 20 20 72 65 | y.struct.type,.and.then.......re |
| 99b00 | 74 75 72 6e 73 20 74 68 61 74 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | turns.that.type........</p>..... |
| 99b20 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 65 78 70 72 65 73 73 69 6f 6e 3c 2f 63 6f | ..<p>.......<code>expression</co |
| 99b40 | 64 65 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 | de>.is.interpreted.at.compile.ti |
| 99b60 | 6d 65 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 | me..The.builtin.functions....... |
| 99b80 | 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ....<code><span.class="tok-built |
| 99ba0 | 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f | in">@cInclude</span></code>,.<co |
| 99bc0 | 64 65 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 44 | de><span.class="tok-builtin">@cD |
| 99be0 | 65 66 69 6e 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 3e 3c | efine</span></code>,.and.<code>< |
| 99c00 | 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 66 | span.class="tok-builtin">@cUndef |
| 99c20 | 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 69 6e | </span></code>.work.......within |
| 99c40 | 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 20 61 | .this.expression,.appending.to.a |
| 99c60 | 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 6e 20 | .temporary.buffer.which.is.then. |
| 99c80 | 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 20 20 | parsed.as.C.code........</p>.... |
| 99ca0 | 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 64 20 | ...<p>.......Usually.you.should. |
| 99cc0 | 6f 6e 6c 79 20 68 61 76 65 20 6f 6e 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | only.have.one.<code><span.class= |
| 99ce0 | 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 63 | "tok-builtin">@cImport</span></c |
| 99d00 | 6f 64 65 3e 20 69 6e 20 79 6f 75 72 20 65 6e 74 69 72 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 2c | ode>.in.your.entire.application, |
| 99d20 | 20 62 65 63 61 75 73 65 20 69 74 20 73 61 76 65 73 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a 20 | .because.it.saves.the.compiler.. |
| 99d40 | 20 20 20 20 20 66 72 6f 6d 20 69 6e 76 6f 6b 69 6e 67 20 63 6c 61 6e 67 20 6d 75 6c 74 69 70 6c | .....from.invoking.clang.multipl |
| 99d60 | 65 20 74 69 6d 65 73 2c 20 61 6e 64 20 70 72 65 76 65 6e 74 73 20 69 6e 6c 69 6e 65 20 66 75 6e | e.times,.and.prevents.inline.fun |
| 99d80 | 63 74 69 6f 6e 73 20 66 72 6f 6d 20 62 65 69 6e 67 20 64 75 70 6c 69 63 61 74 65 64 2e 0a 20 20 | ctions.from.being.duplicated.... |
| 99da0 | 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 52 65 61 73 6f 6e 73 | ....</p>.......<p>.......Reasons |
| 99dc0 | 20 66 6f 72 20 68 61 76 69 6e 67 20 6d 75 6c 74 69 70 6c 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | .for.having.multiple.<code><span |
| 99de0 | 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 2f 73 | .class="tok-builtin">@cImport</s |
| 99e00 | 70 61 6e 3e 3c 2f 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 | pan></code>.expressions.would.be |
| 99e20 | 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>......... |
| 99e40 | 20 20 3c 6c 69 3e 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 | ..<li>To.avoid.a.symbol.collisio |
| 99e60 | 6e 2c 20 66 6f 72 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 | n,.for.example.if.foo.h.and.bar. |
| 99e80 | 68 20 62 6f 74 68 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 | h.both.<code>#define.CONNECTION_ |
| 99ea0 | 43 4f 55 4e 54 3c 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 | COUNT</code></li>.........<li>To |
| 99ec0 | 20 61 6e 61 6c 79 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 | .analyze.the.C.code.with.differe |
| 99ee0 | 6e 74 20 70 72 65 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 | nt.preprocessor.defines</li>.... |
| 99f00 | 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 3a 3c 2f 70 3e 3c | ...</ul>.......<p>See.also:</p>< |
| 99f20 | 75 6c 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 | ul>.<li><a.href="#Import-from-C- |
| 99f40 | 48 65 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 | Header-File">Import.from.C.Heade |
| 99f60 | 72 20 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 | r.File</a></li>.<li><a.href="#cI |
| 99f80 | 6e 63 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 | nclude">@cInclude</a></li>.<li>< |
| 99fa0 | 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 65 3c 2f 61 3e 3c 2f | a.href="#cDefine">@cDefine</a></ |
| 99fc0 | 6c 69 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 | li>.<li><a.href="#cUndef">@cUnde |
| 99fe0 | 66 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 | f</a></li>.</ul>...............< |
| 9a000 | 68 33 20 69 64 3d 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 | h3.id="cInclude"><a.href="#toc-c |
| 9a020 | 49 6e 63 6c 75 64 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 | Include">@cInclude</a>.<a.class= |
| 9a040 | 22 68 64 72 22 20 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 | "hdr".href="#cInclude">..</a></h |
| 9a060 | 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | 3>........<pre><code><span.class |
| 9a080 | 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 73 70 61 6e 3e 28 | ="tok-builtin">@cInclude</span>( |
| 9a0a0 | 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 |
| 9a0c0 | 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 |
| 9a0e0 | 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- |
| 9a100 | 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 3d 22 74 6f | type">u8</span>).<span.class="to |
| 9a120 | 6b 2d 74 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 70 72 65 3e | k-type">void</span></code></pre> |
| 9a140 | 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 63 | .......<p>.......This.function.c |
| 9a160 | 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 3e 3c 73 70 61 6e | an.only.occur.inside.<code><span |
| 9a180 | 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 2f 73 | .class="tok-builtin">@cImport</s |
| 9a1a0 | 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 |
| 9a1c0 | 3e 0a 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 69 6e 63 6c | >.......This.appends.<code>#incl |
| 9a1e0 | 75 64 65 20 26 6c 74 3b 24 70 61 74 68 26 67 74 3b 5c 6e 3c 2f 63 6f 64 65 3e 20 74 6f 20 74 68 | ude.<$path>\n</code>.to.th |
| 9a200 | 65 20 3c 63 6f 64 65 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 | e.<code>c_import</code>.......te |
| 9a220 | 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 3e 0a 20 20 20 20 20 | mporary.buffer........</p>...... |
| 9a240 | 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 |
| 9a260 | 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 49 | f="#Import-from-C-Header-File">I |
| 9a280 | 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 69 | mport.from.C.Header.File</a></li |
| 9a2a0 | 3e 0a 3c 6c 69 3e 3c 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 | >.<li><a.href="#cImport">@cImpor |
| 9a2c0 | 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 63 44 65 66 69 6e 65 | t</a></li>.<li><a.href="#cDefine |
| 9a2e0 | 22 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 | ">@cDefine</a></li>.<li><a.href= |
| 9a300 | 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 3c 2f 75 6c 3e | "#cUndef">@cUndef</a></li>.</ul> |
| 9a320 | 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 63 6c 7a 22 3e 3c 61 20 | ................<h3.id="clz"><a. |
| 9a340 | 68 72 65 66 3d 22 23 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 | href="#toc-clz">@clz</a>.<a.clas |
| 9a360 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 6c 7a 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | s="hdr".href="#clz">..</a></h3>. |
| 9a380 | 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .......<pre><code><span.class="t |
| 9a3a0 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6c 7a 3c 2f 73 70 61 6e 3e 28 6f 70 65 72 61 6e 64 3a | ok-builtin">@clz</span>(operand: |
| 9a3c0 | 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 2f 73 | .<span.class="tok-kw">anytype</s |
| 9a3e0 | 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 61 6e 79 74 79 | pan>).<span.class="tok-kw">anyty |
| 9a400 | 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 3e | pe</span></code></pre>.......<p> |
| 9a420 | 3c 63 6f 64 65 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 | <code><span.class="tok-builtin"> |
| 9a440 | 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 6f 70 65 72 61 6e 64 29 3c 2f 63 6f 64 65 3e 20 6d | @TypeOf</span>(operand)</code>.m |
| 9a460 | 75 73 74 20 62 65 20 61 6e 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 6f 72 20 61 6e 20 69 6e 74 | ust.be.an.integer.type.or.an.int |
| 9a480 | 65 67 65 72 20 76 65 63 74 6f 72 20 74 79 70 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c | eger.vector.type.</p>.......<p>< |
| 9a4a0 | 63 6f 64 65 3e 6f 70 65 72 61 6e 64 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 62 65 20 61 6e 20 3c 61 | code>operand</code>.may.be.an.<a |
| 9a4c0 | 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 20 6f 72 | .href="#Integers">integer</a>.or |
| 9a4e0 | 20 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 2e 3c | .<a.href="#Vectors">vector</a>.< |
| 9a500 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 75 6e 74 73 20 74 68 65 20 6e | /p>.......<p>.......Counts.the.n |
| 9a520 | 75 6d 62 65 72 20 6f 66 20 6d 6f 73 74 2d 73 69 67 6e 69 66 69 63 61 6e 74 20 28 6c 65 61 64 69 | umber.of.most-significant.(leadi |
| 9a540 | 6e 67 20 69 6e 20 61 20 62 69 67 2d 65 6e 64 69 61 6e 20 73 65 6e 73 65 29 20 7a 65 72 6f 65 73 | ng.in.a.big-endian.sense).zeroes |
| 9a560 | 20 69 6e 20 61 6e 20 69 6e 74 65 67 65 72 20 2d 20 22 63 6f 75 6e 74 20 6c 65 61 64 69 6e 67 20 | .in.an.integer.-."count.leading. |
| 9a580 | 7a 65 72 6f 65 73 22 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 | zeroes"........</p>.......<p>... |
| 9a5a0 | 20 20 20 20 54 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 61 6e 20 75 6e 73 69 67 6e | ....The.return.type.is.an.unsign |
| 9a5c0 | 65 64 20 69 6e 74 65 67 65 72 20 6f 72 20 76 65 63 74 6f 72 20 6f 66 20 75 6e 73 69 67 6e 65 64 | ed.integer.or.vector.of.unsigned |
| 9a5e0 | 20 69 6e 74 65 67 65 72 73 20 77 69 74 68 20 74 68 65 20 6d 69 6e 69 6d 75 6d 20 6e 75 6d 62 65 | .integers.with.the.minimum.numbe |
| 9a600 | 72 0a 20 20 20 20 20 20 6f 66 20 62 69 74 73 20 74 68 61 74 20 63 61 6e 20 72 65 70 72 65 73 65 | r.......of.bits.that.can.represe |
| 9a620 | 6e 74 20 74 68 65 20 62 69 74 20 63 6f 75 6e 74 20 6f 66 20 74 68 65 20 69 6e 74 65 67 65 72 20 | nt.the.bit.count.of.the.integer. |
| 9a640 | 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 0a 20 20 20 20 20 | type........</p>.......<p>...... |
| 9a660 | 20 49 66 20 3c 63 6f 64 65 3e 6f 70 65 72 61 6e 64 3c 2f 63 6f 64 65 3e 20 69 73 20 7a 65 72 6f | .If.<code>operand</code>.is.zero |
| 9a680 | 2c 20 3c 63 6f 64 65 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 | ,.<code><span.class="tok-builtin |
| 9a6a0 | 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 74 68 65 | ">@clz</span></code>.returns.the |
| 9a6c0 | 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 79 70 65 | .bit.width.......of.integer.type |
| 9a6e0 | 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | .<code>T</code>........</p>..... |
| 9a700 | 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 |
| 9a720 | 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 |
| 9a740 | 72 65 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 | ref="#popCount">@popCount</a></l |
| 9a760 | 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 33 20 69 64 3d 22 | i>.</ul>................<h3.id=" |
| 9a780 | 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 6d 70 | cmpxchgStrong"><a.href="#toc-cmp |
| 9a7a0 | 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 67 3c 2f 61 3e 20 3c | xchgStrong">@cmpxchgStrong</a>.< |
| 9a7c0 | 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 53 74 72 6f | a.class="hdr".href="#cmpxchgStro |
| 9a7e0 | 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | ng">..</a></h3>........<pre><cod |
| 9a800 | 65 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 6d 70 | e><span.class="tok-builtin">@cmp |
| 9a820 | 78 63 68 67 53 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 | xchgStrong</span>(<span.class="t |
| 9a840 | 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. |
| 9a860 | 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 70 74 | class="tok-type">type</span>,.pt |
| 9a880 | 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 6e 65 77 5f 76 61 | r:.*T,.expected_value:.T,.new_va |
| 9a8a0 | 6c 75 65 3a 20 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 | lue:.T,.success_order:.AtomicOrd |
| 9a8c0 | 65 72 2c 20 66 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 | er,.fail_order:.AtomicOrder).?T< |
| 9a8e0 | 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 68 69 | /code></pre>.......<p>.......Thi |
| 9a900 | 73 20 66 75 6e 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 | s.function.performs.a.strong.ato |
| 9a920 | 6d 69 63 20 63 6f 6d 70 61 72 65 2d 61 6e 64 2d 65 78 63 68 61 6e 67 65 20 6f 70 65 72 61 74 69 | mic.compare-and-exchange.operati |
| 9a940 | 6f 6e 2c 20 72 65 74 75 72 6e 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | on,.returning.<code><span.class= |
| 9a960 | 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 3e 0a 20 20 | "tok-null">null</span></code>... |
| 9a980 | 20 20 20 20 69 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 76 61 6c 75 65 20 69 73 20 74 68 65 20 | ....if.the.current.value.is.the. |
| 9a9a0 | 67 69 76 65 6e 20 65 78 70 65 63 74 65 64 20 76 61 6c 75 65 2e 20 49 74 27 73 20 74 68 65 20 65 | given.expected.value..It's.the.e |
| 9a9c0 | 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 20 20 20 65 78 | quivalent.of.this.code,.......ex |
| 9a9e0 | 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 20 20 20 3c 66 | cept.atomic:.......</p>.......<f |
| 9aa00 | 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 | igure><figcaption.class="zig-cap |
| 9aa20 | 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6e 6f 74 5f 61 74 6f 6d 69 63 5f | "><cite.class="file">not_atomic_ |
| 9aa40 | 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | cmpxchgStrong.zig</cite></figcap |
| 9aa60 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tion><pre><code><span.class="tok |
| 9aa80 | 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- |
| 9aaa0 | 66 6e 22 3e 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 42 75 74 4e 6f 74 41 74 6f 6d 69 63 3c 2f 73 | fn">cmpxchgStrongButNotAtomic</s |
| 9aac0 | 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 |
| 9aae0 | 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 |
| 9ab00 | 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 54 2c 20 65 78 70 65 63 74 | pe">type</span>,.ptr:.*T,.expect |
| 9ab20 | 65 64 5f 76 61 6c 75 65 3a 20 54 2c 20 6e 65 77 5f 76 61 6c 75 65 3a 20 54 29 20 3f 54 20 7b 0a | ed_value:.T,.new_value:.T).?T.{. |
| 9ab40 | 20 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</ |
| 9ab60 | 73 70 61 6e 3e 20 6f 6c 64 5f 76 61 6c 75 65 20 3d 20 70 74 72 2e 2a 3b 0a 20 20 20 20 3c 73 70 | span>.old_value.=.ptr.*;.....<sp |
| 9ab80 | 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 6f 6c 64 | an.class="tok-kw">if</span>.(old |
| 9aba0 | 5f 76 61 6c 75 65 20 3d 3d 20 65 78 70 65 63 74 65 64 5f 76 61 6c 75 65 29 20 7b 0a 20 20 20 20 | _value.==.expected_value).{..... |
| 9abc0 | 20 20 20 20 70 74 72 2e 2a 20 3d 20 6e 65 77 5f 76 61 6c 75 65 3b 0a 20 20 20 20 20 20 20 20 3c | ....ptr.*.=.new_value;.........< |
| 9abe0 | 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 |
| 9ac00 | 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 6e 75 6c 6c 3c 2f 73 | >.<span.class="tok-null">null</s |
| 9ac20 | 70 61 6e 3e 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 | pan>;.....}.<span.class="tok-kw" |
| 9ac40 | 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 70 61 6e 20 63 6c 61 | >else</span>.{.........<span.cla |
| 9ac60 | 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 6f 6c 64 5f 76 61 | ss="tok-kw">return</span>.old_va |
| 9ac80 | 6c 75 65 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | lue;.....}.}</code></pre></figur |
| 9aca0 | 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 61 72 65 20 75 | e>........<p>.......If.you.are.u |
| 9acc0 | 73 69 6e 67 20 63 6d 70 78 63 68 67 20 69 6e 20 61 20 72 65 74 72 79 20 6c 6f 6f 70 2c 20 3c 61 | sing.cmpxchg.in.a.retry.loop,.<a |
| 9ace0 | 20 68 72 65 66 3d 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 | .href="#cmpxchgWeak">@cmpxchgWea |
| 9ad00 | 6b 3c 2f 61 3e 20 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 | k</a>.is.the.better.choice,.beca |
| 9ad20 | 75 73 65 20 69 74 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 | use.it.can.be.implemented....... |
| 9ad40 | 6d 6f 72 65 20 65 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 | more.efficiently.in.machine.inst |
| 9ad60 | 72 75 63 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 | ructions........</p>.......<p>.. |
| 9ad80 | 20 20 20 20 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 20 70 6f | .....<code>T</code>.must.be.a.po |
| 9ada0 | 69 6e 74 65 72 2c 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | inter,.a.<code><span.class="tok- |
| 9adc0 | 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 20 66 6c 6f 61 | type">bool</span></code>,.a.floa |
| 9ade0 | 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 6e 75 6d 2e 0a | t,.......an.integer.or.an.enum.. |
| 9ae00 | 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 3e 3c 73 70 61 6e 20 | ......</p>.......<p><code><span. |
| 9ae20 | 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 6f 3c 2f 73 | class="tok-builtin">@typeInfo</s |
| 9ae40 | 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 22 3e 40 | pan>(<span.class="tok-builtin">@ |
| 9ae60 | 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 70 74 72 29 29 2e 70 6f 69 6e 74 65 72 2e 61 6c 69 67 | TypeOf</span>(ptr)).pointer.alig |
| 9ae80 | 6e 6d 65 6e 74 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 3c 63 6f 64 65 3e 26 67 74 3b 3d | nment</code>.must.be.<code>>= |
| 9aea0 | 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 |
| 9aec0 | 4f 66 3c 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 | Of</span>(T).</code></p>.......< |
| 9aee0 | 70 3e 3c 63 6f 64 65 3e 41 74 6f 6d 69 63 4f 72 64 65 72 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 | p><code>AtomicOrder</code>.can.b |
| 9af00 | 65 20 66 6f 75 6e 64 20 77 69 74 68 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | e.found.with.<code><span.class=" |
| 9af20 | 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 |
| 9af40 | 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" |
| 9af60 | 3b 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 | ;</span>).builtin.AtomicOrder</c |
| 9af80 | 6f 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 | ode>.</p>.......<p>See.also:</p> |
| 9afa0 | 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 53 74 6f 72 65 22 3e | <ul>.<li><a.href="#atomicStore"> |
| 9afc0 | 40 61 74 6f 6d 69 63 53 74 6f 72 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 | @atomicStore</a></li>.<li><a.hre |
| 9afe0 | 66 3d 22 23 61 74 6f 6d 69 63 4c 6f 61 64 22 3e 40 61 74 6f 6d 69 63 4c 6f 61 64 3c 2f 61 3e 3c | f="#atomicLoad">@atomicLoad</a>< |
| 9b000 | 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 52 6d 77 22 3e 40 61 | /li>.<li><a.href="#atomicRmw">@a |
| 9b020 | 74 6f 6d 69 63 52 6d 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | tomicRmw</a></li>.<li><a.href="# |
| 9b040 | 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 3c 2f 6c | cmpxchgWeak">@cmpxchgWeak</a></l |
| 9b060 | 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 33 20 69 64 3d 22 | i>.</ul>................<h3.id=" |
| 9b080 | 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 2d 63 6d 70 78 63 | cmpxchgWeak"><a.href="#toc-cmpxc |
| 9b0a0 | 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 61 20 63 6c 61 73 | hgWeak">@cmpxchgWeak</a>.<a.clas |
| 9b0c0 | 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 22 3e c2 a7 3c 2f | s="hdr".href="#cmpxchgWeak">..</ |
| 9b0e0 | 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | a></h3>........<pre><code><span. |
| 9b100 | 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 57 65 61 6b | class="tok-builtin">@cmpxchgWeak |
| 9b120 | 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 |
| 9b140 | 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 74 6f 6b | ptime</span>.T:.<span.class="tok |
| 9b160 | 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 2c 20 65 78 70 | -type">type</span>,.ptr:.*T,.exp |
| 9b180 | 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 54 2c 20 73 75 | ected_value:.T,.new_value:.T,.su |
| 9b1a0 | 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 61 69 6c 5f 6f | ccess_order:.AtomicOrder,.fail_o |
| 9b1c0 | 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 3e 3c 2f 70 72 | rder:.AtomicOrder).?T</code></pr |
| 9b1e0 | 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 |
| 9b200 | 20 70 65 72 66 6f 72 6d 73 20 61 20 77 65 61 6b 20 61 74 6f 6d 69 63 20 63 6f 6d 70 61 72 65 2d | .performs.a.weak.atomic.compare- |
| 9b220 | 61 6e 64 2d 65 78 63 68 61 6e 67 65 20 6f 70 65 72 61 74 69 6f 6e 2c 20 72 65 74 75 72 6e 69 6e | and-exchange.operation,.returnin |
| 9b240 | 67 20 3c 63 6f 64 65 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 | g.<code><span.class="tok-null">n |
| 9b260 | 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 69 66 20 74 68 65 20 63 | ull</span></code>.......if.the.c |
| 9b280 | 75 72 72 65 6e 74 20 76 61 6c 75 65 20 69 73 20 74 68 65 20 67 69 76 65 6e 20 65 78 70 65 63 74 | urrent.value.is.the.given.expect |
| 9b2a0 | 65 64 20 76 61 6c 75 65 2e 20 49 74 27 73 20 74 68 65 20 65 71 75 69 76 61 6c 65 6e 74 20 6f 66 | ed.value..It's.the.equivalent.of |
| 9b2c0 | 20 74 68 69 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 | .this.code,.......except.atomic: |
| 9b2e0 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | .......</p>.......<figure><figca |
| 9b300 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 | ption.class="zig-cap"><cite.clas |
| 9b320 | 73 3d 22 66 69 6c 65 22 3e 63 6d 70 78 63 68 67 57 65 61 6b 42 75 74 4e 6f 74 41 74 6f 6d 69 63 | s="file">cmpxchgWeakButNotAtomic |
| 9b340 | 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | </cite></figcaption><pre><code>< |
| 9b360 | 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 |
| 9b380 | 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 57 65 61 6b 42 75 | pan.class="tok-fn">cmpxchgWeakBu |
| 9b3a0 | 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 61 73 73 3d 22 74 | tNotAtomic</span>(<span.class="t |
| 9b3c0 | 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. |
| 9b3e0 | 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 70 74 | class="tok-type">type</span>,.pt |
| 9b400 | 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 6e 65 77 5f 76 61 | r:.*T,.expected_value:.T,.new_va |
| 9b420 | 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 73 73 3d 22 74 6f | lue:.T).?T.{.....<span.class="to |
| 9b440 | 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 75 65 20 3d 20 70 | k-kw">const</span>.old_value.=.p |
| 9b460 | 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 2d 6b 77 22 3e 69 | tr.*;.....<span.class="tok-kw">i |
| 9b480 | 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 65 63 74 65 64 5f | f</span>.(old_value.==.expected_ |
| 9b4a0 | 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 61 6e 64 3c 2f | value.<span.class="tok-kw">and</ |
| 9b4c0 | 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 6d 65 73 46 61 6c | span>.usuallyTrueButSometimesFal |
| 9b4e0 | 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 77 5f 76 61 6c 75 | se()).{.........ptr.*.=.new_valu |
| 9b500 | 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 6b 2d 6b 77 22 3e | e;.........<span.class="tok-kw"> |
| 9b520 | 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 6e | return</span>.<span.class="tok-n |
| 9b540 | 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 70 61 6e 20 63 6c | ull">null</span>;.....}.<span.cl |
| 9b560 | 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 0a 20 20 20 20 20 | ass="tok-kw">else</span>.{...... |
| 9b580 | 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</ |
| 9b5a0 | 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 63 6f 64 65 3e 3c | span>.old_value;.....}.}</code>< |
| 9b5c0 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 | /pre></figure>.......<p>.......I |
| 9b5e0 | 66 20 79 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 72 65 74 | f.you.are.using.cmpxchg.in.a.ret |
| 9b600 | 72 79 20 6c 6f 6f 70 2c 20 74 68 65 20 73 70 6f 72 61 64 69 63 20 66 61 69 6c 75 72 65 20 77 69 | ry.loop,.the.sporadic.failure.wi |
| 9b620 | 6c 6c 20 62 65 20 6e 6f 20 70 72 6f 62 6c 65 6d 2c 20 61 6e 64 20 3c 63 6f 64 65 3e 63 6d 70 78 | ll.be.no.problem,.and.<code>cmpx |
| 9b640 | 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 65 74 74 | chgWeak</code>.......is.the.bett |
| 9b660 | 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 69 6d 70 | er.choice,.because.it.can.be.imp |
| 9b680 | 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 6d 61 63 | lemented.more.efficiently.in.mac |
| 9b6a0 | 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 76 65 72 | hine.instructions........However |
| 9b6c0 | 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 6e 74 65 | .if.you.need.a.stronger.guarante |
| 9b6e0 | 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 67 22 3e | e,.use.<a.href="#cmpxchgStrong"> |
| 9b700 | 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 3e 0a 20 | @cmpxchgStrong</a>........</p>.. |
| 9b720 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 20 6d 75 | .....<p>.......<code>T</code>.mu |
| 9b740 | 73 74 20 62 65 20 61 20 70 6f 69 6e 74 65 72 2c 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | st.be.a.pointer,.a.<code><span.c |
| 9b760 | 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 63 6f 64 | lass="tok-type">bool</span></cod |
| 9b780 | 65 3e 2c 20 61 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 | e>,.a.float,.......an.integer.or |
| 9b7a0 | 20 61 6e 20 65 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 | .an.enum........</p>.......<p><c |
| 9b7c0 | 6f 64 65 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 74 | ode><span.class="tok-builtin">@t |
| 9b7e0 | 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 6b 2d | ypeInfo</span>(<span.class="tok- |
| 9b800 | 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 74 72 29 29 2e 70 6f | builtin">@TypeOf</span>(ptr)).po |
| 9b820 | 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 73 74 20 62 65 20 3c | inter.alignment</code>.must.be.< |
| 9b840 | 63 6f 64 65 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 | code>>=.<span.class="tok-buil |
| 9b860 | 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></ |
| 9b880 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 41 74 6f 6d 69 63 4f 72 64 65 72 3c 2f 63 | p>.......<p><code>AtomicOrder</c |
| 9b8a0 | 6f 64 65 3e 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 77 69 74 68 20 3c 63 6f 64 65 3e 3c 73 70 | ode>.can.be.found.with.<code><sp |
| 9b8c0 | 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</ |
| 9b8e0 | 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 |
| 9b900 | 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 41 74 6f 6d | t;std"</span>).builtin.Atom |
| 9b920 | 69 63 4f 72 64 65 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 | icOrder</code>.</p>.......<p>See |
| 9b940 | 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 61 74 6f | .also:</p><ul>.<li><a.href="#ato |
| 9b960 | 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 3e 3c 2f 6c 69 3e 0a | micStore">@atomicStore</a></li>. |
| 9b980 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 4c 6f 61 64 22 3e 40 61 74 6f 6d 69 | <li><a.href="#atomicLoad">@atomi |
| 9b9a0 | 63 4c 6f 61 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 61 74 6f | cLoad</a></li>.<li><a.href="#ato |
| 9b9c0 | 6d 69 63 52 6d 77 22 3e 40 61 74 6f 6d 69 63 52 6d 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e | micRmw">@atomicRmw</a></li>.<li> |
| 9b9e0 | 3c 61 20 68 72 65 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 | <a.href="#cmpxchgStrong">@cmpxch |
| 9ba00 | 67 53 74 72 6f 6e 67 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 | gStrong</a></li>.</ul>.......... |
| 9ba20 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 63 6f 6d 70 69 6c 65 45 72 72 6f 72 22 3e 3c 61 20 68 | ......<h3.id="compileError"><a.h |
| 9ba40 | 72 65 66 3d 22 23 74 6f 63 2d 63 6f 6d 70 69 6c 65 45 72 72 6f 72 22 3e 40 63 6f 6d 70 69 6c 65 | ref="#toc-compileError">@compile |
| 9ba60 | 45 72 72 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 | Error</a>.<a.class="hdr".href="# |
| 9ba80 | 63 6f 6d 70 69 6c 65 45 72 72 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | compileError">..</a></h3>....... |
| 9baa0 | 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | .<pre><code><span.class="tok-bui |
| 9bac0 | 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 70 61 6e | ltin">@compileError</span>(<span |
| 9bae0 | 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>. |
| 9bb00 | 6d 73 67 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 | msg:.[]<span.class="tok-kw">cons |
| 9bb20 | 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"> |
| 9bb40 | 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 70 65 | u8</span>).<span.class="tok-type |
| 9bb60 | 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 0a 20 | ">noreturn</span></code></pre>.. |
| 9bb80 | 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 2c 20 77 68 | .....<p>.......This.function,.wh |
| 9bba0 | 65 6e 20 73 65 6d 61 6e 74 69 63 61 6c 6c 79 20 61 6e 61 6c 79 7a 65 64 2c 20 63 61 75 73 65 73 | en.semantically.analyzed,.causes |
| 9bbc0 | 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 77 69 74 68 20 74 68 65 0a 20 20 20 20 20 20 | .a.compile.error.with.the....... |
| 9bbe0 | 6d 65 73 73 61 67 65 20 3c 63 6f 64 65 3e 6d 73 67 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 | message.<code>msg</code>........ |
| 9bc00 | 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 61 72 65 20 73 | </p>.......<p>.......There.are.s |
| 9bc20 | 65 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 | everal.ways.that.code.avoids.bei |
| 9bc40 | 6e 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 | ng.semantically.checked,.such.as |
| 9bc60 | 0a 20 20 20 20 20 20 75 73 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .......using.<code><span.class=" |
| 9bc80 | 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 | tok-kw">if</span></code>.or.<cod |
| 9bca0 | 65 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 | e><span.class="tok-kw">switch</s |
| 9bcc0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 74 68 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f | pan></code>.with.compile.time.co |
| 9bce0 | 6e 73 74 61 6e 74 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6e 64 20 3c 63 6f 64 65 | nstants,...............and.<code |
| 9bd00 | 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</ |
| 9bd20 | 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 20 3c 2f | span></code>.functions........</ |
| 9bd40 | 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 63 6f 6d 70 69 6c 65 | p>...............<h3.id="compile |
| 9bd60 | 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 22 3e 40 | Log"><a.href="#toc-compileLog">@ |
| 9bd80 | 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 20 68 72 | compileLog</a>.<a.class="hdr".hr |
| 9bda0 | 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 33 3e 0a 0a 20 20 | ef="#compileLog">..</a></h3>.... |
| 9bdc0 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ....<pre><code><span.class="tok- |
| 9bde0 | 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 2e 2e 2e 29 | builtin">@compileLog</span>(...) |
| 9be00 | 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 |
| 9be20 | 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>...... |
| 9be40 | 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 70 72 69 6e 74 73 20 74 68 65 20 61 72 67 75 6d 65 | .This.function.prints.the.argume |
| 9be60 | 6e 74 73 20 70 61 73 73 65 64 20 74 6f 20 69 74 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 | nts.passed.to.it.at.compile-time |
| 9be80 | 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 6f 20 | ........</p>.......<p>.......To. |
| 9bea0 | 70 72 65 76 65 6e 74 20 61 63 63 69 64 65 6e 74 61 6c 6c 79 20 6c 65 61 76 69 6e 67 20 63 6f 6d | prevent.accidentally.leaving.com |
| 9bec0 | 70 69 6c 65 20 6c 6f 67 20 73 74 61 74 65 6d 65 6e 74 73 20 69 6e 20 61 20 63 6f 64 65 62 61 73 | pile.log.statements.in.a.codebas |
| 9bee0 | 65 2c 0a 20 20 20 20 20 20 61 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 65 72 72 6f 72 20 69 73 20 | e,.......a.compilation.error.is. |
| 9bf00 | 61 64 64 65 64 20 74 6f 20 74 68 65 20 62 75 69 6c 64 2c 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20 | added.to.the.build,.pointing.to. |
| 9bf20 | 74 68 65 20 63 6f 6d 70 69 6c 65 0a 20 20 20 20 20 20 6c 6f 67 20 73 74 61 74 65 6d 65 6e 74 2e | the.compile.......log.statement. |
| 9bf40 | 20 54 68 69 73 20 65 72 72 6f 72 20 70 72 65 76 65 6e 74 73 20 63 6f 64 65 20 66 72 6f 6d 20 62 | .This.error.prevents.code.from.b |
| 9bf60 | 65 69 6e 67 20 67 65 6e 65 72 61 74 65 64 2c 20 62 75 74 0a 20 20 20 20 20 20 64 6f 65 73 20 6e | eing.generated,.but.......does.n |
| 9bf80 | 6f 74 20 6f 74 68 65 72 77 69 73 65 20 69 6e 74 65 72 66 65 72 65 20 77 69 74 68 20 61 6e 61 6c | ot.otherwise.interfere.with.anal |
| 9bfa0 | 79 73 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 20 | ysis........</p>.......<p>...... |
| 9bfc0 | 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 64 6f | .This.function.can.be.used.to.do |
| 9bfe0 | 20 22 70 72 69 6e 74 66 20 64 65 62 75 67 67 69 6e 67 22 20 6f 6e 0a 20 20 20 20 20 20 63 6f 6d | ."printf.debugging".on.......com |
| 9c000 | 70 69 6c 65 2d 74 69 6d 65 20 65 78 65 63 75 74 69 6e 67 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 | pile-time.executing.code........ |
| 9c020 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 | </p>.......<figure><figcaption.c |
| 9c040 | 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 | lass="zig-cap"><cite.class="file |
| 9c060 | 22 3e 74 65 73 74 5f 63 6f 6d 70 69 6c 65 4c 6f 67 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 | ">test_compileLog_builtin.zig</c |
| 9c080 | 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 | ite></figcaption><pre><code><spa |
| 9c0a0 | 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 72 | n.class="tok-kw">const</span>.pr |
| 9c0c0 | 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 3e | int.=.<span.class="tok-builtin"> |
| 9c0e0 | 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- |
| 9c100 | 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 62 | str">"std"</span>).deb |
| 9c120 | 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 3e | ug.print;..<span.class="tok-kw"> |
| 9c140 | 63 6f 6e 73 74 3c 2f 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 | const</span>.num1.=.blk:.{.....< |
| 9c160 | 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 76 | span.class="tok-kw">var</span>.v |
| 9c180 | 61 6c 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 69 33 32 3c | al1:.<span.class="tok-type">i32< |
| 9c1a0 | 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 |
| 9c1c0 | 22 3e 39 39 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 | ">99</span>;.....<span.class="to |
| 9c1e0 | 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 3c 73 | k-builtin">@compileLog</span>(<s |
| 9c200 | 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 74 69 | pan.class="tok-str">"compti |
| 9c220 | 6d 65 20 76 61 6c 31 20 3d 20 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 31 29 3b 0a | me.val1.=."</span>,.val1);. |
| 9c240 | 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 61 73 73 3d 22 74 | ....val1.=.val1.+.<span.class="t |
| 9c260 | 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 20 63 | ok-number">1</span>;.....<span.c |
| 9c280 | 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. |
| 9c2a0 | 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 2d 6b 77 22 3e 74 | val1;.};..<span.class="tok-kw">t |
| 9c2c0 | 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" |
| 9c2e0 | 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 0a 20 20 20 20 3c | >"main"</span>.{.....< |
| 9c300 | 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 |
| 9c320 | 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 6f 6b 2d 73 74 72 | eLog</span>(<span.class="tok-str |
| 9c340 | 22 3e 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 69 6e 20 6d 61 69 6e 26 71 75 6f 74 3b 3c 2f | ">"comptime.in.main"</ |
| 9c360 | 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=" |
| 9c380 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 52 75 6e 74 69 6d 65 20 69 6e 20 6d 61 69 6e 2c 20 | tok-str">"Runtime.in.main,. |
| 9c3a0 | 6e 75 6d 31 20 3d 20 7b 7d 2e 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d | num1.=.{}.\n"</span>,..{num |
| 9c3c0 | 31 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 | 1});.}</code></pre></figure><fig |
| 9c3e0 | 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 | ure><figcaption.class="shell-cap |
| 9c400 | 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 | ">Shell</figcaption><pre><samp>$ |
| 9c420 | 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 69 6c 65 4c 6f 67 5f 62 | .<kbd>zig.test.test_compileLog_b |
| 9c440 | 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | uiltin.zig</kbd>.<span.class="sg |
| 9c460 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e | r-1m">/home/andy/dev/zig/doc/lan |
| 9c480 | 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 69 6c 65 4c 6f 67 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 | gref/test_compileLog_builtin.zig |
| 9c4a0 | 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 73 67 72 2d 33 | :11:5:.</span><span.class="sgr-3 |
| 9c4c0 | 31 6d 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 73 | 1m">error:.</span><span.class="s |
| 9c4e0 | 67 72 2d 31 6d 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 | gr-1m">found.compile.log.stateme |
| 9c500 | 6e 74 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 40 63 6f 6d 70 69 6c 65 4c 6f 67 28 26 71 75 6f 74 3b | nt.</span>....@compileLog(" |
| 9c520 | 63 6f 6d 70 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 | comptime.in.main");.....<sp |
| 9c540 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e | an.class="sgr-32m">^~~~~~~~~~~~~ |
| 9c560 | 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | ~~~~~~~~~~~~~~~~~~.</span><span. |
| 9c580 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | class="sgr-1m">/home/andy/dev/zi |
| 9c5a0 | 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 69 6c 65 4c 6f 67 5f 62 75 | g/doc/langref/test_compileLog_bu |
| 9c5c0 | 69 6c 74 69 6e 2e 7a 69 67 3a 35 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | iltin.zig:5:5:.</span><span.clas |
| 9c5e0 | 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | s="sgr-36m">note:.</span><span.c |
| 9c600 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 61 6c 73 6f 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 20 | lass="sgr-1m">also.here.</span>. |
| 9c620 | 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 74 69 6d 65 20 76 61 | ...@compileLog("comptime.va |
| 9c640 | 6c 31 20 3d 20 26 71 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 | l1.=.",.val1);.....<span.cl |
| 9c660 | 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e | ass="sgr-32m">^~~~~~~~~~~~~~~~~~ |
| 9c680 | 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 43 6f 6d 70 | ~~~~~~~~~~~~~~~~~~~.</span>.Comp |
| 9c6a0 | 69 6c 65 20 4c 6f 67 20 4f 75 74 70 75 74 3a 0a 40 61 73 28 2a 63 6f 6e 73 74 20 5b 31 36 3a 30 | ile.Log.Output:.@as(*const.[16:0 |
| 9c6c0 | 5d 75 38 2c 20 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 69 6e 20 6d 61 69 6e 26 71 75 6f 74 | ]u8,."comptime.in.main" |
| 9c6e0 | 3b 29 0a 40 61 73 28 2a 63 6f 6e 73 74 20 5b 31 36 3a 30 5d 75 38 2c 20 26 71 75 6f 74 3b 63 6f | ;).@as(*const.[16:0]u8,."co |
| 9c700 | 6d 70 74 69 6d 65 20 76 61 6c 31 20 3d 20 26 71 75 6f 74 3b 29 2c 20 40 61 73 28 69 33 32 2c 20 | mptime.val1.=."),.@as(i32,. |
| 9c720 | 39 39 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 | 99).</samp></pre></figure>...... |
| 9c740 | 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 63 6f 6e 73 74 43 61 73 74 22 3e 3c 61 20 | ..........<h3.id="constCast"><a. |
| 9c760 | 68 72 65 66 3d 22 23 74 6f 63 2d 63 6f 6e 73 74 43 61 73 74 22 3e 40 63 6f 6e 73 74 43 61 73 74 | href="#toc-constCast">@constCast |
| 9c780 | 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 6e 73 74 | </a>.<a.class="hdr".href="#const |
| 9c7a0 | 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | Cast">..</a></h3>........<pre><c |
| 9c7c0 | 6f 64 65 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 | ode><span.class="tok-builtin">@c |
| 9c7e0 | 6f 6e 73 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 | onstCast</span>(value:.<span.cla |
| 9c800 | 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 73 74 | ss="tok-kw">anytype</span>).Dest |
| 9c820 | 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 20 20 | Type</code></pre>.......<p>..... |
| 9c840 | 20 20 52 65 6d 6f 76 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ..Remove.<code><span.class="tok- |
| 9c860 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 71 75 61 6c 69 66 69 65 | kw">const</span></code>.qualifie |
| 9c880 | 72 20 66 72 6f 6d 20 61 20 70 6f 69 6e 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | r.from.a.pointer........</p>.... |
| 9c8a0 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 63 74 7a 22 3e 3c 61 20 68 72 65 66 3d | ...........<h3.id="ctz"><a.href= |
| 9c8c0 | 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 64 | "#toc-ctz">@ctz</a>.<a.class="hd |
| 9c8e0 | 72 22 20 68 72 65 66 3d 22 23 63 74 7a 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 | r".href="#ctz">..</a></h3>...... |
| 9c900 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | ..<pre><code><span.class="tok-bu |
| 9c920 | 69 6c 74 69 6e 22 3e 40 63 74 7a 3c 2f 73 70 61 6e 3e 28 6f 70 65 72 61 6e 64 3a 20 3c 73 70 61 | iltin">@ctz</span>(operand:.<spa |
| 9c940 | 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>) |
| 9c960 | 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 2f 73 | .<span.class="tok-kw">anytype</s |
| 9c980 | 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 3c 63 6f 64 65 | pan></code></pre>.......<p><code |
| 9c9a0 | 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 65 | ><span.class="tok-builtin">@Type |
| 9c9c0 | 4f 66 3c 2f 73 70 61 6e 3e 28 6f 70 65 72 61 6e 64 29 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 | Of</span>(operand)</code>.must.b |
| 9c9e0 | 65 20 61 6e 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 6f 72 20 61 6e 20 69 6e 74 65 67 65 72 20 | e.an.integer.type.or.an.integer. |
| 9ca00 | 76 65 63 74 6f 72 20 74 79 70 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e | vector.type.</p>.......<p><code> |
| 9ca20 | 6f 70 65 72 61 6e 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 | operand</code>.may.be.an.<a.href |
| 9ca40 | 3d 22 23 49 6e 74 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 | ="#Integers">integer</a>.or.<a.h |
| 9ca60 | 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 2e 3c 2f 70 3e 0a 20 | ref="#Vectors">vector</a>.</p>.. |
| 9ca80 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 75 6e 74 73 20 74 68 65 20 6e 75 6d 62 65 72 | .....<p>.......Counts.the.number |
| 9caa0 | 20 6f 66 20 6c 65 61 73 74 2d 73 69 67 6e 69 66 69 63 61 6e 74 20 28 74 72 61 69 6c 69 6e 67 20 | .of.least-significant.(trailing. |
| 9cac0 | 69 6e 20 61 20 62 69 67 2d 65 6e 64 69 61 6e 20 73 65 6e 73 65 29 20 7a 65 72 6f 65 73 20 69 6e | in.a.big-endian.sense).zeroes.in |
| 9cae0 | 20 61 6e 20 69 6e 74 65 67 65 72 20 2d 20 22 63 6f 75 6e 74 20 74 72 61 69 6c 69 6e 67 20 7a 65 | .an.integer.-."count.trailing.ze |
| 9cb00 | 72 6f 65 73 22 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 | roes"........</p>.......<p>..... |
| 9cb20 | 20 20 54 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 | ..The.return.type.is.an.unsigned |
| 9cb40 | 20 69 6e 74 65 67 65 72 20 6f 72 20 76 65 63 74 6f 72 20 6f 66 20 75 6e 73 69 67 6e 65 64 20 69 | .integer.or.vector.of.unsigned.i |
| 9cb60 | 6e 74 65 67 65 72 73 20 77 69 74 68 20 74 68 65 20 6d 69 6e 69 6d 75 6d 20 6e 75 6d 62 65 72 0a | ntegers.with.the.minimum.number. |
| 9cb80 | 20 20 20 20 20 20 6f 66 20 62 69 74 73 20 74 68 61 74 20 63 61 6e 20 72 65 70 72 65 73 65 6e 74 | ......of.bits.that.can.represent |
| 9cba0 | 20 74 68 65 20 62 69 74 20 63 6f 75 6e 74 20 6f 66 20 74 68 65 20 69 6e 74 65 67 65 72 20 74 79 | .the.bit.count.of.the.integer.ty |
| 9cbc0 | 70 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 49 | pe........</p>.......<p>.......I |
| 9cbe0 | 66 20 3c 63 6f 64 65 3e 6f 70 65 72 61 6e 64 3c 2f 63 6f 64 65 3e 20 69 73 20 7a 65 72 6f 2c 20 | f.<code>operand</code>.is.zero,. |
| 9cc00 | 3c 63 6f 64 65 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 | <code><span.class="tok-builtin"> |
| 9cc20 | 40 63 74 7a 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 74 75 72 6e 73 0a 20 20 20 20 20 | @ctz</span></code>.returns...... |
| 9cc40 | 20 74 68 65 20 62 69 74 20 77 69 64 74 68 20 6f 66 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 3c | .the.bit.width.of.integer.type.< |
| 9cc60 | 63 6f 64 65 3e 54 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 | code>T</code>........</p>....... |
| 9cc80 | 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 |
| 9cca0 | 3d 22 23 63 6c 7a 22 3e 40 63 6c 7a 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 | ="#clz">@clz</a></li>.<li><a.hre |
| 9ccc0 | 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> |
| 9cce0 | 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 63 55 | .</ul>................<h3.id="cU |
| 9cd00 | 6e 64 65 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 55 6e 64 65 66 22 3e 40 63 55 6e | ndef"><a.href="#toc-cUndef">@cUn |
| 9cd20 | 64 65 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 23 63 55 | def</a>.<a.class="hdr".href="#cU |
| 9cd40 | 6e 64 65 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | ndef">..</a></h3>........<pre><c |
| 9cd60 | 6f 64 65 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 | ode><span.class="tok-builtin">@c |
| 9cd80 | 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 6b 77 | Undef</span>(<span.class="tok-kw |
| 9cda0 | 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 20 | ">comptime</span>.name:.[]<span. |
| 9cdc0 | 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 |
| 9cde0 | 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 73 | n.class="tok-type">u8</span>).<s |
| 9ce00 | 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> |
| 9ce20 | 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 68 | </code></pre>.......<p>.......Th |
| 9ce40 | 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 69 6e 73 69 64 | is.function.can.only.occur.insid |
| 9ce60 | 65 20 3c 63 6f 64 65 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 | e.<code><span.class="tok-builtin |
| 9ce80 | 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>........ |
| 9cea0 | 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 |
| 9cec0 | 73 20 3c 63 6f 64 65 3e 23 75 6e 64 65 66 20 24 6e 61 6d 65 3c 2f 63 6f 64 65 3e 20 74 6f 20 74 | s.<code>#undef.$name</code>.to.t |
| 9cee0 | 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | he.<code><span.class="tok-builti |
| 9cf00 | 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 20 20 20 20 20 | n">@cImport</span></code>....... |
| 9cf20 | 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 3e 0a 20 20 20 | temporary.buffer........</p>.... |
| 9cf40 | 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 |
| 9cf60 | 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 2d 46 69 6c 65 22 | ref="#Import-from-C-Header-File" |
| 9cf80 | 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 3c 2f 61 3e 3c 2f | >Import.from.C.Header.File</a></ |
| 9cfa0 | 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 | li>.<li><a.href="#cImport">@cImp |
| 9cfc0 | 6f 72 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 63 44 65 66 69 | ort</a></li>.<li><a.href="#cDefi |
| 9cfe0 | 6e 65 22 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 | ne">@cDefine</a></li>.<li><a.hre |
| 9d000 | 66 3d 22 23 63 49 6e 63 6c 75 64 65 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 61 3e 3c 2f 6c 69 3e | f="#cInclude">@cInclude</a></li> |
| 9d020 | 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 63 56 | .</ul>................<h3.id="cV |
| 9d040 | 61 41 72 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 56 61 41 72 67 22 3e 40 63 56 61 | aArg"><a.href="#toc-cVaArg">@cVa |
| 9d060 | 41 72 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 63 56 | Arg</a>.<a.class="hdr".href="#cV |
| 9d080 | 61 41 72 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | aArg">..</a></h3>........<pre><c |
| 9d0a0 | 6f 64 65 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 | ode><span.class="tok-builtin">@c |
| 9d0c0 | 56 61 41 72 67 3c 2f 73 70 61 6e 3e 28 6f 70 65 72 61 6e 64 3a 20 2a 73 74 64 2e 62 75 69 6c 74 | VaArg</span>(operand:.*std.built |
| 9d0e0 | 69 6e 2e 56 61 4c 69 73 74 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | in.VaList,.<span.class="tok-kw"> |
| 9d100 | 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=" |
| 9d120 | 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 54 3c 2f 63 6f 64 65 3e 3c | tok-type">type</span>).T</code>< |
| 9d140 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6d 70 6c 65 6d 65 6e 74 73 | /pre>.......<p>.......Implements |
| 9d160 | 20 74 68 65 20 43 20 6d 61 63 72 6f 20 3c 63 6f 64 65 3e 76 61 5f 61 72 67 3c 2f 63 6f 64 65 3e | .the.C.macro.<code>va_arg</code> |
| 9d180 | 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:< |
| 9d1a0 | 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 56 61 43 6f 70 79 22 3e 40 | /p><ul>.<li><a.href="#cVaCopy">@ |
| 9d1c0 | 63 56 61 43 6f 70 79 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 | cVaCopy</a></li>.<li><a.href="#c |
| 9d1e0 | 56 61 45 6e 64 22 3e 40 63 56 61 45 6e 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 | VaEnd">@cVaEnd</a></li>.<li><a.h |
| 9d200 | 72 65 66 3d 22 23 63 56 61 53 74 61 72 74 22 3e 40 63 56 61 53 74 61 72 74 3c 2f 61 3e 3c 2f 6c | ref="#cVaStart">@cVaStart</a></l |
| 9d220 | 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 69 64 3d 22 63 | i>.</ul>...............<h3.id="c |
| 9d240 | 56 61 43 6f 70 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 56 61 43 6f 70 79 22 3e 40 | VaCopy"><a.href="#toc-cVaCopy">@ |
| 9d260 | 63 56 61 43 6f 70 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 | cVaCopy</a>.<a.class="hdr".href= |
| 9d280 | 22 23 63 56 61 43 6f 70 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 | "#cVaCopy">..</a></h3>........<p |
| 9d2a0 | 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | re><code><span.class="tok-builti |
| 9d2c0 | 6e 22 3e 40 63 56 61 43 6f 70 79 3c 2f 73 70 61 6e 3e 28 73 72 63 3a 20 2a 73 74 64 2e 62 75 69 | n">@cVaCopy</span>(src:.*std.bui |
| 9d2e0 | 6c 74 69 6e 2e 56 61 4c 69 73 74 29 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 56 61 4c 69 73 74 3c | ltin.VaList).std.builtin.VaList< |
| 9d300 | 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 49 6d 70 | /code></pre>.......<p>.......Imp |
| 9d320 | 6c 65 6d 65 6e 74 73 20 74 68 65 20 43 20 6d 61 63 72 6f 20 3c 63 6f 64 65 3e 76 61 5f 63 6f 70 | lements.the.C.macro.<code>va_cop |
| 9d340 | 79 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 65 | y</code>........</p>.......<p>Se |
| 9d360 | 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 63 56 | e.also:</p><ul>.<li><a.href="#cV |
| 9d380 | 61 41 72 67 22 3e 40 63 56 61 41 72 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 | aArg">@cVaArg</a></li>.<li><a.hr |
| 9d3a0 | 65 66 3d 22 23 63 56 61 45 6e 64 22 3e 40 63 56 61 45 6e 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c | ef="#cVaEnd">@cVaEnd</a></li>.<l |
| 9d3c0 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 56 61 53 74 61 72 74 22 3e 40 63 56 61 53 74 61 72 74 3c | i><a.href="#cVaStart">@cVaStart< |
| 9d3e0 | 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 33 | /a></li>.</ul>...............<h3 |
| 9d400 | 20 69 64 3d 22 63 56 61 45 6e 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 56 61 45 6e | .id="cVaEnd"><a.href="#toc-cVaEn |
| 9d420 | 64 22 3e 40 63 56 61 45 6e 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | d">@cVaEnd</a>.<a.class="hdr".hr |
| 9d440 | 65 66 3d 22 23 63 56 61 45 6e 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | ef="#cVaEnd">..</a></h3>........ |
| 9d460 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | <pre><code><span.class="tok-buil |
| 9d480 | 74 69 6e 22 3e 40 63 56 61 45 6e 64 3c 2f 73 70 61 6e 3e 28 73 72 63 3a 20 2a 73 74 64 2e 62 75 | tin">@cVaEnd</span>(src:.*std.bu |
| 9d4a0 | 69 6c 74 69 6e 2e 56 61 4c 69 73 74 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | iltin.VaList).<span.class="tok-t |
| 9d4c0 | 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 70 72 65 3e 0a 20 20 | ype">void</span></code></pre>... |
| 9d4e0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6d 70 6c 65 6d 65 6e 74 73 20 74 68 65 20 43 20 6d | ....<p>.......Implements.the.C.m |
| 9d500 | 61 63 72 6f 20 3c 63 6f 64 65 3e 76 61 5f 65 6e 64 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 | acro.<code>va_end</code>........ |
| 9d520 | 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>. |
| 9d540 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 56 61 41 72 67 22 3e 40 63 56 61 41 72 67 3c 2f 61 | <li><a.href="#cVaArg">@cVaArg</a |
| 9d560 | 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 56 61 43 6f 70 79 22 3e 40 63 | ></li>.<li><a.href="#cVaCopy">@c |
| 9d580 | 56 61 43 6f 70 79 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 56 | VaCopy</a></li>.<li><a.href="#cV |
| 9d5a0 | 61 53 74 61 72 74 22 3e 40 63 56 61 53 74 61 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e | aStart">@cVaStart</a></li>.</ul> |
| 9d5c0 | 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 63 56 61 53 74 61 72 74 22 | ...............<h3.id="cVaStart" |
| 9d5e0 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 56 61 53 74 61 72 74 22 3e 40 63 56 61 53 74 61 | ><a.href="#toc-cVaStart">@cVaSta |
| 9d600 | 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 63 56 61 | rt</a>.<a.class="hdr".href="#cVa |
| 9d620 | 53 74 61 72 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | Start">..</a></h3>........<pre>< |
| 9d640 | 63 6f 64 65 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 | code><span.class="tok-builtin">@ |
| 9d660 | 63 56 61 53 74 61 72 74 3c 2f 73 70 61 6e 3e 28 29 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 56 61 | cVaStart</span>().std.builtin.Va |
| 9d680 | 4c 69 73 74 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 | List</code></pre>.......<p>..... |
| 9d6a0 | 20 20 49 6d 70 6c 65 6d 65 6e 74 73 20 74 68 65 20 43 20 6d 61 63 72 6f 20 3c 63 6f 64 65 3e 76 | ..Implements.the.C.macro.<code>v |
| 9d6c0 | 61 5f 73 74 61 72 74 3c 2f 63 6f 64 65 3e 2e 20 4f 6e 6c 79 20 76 61 6c 69 64 20 69 6e 73 69 64 | a_start</code>..Only.valid.insid |
| 9d6e0 | 65 20 61 20 76 61 72 69 61 64 69 63 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 | e.a.variadic.function........</p |
| 9d700 | 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 |
| 9d720 | 3e 3c 61 20 68 72 65 66 3d 22 23 63 56 61 41 72 67 22 3e 40 63 56 61 41 72 67 3c 2f 61 3e 3c 2f | ><a.href="#cVaArg">@cVaArg</a></ |
| 9d740 | 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 56 61 43 6f 70 79 22 3e 40 63 56 61 43 | li>.<li><a.href="#cVaCopy">@cVaC |
| 9d760 | 6f 70 79 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 56 61 45 6e | opy</a></li>.<li><a.href="#cVaEn |
| 9d780 | 64 22 3e 40 63 56 61 45 6e 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 | d">@cVaEnd</a></li>.</ul>....... |
| 9d7a0 | 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 64 69 76 45 78 61 63 74 22 3e 3c 61 20 68 72 | .........<h3.id="divExact"><a.hr |
| 9d7c0 | 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 61 3e | ef="#toc-divExact">@divExact</a> |
| 9d7e0 | 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 74 22 | .<a.class="hdr".href="#divExact" |
| 9d800 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | >..</a></h3>........<pre><code>< |
| 9d820 | 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 |
| 9d840 | 63 74 3c 2f 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 | ct</span>(numerator:.T,.denomina |
| 9d860 | 74 6f 72 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 70 3e | tor:.T).T</code></pre>.......<p> |
| 9d880 | 0a 20 20 20 20 20 20 45 78 61 63 74 20 64 69 76 69 73 69 6f 6e 2e 20 43 61 6c 6c 65 72 20 67 75 | .......Exact.division..Caller.gu |
| 9d8a0 | 61 72 61 6e 74 65 65 73 20 3c 63 6f 64 65 3e 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 21 3d 20 3c 73 | arantees.<code>denominator.!=.<s |
| 9d8c0 | 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>< |
| 9d8e0 | 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | /code>.and...........<code><span |
| 9d900 | 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</ |
| 9d920 | 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 6f 72 29 20 2a 20 | span>(numerator,.denominator).*. |
| 9d940 | 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 63 6f 64 65 3e 2e | denominator.==.numerator</code>. |
| 9d960 | 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 20 | .......</p>.......<ul>.......... |
| 9d980 | 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | .<li><code><span.class="tok-buil |
| 9d9a0 | 74 69 6e 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | tin">@divExact</span>(<span.clas |
| 9d9c0 | 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 20 63 | s="tok-number">6</span>,.<span.c |
| 9d9e0 | 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 3c | lass="tok-number">3</span>).==.< |
| 9da00 | 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> |
| 9da20 | 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 |
| 9da40 | 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 45 | ><span.class="tok-builtin">@divE |
| 9da60 | 78 61 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 | xact</span>(a,.b).*.b.==.a</code |
| 9da80 | 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 46 6f 72 20 | ></li>.......</ul>.......<p>For. |
| 9daa0 | 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 20 70 6f 73 73 69 62 | a.function.that.returns.a.possib |
| 9dac0 | 6c 65 20 65 72 72 6f 72 20 63 6f 64 65 2c 20 75 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | le.error.code,.use.<code><span.c |
| 9dae0 | 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 |
| 9db00 | 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 |
| 9db20 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 64 69 76 45 78 61 63 74 3c 2f 63 | d"</span>).math.divExact</c |
| 9db40 | 6f 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 | ode>.</p>.......<p>See.also:</p> |
| 9db60 | 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 54 72 75 6e 63 22 3e 40 64 69 | <ul>.<li><a.href="#divTrunc">@di |
| 9db80 | 76 54 72 75 6e 63 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 | vTrunc</a></li>.<li><a.href="#di |
| 9dba0 | 76 46 6c 6f 6f 72 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e | vFloor">@divFloor</a></li>.</ul> |
| 9dbc0 | 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 64 69 76 46 6c 6f 6f 72 22 | ...............<h3.id="divFloor" |
| 9dbe0 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 64 69 76 46 6c 6f 6f 72 22 3e 40 64 69 76 46 6c 6f | ><a.href="#toc-divFloor">@divFlo |
| 9dc00 | 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 64 69 76 | or</a>.<a.class="hdr".href="#div |
| 9dc20 | 46 6c 6f 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | Floor">..</a></h3>........<pre>< |
| 9dc40 | 63 6f 64 65 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 | code><span.class="tok-builtin">@ |
| 9dc60 | 64 69 76 46 6c 6f 6f 72 3c 2f 73 70 61 6e 3e 28 6e 75 6d 65 72 61 74 6f 72 3a 20 54 2c 20 64 65 | divFloor</span>(numerator:.T,.de |
| 9dc80 | 6e 6f 6d 69 6e 61 74 6f 72 3a 20 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | nominator:.T).T</code></pre>.... |
| 9dca0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6c 6f 6f 72 65 64 20 64 69 76 69 73 69 6f 6e 2e 20 52 | ...<p>.......Floored.division..R |
| 9dcc0 | 6f 75 6e 64 73 20 74 6f 77 61 72 64 20 6e 65 67 61 74 69 76 65 20 69 6e 66 69 6e 69 74 79 2e 20 | ounds.toward.negative.infinity.. |
| 9dce0 | 46 6f 72 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 73 20 69 74 20 69 73 0a 20 20 20 20 | For.unsigned.integers.it.is..... |
| 9dd00 | 20 20 74 68 65 20 73 61 6d 65 20 61 73 20 3c 63 6f 64 65 3e 6e 75 6d 65 72 61 74 6f 72 20 2f 20 | ..the.same.as.<code>numerator./. |
| 9dd20 | 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 61 | denominator</code>..Caller.guara |
| 9dd40 | 6e 74 65 65 73 20 3c 63 6f 64 65 3e 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 21 3d 20 3c 73 70 61 6e | ntees.<code>denominator.!=.<span |
| 9dd60 | 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 2f 63 6f | .class="tok-number">0</span></co |
| 9dd80 | 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 3e 21 28 3c 73 | de>.and...............<code>!(<s |
| 9dda0 | 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 |
| 9ddc0 | 6f 3c 2f 73 70 61 6e 3e 28 54 29 20 3d 3d 20 2e 69 6e 74 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | o</span>(T).==..int.<span.class= |
| 9dde0 | 22 74 6f 6b 2d 6b 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 | "tok-kw">and</span>.T.is_signed. |
| 9de00 | 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 6e 3e 20 | <span.class="tok-kw">and</span>. |
| 9de20 | 6e 75 6d 65 72 61 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 | numerator.==.std.math.minInt(T). |
| 9de40 | 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 6e 3e 20 | <span.class="tok-kw">and</span>. |
| 9de60 | 64 65 6e 6f 6d 69 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 | denominator.==.-<span.class="tok |
| 9de80 | 2d 6e 75 6d 62 65 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 | -number">1</span>)</code>....... |
| 9dea0 | 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 3c | .</p>.......<ul>...........<li>< |
| 9dec0 | 63 6f 64 65 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 | code><span.class="tok-builtin">@ |
| 9dee0 | 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 73 73 3d 22 74 6f | divFloor</span>(-<span.class="to |
| 9df00 | 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= |
| 9df20 | 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 73 70 61 6e | "tok-number">3</span>).==.-<span |
| 9df40 | 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 3c 2f 63 6f | .class="tok-number">2</span></co |
| 9df60 | 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 3e 28 3c 73 | de></li>...........<li><code>(<s |
| 9df80 | 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 46 6c 6f 6f | pan.class="tok-builtin">@divFloo |
| 9dfa0 | 72 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 2a 20 62 29 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 | r</span>(a,.b).*.b).+.<span.clas |
| 9dfc0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 6f 64 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 | s="tok-builtin">@mod</span>(a,.b |
| 9dfe0 | 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 3c 2f 75 6c 3e 0a 20 | ).==.a</code></li>.......</ul>.. |
| 9e000 | 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 61 74 20 72 65 74 75 | .....<p>For.a.function.that.retu |
| 9e020 | 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 2c 20 75 73 65 20 3c | rns.a.possible.error.code,.use.< |
| 9e040 | 63 6f 64 65 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 | code><span.class="tok-builtin">@ |
| 9e060 | 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 |
| 9e080 | 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 |
| 9e0a0 | 2e 64 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 | .divFloor</code>.</p>.......<p>S |
| 9e0c0 | 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 64 | ee.also:</p><ul>.<li><a.href="#d |
| 9e0e0 | 69 76 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 | ivTrunc">@divTrunc</a></li>.<li> |
| 9e100 | 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 74 3c 2f 61 | <a.href="#divExact">@divExact</a |
| 9e120 | 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 69 | ></li>.</ul>...............<h3.i |
| 9e140 | 64 3d 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 | d="divTrunc"><a.href="#toc-divTr |
| 9e160 | 75 6e 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 | unc">@divTrunc</a>.<a.class="hdr |
| 9e180 | 22 20 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 33 3e 0a 0a | ".href="#divTrunc">..</a></h3>.. |
| 9e1a0 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ......<pre><code><span.class="to |
| 9e1c0 | 6b 2d 62 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 6e 75 6d 65 | k-builtin">@divTrunc</span>(nume |
| 9e1e0 | 72 61 74 6f 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 | rator:.T,.denominator:.T).T</cod |
| 9e200 | 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 72 75 6e 63 61 74 | e></pre>.......<p>.......Truncat |
| 9e220 | 65 64 20 64 69 76 69 73 69 6f 6e 2e 20 52 6f 75 6e 64 73 20 74 6f 77 61 72 64 20 7a 65 72 6f 2e | ed.division..Rounds.toward.zero. |
| 9e240 | 20 46 6f 72 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 73 20 69 74 20 69 73 0a 20 20 20 | .For.unsigned.integers.it.is.... |
| 9e260 | 20 20 20 74 68 65 20 73 61 6d 65 20 61 73 20 3c 63 6f 64 65 3e 6e 75 6d 65 72 61 74 6f 72 20 2f | ...the.same.as.<code>numerator./ |
| 9e280 | 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 |
| 9e2a0 | 61 6e 74 65 65 73 20 3c 63 6f 64 65 3e 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 21 3d 20 3c 73 70 61 | antees.<code>denominator.!=.<spa |
| 9e2c0 | 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 2f 63 | n.class="tok-number">0</span></c |
| 9e2e0 | 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 3e 21 28 3c | ode>.and...............<code>!(< |
| 9e300 | 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 49 6e | span.class="tok-builtin">@typeIn |
| 9e320 | 66 6f 3c 2f 73 70 61 6e 3e 28 54 29 20 3d 3d 20 2e 69 6e 74 20 3c 73 70 61 6e 20 63 6c 61 73 73 | fo</span>(T).==..int.<span.class |
| 9e340 | 3d 22 74 6f 6b 2d 6b 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 | ="tok-kw">and</span>.T.is_signed |
| 9e360 | 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 6e 3e | .<span.class="tok-kw">and</span> |
| 9e380 | 20 6e 75 6d 65 72 61 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 | .numerator.==.std.math.minInt(T) |
| 9e3a0 | 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 6e 3e | .<span.class="tok-kw">and</span> |
| 9e3c0 | 20 64 65 6e 6f 6d 69 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 | .denominator.==.-<span.class="to |
| 9e3e0 | 6b 2d 6e 75 6d 62 65 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 | k-number">1</span>)</code>...... |
| 9e400 | 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> |
| 9e420 | 3c 63 6f 64 65 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 | <code><span.class="tok-builtin"> |
| 9e440 | 40 64 69 76 54 72 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 | @divTrunc</span>(-<span.class="t |
| 9e460 | 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 61 73 73 | ok-number">5</span>,.<span.class |
| 9e480 | 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 73 70 61 | ="tok-number">3</span>).==.-<spa |
| 9e4a0 | 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 3c 2f 63 | n.class="tok-number">1</span></c |
| 9e4c0 | 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 3e 28 3c | ode></li>...........<li><code>(< |
| 9e4e0 | 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 75 | span.class="tok-builtin">@divTru |
| 9e500 | 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 61 6e 20 63 6c 61 | nc</span>(a,.b).*.b).+.<span.cla |
| 9e520 | 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 6e 3e 28 61 2c 20 | ss="tok-builtin">@rem</span>(a,. |
| 9e540 | 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 3c 2f 75 6c 3e 0a | b).==.a</code></li>.......</ul>. |
| 9e560 | 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 61 74 20 72 65 74 | ......<p>For.a.function.that.ret |
| 9e580 | 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 2c 20 75 73 65 20 | urns.a.possible.error.code,.use. |
| 9e5a0 | 3c 63 6f 64 65 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 | <code><span.class="tok-builtin"> |
| 9e5c0 | 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- |
| 9e5e0 | 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 61 74 | str">"std"</span>).mat |
| 9e600 | 68 2e 64 69 76 54 72 75 6e 63 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | h.divTrunc</code>.</p>.......<p> |
| 9e620 | 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="# |
| 9e640 | 64 69 76 46 6c 6f 6f 72 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 | divFloor">@divFloor</a></li>.<li |
| 9e660 | 3e 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 74 3c 2f | ><a.href="#divExact">@divExact</ |
| 9e680 | 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 33 | a></li>.</ul>................<h3 |
| 9e6a0 | 20 69 64 3d 22 65 6d 62 65 64 46 69 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 6d | .id="embedFile"><a.href="#toc-em |
| 9e6c0 | 62 65 64 46 69 6c 65 22 3e 40 65 6d 62 65 64 46 69 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | bedFile">@embedFile</a>.<a.class |
| 9e6e0 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 6d 62 65 64 46 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c | ="hdr".href="#embedFile">..</a>< |
| 9e700 | 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | /h3>........<pre><code><span.cla |
| 9e720 | 73 73 3d 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 | ss="tok-builtin">@embedFile</spa |
| 9e740 | 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 |
| 9e760 | 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 74 6f 6b | </span>.path:.[]<span.class="tok |
| 9e780 | 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 |
| 9e7a0 | 6f 6b 2d 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 | ok-type">u8</span>).*<span.class |
| 9e7c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 5b 4e 3a 3c 73 70 61 6e 20 | ="tok-kw">const</span>.[N:<span. |
| 9e7e0 | 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 |
| 9e800 | 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 |
| 9e820 | 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 |
| 9e840 | 75 6e 63 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 | unction.returns.a.compile.time.c |
| 9e860 | 6f 6e 73 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 | onstant.pointer.to.null-terminat |
| 9e880 | 65 64 2c 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 | ed,.......fixed-size.array.with. |
| 9e8a0 | 6c 65 6e 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 | length.equal.to.the.byte.count.o |
| 9e8c0 | 66 20 74 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 3e | f.the.file.given.by.......<code> |
| 9e8e0 | 70 61 74 68 3c 2f 63 6f 64 65 3e 2e 20 54 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74 68 65 | path</code>..The.contents.of.the |
| 9e900 | 20 61 72 72 61 79 20 61 72 65 20 74 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74 68 65 20 66 | .array.are.the.contents.of.the.f |
| 9e920 | 69 6c 65 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f | ile........This.is.equivalent.to |
| 9e940 | 20 61 20 3c 61 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 | .a.<a.href="#String-Literals-and |
| 9e960 | 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 73 74 | -Unicode-Code-Point-Literals">st |
| 9e980 | 72 69 6e 67 20 6c 69 74 65 72 61 6c 3c 2f 61 3e 0a 20 20 20 20 20 20 77 69 74 68 20 74 68 65 20 | ring.literal</a>.......with.the. |
| 9e9a0 | 66 69 6c 65 20 63 6f 6e 74 65 6e 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | file.contents........</p>....... |
| 9e9c0 | 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 70 61 74 68 3c 2f 63 6f 64 65 3e 20 69 73 20 61 | <p>.......<code>path</code>.is.a |
| 9e9e0 | 62 73 6f 6c 75 74 65 20 6f 72 20 72 65 6c 61 74 69 76 65 20 74 6f 20 74 68 65 20 63 75 72 72 65 | bsolute.or.relative.to.the.curre |
| 9ea00 | 6e 74 20 66 69 6c 65 2c 20 6a 75 73 74 20 6c 69 6b 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | nt.file,.just.like.<code><span.c |
| 9ea20 | 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 |
| 9ea40 | 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 65 | ></code>........</p>.......<p>Se |
| 9ea60 | 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 6d | e.also:</p><ul>.<li><a.href="#im |
| 9ea80 | 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 20 | port">@import</a></li>.</ul>.... |
| 9eaa0 | 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 65 6e 75 6d 46 72 6f 6d 49 6e 74 22 | ............<h3.id="enumFromInt" |
| 9eac0 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 6e 75 6d 46 72 6f 6d 49 6e 74 22 3e 40 65 6e 75 | ><a.href="#toc-enumFromInt">@enu |
| 9eae0 | 6d 46 72 6f 6d 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 | mFromInt</a>.<a.class="hdr".href |
| 9eb00 | 3d 22 23 65 6e 75 6d 46 72 6f 6d 49 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 | ="#enumFromInt">..</a></h3>..... |
| 9eb20 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | ...<pre><code><span.class="tok-b |
| 9eb40 | 75 69 6c 74 69 6e 22 3e 40 65 6e 75 6d 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 6e 3e 28 69 6e 74 65 | uiltin">@enumFromInt</span>(inte |
| 9eb60 | 67 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 61 6e 79 74 79 70 | ger:.<span.class="tok-kw">anytyp |
| 9eb80 | 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 6b 77 22 3e 61 | e</span>).<span.class="tok-kw">a |
| 9eba0 | 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 20 20 20 20 20 | nytype</span></code></pre>...... |
| 9ebc0 | 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 74 65 67 65 72 20 69 | .<p>.......Converts.an.integer.i |
| 9ebe0 | 6e 74 6f 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 20 | nto.an.<a.href="#enum">enum</a>. |
| 9ec00 | 76 61 6c 75 65 2e 20 54 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 74 68 65 20 69 6e | value..The.return.type.is.the.in |
| 9ec20 | 66 65 72 72 65 64 20 72 65 73 75 6c 74 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | ferred.result.type........</p>.. |
| 9ec40 | 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 |
| 9ec60 | 76 65 72 74 20 61 6e 20 69 6e 74 65 67 65 72 20 77 69 74 68 20 6e 6f 20 63 6f 72 72 65 73 70 6f | vert.an.integer.with.no.correspo |
| 9ec80 | 6e 64 69 6e 67 20 76 61 6c 75 65 20 69 6e 20 74 68 65 20 65 6e 75 6d 20 69 6e 76 6f 6b 65 73 0a | nding.value.in.the.enum.invokes. |
| 9eca0 | 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 3d 22 23 49 | ......safety-checked.<a.href="#I |
| 9ecc0 | 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f | llegal-Behavior">Illegal.Behavio |
| 9ece0 | 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 61 20 3c 61 20 68 72 65 66 | r</a>........Note.that.a.<a.href |
| 9ed00 | 3d 22 23 4e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 2d 65 6e 75 6d 22 3e 6e 6f 6e 2d 65 78 68 61 | ="#Non-exhaustive-enum">non-exha |
| 9ed20 | 75 73 74 69 76 65 20 65 6e 75 6d 3c 2f 61 3e 20 68 61 73 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e | ustive.enum</a>.has.correspondin |
| 9ed40 | 67 20 76 61 6c 75 65 73 20 66 6f 72 20 61 6c 6c 0a 20 20 20 20 20 20 69 6e 74 65 67 65 72 73 20 | g.values.for.all.......integers. |
| 9ed60 | 69 6e 20 74 68 65 20 65 6e 75 6d 27 73 20 69 6e 74 65 67 65 72 20 74 61 67 20 74 79 70 65 3a 20 | in.the.enum's.integer.tag.type:. |
| 9ed80 | 74 68 65 20 3c 63 6f 64 65 3e 5f 3c 2f 63 6f 64 65 3e 20 76 61 6c 75 65 20 72 65 70 72 65 73 65 | the.<code>_</code>.value.represe |
| 9eda0 | 6e 74 73 20 61 6c 6c 0a 20 20 20 20 20 20 74 68 65 20 72 65 6d 61 69 6e 69 6e 67 20 75 6e 6e 61 | nts.all.......the.remaining.unna |
| 9edc0 | 6d 65 64 20 69 6e 74 65 67 65 72 73 20 69 6e 20 74 68 65 20 65 6e 75 6d 27 73 20 74 61 67 20 74 | med.integers.in.the.enum's.tag.t |
| 9ede0 | 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 53 65 65 20 61 6c 73 | ype........</p>.......<p>See.als |
| 9ee00 | 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 46 72 6f 6d | o:</p><ul>.<li><a.href="#intFrom |
| 9ee20 | 45 6e 75 6d 22 3e 40 69 6e 74 46 72 6f 6d 45 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c | Enum">@intFromEnum</a></li>.</ul |
| 9ee40 | 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 65 72 72 6f 72 46 72 | >................<h3.id="errorFr |
| 9ee60 | 6f 6d 49 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 72 72 6f 72 46 72 6f 6d 49 6e | omInt"><a.href="#toc-errorFromIn |
| 9ee80 | 74 22 3e 40 65 72 72 6f 72 46 72 6f 6d 49 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | t">@errorFromInt</a>.<a.class="h |
| 9eea0 | 64 72 22 20 68 72 65 66 3d 22 23 65 72 72 6f 72 46 72 6f 6d 49 6e 74 22 3e c2 a7 3c 2f 61 3e 3c | dr".href="#errorFromInt">..</a>< |
| 9eec0 | 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | /h3>........<pre><code><span.cla |
| 9eee0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 46 72 6f 6d 49 6e 74 3c 2f | ss="tok-builtin">@errorFromInt</ |
| 9ef00 | 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 73 74 64 2e 6d 65 74 61 2e 49 6e 74 28 2e 75 6e 73 69 67 | span>(value:.std.meta.Int(.unsig |
| 9ef20 | 6e 65 64 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 | ned,.<span.class="tok-builtin">@ |
| 9ef40 | 62 69 74 53 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 | bitSizeOf</span>(<span.class="to |
| 9ef60 | 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 29 29 29 20 3c 73 70 61 6e | k-type">anyerror</span>))).<span |
| 9ef80 | 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 6e | .class="tok-type">anyerror</span |
| 9efa0 | 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 43 | ></code></pre>.......<p>.......C |
| 9efc0 | 6f 6e 76 65 72 74 73 20 66 72 6f 6d 20 74 68 65 20 69 6e 74 65 67 65 72 20 72 65 70 72 65 73 65 | onverts.from.the.integer.represe |
| 9efe0 | 6e 74 61 74 69 6f 6e 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 69 6e 74 6f 20 3c 61 20 68 72 65 66 | ntation.of.an.error.into.<a.href |
| 9f000 | 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 54 68 65 20 47 6c 6f | ="#The-Global-Error-Set">The.Glo |
| 9f020 | 62 61 6c 20 45 72 72 6f 72 20 53 65 74 3c 2f 61 3e 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f | bal.Error.Set</a>.type........</ |
| 9f040 | 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 6c | p>.......<p>.......It.is.general |
| 9f060 | 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 68 69 73 0a 20 20 20 | ly.recommended.to.avoid.this.... |
| 9f080 | 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 65 70 72 65 73 65 6e | ...cast,.as.the.integer.represen |
| 9f0a0 | 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 20 73 74 61 62 6c 65 | tation.of.an.error.is.not.stable |
| 9f0c0 | 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 65 73 2e 0a 20 20 20 | .across.source.code.changes..... |
| 9f0e0 | 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 74 74 65 6d 70 74 69 | ...</p>.......<p>.......Attempti |
| 9f100 | 6e 67 20 74 6f 20 63 6f 6e 76 65 72 74 20 61 6e 20 69 6e 74 65 67 65 72 20 74 68 61 74 20 64 6f | ng.to.convert.an.integer.that.do |
| 9f120 | 65 73 20 6e 6f 74 20 63 6f 72 72 65 73 70 6f 6e 64 20 74 6f 20 61 6e 79 20 65 72 72 6f 72 20 72 | es.not.correspond.to.any.error.r |
| 9f140 | 65 73 75 6c 74 73 20 69 6e 0a 20 20 20 20 20 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c | esults.in.......safety-checked.< |
| 9f160 | 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 | a.href="#Illegal-Behavior">Illeg |
| 9f180 | 61 6c 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 | al.Behavior</a>........</p>..... |
| 9f1a0 | 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 |
| 9f1c0 | 65 66 3d 22 23 69 6e 74 46 72 6f 6d 45 72 72 6f 72 22 3e 40 69 6e 74 46 72 6f 6d 45 72 72 6f 72 | ef="#intFromError">@intFromError |
| 9f1e0 | 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>................< |
| 9f200 | 68 33 20 69 64 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 | h3.id="errorName"><a.href="#toc- |
| 9f220 | 65 72 72 6f 72 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 | errorName">@errorName</a>.<a.cla |
| 9f240 | 73 73 3d 22 68 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 | ss="hdr".href="#errorName">..</a |
| 9f260 | 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></h3>........<pre><code><span.c |
| 9f280 | 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 3c 2f 73 | lass="tok-builtin">@errorName</s |
| 9f2a0 | 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 6b 2d 74 79 70 65 22 | pan>(err:.<span.class="tok-type" |
| 9f2c0 | 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 29 20 5b 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >anyerror</span>).[:<span.class= |
| 9f2e0 | 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 |
| 9f300 | 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 |
| 9f320 | 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>< |
| 9f340 | 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 |
| 9f360 | 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 73 65 6e 74 | ion.returns.the.string.represent |
| 9f380 | 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 6e 67 20 72 65 | ation.of.an.error..The.string.re |
| 9f3a0 | 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 3e 3c 73 70 61 | presentation.......of.<code><spa |
| 9f3c0 | 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 |
| 9f3e0 | 74 4f 66 4d 65 6d 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | tOfMem</code>.is.<code><span.cla |
| 9f400 | 73 73 3d 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 | ss="tok-str">"OutOfMem" |
| 9f420 | 3b 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 | ;</span></code>........</p>..... |
| 9f440 | 20 20 3c 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 | ..<p>.......If.there.are.no.call |
| 9f460 | 73 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | s.to.<code><span.class="tok-buil |
| 9f480 | 74 69 6e 22 3e 40 65 72 72 6f 72 4e 61 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 6e | tin">@errorName</span></code>.in |
| 9f4a0 | 20 61 6e 20 65 6e 74 69 72 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 2c 0a 20 20 20 20 20 20 6f 72 | .an.entire.application,.......or |
| 9f4c0 | 20 61 6c 6c 20 63 61 6c 6c 73 20 68 61 76 65 20 61 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b | .all.calls.have.a.compile-time.k |
| 9f4e0 | 6e 6f 77 6e 20 76 61 6c 75 65 20 66 6f 72 20 3c 63 6f 64 65 3e 65 72 72 3c 2f 63 6f 64 65 3e 2c | nown.value.for.<code>err</code>, |
| 9f500 | 20 74 68 65 6e 20 6e 6f 0a 20 20 20 20 20 20 65 72 72 6f 72 20 6e 61 6d 65 20 74 61 62 6c 65 20 | .then.no.......error.name.table. |
| 9f520 | 77 69 6c 6c 20 62 65 20 67 65 6e 65 72 61 74 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | will.be.generated........</p>... |
| 9f540 | 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 65 72 72 6f 72 52 65 74 75 72 6e 54 | ............<h3.id="errorReturnT |
| 9f560 | 72 61 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 72 72 6f 72 52 65 74 75 72 6e 54 | race"><a.href="#toc-errorReturnT |
| 9f580 | 72 61 63 65 22 3e 40 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 3c 2f 61 3e 20 3c 61 20 63 | race">@errorReturnTrace</a>.<a.c |
| 9f5a0 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 | lass="hdr".href="#errorReturnTra |
| 9f5c0 | 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | ce">..</a></h3>........<pre><cod |
| 9f5e0 | 65 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 72 | e><span.class="tok-builtin">@err |
| 9f600 | 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 6e | orReturnTrace</span>().?*builtin |
| 9f620 | 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 3c | .StackTrace</code></pre>.......< |
| 9f640 | 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 20 | p>.......If.the.binary.is.built. |
| 9f660 | 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 74 | with.error.return.tracing,.and.t |
| 9f680 | 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 20 | his.function.is.invoked.in.a.... |
| 9f6a0 | 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 6f | ...function.that.calls.a.functio |
| 9f6c0 | 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 72 | n.with.an.error.or.error.union.r |
| 9f6e0 | 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 63 | eturn.type,.returns.a.......stac |
| 9f700 | 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 6e | k.trace.object..Otherwise.return |
| 9f720 | 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 20 | s.<a.href="#null">null</a>...... |
| 9f740 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 65 72 72 | ..</p>...............<h3.id="err |
| 9f760 | 6f 72 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 72 72 6f 72 43 61 73 74 22 | orCast"><a.href="#toc-errorCast" |
| 9f780 | 3e 40 65 72 72 6f 72 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 | >@errorCast</a>.<a.class="hdr".h |
| 9f7a0 | 72 65 66 3d 22 23 65 72 72 6f 72 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | ref="#errorCast">..</a></h3>.... |
| 9f7c0 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ....<pre><code><span.class="tok- |
| 9f7e0 | 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 43 61 73 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 | builtin">@errorCast</span>(value |
| 9f800 | 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 2f | :.<span.class="tok-kw">anytype</ |
| 9f820 | 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 61 6e 79 74 | span>).<span.class="tok-kw">anyt |
| 9f840 | 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 |
| 9f860 | 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 73 65 74 20 6f 72 | >.......Converts.an.error.set.or |
| 9f880 | 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 76 61 6c 75 65 20 66 72 6f 6d 20 6f 6e 65 20 65 72 72 6f | .error.union.value.from.one.erro |
| 9f8a0 | 72 20 73 65 74 20 74 6f 20 61 6e 6f 74 68 65 72 20 65 72 72 6f 72 20 73 65 74 2e 20 54 68 65 20 | r.set.to.another.error.set..The. |
| 9f8c0 | 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 74 68 65 0a 09 09 09 69 6e 66 65 72 72 65 64 20 72 | return.type.is.the....inferred.r |
| 9f8e0 | 65 73 75 6c 74 20 74 79 70 65 2e 20 41 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 63 6f 6e 76 65 72 | esult.type..Attempting.to.conver |
| 9f900 | 74 20 61 6e 20 65 72 72 6f 72 20 77 68 69 63 68 20 69 73 20 6e 6f 74 20 69 6e 20 74 68 65 20 64 | t.an.error.which.is.not.in.the.d |
| 9f920 | 65 73 74 69 6e 61 74 69 6f 6e 20 65 72 72 6f 72 0a 09 09 09 73 65 74 20 72 65 73 75 6c 74 73 20 | estination.error....set.results. |
| 9f940 | 69 6e 20 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 49 6c 6c 65 | in.safety-checked.<a.href="#Ille |
| 9f960 | 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f | gal-Behavior">Illegal.Behavior</ |
| 9f980 | 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 33 | a>........</p>...............<h3 |
| 9f9a0 | 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 63 2d 65 78 70 6f 72 | .id="export"><a.href="#toc-expor |
| 9f9c0 | 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 68 64 72 22 20 68 72 | t">@export</a>.<a.class="hdr".hr |
| 9f9e0 | 65 66 3d 22 23 65 78 70 6f 72 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | ef="#export">..</a></h3>........ |
| 9fa00 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | <pre><code><span.class="tok-buil |
| 9fa20 | 74 69 6e 22 3e 40 65 78 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">@export</span>(<span.class= |
| 9fa40 | 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 74 72 3a 20 2a 3c | "tok-kw">comptime</span>.ptr:.*< |
| 9fa60 | 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> |
| 9fa80 | 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 6f 70 61 71 75 | .<span.class="tok-type">anyopaqu |
| 9faa0 | 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 77 22 3e 63 | e</span>,.<span.class="tok-kw">c |
| 9fac0 | 6f 6d 70 74 69 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 | omptime</span>.options:.std.buil |
| 9fae0 | 74 69 6e 2e 45 78 70 6f 72 74 4f 70 74 69 6f 6e 73 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | tin.ExportOptions).<span.class=" |
| 9fb00 | 74 6f 6b 2d 74 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 70 72 | tok-type">void</span></code></pr |
| 9fb20 | 65 3e 0a 20 20 20 20 20 20 3c 70 3e 43 72 65 61 74 65 73 20 61 20 73 79 6d 62 6f 6c 20 69 6e 20 | e>.......<p>Creates.a.symbol.in. |
| 9fb40 | 74 68 65 20 6f 75 74 70 75 74 20 6f 62 6a 65 63 74 20 66 69 6c 65 20 77 68 69 63 68 20 72 65 66 | the.output.object.file.which.ref |
| 9fb60 | 65 72 73 20 74 6f 20 74 68 65 20 74 61 72 67 65 74 20 6f 66 20 3c 63 6f 64 65 3e 70 74 72 3c 2f | ers.to.the.target.of.<code>ptr</ |
| 9fb80 | 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 70 74 72 3c 2f 63 | code>.</p>.......<p><code>ptr</c |
| 9fba0 | 6f 64 65 3e 20 6d 75 73 74 20 70 6f 69 6e 74 20 74 6f 20 61 20 67 6c 6f 62 61 6c 20 76 61 72 69 | ode>.must.point.to.a.global.vari |
| 9fbc0 | 61 62 6c 65 20 6f 72 20 61 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 63 6f 6e 73 74 61 6e | able.or.a.comptime-known.constan |
| 9fbe0 | 74 2e 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 62 75 69 6c | t.</p>.......<p>.......This.buil |
| 9fc00 | 74 69 6e 20 63 61 6e 20 62 65 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 61 20 3c 61 20 68 72 65 66 | tin.can.be.called.from.a.<a.href |
| 9fc20 | 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 20 62 6c 6f 63 6b 20 | ="#comptime">comptime</a>.block. |
| 9fc40 | 74 6f 20 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 20 65 78 70 6f 72 74 20 73 79 6d 62 6f 6c 73 2e | to.conditionally.export.symbols. |
| 9fc60 | 0a 20 20 20 20 20 20 57 68 65 6e 20 3c 63 6f 64 65 3e 70 74 72 3c 2f 63 6f 64 65 3e 20 70 6f 69 | .......When.<code>ptr</code>.poi |
| 9fc80 | 6e 74 73 20 74 6f 20 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 | nts.to.a.function.with.the.C.cal |
| 9fca0 | 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 61 6e 64 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e | ling.convention.and.......<code> |
| 9fcc0 | 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 63 6f 64 65 3e | options.linkage</code>.is.<code> |
| 9fce0 | 2e 53 74 72 6f 6e 67 3c 2f 63 6f 64 65 3e 2c 20 74 68 69 73 20 69 73 20 65 71 75 69 76 61 6c 65 | .Strong</code>,.this.is.equivale |
| 9fd00 | 6e 74 20 74 6f 0a 20 20 20 20 20 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | nt.to.......the.<code><span.clas |
| 9fd20 | 73 3d 22 74 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 | s="tok-kw">export</span></code>. |
| 9fd40 | 6b 65 79 77 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 | keyword.used.on.a.function:..... |
| 9fd60 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e | ..</p>.......<figure><figcaption |
| 9fd80 | 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 | .class="zig-cap"><cite.class="fi |
| 9fda0 | 6c 65 22 3e 65 78 70 6f 72 74 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 | le">export_builtin.zig</cite></f |
| 9fdc0 | 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | igcaption><pre><code><span.class |
| 9fde0 | 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 20 | ="tok-kw">comptime</span>.{..... |
| 9fe00 | 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 78 70 6f 72 | <span.class="tok-builtin">@expor |
| 9fe20 | 74 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 69 6e 74 65 72 6e 61 6c 4e 61 6d 65 2c 20 2e 7b 20 2e | t</span>(&internalName,..{.. |
| 9fe40 | 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 75 | name.=.<span.class="tok-str">&qu |
| 9fe60 | 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 3d 20 | ot;foo"</span>,..linkage.=. |
| 9fe80 | 2e 73 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 6b 2d | .strong.});.}..<span.class="tok- |
| 9fea0 | 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 |
| 9fec0 | 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 20 63 | n">internalName</span>().<span.c |
| 9fee0 | 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 2e 43 | lass="tok-kw">callconv</span>(.C |
| 9ff00 | 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 |
| 9ff20 | 70 61 6e 3e 20 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 | pan>.{}</code></pre></figure><fi |
| 9ff40 | 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 | gure><figcaption.class="shell-ca |
| 9ff60 | 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e | p">Shell</figcaption><pre><samp> |
| 9ff80 | 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 6f 62 6a 20 65 78 70 6f 72 74 5f 62 75 69 6c | $.<kbd>zig.build-obj.export_buil |
| 9ffa0 | 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | tin.zig</kbd>.</samp></pre></fig |
| 9ffc0 | 75 72 65 3e 0a 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 | ure>........<p>This.is.equivalen |
| 9ffe0 | 74 20 74 6f 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | t.to:</p>.......<figure><figcapt |
| a0000 | 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d | ion.class="zig-cap"><cite.class= |
| a0020 | 22 66 69 6c 65 22 3e 65 78 70 6f 72 74 5f 62 75 69 6c 74 69 6e 5f 65 71 75 69 76 61 6c 65 6e 74 | "file">export_builtin_equivalent |
| a0040 | 5f 63 6f 64 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 | _code.zig</cite></figcaption><pr |
| a0060 | 65 3e 3c 63 6f 64 65 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 | e><code><span.class="tok-kw">exp |
| a0080 | 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"> |
| a00a0 | 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 |
| a00c0 | 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 |
| a00e0 | 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 2f | e">void</span>.{}</code></pre></ |
| a0100 | 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | figure><figure><figcaption.class |
| a0120 | 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | ="shell-cap">Shell</figcaption>< |
| a0140 | 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 6f 62 6a 20 65 | pre><samp>$.<kbd>zig.build-obj.e |
| a0160 | 78 70 6f 72 74 5f 62 75 69 6c 74 69 6e 5f 65 71 75 69 76 61 6c 65 6e 74 5f 63 6f 64 65 2e 7a 69 | xport_builtin_equivalent_code.zi |
| a0180 | 67 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a | g</kbd>.</samp></pre></figure>.. |
| a01a0 | 20 20 20 20 20 20 3c 70 3e 4e 6f 74 65 20 74 68 61 74 20 65 76 65 6e 20 77 68 65 6e 20 75 73 69 | ......<p>Note.that.even.when.usi |
| a01c0 | 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 | ng.<code><span.class="tok-kw">ex |
| a01e0 | 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 20 3c 63 6f 64 65 3e 40 26 | port</span></code>,.the.<code>@& |
| a0200 | 71 75 6f 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 66 6f 72 | quot;foo"</code>.syntax.for |
| a0220 | 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 49 64 65 6e 74 69 66 69 65 72 73 22 3e 69 64 | .......<a.href="#Identifiers">id |
| a0240 | 65 6e 74 69 66 69 65 72 73 3c 2f 61 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 63 68 6f | entifiers</a>.can.be.used.to.cho |
| a0260 | 6f 73 65 20 61 6e 79 20 73 74 72 69 6e 67 20 66 6f 72 20 74 68 65 20 73 79 6d 62 6f 6c 20 6e 61 | ose.any.string.for.the.symbol.na |
| a0280 | 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | me:</p>.......<figure><figcaptio |
| a02a0 | 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 | n.class="zig-cap"><cite.class="f |
| a02c0 | 69 6c 65 22 3e 65 78 70 6f 72 74 5f 61 6e 79 5f 73 79 6d 62 6f 6c 5f 6e 61 6d 65 2e 7a 69 67 3c | ile">export_any_symbol_name.zig< |
| a02e0 | 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 | /cite></figcaption><pre><code><s |
| a0300 | 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> |
| a0320 | 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>. |
| a0340 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 40 26 71 75 6f 74 3b 41 20 66 75 | <span.class="tok-fn">@"A.fu |
| a0360 | 6e 63 74 69 6f 6e 20 6e 61 6d 65 20 74 68 61 74 20 69 73 20 61 20 63 6f 6d 70 6c 65 74 65 20 73 | nction.name.that.is.a.complete.s |
| a0380 | 65 6e 74 65 6e 63 65 2e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c | entence."</span>().<span.cl |
| a03a0 | 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 7d 3c 2f 63 | ass="tok-type">void</span>.{}</c |
| a03c0 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | ode></pre></figure><figure><figc |
| a03e0 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f | aption.class="shell-cap">Shell</ |
| a0400 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 | figcaption><pre><samp>$.<kbd>zig |
| a0420 | 20 62 75 69 6c 64 2d 6f 62 6a 20 65 78 70 6f 72 74 5f 61 6e 79 5f 73 79 6d 62 6f 6c 5f 6e 61 6d | .build-obj.export_any_symbol_nam |
| a0440 | 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | e.zig</kbd>.</samp></pre></figur |
| a0460 | 65 3e 0a 0a 20 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 | e>........<p>.......When.looking |
| a0480 | 20 61 74 20 74 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 | .at.the.resulting.object,.you.ca |
| a04a0 | 6e 20 73 65 65 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 | n.see.the.symbol.is.used.verbati |
| a04c0 | 6d 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 3e 30 | m:.......</p>.......<pre><code>0 |
| a04e0 | 30 30 30 30 30 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 | 0000000000001f0.T.A.function.nam |
| a0500 | 65 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 3c 2f | e.that.is.a.complete.sentence.</ |
| a0520 | 63 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 | code></pre>.......<p>See.also:</ |
| a0540 | 70 3e 3c 75 6c 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 | p><ul>.<li><a.href="#Exporting-a |
| a0560 | 2d 43 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 | -C-Library">Exporting.a.C.Librar |
| a0580 | 79 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 | y</a></li>.</ul>................ |
| a05a0 | 3c 68 33 20 69 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 | <h3.id="extern"><a.href="#toc-ex |
| a05c0 | 74 65 72 6e 22 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 | tern">@extern</a>.<a.class="hdr" |
| a05e0 | 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 | .href="#extern">..</a></h3>..... |
| a0600 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | ...<pre><code><span.class="tok-b |
| a0620 | 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 20 3c 73 70 61 6e 20 | uiltin">@extern</span>(T:.<span. |
| a0640 | 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 3c 73 | class="tok-type">type</span>,.<s |
| a0660 | 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 |
| a0680 | 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 78 74 65 72 6e 4f 70 | n>.options:.std.builtin.ExternOp |
| a06a0 | 74 69 6f 6e 73 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 | tions).T</code></pre>.......<p>. |
| a06c0 | 20 20 20 20 20 20 43 72 65 61 74 65 73 20 61 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 61 6e 20 | ......Creates.a.reference.to.an. |
| a06e0 | 65 78 74 65 72 6e 61 6c 20 73 79 6d 62 6f 6c 20 69 6e 20 74 68 65 20 6f 75 74 70 75 74 20 6f 62 | external.symbol.in.the.output.ob |
| a0700 | 6a 65 63 74 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 54 20 6d 75 73 74 20 62 65 20 61 20 70 6f 69 | ject.file........T.must.be.a.poi |
| a0720 | 6e 74 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 53 | nter.type........</p>.......<p>S |
| a0740 | 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 65 | ee.also:</p><ul>.<li><a.href="#e |
| a0760 | 78 70 6f 72 74 22 3e 40 65 78 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 | xport">@export</a></li>.</ul>... |
| a0780 | 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 66 69 65 6c 64 22 3e 3c 61 20 68 | .............<h3.id="field"><a.h |
| a07a0 | 72 65 66 3d 22 23 74 6f 63 2d 66 69 65 6c 64 22 3e 40 66 69 65 6c 64 3c 2f 61 3e 20 3c 61 20 63 | ref="#toc-field">@field</a>.<a.c |
| a07c0 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 66 69 65 6c 64 22 3e c2 a7 3c 2f 61 3e 3c | lass="hdr".href="#field">..</a>< |
| a07e0 | 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | /h3>........<pre><code><span.cla |
| a0800 | 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 6c | ss="tok-builtin">@field</span>(l |
| a0820 | 68 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 6e 79 74 79 70 65 | hs:.<span.class="tok-kw">anytype |
| a0840 | 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 |
| a0860 | 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 |
| a0880 | 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 |
| a08a0 | 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>). |
| a08c0 | 28 66 69 65 6c 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 | (field)</code></pre>.......<p>Pe |
| a08e0 | 72 66 6f 72 6d 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 | rforms.field.access.by.a.compile |
| a0900 | 2d 74 69 6d 65 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 | -time.string..Works.on.both.fiel |
| a0920 | 64 73 20 61 6e 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 | ds.and.declarations........</p>. |
| a0940 | 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | ......<figure><figcaption.class= |
| a0960 | 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | "zig-cap"><cite.class="file">tes |
| a0980 | 74 5f 66 69 65 6c 64 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 | t_field_builtin.zig</cite></figc |
| a09a0 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | aption><pre><code><span.class="t |
| a09c0 | 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. |
| a09e0 | 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 |
| a0a00 | 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 |
| a0a20 | 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=" |
| a0a40 | 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 3c 73 70 | tok-kw">const</span>.Point.=.<sp |
| a0a60 | 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>. |
| a0a80 | 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"> |
| a0aa0 | 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 73 3d 22 | u32</span>,.....y:.<span.class=" |
| a0ac0 | 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 70 61 6e | tok-type">u32</span>,......<span |
| a0ae0 | 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 6e | .class="tok-kw">pub</span>.<span |
| a0b00 | 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 20 3c 73 | .class="tok-kw">var</span>.z:.<s |
| a0b20 | 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 20 | pan.class="tok-type">u32</span>. |
| a0b40 | 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 |
| a0b60 | 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 3e 74 65 | an>;.};..<span.class="tok-kw">te |
| a0b80 | 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"> |
| a0ba0 | 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 71 75 6f | "field.access.by.string&quo |
| a0bc0 | 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 |
| a0be0 | 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 |
| a0c00 | 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 73 3d 22 | esting.expect;.....<span.class=" |
| a0c20 | 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 20 2e 78 | tok-kw">var</span>.p.=.Point{..x |
| a0c40 | 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 73 | .=.<span.class="tok-number">0</s |
| a0c60 | 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 75 6d 62 | pan>,..y.=.<span.class="tok-numb |
| a0c80 | 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 61 73 73 | er">0</span>.};......<span.class |
| a0ca0 | 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 70 2c 20 | ="tok-builtin">@field</span>(p,. |
| a0cc0 | 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 26 71 75 | <span.class="tok-str">"x&qu |
| a0ce0 | 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 6b 2d 6e | ot;</span>).=.<span.class="tok-n |
| a0d00 | 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 |
| a0d20 | 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 70 2c 20 | ="tok-builtin">@field</span>(p,. |
| a0d40 | 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 26 71 75 | <span.class="tok-str">"y&qu |
| a0d60 | 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 6b 2d 62 | ot;</span>).=.<span.class="tok-b |
| a0d80 | 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 6e 20 63 | uiltin">@field</span>(p,.<span.c |
| a0da0 | 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 2f 73 70 | lass="tok-str">"x"</sp |
| a0dc0 | 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 72 22 3e | an>).+.<span.class="tok-number"> |
| a0de0 | 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 6f 6b 2d | 1</span>;......<span.class="tok- |
| a0e00 | 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 |
| a0e20 | 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 70 2c | s="tok-builtin">@field</span>(p, |
| a0e40 | 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 26 71 | .<span.class="tok-str">"x&q |
| a0e60 | 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 |
| a0e80 | 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 6c | -number">4</span>);.....<span.cl |
| a0ea0 | 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(< |
| a0ec0 | 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 3c | span.class="tok-builtin">@field< |
| a0ee0 | 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 72 22 3e | /span>(p,.<span.class="tok-str"> |
| a0f00 | 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 6e 20 63 | "y"</span>).==.<span.c |
| a0f20 | 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 7d 0a 0a | lass="tok-number">5</span>);.}.. |
| a0f40 | 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> |
| a0f60 | 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 64 65 63 | .<span.class="tok-str">"dec |
| a0f80 | 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 6e 3e 20 | l.access.by.string"</span>. |
| a0fa0 | 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 |
| a0fc0 | 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 |
| a0fe0 | 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 22 3e 74 | ect;......<span.class="tok-kw">t |
| a1000 | 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 74 6f | ry</span>.expect(<span.class="to |
| a1020 | 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 74 2c 20 | k-builtin">@field</span>(Point,. |
| a1040 | 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 26 71 75 | <span.class="tok-str">"z&qu |
| a1060 | 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 2d | ot;</span>).==.<span.class="tok- |
| a1080 | 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 20 63 6c | number">1</span>);......<span.cl |
| a10a0 | 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>( |
| a10c0 | 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 26 71 75 | Point,.<span.class="tok-str">&qu |
| a10e0 | 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 61 73 73 | ot;z"</span>).=.<span.class |
| a1100 | 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 73 70 61 | ="tok-number">2</span>;.....<spa |
| a1120 | 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 |
| a1140 | 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 66 69 | ct(<span.class="tok-builtin">@fi |
| a1160 | 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 3d 22 74 | eld</span>(Point,.<span.class="t |
| a1180 | 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 20 3d 3d | ok-str">"z"</span>).== |
| a11a0 | 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 |
| a11c0 | 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 | n>);.}</code></pre></figure><fig |
| a11e0 | 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 | ure><figcaption.class="shell-cap |
| a1200 | 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 | ">Shell</figcaption><pre><samp>$ |
| a1220 | 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 66 69 65 6c 64 5f 62 75 69 6c 74 69 | .<kbd>zig.test.test_field_builti |
| a1240 | 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 66 69 65 6c 64 5f 62 75 69 6c 74 | n.zig</kbd>.1/2.test_field_built |
| a1260 | 69 6e 2e 74 65 73 74 2e 66 69 65 6c 64 20 61 63 63 65 73 73 20 62 79 20 73 74 72 69 6e 67 2e 2e | in.test.field.access.by.string.. |
| a1280 | 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 66 69 65 6c 64 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e | .OK.2/2.test_field_builtin.test. |
| a12a0 | 64 65 63 6c 20 61 63 63 65 73 73 20 62 79 20 73 74 72 69 6e 67 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 | decl.access.by.string...OK.All.2 |
| a12c0 | 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | .tests.passed..</samp></pre></fi |
| a12e0 | 67 75 72 65 3e 0a 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 66 69 | gure>.................<h3.id="fi |
| a1300 | 65 6c 64 50 61 72 65 6e 74 50 74 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 69 65 6c | eldParentPtr"><a.href="#toc-fiel |
| a1320 | 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 20 | dParentPtr">@fieldParentPtr</a>. |
| a1340 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 66 69 65 6c 64 50 61 72 65 6e | <a.class="hdr".href="#fieldParen |
| a1360 | 74 50 74 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | tPtr">..</a></h3>........<pre><c |
| a1380 | 6f 64 65 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 66 | ode><span.class="tok-builtin">@f |
| a13a0 | 69 65 6c 64 50 61 72 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 | ieldParentPtr</span>(<span.class |
| a13c0 | 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 6c 64 5f | ="tok-kw">comptime</span>.field_ |
| a13e0 | 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 6f 6e | name:.[]<span.class="tok-kw">con |
| a1400 | 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 22 | st</span>.<span.class="tok-type" |
| a1420 | 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 66 69 65 6c 64 5f 70 74 72 3a 20 2a 54 29 20 3c 73 70 61 6e | >u8</span>,.field_ptr:.*T).<span |
| a1440 | 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 3c 2f | .class="tok-kw">anytype</span></ |
| a1460 | 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 47 69 76 65 | code></pre>.......<p>.......Give |
| a1480 | 6e 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 73 74 72 75 63 74 20 66 69 65 6c 64 2c 20 72 | n.a.pointer.to.a.struct.field,.r |
| a14a0 | 65 74 75 72 6e 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 65 20 73 74 72 75 63 74 20 63 | eturns.a.pointer.to.the.struct.c |
| a14c0 | 6f 6e 74 61 69 6e 69 6e 67 20 74 68 61 74 20 66 69 65 6c 64 2e 0a 20 20 20 20 20 20 54 68 65 20 | ontaining.that.field........The. |
| a14e0 | 72 65 74 75 72 6e 20 74 79 70 65 20 28 61 6e 64 20 73 74 72 75 63 74 20 69 6e 20 71 75 65 73 74 | return.type.(and.struct.in.quest |
| a1500 | 69 6f 6e 29 20 69 73 20 74 68 65 20 69 6e 66 65 72 72 65 64 20 72 65 73 75 6c 74 20 74 79 70 65 | ion).is.the.inferred.result.type |
| a1520 | 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 49 66 20 | ........</p>.......<p>.......If. |
| a1540 | 3c 63 6f 64 65 3e 66 69 65 6c 64 5f 70 74 72 3c 2f 63 6f 64 65 3e 20 64 6f 65 73 20 6e 6f 74 20 | <code>field_ptr</code>.does.not. |
| a1560 | 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 3c 63 6f 64 65 3e 66 69 65 6c 64 5f 6e 61 6d 65 3c 2f 63 | point.to.the.<code>field_name</c |
| a1580 | 6f 64 65 3e 20 66 69 65 6c 64 20 6f 66 20 61 6e 20 69 6e 73 74 61 6e 63 65 20 6f 66 0a 20 20 20 | ode>.field.of.an.instance.of.... |
| a15a0 | 20 20 20 74 68 65 20 72 65 73 75 6c 74 20 74 79 70 65 2c 20 61 6e 64 20 74 68 65 20 72 65 73 75 | ...the.result.type,.and.the.resu |
| a15c0 | 6c 74 20 74 79 70 65 20 68 61 73 20 69 6c 6c 2d 64 65 66 69 6e 65 64 20 6c 61 79 6f 75 74 2c 20 | lt.type.has.ill-defined.layout,. |
| a15e0 | 69 6e 76 6f 6b 65 73 20 75 6e 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 | invokes.unchecked.<a.href="#Ille |
| a1600 | 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f | gal-Behavior">Illegal.Behavior</ |
| a1620 | 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 33 | a>........</p>...............<h3 |
| a1640 | 20 69 64 3d 22 46 69 65 6c 64 54 79 70 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 69 | .id="FieldType"><a.href="#toc-Fi |
| a1660 | 65 6c 64 54 79 70 65 22 3e 40 46 69 65 6c 64 54 79 70 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | eldType">@FieldType</a>.<a.class |
| a1680 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 46 69 65 6c 64 54 79 70 65 22 3e c2 a7 3c 2f 61 3e 3c | ="hdr".href="#FieldType">..</a>< |
| a16a0 | 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | /h3>........<pre><code><span.cla |
| a16c0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 46 69 65 6c 64 54 79 70 65 3c 2f 73 70 61 | ss="tok-builtin">@FieldType</spa |
| a16e0 | 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 |
| a1700 | 3c 2f 73 70 61 6e 3e 20 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | </span>.Type:.<span.class="tok-t |
| a1720 | 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 74 | ype">type</span>,.<span.class="t |
| a1740 | 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 6c 64 5f 6e 61 6d | ok-kw">comptime</span>.field_nam |
| a1760 | 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 6e 73 74 3c | e:.[]<span.class="tok-kw">const< |
| a1780 | 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 |
| a17a0 | 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"> |
| a17c0 | 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 20 20 20 20 20 20 3c | type</span></code></pre>.......< |
| a17e0 | 70 3e 0a 20 20 20 20 20 20 47 69 76 65 6e 20 61 20 74 79 70 65 20 61 6e 64 20 74 68 65 20 6e 61 | p>.......Given.a.type.and.the.na |
| a1800 | 6d 65 20 6f 66 20 6f 6e 65 20 6f 66 20 69 74 73 20 66 69 65 6c 64 73 2c 20 72 65 74 75 72 6e 73 | me.of.one.of.its.fields,.returns |
| a1820 | 20 74 68 65 20 74 79 70 65 20 6f 66 20 74 68 61 74 20 66 69 65 6c 64 2e 0a 20 20 20 20 20 20 3c | .the.type.of.that.field........< |
| a1840 | 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 66 6c 6f 61 74 43 | /p>...............<h3.id="floatC |
| a1860 | 61 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 | ast"><a.href="#toc-floatCast">@f |
| a1880 | 6c 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 | loatCast</a>.<a.class="hdr".href |
| a18a0 | 3d 22 23 66 6c 6f 61 74 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | ="#floatCast">..</a></h3>....... |
| a18c0 | 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | .<pre><code><span.class="tok-bui |
| a18e0 | 6c 74 69 6e 22 3e 40 66 6c 6f 61 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c | ltin">@floatCast</span>(value:.< |
| a1900 | 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 |
| a1920 | 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 61 6e 79 74 79 70 65 | n>).<span.class="tok-kw">anytype |
| a1940 | 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>.. |
| a1960 | 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 79 70 65 | .....Convert.from.one.float.type |
| a1980 | 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 65 2c 20 | .to.another..This.cast.is.safe,. |
| a19a0 | 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 69 63 20 | but.may.cause.the.......numeric. |
| a19c0 | 76 61 6c 75 65 20 74 6f 20 6c 6f 73 65 20 70 72 65 63 69 73 69 6f 6e 2e 20 54 68 65 20 72 65 74 | value.to.lose.precision..The.ret |
| a19e0 | 75 72 6e 20 74 79 70 65 20 69 73 20 74 68 65 20 69 6e 66 65 72 72 65 64 20 72 65 73 75 6c 74 20 | urn.type.is.the.inferred.result. |
| a1a00 | 74 79 70 65 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 | type........</p>...............< |
| a1a20 | 68 33 20 69 64 3d 22 66 6c 6f 61 74 46 72 6f 6d 49 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | h3.id="floatFromInt"><a.href="#t |
| a1a40 | 6f 63 2d 66 6c 6f 61 74 46 72 6f 6d 49 6e 74 22 3e 40 66 6c 6f 61 74 46 72 6f 6d 49 6e 74 3c 2f | oc-floatFromInt">@floatFromInt</ |
| a1a60 | 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 6c 6f 61 74 46 72 | a>.<a.class="hdr".href="#floatFr |
| a1a80 | 6f 6d 49 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | omInt">..</a></h3>........<pre>< |
| a1aa0 | 63 6f 64 65 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 | code><span.class="tok-builtin">@ |
| a1ac0 | 66 6c 6f 61 74 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 6e 3e 28 69 6e 74 3a 20 3c 73 70 61 6e 20 63 | floatFromInt</span>(int:.<span.c |
| a1ae0 | 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 |
| a1b00 | 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 |
| a1b20 | 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 43 | ></code></pre>.......<p>.......C |
| a1b40 | 6f 6e 76 65 72 74 73 20 61 6e 20 69 6e 74 65 67 65 72 20 74 6f 20 74 68 65 20 63 6c 6f 73 65 73 | onverts.an.integer.to.the.closes |
| a1b60 | 74 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 2e | t.floating.point.representation. |
| a1b80 | 20 54 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 74 68 65 20 69 6e 66 65 72 72 65 64 | .The.return.type.is.the.inferred |
| a1ba0 | 20 72 65 73 75 6c 74 20 74 79 70 65 2e 0a 09 09 09 54 6f 20 63 6f 6e 76 65 72 74 20 74 68 65 20 | .result.type.....To.convert.the. |
| a1bc0 | 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 69 6e 74 46 72 6f 6d | other.way,.use.<a.href="#intFrom |
| a1be0 | 46 6c 6f 61 74 22 3e 40 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 3c 2f 61 3e 2e 20 54 68 69 73 20 6f | Float">@intFromFloat</a>..This.o |
| a1c00 | 70 65 72 61 74 69 6f 6e 20 69 73 20 6c 65 67 61 6c 0a 20 20 20 20 20 20 66 6f 72 20 61 6c 6c 20 | peration.is.legal.......for.all. |
| a1c20 | 76 61 6c 75 65 73 20 6f 66 20 61 6c 6c 20 69 6e 74 65 67 65 72 20 74 79 70 65 73 2e 0a 20 20 20 | values.of.all.integer.types..... |
| a1c40 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 66 72 | ...</p>...............<h3.id="fr |
| a1c60 | 61 6d 65 41 64 64 72 65 73 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 72 61 6d 65 41 | ameAddress"><a.href="#toc-frameA |
| a1c80 | 64 64 72 65 73 73 22 3e 40 66 72 61 6d 65 41 64 64 72 65 73 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 | ddress">@frameAddress</a>.<a.cla |
| a1ca0 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 66 72 61 6d 65 41 64 64 72 65 73 73 22 3e c2 a7 | ss="hdr".href="#frameAddress">.. |
| a1cc0 | 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 | </a></h3>........<pre><code><spa |
| a1ce0 | 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 41 64 64 72 | n.class="tok-builtin">@frameAddr |
| a1d00 | 65 73 73 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 | ess</span>().<span.class="tok-ty |
| a1d20 | 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 0a 20 20 | pe">usize</span></code></pre>... |
| a1d40 | 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 75 | ....<p>.......This.function.retu |
| a1d60 | 72 6e 73 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 | rns.the.base.pointer.of.the.curr |
| a1d80 | 65 6e 74 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 | ent.stack.frame........</p>..... |
| a1da0 | 20 20 3c 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 | ..<p>.......The.implications.of. |
| a1dc0 | 74 68 69 73 20 61 72 65 20 74 61 72 67 65 74 2d 73 70 65 63 69 66 69 63 20 61 6e 64 20 6e 6f 74 | this.are.target-specific.and.not |
| a1de0 | 20 63 6f 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 | .consistent.across.all.......pla |
| a1e00 | 74 66 6f 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 | tforms..The.frame.address.may.no |
| a1e20 | 74 20 62 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 | t.be.available.in.release.mode.d |
| a1e40 | 75 65 20 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 | ue.to.......aggressive.optimizat |
| a1e60 | 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 20 20 | ions........</p>.......<p>...... |
| a1e80 | 20 54 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 | .This.function.is.only.valid.wit |
| a1ea0 | 68 69 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 20 | hin.function.scope........</p>.. |
| a1ec0 | 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 68 61 73 44 65 63 6c 22 3e 3c 61 | .............<h3.id="hasDecl"><a |
| a1ee0 | 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 63 6c 3c 2f 61 | .href="#toc-hasDecl">@hasDecl</a |
| a1f00 | 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 44 65 63 6c 22 | >.<a.class="hdr".href="#hasDecl" |
| a1f20 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | >..</a></h3>........<pre><code>< |
| a1f40 | 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 |
| a1f60 | 6c 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 | l</span>(<span.class="tok-kw">co |
| a1f80 | 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 43 6f 6e 74 61 69 6e 65 72 3a 20 3c 73 70 61 6e 20 63 | mptime</span>.Container:.<span.c |
| a1fa0 | 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 3c 73 70 | lass="tok-type">type</span>,.<sp |
| a1fc0 | 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 |
| a1fe0 | 3e 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 |
| a2000 | 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 |
| a2020 | 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 74 | e">u8</span>).<span.class="tok-t |
| a2040 | 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | ype">bool</span></code></pre>... |
| a2060 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 77 68 65 74 68 65 72 20 6f 72 | ....<p>.......Returns.whether.or |
| a2080 | 20 6e 6f 74 20 61 20 3c 61 20 68 72 65 66 3d 22 23 43 6f 6e 74 61 69 6e 65 72 73 22 3e 63 6f 6e | .not.a.<a.href="#Containers">con |
| a20a0 | 74 61 69 6e 65 72 3c 2f 61 3e 20 68 61 73 20 61 20 64 65 63 6c 61 72 61 74 69 6f 6e 0a 20 20 20 | tainer</a>.has.a.declaration.... |
| a20c0 | 20 20 20 6d 61 74 63 68 69 6e 67 20 3c 63 6f 64 65 3e 6e 61 6d 65 3c 2f 63 6f 64 65 3e 2e 0a 20 | ...matching.<code>name</code>... |
| a20e0 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | .....</p>.......<figure><figcapt |
| a2100 | 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d | ion.class="zig-cap"><cite.class= |
| a2120 | 22 66 69 6c 65 22 3e 74 65 73 74 5f 68 61 73 44 65 63 6c 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c | "file">test_hasDecl_builtin.zig< |
| a2140 | 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 | /cite></figcaption><pre><code><s |
| a2160 | 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>. |
| a2180 | 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"> |
| a21a0 | 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- |
| a21c0 | 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 |
| a21e0 | 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>. |
| a2200 | 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 |
| a2220 | 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>. |
| a2240 | 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 72 75 63 | Foo.=.<span.class="tok-kw">struc |
| a2260 | 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6e 6f 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | t</span>.{.....nope:.<span.class |
| a2280 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c 73 70 | ="tok-type">i32</span>,......<sp |
| a22a0 | 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 |
| a22c0 | 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 6c 61 | an.class="tok-kw">var</span>.bla |
| a22e0 | 68 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 3b | h.=.<span.class="tok-str">" |
| a2300 | 78 78 78 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 | xxx"</span>;.....<span.clas |
| a2320 | 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 69 20 3d 20 3c 73 70 | s="tok-kw">const</span>.hi.=.<sp |
| a2340 | 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>;. |
| a2360 | 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 |
| a2380 | 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">" |
| a23a0 | 3b 40 68 61 73 44 65 63 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | ;@hasDecl"</span>.{.....<sp |
| a23c0 | 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 |
| a23e0 | 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 68 | ect(<span.class="tok-builtin">@h |
| a2400 | 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 63 6c 61 73 73 3d 22 | asDecl</span>(Foo,.<span.class=" |
| a2420 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 6c 61 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | tok-str">"blah"</span> |
| a2440 | 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 63 6f 6d 6d 65 6e | ));......<span.class="tok-commen |
| a2460 | 74 22 3e 2f 2f 20 45 76 65 6e 20 74 68 6f 75 67 68 20 60 68 69 60 20 69 73 20 70 72 69 76 61 74 | t">//.Even.though.`hi`.is.privat |
| a2480 | 65 2c 20 40 68 61 73 44 65 63 6c 20 72 65 74 75 72 6e 73 20 74 72 75 65 20 62 65 63 61 75 73 65 | e,.@hasDecl.returns.true.because |
| a24a0 | 20 74 68 69 73 20 74 65 73 74 20 69 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | .this.test.is</span>.....<span.c |
| a24c0 | 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 74 68 65 20 73 61 6d | lass="tok-comment">//.in.the.sam |
| a24e0 | 65 20 66 69 6c 65 20 73 63 6f 70 65 20 61 73 20 46 6f 6f 2e 20 49 74 20 77 6f 75 6c 64 20 72 65 | e.file.scope.as.Foo..It.would.re |
| a2500 | 74 75 72 6e 20 66 61 6c 73 65 20 69 66 20 46 6f 6f 20 77 61 73 20 64 65 63 6c 61 72 65 64 3c 2f | turn.false.if.Foo.was.declared</ |
| a2520 | 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 65 | span>.....<span.class="tok-comme |
| a2540 | 6e 74 22 3e 2f 2f 20 69 6e 20 61 20 64 69 66 66 65 72 65 6e 74 20 66 69 6c 65 2e 3c 2f 73 70 61 | nt">//.in.a.different.file.</spa |
| a2560 | 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 79 3c | n>.....<span.class="tok-kw">try< |
| a2580 | 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 |
| a25a0 | 75 69 6c 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 | uiltin">@hasDecl</span>(Foo,.<sp |
| a25c0 | 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 75 6f 74 | an.class="tok-str">"hi" |
| a25e0 | 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 6f | ;</span>));......<span.class="to |
| a2600 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 40 68 61 73 44 65 63 6c 20 69 73 20 66 6f 72 20 64 65 | k-comment">//.@hasDecl.is.for.de |
| a2620 | 63 6c 61 72 61 74 69 6f 6e 73 3b 20 6e 6f 74 20 66 69 65 6c 64 73 2e 3c 2f 73 70 61 6e 3e 0a 20 | clarations;.not.fields.</span>.. |
| a2640 | 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 |
| a2660 | 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 |
| a2680 | 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. |
| a26a0 | 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 26 71 75 6f 74 3b | class="tok-str">"nope" |
| a26c0 | 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- |
| a26e0 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 21 3c 73 70 61 6e 20 63 6c 61 | kw">try</span>.expect(!<span.cla |
| a2700 | 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 3e | ss="tok-builtin">@hasDecl</span> |
| a2720 | 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 6f | (Foo,.<span.class="tok-str">&quo |
| a2740 | 74 3b 6e 6f 70 65 31 32 33 34 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f | t;nope1234"</span>));.}</co |
| a2760 | 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | de></pre></figure><figure><figca |
| a2780 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 | ption.class="shell-cap">Shell</f |
| a27a0 | 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 | igcaption><pre><samp>$.<kbd>zig. |
| a27c0 | 74 65 73 74 20 74 65 73 74 5f 68 61 73 44 65 63 6c 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b | test.test_hasDecl_builtin.zig</k |
| a27e0 | 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 68 61 73 44 65 63 6c 5f 62 75 69 6c 74 69 6e 2e 74 65 73 | bd>.1/1.test_hasDecl_builtin.tes |
| a2800 | 74 2e 40 68 61 73 44 65 63 6c 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 | t.@hasDecl...OK.All.1.tests.pass |
| a2820 | 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 | ed..</samp></pre></figure>...... |
| a2840 | 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 |
| a2860 | 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 61 3e 3c 2f 6c 69 | ef="#hasField">@hasField</a></li |
| a2880 | 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 33 20 69 64 3d 22 68 | >.</ul>................<h3.id="h |
| a28a0 | 61 73 46 69 65 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 | asField"><a.href="#toc-hasField" |
| a28c0 | 3e 40 68 61 73 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 | >@hasField</a>.<a.class="hdr".hr |
| a28e0 | 65 66 3d 22 23 68 61 73 46 69 65 6c 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 | ef="#hasField">..</a></h3>...... |
| a2900 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | ..<pre><code><span.class="tok-bu |
| a2920 | 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 73 70 61 6e 20 63 6c | iltin">@hasField</span>(<span.cl |
| a2940 | 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 6f 6e | ass="tok-kw">comptime</span>.Con |
| a2960 | 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 3e 74 | tainer:.<span.class="tok-type">t |
| a2980 | 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 77 22 | ype</span>,.<span.class="tok-kw" |
| a29a0 | 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 20 63 | >comptime</span>.name:.[]<span.c |
| a29c0 | 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 |
| a29e0 | 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 73 70 | .class="tok-type">u8</span>).<sp |
| a2a00 | 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>< |
| a2a20 | 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 75 72 6e 73 20 77 68 | /code></pre>.......<p>Returns.wh |
| a2a40 | 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 20 73 74 72 75 63 74 | ether.the.field.name.of.a.struct |
| a2a60 | 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 2f 70 3e 0a 20 20 20 | ,.union,.or.enum.exists.</p>.... |
| a2a80 | 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 63 6f 6d | ...<p>.......The.result.is.a.com |
| a2aa0 | 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 20 3c 2f 70 3e 0a 20 | pile.time.constant........</p>.. |
| a2ac0 | 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 74 20 69 6e 63 6c 75 | .....<p>.......It.does.not.inclu |
| a2ae0 | 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 6f 72 20 63 6f 6e 73 | de.functions,.variables,.or.cons |
| a2b00 | 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 70 3e 53 65 65 20 61 | tants........</p>.......<p>See.a |
| a2b20 | 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 68 61 73 44 65 | lso:</p><ul>.<li><a.href="#hasDe |
| a2b40 | 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 6c 3e 0a 0a 20 20 20 | cl">@hasDecl</a></li>.</ul>..... |
| a2b60 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 69 6d 70 6f 72 74 22 3e 3c 61 20 68 72 | ...........<h3.id="import"><a.hr |
| a2b80 | 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 2f 61 3e 20 3c 61 20 | ef="#toc-import">@import</a>.<a. |
| a2ba0 | 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 22 3e c2 a7 3c 2f 61 | class="hdr".href="#import">..</a |
| a2bc0 | 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></h3>........<pre><code><span.c |
| a2be0 | 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 |
| a2c00 | 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< |
| a2c20 | 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 74 6f 6b 2d | /span>.path:.[]<span.class="tok- |
| a2c40 | 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 |
| a2c60 | 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 3d 22 | k-type">u8</span>).<span.class=" |
| a2c80 | 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 |
| a2ca0 | 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 |
| a2cc0 | 20 66 69 6e 64 73 20 61 20 7a 69 67 20 66 69 6c 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 | .finds.a.zig.file.corresponding. |
| a2ce0 | 74 6f 20 3c 63 6f 64 65 3e 70 61 74 68 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 61 64 64 73 20 69 74 | to.<code>path</code>.and.adds.it |
| a2d00 | 20 74 6f 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 | .to.the.build,.......if.it.is.no |
| a2d20 | 74 20 61 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 | t.already.added........</p>..... |
| a2d40 | 20 20 3c 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 | ..<p>.......Zig.source.files.are |
| a2d60 | 20 69 6d 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 | .implicitly.structs,.with.a.name |
| a2d80 | 20 65 71 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 | .equal.to.the.file's.basename.wi |
| a2da0 | 74 68 20 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 | th.the.extension.......truncated |
| a2dc0 | 2e 20 3c 63 6f 64 65 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 | ..<code><span.class="tok-builtin |
| a2de0 | 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 74 75 72 6e 73 20 | ">@import</span></code>.returns. |
| a2e00 | 74 68 65 20 73 74 72 75 63 74 20 74 79 70 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f | the.struct.type.corresponding.to |
| a2e20 | 20 74 68 65 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 | .the.file........</p>.......<p>. |
| a2e40 | 20 20 20 20 20 20 44 65 63 6c 61 72 61 74 69 6f 6e 73 20 77 68 69 63 68 20 68 61 76 65 20 74 68 | ......Declarations.which.have.th |
| a2e60 | 65 20 3c 63 6f 64 65 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 | e.<code><span.class="tok-kw">pub |
| a2e80 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 6d 61 79 20 62 65 20 72 65 | </span></code>.keyword.may.be.re |
| a2ea0 | 66 65 72 65 6e 63 65 64 20 66 72 6f 6d 20 61 20 64 69 66 66 65 72 65 6e 74 0a 20 20 20 20 20 20 | ferenced.from.a.different....... |
| a2ec0 | 73 6f 75 72 63 65 20 66 69 6c 65 20 74 68 61 6e 20 74 68 65 20 6f 6e 65 20 74 68 65 79 20 61 72 | source.file.than.the.one.they.ar |
| a2ee0 | 65 20 64 65 63 6c 61 72 65 64 20 69 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | e.declared.in........</p>....... |
| a2f00 | 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 70 61 74 68 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 | <p>.......<code>path</code>.can. |
| a2f20 | 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 20 | be.a.relative.path.or.it.can.be. |
| a2f40 | 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 20 | the.name.of.a.package........If. |
| a2f60 | 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 6c | it.is.a.relative.path,.it.is.rel |
| a2f80 | 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 20 | ative.to.the.file.that.contains. |
| a2fa0 | 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | the.<code><span.class="tok-built |
| a2fc0 | 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 0a 20 20 20 20 20 20 | in">@import</span></code>....... |
| a2fe0 | 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | function.call........</p>....... |
| a3000 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 61 63 6b 61 67 65 73 | <p>.......The.following.packages |
| a3020 | 20 61 72 65 20 61 6c 77 61 79 73 20 61 76 61 69 6c 61 62 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 | .are.always.available:.......</p |
| a3040 | 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 65 | >.......<ul>...........<li><code |
| a3060 | 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 70 6f | ><span.class="tok-builtin">@impo |
| a3080 | 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"> |
| a30a0 | 26 71 75 6f 74 3b 73 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 | "std"</span>)</code>.- |
| a30c0 | 20 5a 69 67 20 53 74 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 | .Zig.Standard.Library</li>...... |
| a30e0 | 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .....<li><code><span.class="tok- |
| a3100 | 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 |
| a3120 | 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 71 75 6f 74 | ass="tok-str">"builtin" |
| a3140 | 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 70 65 63 69 66 | ;</span>)</code>.-.Target-specif |
| a3160 | 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 20 20 54 68 65 | ic.information...............The |
| a3180 | 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 65 20 2d 2d 73 | .command.<code>zig.build-exe.--s |
| a31a0 | 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 74 68 65 20 73 | how-builtin</code>.outputs.the.s |
| a31c0 | 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 63 65 2e 0a 20 | ource.to.stdout.for.reference... |
| a31e0 | 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 6f | .........</li>...........<li><co |
| a3200 | 64 65 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 | de><span.class="tok-builtin">@im |
| a3220 | 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 |
| a3240 | 22 3e 26 71 75 6f 74 3b 72 6f 6f 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 | ">"root"</span>)</code |
| a3260 | 3e 20 2d 20 52 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 | >.-.Root.source.file............ |
| a3280 | 20 20 20 54 68 69 73 20 69 73 20 75 73 75 61 6c 6c 79 20 3c 63 6f 64 65 3e 73 72 63 2f 6d 61 69 | ...This.is.usually.<code>src/mai |
| a32a0 | 6e 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 62 75 74 20 64 65 70 65 6e 64 73 20 6f 6e 20 77 68 61 74 | n.zig</code>.but.depends.on.what |
| a32c0 | 20 66 69 6c 65 20 69 73 20 62 75 69 6c 74 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a | .file.is.built............</li>. |
| a32e0 | 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 3a 3c 2f | ......</ul>.......<p>See.also:</ |
| a3300 | 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 2d 56 61 72 | p><ul>.<li><a.href="#Compile-Var |
| a3320 | 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 3e 3c 2f 6c | iables">Compile.Variables</a></l |
| a3340 | 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 6d 62 65 64 46 69 6c 65 22 3e 40 65 6d 62 | i>.<li><a.href="#embedFile">@emb |
| a3360 | 65 64 46 69 6c 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 0a 20 | edFile</a></li>.</ul>........... |
| a3380 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 69 6e 43 6f 6d 70 74 69 6d 65 22 3e 3c 61 20 68 72 65 66 | .....<h3.id="inComptime"><a.href |
| a33a0 | 3d 22 23 74 6f 63 2d 69 6e 43 6f 6d 70 74 69 6d 65 22 3e 40 69 6e 43 6f 6d 70 74 69 6d 65 3c 2f | ="#toc-inComptime">@inComptime</ |
| a33c0 | 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 43 6f 6d 70 74 | a>.<a.class="hdr".href="#inCompt |
| a33e0 | 69 6d 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | ime">..</a></h3>........<pre><co |
| a3400 | 64 65 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 | de><span.class="tok-builtin">@in |
| a3420 | 43 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | Comptime</span>().<span.class="t |
| a3440 | 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 2f 70 72 65 | ok-type">bool</span></code></pre |
| a3460 | 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 77 68 65 74 68 65 | >.......<p>.......Returns.whethe |
| a3480 | 72 20 74 68 65 20 62 75 69 6c 74 69 6e 20 77 61 73 20 72 75 6e 20 69 6e 20 61 20 3c 63 6f 64 65 | r.the.builtin.was.run.in.a.<code |
| a34a0 | 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</ |
| a34c0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 6f 6e 74 65 78 74 2e 20 54 68 65 20 72 65 73 75 6c 74 | span></code>.context..The.result |
| a34e0 | 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 2e 0a 20 20 20 | .is.a.compile-time.constant..... |
| a3500 | 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 63 61 6e | ...</p>.......<p>.......This.can |
| a3520 | 20 62 65 20 75 73 65 64 20 74 6f 20 70 72 6f 76 69 64 65 20 61 6c 74 65 72 6e 61 74 69 76 65 2c | .be.used.to.provide.alternative, |
| a3540 | 20 63 6f 6d 70 74 69 6d 65 2d 66 72 69 65 6e 64 6c 79 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f | .comptime-friendly.implementatio |
| a3560 | 6e 73 20 6f 66 20 66 75 6e 63 74 69 6f 6e 73 2e 20 49 74 20 73 68 6f 75 6c 64 20 6e 6f 74 20 62 | ns.of.functions..It.should.not.b |
| a3580 | 65 20 75 73 65 64 2c 20 66 6f 72 20 69 6e 73 74 61 6e 63 65 2c 20 74 6f 20 65 78 63 6c 75 64 65 | e.used,.for.instance,.to.exclude |
| a35a0 | 20 63 65 72 74 61 69 6e 20 66 75 6e 63 74 69 6f 6e 73 20 66 72 6f 6d 20 62 65 69 6e 67 20 65 76 | .certain.functions.from.being.ev |
| a35c0 | 61 6c 75 61 74 65 64 20 61 74 20 63 6f 6d 70 74 69 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | aluated.at.comptime........</p>. |
| a35e0 | 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>< |
| a3600 | 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 3c | a.href="#comptime">comptime</a>< |
| a3620 | 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 33 20 69 64 | /li>.</ul>................<h3.id |
| a3640 | 3d 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 | ="intCast"><a.href="#toc-intCast |
| a3660 | 22 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 | ">@intCast</a>.<a.class="hdr".hr |
| a3680 | 65 66 3d 22 23 69 6e 74 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | ef="#intCast">..</a></h3>....... |
| a36a0 | 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | .<pre><code><span.class="tok-bui |
| a36c0 | 6c 74 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 69 6e 74 3a 20 3c 73 70 61 6e | ltin">@intCast</span>(int:.<span |
| a36e0 | 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>). |
| a3700 | 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 |
| a3720 | 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>...... |
| a3740 | 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 65 72 20 | .Converts.an.integer.to.another. |
| a3760 | 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 65 20 6e | integer.while.keeping.the.same.n |
| a3780 | 75 6d 65 72 69 63 61 6c 20 76 61 6c 75 65 2e 0a 09 09 09 54 68 65 20 72 65 74 75 72 6e 20 74 79 | umerical.value.....The.return.ty |
| a37a0 | 70 65 20 69 73 20 74 68 65 20 69 6e 66 65 72 72 65 64 20 72 65 73 75 6c 74 20 74 79 70 65 2e 0a | pe.is.the.inferred.result.type.. |
| a37c0 | 20 20 20 20 20 20 41 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 63 6f 6e 76 65 72 74 20 61 20 6e 75 | ......Attempting.to.convert.a.nu |
| a37e0 | 6d 62 65 72 20 77 68 69 63 68 20 69 73 20 6f 75 74 20 6f 66 20 72 61 6e 67 65 20 6f 66 20 74 68 | mber.which.is.out.of.range.of.th |
| a3800 | 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 20 72 65 73 75 6c 74 73 20 69 6e 0a 20 20 | e.destination.type.results.in... |
| a3820 | 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 3d 22 23 49 6c 6c | ....safety-checked.<a.href="#Ill |
| a3840 | 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c | egal-Behavior">Illegal.Behavior< |
| a3860 | 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 | /a>........</p>.......<figure><f |
| a3880 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 | igcaption.class="zig-cap"><cite. |
| a38a0 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 69 6e 74 43 61 73 74 5f 62 75 69 6c 74 69 | class="file">test_intCast_builti |
| a38c0 | 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 | n.zig</cite></figcaption><pre><c |
| a38e0 | 6f 64 65 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 | ode><span.class="tok-kw">test</s |
| a3900 | 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">" |
| a3920 | 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 61 6e 3e | ;integer.cast.panic"</span> |
| a3940 | 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< |
| a3960 | 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" |
| a3980 | 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 6b 2d 6e | >u16</span>.=.<span.class="tok-n |
| a39a0 | 75 6d 62 65 72 22 3e 30 78 61 62 63 64 3c 2f 73 70 61 6e 3e 3b 20 3c 73 70 61 6e 20 63 6c 61 73 | umber">0xabcd</span>;.<span.clas |
| a39c0 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e | s="tok-comment">//.runtime-known |
| a39e0 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 61 3b 0a 20 20 20 20 3c 73 70 61 | </span>....._.=.&a;.....<spa |
| a3a00 | 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 3a | n.class="tok-kw">const</span>.b: |
| a3a20 | 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 |
| a3a40 | 3e 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 | >.=.<span.class="tok-builtin">@i |
| a3a60 | 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 61 29 3b 0a 20 20 20 20 5f 20 3d 20 62 3b 0a 7d 3c 2f | ntCast</span>(a);....._.=.b;.}</ |
| a3a80 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 | code></pre></figure><figure><fig |
| a3aa0 | 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c | caption.class="shell-cap">Shell< |
| a3ac0 | 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 | /figcaption><pre><samp>$.<kbd>zi |
| a3ae0 | 67 20 74 65 73 74 20 74 65 73 74 5f 69 6e 74 43 61 73 74 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c | g.test.test_intCast_builtin.zig< |
| a3b00 | 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 69 6e 74 43 61 73 74 5f 62 75 69 6c 74 69 6e 2e 74 | /kbd>.1/1.test_intCast_builtin.t |
| a3b20 | 65 73 74 2e 69 6e 74 65 67 65 72 20 63 61 73 74 20 70 61 6e 69 63 2e 2e 2e 74 68 72 65 61 64 20 | est.integer.cast.panic...thread. |
| a3b40 | 32 30 32 36 35 37 20 70 61 6e 69 63 3a 20 69 6e 74 65 67 65 72 20 63 61 73 74 20 74 72 75 6e 63 | 202657.panic:.integer.cast.trunc |
| a3b60 | 61 74 65 64 20 62 69 74 73 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f | ated.bits.<span.class="sgr-1m">/ |
| a3b80 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 | home/andy/dev/zig/doc/langref/te |
| a3ba0 | 73 74 5f 69 6e 74 43 61 73 74 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3a 34 3a 31 39 3c 2f 73 70 61 | st_intCast_builtin.zig:4:19</spa |
| a3bc0 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 38 38 | n>:.<span.class="sgr-2m">0x10488 |
| a3be0 | 65 38 20 69 6e 20 74 65 73 74 2e 69 6e 74 65 67 65 72 20 63 61 73 74 20 70 61 6e 69 63 20 28 74 | e8.in.test.integer.cast.panic.(t |
| a3c00 | 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 62 3a 20 75 38 20 3d 20 40 69 | est)</span>.....const.b:.u8.=.@i |
| a3c20 | 6e 74 43 61 73 74 28 61 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | ntCast(a);...................<sp |
| a3c40 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | an.class="sgr-32m">^</span>.<spa |
| a3c60 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f | n.class="sgr-1m">/home/andy/dev/ |
| a3c80 | 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 | zig/lib/compiler/test_runner.zig |
| a3ca0 | 3a 32 31 34 3a 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | :214:25</span>:.<span.class="sgr |
| a3cc0 | 2d 32 6d 22 3e 30 78 31 30 65 66 30 39 35 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 20 28 | -2m">0x10ef095.in.mainTerminal.( |
| a3ce0 | 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 65 73 74 5f 66 6e | test)</span>.........if.(test_fn |
| a3d00 | 2e 66 75 6e 63 28 29 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .func()).|_|.{.................. |
| a3d20 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f | .......<span.class="sgr-32m">^</ |
| a3d40 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 | span>.<span.class="sgr-1m">/home |
| a3d60 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f | /andy/dev/zig/lib/compiler/test_ |
| a3d80 | 72 75 6e 6e 65 72 2e 7a 69 67 3a 36 32 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | runner.zig:62:28</span>:.<span.c |
| a3da0 | 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 37 34 37 64 20 69 6e 20 6d 61 69 6e 20 | lass="sgr-2m">0x10e747d.in.main. |
| a3dc0 | 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 61 69 | (test)</span>.........return.mai |
| a3de0 | 6e 54 65 72 6d 69 6e 61 6c 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | nTerminal();.................... |
| a3e00 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c | ........<span.class="sgr-32m">^< |
| a3e20 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d | /span>.<span.class="sgr-1m">/hom |
| a3e40 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 | e/andy/dev/zig/lib/std/start.zig |
| a3e60 | 3a 36 35 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 73 67 72 | :651:22</span>:.<span.class="sgr |
| a3e80 | 2d 32 6d 22 3e 30 78 31 30 65 36 38 66 32 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 | -2m">0x10e68f2.in.posixCallMainA |
| a3ea0 | 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 20 20 20 20 20 20 20 | ndExit.(test)</span>............ |
| a3ec0 | 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();................... |
| a3ee0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e | ...<span.class="sgr-32m">^</span |
| a3f00 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | >.<span.class="sgr-1m">/home/and |
| a3f20 | 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a | y/dev/zig/lib/std/start.zig:271: |
| a3f40 | 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 | 5</span>:.<span.class="sgr-2m">0 |
| a3f60 | 78 31 30 65 36 34 63 64 20 69 6e 20 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | x10e64cd.in._start.(test)</span> |
| a3f80 | 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 | .....asm.volatile.(switch.(nativ |
| a3fa0 | 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 | e_arch).{.....<span.class="sgr-3 |
| a3fc0 | 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d | 2m">^</span>.<span.class="sgr-1m |
| a3fe0 | 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | ">???:?:?</span>:.<span.class="s |
| a4000 | 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 65 | gr-2m">0x0.in.???.(???)</span>.e |
| a4020 | 72 72 6f 72 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 | rror:.the.following.test.command |
| a4040 | 20 63 72 61 73 68 65 64 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 2e 7a 69 | .crashed:./home/andy/dev/zig/.zi |
| a4060 | 67 2d 63 61 63 68 65 2f 6f 2f 61 63 32 63 32 34 32 63 65 31 30 30 33 64 64 39 61 39 34 63 37 35 | g-cache/o/ac2c242ce1003dd9a94c75 |
| a4080 | 36 30 32 64 30 31 35 61 33 33 2f 74 65 73 74 20 2d 2d 73 65 65 64 3d 30 78 36 63 62 64 61 38 65 | 602d015a33/test.--seed=0x6cbda8e |
| a40a0 | 37 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 | 7.</samp></pre></figure>........ |
| a40c0 | 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 74 72 75 6e 63 61 74 65 20 74 68 65 20 73 69 67 6e 69 66 | <p>.......To.truncate.the.signif |
| a40e0 | 69 63 61 6e 74 20 62 69 74 73 20 6f 66 20 61 20 6e 75 6d 62 65 72 20 6f 75 74 20 6f 66 20 72 61 | icant.bits.of.a.number.out.of.ra |
| a4100 | 6e 67 65 20 6f 66 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 2c 20 75 73 65 | nge.of.the.destination.type,.use |
| a4120 | 20 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 | .<a.href="#truncate">@truncate</ |
| a4140 | 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 20 20 20 49 | a>........</p>.......<p>.......I |
| a4160 | 66 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | f.<code>T</code>.is.<code><span. |
| a4180 | 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 |
| a41a0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 74 68 65 6e 20 74 68 69 73 20 69 73 20 | pan></code>,.......then.this.is. |
| a41c0 | 73 65 6d 61 6e 74 69 63 61 6c 6c 79 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 3c 61 20 68 72 | semantically.equivalent.to.<a.hr |
| a41e0 | 65 66 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 | ef="#Type-Coercion">Type.Coercio |
| a4200 | 6e 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 20 20 20 20 | n</a>........</p>............... |
| a4220 | 3c 68 33 20 69 64 3d 22 69 6e 74 46 72 6f 6d 42 6f 6f 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | <h3.id="intFromBool"><a.href="#t |
| a4240 | 6f 63 2d 69 6e 74 46 72 6f 6d 42 6f 6f 6c 22 3e 40 69 6e 74 46 72 6f 6d 42 6f 6f 6c 3c 2f 61 3e | oc-intFromBool">@intFromBool</a> |
| a4260 | 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 46 72 6f 6d 42 6f | .<a.class="hdr".href="#intFromBo |
| a4280 | 6f 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | ol">..</a></h3>........<pre><cod |
| a42a0 | 65 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 | e><span.class="tok-builtin">@int |
| a42c0 | 46 72 6f 6d 42 6f 6f 6c 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 | FromBool</span>(value:.<span.cla |
| a42e0 | 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 73 70 61 6e | ss="tok-type">bool</span>).<span |
| a4300 | 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 3c 2f 63 6f 64 | .class="tok-type">u1</span></cod |
| a4320 | 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 72 74 | e></pre>.......<p>.......Convert |
| a4340 | 73 20 3c 63 6f 64 65 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 | s.<code><span.class="tok-null">t |
| a4360 | 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 3e 3c 73 70 61 6e | rue</span></code>.to.<code><span |
| a4380 | 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>( |
| a43a0 | 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 3c 2f 73 70 61 6e 3e | <span.class="tok-type">u1</span> |
| a43c0 | 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 70 | ,.<span.class="tok-number">1</sp |
| a43e0 | 61 6e 3e 29 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | an>)</code>.and.<code><span.clas |
| a4400 | 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 3e | s="tok-null">false</span></code> |
| a4420 | 20 74 6f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 | .to...................<code><spa |
| a4440 | 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> |
| a4460 | 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 31 3c 2f 73 70 61 6e | (<span.class="tok-type">u1</span |
| a4480 | 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 3c 2f 73 | >,.<span.class="tok-number">0</s |
| a44a0 | 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 20 20 20 0a | pan>)</code>........</p>........ |
| a44c0 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 69 6e 74 46 72 6f 6d 45 6e 75 6d 22 3e 3c 61 20 68 | .......<h3.id="intFromEnum"><a.h |
| a44e0 | 72 65 66 3d 22 23 74 6f 63 2d 69 6e 74 46 72 6f 6d 45 6e 75 6d 22 3e 40 69 6e 74 46 72 6f 6d 45 | ref="#toc-intFromEnum">@intFromE |
| a4500 | 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 69 6e | num</a>.<a.class="hdr".href="#in |
| a4520 | 74 46 72 6f 6d 45 6e 75 6d 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 | tFromEnum">..</a></h3>........<p |
| a4540 | 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | re><code><span.class="tok-builti |
| a4560 | 6e 22 3e 40 69 6e 74 46 72 6f 6d 45 6e 75 6d 3c 2f 73 70 61 6e 3e 28 65 6e 75 6d 5f 6f 72 5f 74 | n">@intFromEnum</span>(enum_or_t |
| a4580 | 61 67 67 65 64 5f 75 6e 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | agged_union:.<span.class="tok-kw |
| a45a0 | 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 |
| a45c0 | 6f 6b 2d 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 | ok-kw">anytype</span></code></pr |
| a45e0 | 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 6e 20 65 | e>.......<p>.......Converts.an.e |
| a4600 | 6e 75 6d 65 72 61 74 69 6f 6e 20 76 61 6c 75 65 20 69 6e 74 6f 20 69 74 73 20 69 6e 74 65 67 65 | numeration.value.into.its.intege |
| a4620 | 72 20 74 61 67 20 74 79 70 65 2e 20 57 68 65 6e 20 61 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 20 | r.tag.type..When.a.tagged.union. |
| a4640 | 69 73 20 70 61 73 73 65 64 2c 0a 20 20 20 20 20 20 74 68 65 20 74 61 67 20 76 61 6c 75 65 20 69 | is.passed,.......the.tag.value.i |
| a4660 | 73 20 75 73 65 64 20 61 73 20 74 68 65 20 65 6e 75 6d 65 72 61 74 69 6f 6e 20 76 61 6c 75 65 2e | s.used.as.the.enumeration.value. |
| a4680 | 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 66 20 74 | .......</p>.......<p>.......If.t |
| a46a0 | 68 65 72 65 20 69 73 20 6f 6e 6c 79 20 6f 6e 65 20 70 6f 73 73 69 62 6c 65 20 65 6e 75 6d 20 76 | here.is.only.one.possible.enum.v |
| a46c0 | 61 6c 75 65 2c 20 74 68 65 20 72 65 73 75 6c 74 20 69 73 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 | alue,.the.result.is.a.<code><spa |
| a46e0 | 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 74 3c | n.class="tok-type">comptime_int< |
| a4700 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 6b 6e 6f 77 6e 20 61 74 20 3c 61 20 | /span></code>.......known.at.<a. |
| a4720 | 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 2e 0a 20 | href="#comptime">comptime</a>... |
| a4740 | 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 3e | .....</p>.......<p>See.also:</p> |
| a4760 | 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 46 72 6f 6d 49 6e 74 22 3e | <ul>.<li><a.href="#enumFromInt"> |
| a4780 | 40 65 6e 75 6d 46 72 6f 6d 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 | @enumFromInt</a></li>.</ul>..... |
| a47a0 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 69 6e 74 46 72 6f 6d 45 72 72 6f 72 22 | ...........<h3.id="intFromError" |
| a47c0 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 74 46 72 6f 6d 45 72 72 6f 72 22 3e 40 69 6e | ><a.href="#toc-intFromError">@in |
| a47e0 | 74 46 72 6f 6d 45 72 72 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | tFromError</a>.<a.class="hdr".hr |
| a4800 | 65 66 3d 22 23 69 6e 74 46 72 6f 6d 45 72 72 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a | ef="#intFromError">..</a></h3>.. |
| a4820 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ......<pre><code><span.class="to |
| a4840 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 | k-builtin">@intFromError</span>( |
| a4860 | 65 72 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 74 79 70 | err:.<span.class="tok-kw">anytyp |
| a4880 | 65 3c 2f 73 70 61 6e 3e 29 20 73 74 64 2e 6d 65 74 61 2e 49 6e 74 28 2e 75 6e 73 69 67 6e 65 64 | e</span>).std.meta.Int(.unsigned |
| a48a0 | 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 62 69 74 | ,.<span.class="tok-builtin">@bit |
| a48c0 | 53 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 74 | SizeOf</span>(<span.class="tok-t |
| a48e0 | 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 29 29 3c 2f 63 6f 64 65 3e 3c 2f 70 | ype">anyerror</span>))</code></p |
| a4900 | 72 65 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 74 68 65 | re>.......<p>.......Supports.the |
| a4920 | 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 20 20 20 | .following.types:.......</p>.... |
| a4940 | 20 20 20 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 | ...<ul>...........<li><a.href="# |
| a4960 | 54 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 | The-Global-Error-Set">The.Global |
| a4980 | 20 45 72 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 3c 6c | .Error.Set</a></li>...........<l |
| a49a0 | 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 3e 45 72 72 6f | i><a.href="#Error-Set-Type">Erro |
| a49c0 | 72 20 53 65 74 20 54 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c | r.Set.Type</a></li>...........<l |
| a49e0 | 69 3e 3c 61 20 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 | i><a.href="#Error-Union-Type">Er |
| a4a00 | 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f | ror.Union.Type</a></li>.......</ |
| a4a20 | 75 6c 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 | ul>.......<p>.......Converts.an. |
| a4a40 | 65 72 72 6f 72 20 74 6f 20 74 68 65 20 69 6e 74 65 67 65 72 20 72 65 70 72 65 73 65 6e 74 61 74 | error.to.the.integer.representat |
| a4a60 | 69 6f 6e 20 6f 66 20 61 6e 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ion.of.an.error........</p>..... |
| a4a80 | 20 20 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 | ..<p>.......It.is.generally.reco |
| a4aa0 | 6d 6d 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 | mmended.to.avoid.this.......cast |
| a4ac0 | 2c 20 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 | ,.as.the.integer.representation. |
| a4ae0 | 6f 66 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 | of.an.error.is.not.stable.across |
| a4b00 | 20 73 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 | .source.code.changes........</p> |
| a4b20 | 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> |
| a4b40 | 3c 61 20 68 72 65 66 3d 22 23 65 72 72 6f 72 46 72 6f 6d 49 6e 74 22 3e 40 65 72 72 6f 72 46 72 | <a.href="#errorFromInt">@errorFr |
| a4b60 | 6f 6d 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 20 | omInt</a></li>.</ul>............ |
| a4b80 | 20 20 20 20 3c 68 33 20 69 64 3d 22 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 22 3e 3c 61 20 68 72 65 | ....<h3.id="intFromFloat"><a.hre |
| a4ba0 | 66 3d 22 23 74 6f 63 2d 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 22 3e 40 69 6e 74 46 72 6f 6d 46 6c | f="#toc-intFromFloat">@intFromFl |
| a4bc0 | 6f 61 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 69 6e | oat</a>.<a.class="hdr".href="#in |
| a4be0 | 74 46 72 6f 6d 46 6c 6f 61 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c | tFromFloat">..</a></h3>........< |
| a4c00 | 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | pre><code><span.class="tok-built |
| a4c20 | 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 3c 2f 73 70 61 6e 3e 28 66 6c 6f 61 74 3a 20 | in">@intFromFloat</span>(float:. |
| a4c40 | 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 |
| a4c60 | 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 61 6e 79 74 79 70 | an>).<span.class="tok-kw">anytyp |
| a4c80 | 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 3e 0a | e</span></code></pre>.......<p>. |
| a4ca0 | 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 74 68 65 20 69 6e 74 65 67 65 72 20 70 61 72 74 20 | ......Converts.the.integer.part. |
| a4cc0 | 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 72 20 74 6f 20 74 68 | of.a.floating.point.number.to.th |
| a4ce0 | 65 20 69 6e 66 65 72 72 65 64 20 72 65 73 75 6c 74 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f | e.inferred.result.type........</ |
| a4d00 | 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 69 6e 74 65 67 65 | p>.......<p>.......If.the.intege |
| a4d20 | 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 69 6e 74 20 6e 75 6d | r.part.of.the.floating.point.num |
| a4d40 | 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 74 69 6e 61 74 69 6f | ber.cannot.fit.in.the.destinatio |
| a4d60 | 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 73 61 66 65 74 79 2d | n.type,.......it.invokes.safety- |
| a4d80 | 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 | checked.<a.href="#Illegal-Behavi |
| a4da0 | 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 | or">Illegal.Behavior</a>........ |
| a4dc0 | 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>. |
| a4de0 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 66 6c 6f 61 74 46 72 6f 6d 49 6e 74 22 3e 40 66 6c 6f | <li><a.href="#floatFromInt">@flo |
| a4e00 | 61 74 46 72 6f 6d 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 | atFromInt</a></li>.</ul>........ |
| a4e20 | 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 69 6e 74 46 72 6f 6d 50 74 72 22 3e 3c 61 20 68 | ........<h3.id="intFromPtr"><a.h |
| a4e40 | 72 65 66 3d 22 23 74 6f 63 2d 69 6e 74 46 72 6f 6d 50 74 72 22 3e 40 69 6e 74 46 72 6f 6d 50 74 | ref="#toc-intFromPtr">@intFromPt |
| a4e60 | 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 69 6e 74 46 | r</a>.<a.class="hdr".href="#intF |
| a4e80 | 72 6f 6d 50 74 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e | romPtr">..</a></h3>........<pre> |
| a4ea0 | 3c 63 6f 64 65 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 | <code><span.class="tok-builtin"> |
| a4ec0 | 40 69 6e 74 46 72 6f 6d 50 74 72 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 | @intFromPtr</span>(value:.<span. |
| a4ee0 | 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>).< |
| a4f00 | 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 |
| a4f20 | 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>....... |
| a4f40 | 43 6f 6e 76 65 72 74 73 20 3c 63 6f 64 65 3e 76 61 6c 75 65 3c 2f 63 6f 64 65 3e 20 74 6f 20 61 | Converts.<code>value</code>.to.a |
| a4f60 | 20 3c 63 6f 64 65 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 | .<code><span.class="tok-type">us |
| a4f80 | 69 7a 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 68 69 63 68 20 69 73 20 74 68 65 20 61 | ize</span></code>.which.is.the.a |
| a4fa0 | 64 64 72 65 73 73 20 6f 66 20 74 68 65 20 70 6f 69 6e 74 65 72 2e 0a 20 20 20 20 20 20 3c 63 6f | ddress.of.the.pointer........<co |
| a4fc0 | 64 65 3e 76 61 6c 75 65 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 3c 63 6f 64 65 3e 2a 54 3c | de>value</code>.can.be.<code>*T< |
| a4fe0 | 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 3e 3f 2a 54 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 | /code>.or.<code>?*T</code>...... |
| a5000 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 6f 20 63 6f 6e 76 65 72 74 20 74 68 65 20 6f | ..</p>.......<p>To.convert.the.o |
| a5020 | 74 68 65 72 20 77 61 79 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 70 74 72 46 72 6f 6d 49 | ther.way,.use.<a.href="#ptrFromI |
| a5040 | 6e 74 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f 61 3e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a | nt">@ptrFromInt</a></p>......... |
| a5060 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 6d 61 78 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | ......<h3.id="max"><a.href="#toc |
| a5080 | 2d 6d 61 78 22 3e 40 6d 61 78 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | -max">@max</a>.<a.class="hdr".hr |
| a50a0 | 65 66 3d 22 23 6d 61 78 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 | ef="#max">..</a></h3>........<pr |
| a50c0 | 65 3e 3c 63 6f 64 65 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 | e><code><span.class="tok-builtin |
| a50e0 | 22 3e 40 6d 61 78 3c 2f 73 70 61 6e 3e 28 2e 2e 2e 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ">@max</span>(...).T</code></pre |
| a5100 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 61 6b 65 73 20 74 77 6f 20 6f 72 20 6d | >.......<p>.......Takes.two.or.m |
| a5120 | 6f 72 65 20 61 72 67 75 6d 65 6e 74 73 20 61 6e 64 20 72 65 74 75 72 6e 73 20 74 68 65 20 62 69 | ore.arguments.and.returns.the.bi |
| a5140 | 67 67 65 73 74 20 76 61 6c 75 65 20 69 6e 63 6c 75 64 65 64 20 28 74 68 65 20 6d 61 78 69 6d 75 | ggest.value.included.(the.maximu |
| a5160 | 6d 29 2e 20 54 68 69 73 20 62 75 69 6c 74 69 6e 20 61 63 63 65 70 74 73 20 69 6e 74 65 67 65 72 | m)..This.builtin.accepts.integer |
| a5180 | 73 2c 20 66 6c 6f 61 74 73 2c 20 61 6e 64 20 76 65 63 74 6f 72 73 20 6f 66 20 65 69 74 68 65 72 | s,.floats,.and.vectors.of.either |
| a51a0 | 2e 20 49 6e 20 74 68 65 20 6c 61 74 74 65 72 20 63 61 73 65 2c 20 74 68 65 20 6f 70 65 72 61 74 | ..In.the.latter.case,.the.operat |
| a51c0 | 69 6f 6e 20 69 73 20 70 65 72 66 6f 72 6d 65 64 20 65 6c 65 6d 65 6e 74 20 77 69 73 65 2e 0a 20 | ion.is.performed.element.wise... |
| a51e0 | 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 4e 61 4e 73 20 61 | .....</p>.......<p>.......NaNs.a |
| a5200 | 72 65 20 68 61 6e 64 6c 65 64 20 61 73 20 66 6f 6c 6c 6f 77 73 3a 20 72 65 74 75 72 6e 20 74 68 | re.handled.as.follows:.return.th |
| a5220 | 65 20 62 69 67 67 65 73 74 20 6e 6f 6e 2d 4e 61 4e 20 76 61 6c 75 65 20 69 6e 63 6c 75 64 65 64 | e.biggest.non-NaN.value.included |
| a5240 | 2e 20 49 66 20 61 6c 6c 20 6f 70 65 72 61 6e 64 73 20 61 72 65 20 4e 61 4e 2c 20 72 65 74 75 72 | ..If.all.operands.are.NaN,.retur |
| a5260 | 6e 20 4e 61 4e 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 | n.NaN........</p>.......<p>See.a |
| a5280 | 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 6d 69 6e 22 3e | lso:</p><ul>.<li><a.href="#min"> |
| a52a0 | 40 6d 69 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 | @min</a></li>.<li><a.href="#Vect |
| a52c0 | 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 | ors">Vectors</a></li>.</ul>..... |
| a52e0 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 6d 65 6d 63 70 79 22 3e 3c 61 20 68 72 | ...........<h3.id="memcpy"><a.hr |
| a5300 | 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 61 3e 20 3c 61 20 | ef="#toc-memcpy">@memcpy</a>.<a. |
| a5320 | 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 3e c2 a7 3c 2f 61 | class="hdr".href="#memcpy">..</a |
| a5340 | 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></h3>........<pre><code><span.c |
| a5360 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 65 6d 63 70 79 3c 2f 73 70 61 6e | lass="tok-builtin">@memcpy</span |
| a5380 | 3e 28 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</ |
| a53a0 | 73 70 61 6e 3e 20 64 65 73 74 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>.dest,.<span.class="tok-kw" |
| a53c0 | 3e 6e 6f 61 6c 69 61 73 3c 2f 73 70 61 6e 3e 20 73 6f 75 72 63 65 29 20 3c 73 70 61 6e 20 63 6c | >noalias</span>.source).<span.cl |
| a53e0 | 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 6f 64 65 | ass="tok-type">void</span></code |
| a5400 | 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 63 | ></pre>.......<p>This.function.c |
| a5420 | 6f 70 69 65 73 20 62 79 74 65 73 20 66 72 6f 6d 20 6f 6e 65 20 72 65 67 69 6f 6e 20 6f 66 20 6d | opies.bytes.from.one.region.of.m |
| a5440 | 65 6d 6f 72 79 20 74 6f 20 61 6e 6f 74 68 65 72 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c | emory.to.another.</p>.......<p>< |
| a5460 | 63 6f 64 65 3e 64 65 73 74 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 20 6d 75 74 61 62 | code>dest</code>.must.be.a.mutab |
| a5480 | 6c 65 20 73 6c 69 63 65 2c 20 61 20 6d 75 74 61 62 6c 65 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 | le.slice,.a.mutable.pointer.to.a |
| a54a0 | 6e 20 61 72 72 61 79 2c 20 6f 72 0a 20 20 20 20 20 20 20 20 61 20 6d 75 74 61 62 6c 65 20 6d 61 | n.array,.or.........a.mutable.ma |
| a54c0 | 6e 79 2d 69 74 65 6d 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 | ny-item.<a.href="#Pointers">poin |
| a54e0 | 74 65 72 3c 2f 61 3e 2e 20 49 74 20 6d 61 79 20 68 61 76 65 20 61 6e 79 0a 20 20 20 20 20 20 20 | ter</a>..It.may.have.any........ |
| a5500 | 20 61 6c 69 67 6e 6d 65 6e 74 2c 20 61 6e 64 20 69 74 20 6d 61 79 20 68 61 76 65 20 61 6e 79 20 | .alignment,.and.it.may.have.any. |
| a5520 | 65 6c 65 6d 65 6e 74 20 74 79 70 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 | element.type.</p>.......<p><code |
| a5540 | 3e 73 6f 75 72 63 65 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 20 73 6c 69 63 65 2c 20 | >source</code>.must.be.a.slice,. |
| a5560 | 61 20 70 6f 69 6e 74 65 72 20 74 6f 0a 20 20 20 20 20 20 20 20 61 6e 20 61 72 72 61 79 2c 20 6f | a.pointer.to.........an.array,.o |
| a5580 | 72 20 61 20 6d 61 6e 79 2d 69 74 65 6d 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 | r.a.many-item.<a.href="#Pointers |
| a55a0 | 22 3e 70 6f 69 6e 74 65 72 3c 2f 61 3e 2e 20 49 74 20 6d 61 79 0a 20 20 20 20 20 20 20 20 68 61 | ">pointer</a>..It.may.........ha |
| a55c0 | 76 65 20 61 6e 79 20 61 6c 69 67 6e 6d 65 6e 74 2c 20 61 6e 64 20 69 74 20 6d 61 79 20 68 61 76 | ve.any.alignment,.and.it.may.hav |
| a55e0 | 65 20 61 6e 79 20 65 6c 65 6d 65 6e 74 20 74 79 70 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | e.any.element.type.</p>.......<p |
| a5600 | 3e 54 68 65 20 3c 63 6f 64 65 3e 73 6f 75 72 63 65 3c 2f 63 6f 64 65 3e 20 65 6c 65 6d 65 6e 74 | >The.<code>source</code>.element |
| a5620 | 20 74 79 70 65 20 6d 75 73 74 20 68 61 76 65 20 74 68 65 20 73 61 6d 65 20 69 6e 2d 6d 65 6d 6f | .type.must.have.the.same.in-memo |
| a5640 | 72 79 0a 20 20 20 20 20 20 20 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 61 73 20 74 68 65 | ry.........representation.as.the |
| a5660 | 20 3c 63 6f 64 65 3e 64 65 73 74 3c 2f 63 6f 64 65 3e 20 65 6c 65 6d 65 6e 74 20 74 79 70 65 2e | .<code>dest</code>.element.type. |
| a5680 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 69 6d 69 6c 61 72 20 74 6f 20 3c 61 20 68 72 65 66 | </p>.......<p>Similar.to.<a.href |
| a56a0 | 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 20 6c 6f 6f 70 73 2c 20 61 74 20 6c 65 61 73 74 20 | ="#for">for</a>.loops,.at.least. |
| a56c0 | 6f 6e 65 20 6f 66 20 3c 63 6f 64 65 3e 73 6f 75 72 63 65 3c 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 | one.of.<code>source</code>.and.. |
| a56e0 | 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 64 65 73 74 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 70 72 | .......<code>dest</code>.must.pr |
| a5700 | 6f 76 69 64 65 20 61 20 6c 65 6e 67 74 68 2c 20 61 6e 64 20 69 66 20 74 77 6f 20 6c 65 6e 67 74 | ovide.a.length,.and.if.two.lengt |
| a5720 | 68 73 20 61 72 65 20 70 72 6f 76 69 64 65 64 2c 0a 20 20 20 20 20 20 20 20 74 68 65 79 20 6d 75 | hs.are.provided,.........they.mu |
| a5740 | 73 74 20 62 65 20 65 71 75 61 6c 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 46 69 6e 61 6c 6c | st.be.equal.</p>.......<p>Finall |
| a5760 | 79 2c 20 74 68 65 20 74 77 6f 20 6d 65 6d 6f 72 79 20 72 65 67 69 6f 6e 73 20 6d 75 73 74 20 6e | y,.the.two.memory.regions.must.n |
| a5780 | 6f 74 20 6f 76 65 72 6c 61 70 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 | ot.overlap.</p>...............<h |
| a57a0 | 33 20 69 64 3d 22 6d 65 6d 73 65 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6d 65 6d 73 | 3.id="memset"><a.href="#toc-mems |
| a57c0 | 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 22 68 64 72 22 20 68 | et">@memset</a>.<a.class="hdr".h |
| a57e0 | 72 65 66 3d 22 23 6d 65 6d 73 65 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | ref="#memset">..</a></h3>....... |
| a5800 | 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | .<pre><code><span.class="tok-bui |
| a5820 | 6c 74 69 6e 22 3e 40 6d 65 6d 73 65 74 3c 2f 73 70 61 6e 3e 28 64 65 73 74 2c 20 65 6c 65 6d 29 | ltin">@memset</span>(dest,.elem) |
| a5840 | 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 |
| a5860 | 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 54 68 69 73 20 66 | an></code></pre>.......<p>This.f |
| a5880 | 75 6e 63 74 69 6f 6e 20 73 65 74 73 20 61 6c 6c 20 74 68 65 20 65 6c 65 6d 65 6e 74 73 20 6f 66 | unction.sets.all.the.elements.of |
| a58a0 | 20 61 20 6d 65 6d 6f 72 79 20 72 65 67 69 6f 6e 20 74 6f 20 3c 63 6f 64 65 3e 65 6c 65 6d 3c 2f | .a.memory.region.to.<code>elem</ |
| a58c0 | 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 64 65 73 74 3c 2f | code>.</p>.......<p><code>dest</ |
| a58e0 | 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 20 6d 75 74 61 62 6c 65 20 73 6c 69 63 65 20 6f 72 | code>.must.be.a.mutable.slice.or |
| a5900 | 20 61 20 6d 75 74 61 62 6c 65 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 6e 20 61 72 72 61 79 2e 0a | .a.mutable.pointer.to.an.array.. |
| a5920 | 20 20 20 20 20 20 49 74 20 6d 61 79 20 68 61 76 65 20 61 6e 79 20 61 6c 69 67 6e 6d 65 6e 74 2c | ......It.may.have.any.alignment, |
| a5940 | 20 61 6e 64 20 69 74 20 6d 61 79 20 68 61 76 65 20 61 6e 79 20 65 6c 65 6d 65 6e 74 20 74 79 70 | .and.it.may.have.any.element.typ |
| a5960 | 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 65 6c 65 6d 3c 2f 63 6f 64 65 | e.</p>.......<p><code>elem</code |
| a5980 | 3e 20 69 73 20 63 6f 65 72 63 65 64 20 74 6f 20 74 68 65 20 65 6c 65 6d 65 6e 74 20 74 79 70 65 | >.is.coerced.to.the.element.type |
| a59a0 | 20 6f 66 20 3c 63 6f 64 65 3e 64 65 73 74 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 | .of.<code>dest</code>.</p>...... |
| a59c0 | 20 3c 70 3e 46 6f 72 20 73 65 63 75 72 65 6c 79 20 7a 65 72 6f 69 6e 67 20 6f 75 74 20 73 65 6e | .<p>For.securely.zeroing.out.sen |
| a59e0 | 73 69 74 69 76 65 20 63 6f 6e 74 65 6e 74 73 20 66 72 6f 6d 20 6d 65 6d 6f 72 79 2c 20 79 6f 75 | sitive.contents.from.memory,.you |
| a5a00 | 20 73 68 6f 75 6c 64 20 75 73 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 2e 63 72 79 70 | .should.use.......<code>std.cryp |
| a5a20 | 74 6f 2e 73 65 63 75 72 65 5a 65 72 6f 3c 2f 63 6f 64 65 3e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a | to.secureZero</code></p>........ |
| a5a40 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 6d 69 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | .......<h3.id="min"><a.href="#to |
| a5a60 | 63 2d 6d 69 6e 22 3e 40 6d 69 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | c-min">@min</a>.<a.class="hdr".h |
| a5a80 | 72 65 66 3d 22 23 6d 69 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 | ref="#min">..</a></h3>........<p |
| a5aa0 | 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | re><code><span.class="tok-builti |
| a5ac0 | 6e 22 3e 40 6d 69 6e 3c 2f 73 70 61 6e 3e 28 2e 2e 2e 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | n">@min</span>(...).T</code></pr |
| a5ae0 | 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 61 6b 65 73 20 74 77 6f 20 6f 72 20 | e>.......<p>.......Takes.two.or. |
| a5b00 | 6d 6f 72 65 20 61 72 67 75 6d 65 6e 74 73 20 61 6e 64 20 72 65 74 75 72 6e 73 20 74 68 65 20 73 | more.arguments.and.returns.the.s |
| a5b20 | 6d 61 6c 6c 65 73 74 20 76 61 6c 75 65 20 69 6e 63 6c 75 64 65 64 20 28 74 68 65 20 6d 69 6e 69 | mallest.value.included.(the.mini |
| a5b40 | 6d 75 6d 29 2e 20 54 68 69 73 20 62 75 69 6c 74 69 6e 20 61 63 63 65 70 74 73 20 69 6e 74 65 67 | mum)..This.builtin.accepts.integ |
| a5b60 | 65 72 73 2c 20 66 6c 6f 61 74 73 2c 20 61 6e 64 20 76 65 63 74 6f 72 73 20 6f 66 20 65 69 74 68 | ers,.floats,.and.vectors.of.eith |
| a5b80 | 65 72 2e 20 49 6e 20 74 68 65 20 6c 61 74 74 65 72 20 63 61 73 65 2c 20 74 68 65 20 6f 70 65 72 | er..In.the.latter.case,.the.oper |
| a5ba0 | 61 74 69 6f 6e 20 69 73 20 70 65 72 66 6f 72 6d 65 64 20 65 6c 65 6d 65 6e 74 20 77 69 73 65 2e | ation.is.performed.element.wise. |
| a5bc0 | 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 4e 61 4e 73 | .......</p>.......<p>.......NaNs |
| a5be0 | 20 61 72 65 20 68 61 6e 64 6c 65 64 20 61 73 20 66 6f 6c 6c 6f 77 73 3a 20 72 65 74 75 72 6e 20 | .are.handled.as.follows:.return. |
| a5c00 | 74 68 65 20 73 6d 61 6c 6c 65 73 74 20 6e 6f 6e 2d 4e 61 4e 20 76 61 6c 75 65 20 69 6e 63 6c 75 | the.smallest.non-NaN.value.inclu |
| a5c20 | 64 65 64 2e 20 49 66 20 61 6c 6c 20 6f 70 65 72 61 6e 64 73 20 61 72 65 20 4e 61 4e 2c 20 72 65 | ded..If.all.operands.are.NaN,.re |
| a5c40 | 74 75 72 6e 20 4e 61 4e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 | turn.NaN........</p>.......<p>Se |
| a5c60 | 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 6d 61 | e.also:</p><ul>.<li><a.href="#ma |
| a5c80 | 78 22 3e 40 6d 61 78 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 56 | x">@max</a></li>.<li><a.href="#V |
| a5ca0 | 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a | ectors">Vectors</a></li>.</ul>.. |
| a5cc0 | 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 77 61 73 6d 4d 65 6d 6f 72 79 | ..............<h3.id="wasmMemory |
| a5ce0 | 53 69 7a 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 77 61 73 6d 4d 65 6d 6f 72 79 53 69 | Size"><a.href="#toc-wasmMemorySi |
| a5d00 | 7a 65 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | ze">@wasmMemorySize</a>.<a.class |
| a5d20 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 22 3e c2 a7 | ="hdr".href="#wasmMemorySize">.. |
| a5d40 | 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 | </a></h3>........<pre><code><spa |
| a5d60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 | n.class="tok-builtin">@wasmMemor |
| a5d80 | 79 53 69 7a 65 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 | ySize</span>(index:.<span.class= |
| a5da0 | 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 63 6c 61 | "tok-type">u32</span>).<span.cla |
| a5dc0 | 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 6f 64 65 | ss="tok-type">usize</span></code |
| a5de0 | 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 |
| a5e00 | 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 73 69 7a 65 20 6f 66 20 74 68 65 20 57 61 | ction.returns.the.size.of.the.Wa |
| a5e20 | 73 6d 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 3e 69 6e | sm.memory.identified.by.<code>in |
| a5e40 | 64 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 | dex</code>.as.......an.unsigned. |
| a5e60 | 76 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 | value.in.units.of.Wasm.pages..No |
| a5e80 | 74 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 | te.that.each.Wasm.page.is.64KB.i |
| a5ea0 | 6e 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 | n.size........</p>.......<p>.... |
| a5ec0 | 20 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 | ...This.function.is.a.low.level. |
| a5ee0 | 69 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 | intrinsic.with.no.safety.mechani |
| a5f00 | 73 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 | sms.usually.useful.for.allocator |
| a5f20 | 0a 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 | .......designers.targeting.Wasm. |
| a5f40 | 20 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 | .So.unless.you.are.writing.a.new |
| a5f60 | 20 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 | .allocator.from.scratch,.you.sho |
| a5f80 | 75 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 | uld.use.......something.like.<co |
| a5fa0 | 64 65 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 | de><span.class="tok-builtin">@im |
| a5fc0 | 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 |
| a5fe0 | 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 68 65 61 70 2e 57 | ">"std"</span>).heap.W |
| a6000 | 61 73 6d 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 | asmPageAllocator</code>........< |
| a6020 | 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 3c | /p>.......<p>See.also:</p><ul>.< |
| a6040 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 22 3e 40 77 61 | li><a.href="#wasmMemoryGrow">@wa |
| a6060 | 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 | smMemoryGrow</a></li>.</ul>..... |
| a6080 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f | ...........<h3.id="wasmMemoryGro |
| a60a0 | 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 22 | w"><a.href="#toc-wasmMemoryGrow" |
| a60c0 | 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | >@wasmMemoryGrow</a>.<a.class="h |
| a60e0 | 64 72 22 20 68 72 65 66 3d 22 23 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 22 3e c2 a7 3c 2f 61 | dr".href="#wasmMemoryGrow">..</a |
| a6100 | 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></h3>........<pre><code><span.c |
| a6120 | 6c 61 73 73 3d 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 | lass="tok-builtin">@wasmMemoryGr |
| a6140 | 6f 77 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 74 6f | ow</span>(index:.<span.class="to |
| a6160 | 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 64 65 6c 74 61 3a 20 3c 73 70 61 6e | k-type">u32</span>,.delta:.<span |
| a6180 | 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 20 | .class="tok-type">usize</span>). |
| a61a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 73 69 7a 65 3c 2f 73 70 | <span.class="tok-type">isize</sp |
| a61c0 | 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>...... |
| a61e0 | 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 6e 63 72 65 61 73 65 73 20 74 68 65 20 73 69 7a | .This.function.increases.the.siz |
| a6200 | 65 20 6f 66 20 74 68 65 20 57 61 73 6d 20 6d 65 6d 6f 72 79 20 69 64 65 6e 74 69 66 69 65 64 20 | e.of.the.Wasm.memory.identified. |
| a6220 | 62 79 20 3c 63 6f 64 65 3e 69 6e 64 65 78 3c 2f 63 6f 64 65 3e 20 62 79 0a 20 20 20 20 20 20 3c | by.<code>index</code>.by.......< |
| a6240 | 63 6f 64 65 3e 64 65 6c 74 61 3c 2f 63 6f 64 65 3e 20 69 6e 20 75 6e 69 74 73 20 6f 66 20 75 6e | code>delta</code>.in.units.of.un |
| a6260 | 73 69 67 6e 65 64 20 6e 75 6d 62 65 72 20 6f 66 20 57 61 73 6d 20 70 61 67 65 73 2e 20 4e 6f 74 | signed.number.of.Wasm.pages..Not |
| a6280 | 65 20 74 68 61 74 20 65 61 63 68 20 57 61 73 6d 20 70 61 67 65 0a 20 20 20 20 20 20 69 73 20 36 | e.that.each.Wasm.page.......is.6 |
| a62a0 | 34 4b 42 20 69 6e 20 73 69 7a 65 2e 20 4f 6e 20 73 75 63 63 65 73 73 2c 20 72 65 74 75 72 6e 73 | 4KB.in.size..On.success,.returns |
| a62c0 | 20 70 72 65 76 69 6f 75 73 20 6d 65 6d 6f 72 79 20 73 69 7a 65 3b 20 6f 6e 20 66 61 69 6c 75 72 | .previous.memory.size;.on.failur |
| a62e0 | 65 2c 20 69 66 20 74 68 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 66 61 69 6c 73 2c 0a 20 20 20 20 | e,.if.the.allocation.fails,..... |
| a6300 | 20 20 72 65 74 75 72 6e 73 20 2d 31 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | ..returns.-1........</p>.......< |
| a6320 | 70 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 61 20 6c 6f 77 20 | p>.......This.function.is.a.low. |
| a6340 | 6c 65 76 65 6c 20 69 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 | level.intrinsic.with.no.safety.m |
| a6360 | 65 63 68 61 6e 69 73 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 | echanisms.usually.useful.for.all |
| a6380 | 6f 63 61 74 6f 72 0a 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 | ocator.......designers.targeting |
| a63a0 | 20 57 61 73 6d 2e 20 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 | .Wasm..So.unless.you.are.writing |
| a63c0 | 20 61 20 6e 65 77 20 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 | .a.new.allocator.from.scratch,.y |
| a63e0 | 6f 75 20 73 68 6f 75 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 | ou.should.use.......something.li |
| a6400 | 6b 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | ke.<code><span.class="tok-builti |
| a6420 | 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 |
| a6440 | 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>). |
| a6460 | 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 65 3e 2e 0a 20 | heap.WasmPageAllocator</code>... |
| a6480 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | .....</p>.......<figure><figcapt |
| a64a0 | 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d | ion.class="zig-cap"><cite.class= |
| a64c0 | 22 66 69 6c 65 22 3e 74 65 73 74 5f 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 5f 62 75 69 6c 74 | "file">test_wasmMemoryGrow_built |
| a64e0 | 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c | in.zig</cite></figcaption><pre>< |
| a6500 | 63 6f 64 65 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 | code><span.class="tok-kw">const< |
| a6520 | 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 |
| a6540 | 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 |
| a6560 | 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 |
| a6580 | 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< |
| a65a0 | 2f 73 70 61 6e 3e 20 6e 61 74 69 76 65 5f 61 72 63 68 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | /span>.native_arch.=.<span.class |
| a65c0 | 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 |
| a65e0 | 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 |
| a6600 | 6e 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 3b | n"</span>).target.cpu.arch; |
| a6620 | 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 |
| a6640 | 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 0a | n>.expect.=.std.testing.expect;. |
| a6660 | 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 |
| a6680 | 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 77 | >.<span.class="tok-str">"@w |
| a66a0 | 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | asmMemoryGrow"</span>.{.... |
| a66c0 | 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>. |
| a66e0 | 28 6e 61 74 69 76 65 5f 61 72 63 68 20 21 3d 20 2e 77 61 73 6d 33 32 29 20 3c 73 70 61 6e 20 63 | (native_arch.!=..wasm32).<span.c |
| a6700 | 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 |
| a6720 | 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 6b | n.class="tok-kw">error</span>.Sk |
| a6740 | 69 70 5a 69 67 54 65 73 74 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ipZigTest;......<span.class="tok |
| a6760 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 65 76 20 3d 20 3c 73 70 61 6e 20 63 | -kw">const</span>.prev.=.<span.c |
| a6780 | 6c 61 73 73 3d 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 53 69 | lass="tok-builtin">@wasmMemorySi |
| a67a0 | 7a 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 6e 75 6d 62 65 | ze</span>(<span.class="tok-numbe |
| a67c0 | 72 22 3e 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 | r">0</span>);.....<span.class="t |
| a67e0 | 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 72 65 76 20 3d 3d | ok-kw">try</span>.expect(prev.== |
| a6800 | 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 61 73 6d | .<span.class="tok-builtin">@wasm |
| a6820 | 4d 65 6d 6f 72 79 47 72 6f 77 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | MemoryGrow</span>(<span.class="t |
| a6840 | 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 61 73 73 | ok-number">0</span>,.<span.class |
| a6860 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 | ="tok-number">1</span>));.....<s |
| a6880 | 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 |
| a68a0 | 70 65 63 74 28 70 72 65 76 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | pect(prev.+.<span.class="tok-num |
| a68c0 | 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 74 6f | ber">1</span>.==.<span.class="to |
| a68e0 | 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 |
| a6900 | 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 2f 73 70 | >(<span.class="tok-number">0</sp |
| a6920 | 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 | an>));.}</code></pre></figure><f |
| a6940 | 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 | igure><figcaption.class="shell-c |
| a6960 | 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 | ap">Shell</figcaption><pre><samp |
| a6980 | 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 77 61 73 6d 4d 65 6d 6f 72 79 | >$.<kbd>zig.test.test_wasmMemory |
| a69a0 | 47 72 6f 77 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f | Grow_builtin.zig</kbd>.1/1.test_ |
| a69c0 | 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 40 77 61 73 | wasmMemoryGrow_builtin.test.@was |
| a69e0 | 6d 4d 65 6d 6f 72 79 47 72 6f 77 2e 2e 2e 53 4b 49 50 0a 30 20 70 61 73 73 65 64 3b 20 31 20 73 | mMemoryGrow...SKIP.0.passed;.1.s |
| a6a00 | 6b 69 70 70 65 64 3b 20 30 20 66 61 69 6c 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c | kipped;.0.failed..</samp></pre>< |
| a6a20 | 2f 66 69 67 75 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 | /figure>........<p>See.also:</p> |
| a6a40 | 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 72 79 53 69 7a | <ul>.<li><a.href="#wasmMemorySiz |
| a6a60 | 65 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 | e">@wasmMemorySize</a></li>.</ul |
| a6a80 | 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 6d 6f 64 22 3e 3c 61 | >................<h3.id="mod"><a |
| a6aa0 | 20 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 | .href="#toc-mod">@mod</a>.<a.cla |
| a6ac0 | 73 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 33 3e | ss="hdr".href="#mod">..</a></h3> |
| a6ae0 | 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ........<pre><code><span.class=" |
| a6b00 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 6f 64 3c 2f 73 70 61 6e 3e 28 6e 75 6d 65 72 61 74 | tok-builtin">@mod</span>(numerat |
| a6b20 | 6f 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 | or:.T,.denominator:.T).T</code>< |
| a6b40 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4d 6f 64 75 6c 75 73 20 64 69 | /pre>.......<p>.......Modulus.di |
| a6b60 | 76 69 73 69 6f 6e 2e 20 46 6f 72 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 73 20 74 68 | vision..For.unsigned.integers.th |
| a6b80 | 69 73 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 6e 75 | is.is.the.same.as.......<code>nu |
| a6ba0 | 6d 65 72 61 74 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 | merator.%.denominator</code>..Ca |
| a6bc0 | 6c 6c 65 72 20 67 75 61 72 61 6e 74 65 65 73 20 3c 63 6f 64 65 3e 64 65 6e 6f 6d 69 6e 61 74 6f | ller.guarantees.<code>denominato |
| a6be0 | 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 72 22 3e | r.>.<span.class="tok-number"> |
| a6c00 | 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 6f 74 68 65 72 77 69 73 65 20 74 68 65 0a 20 | 0</span></code>,.otherwise.the.. |
| a6c20 | 20 20 20 20 20 6f 70 65 72 61 74 69 6f 6e 20 77 69 6c 6c 20 72 65 73 75 6c 74 20 69 6e 20 61 20 | .....operation.will.result.in.a. |
| a6c40 | 3c 61 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 2d 62 79 2d | <a.href="#Remainder-Division-by- |
| a6c60 | 5a 65 72 6f 22 3e 52 65 6d 61 69 6e 64 65 72 20 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f | Zero">Remainder.Division.by.Zero |
| a6c80 | 3c 2f 61 3e 20 77 68 65 6e 20 72 75 6e 74 69 6d 65 20 73 61 66 65 74 79 20 63 68 65 63 6b 73 20 | </a>.when.runtime.safety.checks. |
| a6ca0 | 61 72 65 20 65 6e 61 62 6c 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 | are.enabled........</p>.......<u |
| a6cc0 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | l>...........<li><code><span.cla |
| a6ce0 | 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 61 6e 3e 28 2d 3c 73 | ss="tok-builtin">@mod</span>(-<s |
| a6d00 | 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 2c | pan.class="tok-number">5</span>, |
| a6d20 | 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 |
| a6d40 | 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 72 22 3e | n>).==.<span.class="tok-number"> |
| a6d60 | 31 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 | 1</span></code></li>...........< |
| a6d80 | 6c 69 3e 3c 63 6f 64 65 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | li><code>(<span.class="tok-built |
| a6da0 | 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 20 2a 20 62 29 20 | in">@divFloor</span>(a,.b).*.b). |
| a6dc0 | 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 40 6d 6f 64 | +.<span.class="tok-builtin">@mod |
| a6de0 | 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 69 3e 0a 20 | </span>(a,.b).==.a</code></li>.. |
| a6e00 | 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 6e 63 74 69 | .....</ul>.......<p>For.a.functi |
| a6e20 | 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 65 2c 20 73 | on.that.returns.an.error.code,.s |
| a6e40 | 65 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | ee.<code><span.class="tok-builti |
| a6e60 | 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 |
| a6e80 | 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>). |
| a6ea0 | 6d 61 74 68 2e 6d 6f 64 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 | math.mod</code>.</p>.......<p>Se |
| a6ec0 | 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 72 65 | e.also:</p><ul>.<li><a.href="#re |
| a6ee0 | 6d 22 3e 40 72 65 6d 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 | m">@rem</a></li>.</ul>.......... |
| a6f00 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 3c | ......<h3.id="mulWithOverflow">< |
| a6f20 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 6d | a.href="#toc-mulWithOverflow">@m |
| a6f40 | 75 6c 57 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 | ulWithOverflow</a>.<a.class="hdr |
| a6f60 | 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 c2 a7 3c 2f 61 3e | ".href="#mulWithOverflow">..</a> |
| a6f80 | 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </h3>........<pre><code><span.cl |
| a6fa0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c | ass="tok-builtin">@mulWithOverfl |
| a6fc0 | 6f 77 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 6b 77 | ow</span>(a:.<span.class="tok-kw |
| a6fe0 | 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">anytype</span>,.b:.<span.class |
| a7000 | 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. |
| a7020 | 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 20 3c | class="tok-kw">struct</span>.{.< |
| a7040 | 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 |
| a7060 | 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | </span>(a,.b),.<span.class="tok- |
| a7080 | 74 79 70 65 22 3e 75 31 3c 2f 73 70 61 6e 3e 20 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | type">u1</span>.}</code></pre>.. |
| a70a0 | 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 63 6f 64 65 3e 61 20 | .....<p>.......Performs.<code>a. |
| a70c0 | 2a 20 62 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 72 65 74 75 72 6e 73 20 61 20 74 75 70 6c 65 20 77 | *.b</code>.and.returns.a.tuple.w |
| a70e0 | 69 74 68 20 74 68 65 20 72 65 73 75 6c 74 20 61 6e 64 20 61 20 70 6f 73 73 69 62 6c 65 20 6f 76 | ith.the.result.and.a.possible.ov |
| a7100 | 65 72 66 6c 6f 77 20 62 69 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 | erflow.bit........</p>.......... |
| a7120 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 70 61 6e 69 63 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | .....<h3.id="panic"><a.href="#to |
| a7140 | 63 2d 70 61 6e 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 | c-panic">@panic</a>.<a.class="hd |
| a7160 | 72 22 20 68 72 65 66 3d 22 23 70 61 6e 69 63 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | r".href="#panic">..</a></h3>.... |
| a7180 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ....<pre><code><span.class="tok- |
| a71a0 | 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 73 73 61 67 65 3a 20 | builtin">@panic</span>(message:. |
| a71c0 | 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 |
| a71e0 | 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 |
| a7200 | 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 6e 6f 72 | pan>).<span.class="tok-type">nor |
| a7220 | 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 0a 20 20 20 20 20 20 | eturn</span></code></pre>....... |
| a7240 | 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 69 63 20 68 61 6e 64 | <p>.......Invokes.the.panic.hand |
| a7260 | 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 74 68 65 20 70 61 6e | ler.function..By.default.the.pan |
| a7280 | 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 20 63 61 6c 6c 73 20 | ic.handler.function.......calls. |
| a72a0 | 74 68 65 20 70 75 62 6c 69 63 20 3c 63 6f 64 65 3e 70 61 6e 69 63 3c 2f 63 6f 64 65 3e 20 66 75 | the.public.<code>panic</code>.fu |
| a72c0 | 6e 63 74 69 6f 6e 20 65 78 70 6f 73 65 64 20 69 6e 20 74 68 65 20 72 6f 6f 74 20 73 6f 75 72 63 | nction.exposed.in.the.root.sourc |
| a72e0 | 65 20 66 69 6c 65 2c 20 6f 72 0a 20 20 20 20 20 20 69 66 20 74 68 65 72 65 20 69 73 20 6e 6f 74 | e.file,.or.......if.there.is.not |
| a7300 | 20 6f 6e 65 20 73 70 65 63 69 66 69 65 64 2c 20 74 68 65 20 3c 63 6f 64 65 3e 73 74 64 2e 62 75 | .one.specified,.the.<code>std.bu |
| a7320 | 69 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 | iltin.default_panic</code>...... |
| a7340 | 20 66 75 6e 63 74 69 6f 6e 20 66 72 6f 6d 20 3c 63 6f 64 65 3e 73 74 64 2f 62 75 69 6c 74 69 6e | .function.from.<code>std/builtin |
| a7360 | 2e 7a 69 67 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 | .zig</code>........</p>.......<p |
| a7380 | 3e 47 65 6e 65 72 61 6c 6c 79 20 69 74 20 69 73 20 62 65 74 74 65 72 20 74 6f 20 75 73 65 20 3c | >Generally.it.is.better.to.use.< |
| a73a0 | 63 6f 64 65 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 | code><span.class="tok-builtin">@ |
| a73c0 | 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 |
| a73e0 | 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 62 75 | tr">"std"</span>).debu |
| a7400 | 67 2e 70 61 6e 69 63 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 48 6f 77 65 76 65 | g.panic</code>............Howeve |
| a7420 | 72 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | r,.<code><span.class="tok-builti |
| a7440 | 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 65 20 75 | n">@panic</span></code>.can.be.u |
| a7460 | 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 3c 2f 70 | seful.for.2.scenarios:.......</p |
| a7480 | 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 20 6c 69 | >.......<ul>.........<li>From.li |
| a74a0 | 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 61 6d 6d | brary.code,.calling.the.programm |
| a74c0 | 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 78 70 6f | er's.panic.function.if.they.expo |
| a74e0 | 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 6c 65 2e | sed.one.in.the.root.source.file. |
| a7500 | 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 20 43 20 | </li>.........<li>When.mixing.C. |
| a7520 | 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 6f 6e 69 | and.Zig.code,.calling.the.canoni |
| a7540 | 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 73 73 20 | cal.panic.implementation.across. |
| a7560 | 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 20 3c 2f | multiple..o.files.</li>.......</ |
| a7580 | 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 3e 0a 3c | ul>.......<p>See.also:</p><ul>.< |
| a75a0 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 61 6e 69 63 2d 48 61 6e 64 6c 65 72 22 3e 50 61 6e 69 | li><a.href="#Panic-Handler">Pani |
| a75c0 | 63 20 48 61 6e 64 6c 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 | c.Handler</a></li>.</ul>........ |
| a75e0 | 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 70 6f 70 43 6f 75 6e 74 22 3e 3c 61 20 68 72 65 | ........<h3.id="popCount"><a.hre |
| a7600 | 66 3d 22 23 74 6f 63 2d 70 6f 70 43 6f 75 6e 74 22 3e 40 70 6f 70 43 6f 75 6e 74 3c 2f 61 3e 20 | f="#toc-popCount">@popCount</a>. |
| a7620 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 70 6f 70 43 6f 75 6e 74 22 3e | <a.class="hdr".href="#popCount"> |
| a7640 | c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 | ..</a></h3>........<pre><code><s |
| a7660 | 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 6f 70 43 6f 75 6e | pan.class="tok-builtin">@popCoun |
| a7680 | 74 3c 2f 73 70 61 6e 3e 28 6f 70 65 72 61 6e 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | t</span>(operand:.<span.class="t |
| a76a0 | 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 61 | ok-kw">anytype</span>).<span.cla |
| a76c0 | 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 6f 64 65 | ss="tok-kw">anytype</span></code |
| a76e0 | 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | ></pre>.......<p><code><span.cla |
| a7700 | 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>( |
| a7720 | 6f 70 65 72 61 6e 64 29 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 6e 20 69 6e 74 65 67 | operand)</code>.must.be.an.integ |
| a7740 | 65 72 20 74 79 70 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 6f 70 65 72 | er.type.</p>.......<p><code>oper |
| a7760 | 61 6e 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 | and</code>.may.be.an.<a.href="#I |
| a7780 | 6e 74 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 | ntegers">integer</a>.or.<a.href= |
| a77a0 | 22 23 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 | "#Vectors">vector</a>.</p>...... |
| a77c0 | 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 75 6e 74 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 | .<p>.......Counts.the.number.of. |
| a77e0 | 62 69 74 73 20 73 65 74 20 69 6e 20 61 6e 20 69 6e 74 65 67 65 72 20 2d 20 22 70 6f 70 75 6c 61 | bits.set.in.an.integer.-."popula |
| a7800 | 74 69 6f 6e 20 63 6f 75 6e 74 22 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | tion.count"........</p>.......<p |
| a7820 | 3e 0a 20 20 20 20 20 20 54 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 61 6e 20 75 6e | >.......The.return.type.is.an.un |
| a7840 | 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 6f 72 20 76 65 63 74 6f 72 20 6f 66 20 75 6e 73 69 | signed.integer.or.vector.of.unsi |
| a7860 | 67 6e 65 64 20 69 6e 74 65 67 65 72 73 20 77 69 74 68 20 74 68 65 20 6d 69 6e 69 6d 75 6d 20 6e | gned.integers.with.the.minimum.n |
| a7880 | 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 63 61 6e 20 72 65 70 | umber.......of.bits.that.can.rep |
| a78a0 | 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 68 65 20 69 6e 74 65 | resent.the.bit.count.of.the.inte |
| a78c0 | 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 53 65 | ger.type........</p>.......<p>Se |
| a78e0 | 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 63 74 | e.also:</p><ul>.<li><a.href="#ct |
| a7900 | 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 72 65 66 3d 22 23 63 | z">@ctz</a></li>.<li><a.href="#c |
| a7920 | 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 20 20 20 20 20 20 0a | lz">@clz</a></li>.</ul>......... |
| a7940 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 70 72 65 66 65 74 63 68 22 3e 3c 61 20 68 72 65 66 | .......<h3.id="prefetch"><a.href |
| a7960 | 3d 22 23 74 6f 63 2d 70 72 65 66 65 74 63 68 22 3e 40 70 72 65 66 65 74 63 68 3c 2f 61 3e 20 3c | ="#toc-prefetch">@prefetch</a>.< |
| a7980 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 70 72 65 66 65 74 63 68 22 3e c2 | a.class="hdr".href="#prefetch">. |
| a79a0 | a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 | .</a></h3>........<pre><code><sp |
| a79c0 | 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 72 65 66 65 74 63 68 | an.class="tok-builtin">@prefetch |
| a79e0 | 3c 2f 73 70 61 6e 3e 28 70 74 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | </span>(ptr:.<span.class="tok-kw |
| a7a00 | 22 3e 61 6e 79 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 | ">anytype</span>,.<span.class="t |
| a7a20 | 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 20 | ok-kw">comptime</span>.options:. |
| a7a40 | 50 72 65 66 65 74 63 68 4f 70 74 69 6f 6e 73 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | PrefetchOptions).<span.class="to |
| a7a60 | 6b 2d 74 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 70 72 65 3e | k-type">void</span></code></pre> |
| a7a80 | 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 74 65 | .......<p>.......This.builtin.te |
| a7aa0 | 6c 6c 73 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 74 6f 20 65 6d 69 74 20 61 20 70 72 65 66 65 | lls.the.compiler.to.emit.a.prefe |
| a7ac0 | 74 63 68 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 69 66 20 73 75 70 70 6f 72 74 65 64 20 62 79 20 | tch.instruction.if.supported.by. |
| a7ae0 | 74 68 65 0a 20 20 20 20 20 20 74 61 72 67 65 74 20 43 50 55 2e 20 49 66 20 74 68 65 20 74 61 72 | the.......target.CPU..If.the.tar |
| a7b00 | 67 65 74 20 43 50 55 20 64 6f 65 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 20 74 68 65 20 72 65 71 | get.CPU.does.not.support.the.req |
| a7b20 | 75 65 73 74 65 64 20 70 72 65 66 65 74 63 68 20 69 6e 73 74 72 75 63 74 69 6f 6e 2c 0a 20 20 20 | uested.prefetch.instruction,.... |
| a7b40 | 20 20 20 74 68 69 73 20 62 75 69 6c 74 69 6e 20 69 73 20 61 20 6e 6f 2d 6f 70 2e 20 54 68 69 73 | ...this.builtin.is.a.no-op..This |
| a7b60 | 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 20 6e 6f 20 65 66 66 65 63 74 20 6f 6e 20 74 68 65 20 62 | .function.has.no.effect.on.the.b |
| a7b80 | 65 68 61 76 69 6f 72 20 6f 66 20 74 68 65 20 70 72 6f 67 72 61 6d 2c 0a 20 20 20 20 20 20 6f 6e | ehavior.of.the.program,.......on |
| a7ba0 | 6c 79 20 6f 6e 20 74 68 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 63 68 61 72 61 63 74 65 72 69 | ly.on.the.performance.characteri |
| a7bc0 | 73 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 | stics........</p>.......<p>..... |
| a7be0 | 20 20 54 68 65 20 3c 63 6f 64 65 3e 70 74 72 3c 2f 63 6f 64 65 3e 20 61 72 67 75 6d 65 6e 74 20 | ..The.<code>ptr</code>.argument. |
| a7c00 | 6d 61 79 20 62 65 20 61 6e 79 20 70 6f 69 6e 74 65 72 20 74 79 70 65 20 61 6e 64 20 64 65 74 65 | may.be.any.pointer.type.and.dete |
| a7c20 | 72 6d 69 6e 65 73 20 74 68 65 20 6d 65 6d 6f 72 79 0a 20 20 20 20 20 20 61 64 64 72 65 73 73 20 | rmines.the.memory.......address. |
| a7c40 | 74 6f 20 70 72 65 66 65 74 63 68 2e 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 64 6f 65 73 20 | to.prefetch..This.function.does. |
| a7c60 | 6e 6f 74 20 64 65 72 65 66 65 72 65 6e 63 65 20 74 68 65 20 70 6f 69 6e 74 65 72 2c 20 69 74 20 | not.dereference.the.pointer,.it. |
| a7c80 | 69 73 20 70 65 72 66 65 63 74 6c 79 20 6c 65 67 61 6c 0a 20 20 20 20 20 20 74 6f 20 70 61 73 73 | is.perfectly.legal.......to.pass |
| a7ca0 | 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 69 6e 76 61 6c 69 64 20 6d 65 6d 6f 72 79 20 74 6f 20 | .a.pointer.to.invalid.memory.to. |
| a7cc0 | 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 61 6e 64 20 6e 6f 20 49 6c 6c 65 67 61 6c 20 42 65 68 | this.function.and.no.Illegal.Beh |
| a7ce0 | 61 76 69 6f 72 20 77 69 6c 6c 20 72 65 73 75 6c 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | avior.will.result........</p>... |
| a7d00 | 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 50 72 65 66 65 74 63 68 4f 70 74 69 6f 6e 73 3c 2f 63 6f | ....<p><code>PrefetchOptions</co |
| a7d20 | 64 65 3e 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 77 69 74 68 20 3c 63 6f 64 65 3e 3c 73 70 61 | de>.can.be.found.with.<code><spa |
| a7d40 | 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 |
| a7d60 | 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">" |
| a7d80 | 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 50 72 65 66 65 | ;std"</span>).builtin.Prefe |
| a7da0 | 74 63 68 4f 70 74 69 6f 6e 73 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 | tchOptions</code>.</p>.......... |
| a7dc0 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 70 74 72 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 | .....<h3.id="ptrCast"><a.href="# |
| a7de0 | 74 6f 63 2d 70 74 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 | toc-ptrCast">@ptrCast</a>.<a.cla |
| a7e00 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 70 74 72 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c | ss="hdr".href="#ptrCast">..</a>< |
| a7e20 | 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | /h3>........<pre><code><span.cla |
| a7e40 | 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 2f 73 70 61 6e 3e | ss="tok-builtin">@ptrCast</span> |
| a7e60 | 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 79 | (value:.<span.class="tok-kw">any |
| a7e80 | 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 6b 77 | type</span>).<span.class="tok-kw |
| a7ea0 | 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 20 20 | ">anytype</span></code></pre>... |
| a7ec0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 20 70 6f 69 6e 74 65 72 | ....<p>.......Converts.a.pointer |
| a7ee0 | 20 6f 66 20 6f 6e 65 20 74 79 70 65 20 74 6f 20 61 20 70 6f 69 6e 74 65 72 20 6f 66 20 61 6e 6f | .of.one.type.to.a.pointer.of.ano |
| a7f00 | 74 68 65 72 20 74 79 70 65 2e 20 54 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 74 68 | ther.type..The.return.type.is.th |
| a7f20 | 65 20 69 6e 66 65 72 72 65 64 20 72 65 73 75 6c 74 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f | e.inferred.result.type........</ |
| a7f40 | 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 |
| a7f60 | 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 |
| a7f80 | 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 |
| a7fa0 | 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= |
| a7fc0 | 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- |
| a7fe0 | 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- |
| a8000 | 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 | checked.<a.href="#Illegal-Behavi |
| a8020 | 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 | or">Illegal.Behavior</a>........ |
| a8040 | 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 3e 3c 73 70 61 6e | </p>.......<p>.......<code><span |
| a8060 | 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 2f 73 | .class="tok-builtin">@ptrCast</s |
| a8080 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 6e 6f 74 20 62 65 20 75 73 65 64 20 66 6f 72 3a 0a | pan></code>.cannot.be.used.for:. |
| a80a0 | 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>........... |
| a80c0 | 3c 6c 69 3e 52 65 6d 6f 76 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | <li>Removing.<code><span.class=" |
| a80e0 | 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 71 75 61 6c | tok-kw">const</span></code>.qual |
| a8100 | 69 66 69 65 72 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6e 73 74 43 61 73 74 22 3e | ifier,.use.<a.href="#constCast"> |
| a8120 | 40 63 6f 6e 73 74 43 61 73 74 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | @constCast</a>.</li>...........< |
| a8140 | 6c 69 3e 52 65 6d 6f 76 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | li>Removing.<code><span.class="t |
| a8160 | 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 20 71 75 | ok-kw">volatile</span></code>.qu |
| a8180 | 61 6c 69 66 69 65 72 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 76 6f 6c 61 74 69 6c 65 43 | alifier,.use.<a.href="#volatileC |
| a81a0 | 61 73 74 22 3e 40 76 6f 6c 61 74 69 6c 65 43 61 73 74 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 | ast">@volatileCast</a>.</li>.... |
| a81c0 | 20 20 20 20 20 20 20 3c 6c 69 3e 43 68 61 6e 67 69 6e 67 20 70 6f 69 6e 74 65 72 20 61 64 64 72 | .......<li>Changing.pointer.addr |
| a81e0 | 65 73 73 20 73 70 61 63 65 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 61 64 64 72 53 70 61 | ess.space,.use.<a.href="#addrSpa |
| a8200 | 63 65 43 61 73 74 22 3e 40 61 64 64 72 53 70 61 63 65 43 61 73 74 3c 2f 61 3e 2e 3c 2f 6c 69 3e | ceCast">@addrSpaceCast</a>.</li> |
| a8220 | 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 63 72 65 61 73 69 6e 67 20 70 6f 69 6e 74 65 | ...........<li>Increasing.pointe |
| a8240 | 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 69 67 6e | r.alignment,.use.<a.href="#align |
| a8260 | 43 61 73 74 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | Cast">@alignCast</a>.</li>...... |
| a8280 | 20 20 20 20 20 3c 6c 69 3e 43 61 73 74 69 6e 67 20 61 20 6e 6f 6e 2d 73 6c 69 63 65 20 70 6f 69 | .....<li>Casting.a.non-slice.poi |
| a82a0 | 6e 74 65 72 20 74 6f 20 61 20 73 6c 69 63 65 2c 20 75 73 65 20 73 6c 69 63 69 6e 67 20 73 79 6e | nter.to.a.slice,.use.slicing.syn |
| a82c0 | 74 61 78 20 3c 63 6f 64 65 3e 70 74 72 5b 73 74 61 72 74 2e 2e 65 6e 64 5d 3c 2f 63 6f 64 65 3e | tax.<code>ptr[start..end]</code> |
| a82e0 | 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 0a 20 20 20 20 20 | .</li>.......</ul>.............. |
| a8300 | 20 3c 68 33 20 69 64 3d 22 70 74 72 46 72 6f 6d 49 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | .<h3.id="ptrFromInt"><a.href="#t |
| a8320 | 6f 63 2d 70 74 72 46 72 6f 6d 49 6e 74 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f 61 3e 20 3c | oc-ptrFromInt">@ptrFromInt</a>.< |
| a8340 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 70 74 72 46 72 6f 6d 49 6e 74 22 | a.class="hdr".href="#ptrFromInt" |
| a8360 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | >..</a></h3>........<pre><code>< |
| a8380 | 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 46 72 6f | span.class="tok-builtin">@ptrFro |
| a83a0 | 6d 49 6e 74 3c 2f 73 70 61 6e 3e 28 61 64 64 72 65 73 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | mInt</span>(address:.<span.class |
| a83c0 | 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 20 | ="tok-type">usize</span>).<span. |
| a83e0 | 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 |
| a8400 | 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 |
| a8420 | 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 3d 22 23 50 6f | rts.an.integer.to.a.<a.href="#Po |
| a8440 | 69 6e 74 65 72 73 22 3e 70 6f 69 6e 74 65 72 3c 2f 61 3e 2e 20 54 68 65 20 72 65 74 75 72 6e 20 | inters">pointer</a>..The.return. |
| a8460 | 74 79 70 65 20 69 73 20 74 68 65 20 69 6e 66 65 72 72 65 64 20 72 65 73 75 6c 74 20 74 79 70 65 | type.is.the.inferred.result.type |
| a8480 | 2e 0a 09 09 09 54 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 | .....To.convert.the.other.way,.u |
| a84a0 | 73 65 20 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 46 72 6f 6d 50 74 72 22 3e 40 69 6e 74 46 72 6f | se.<a.href="#intFromPtr">@intFro |
| a84c0 | 6d 50 74 72 3c 2f 61 3e 2e 20 43 61 73 74 69 6e 67 20 61 6e 20 61 64 64 72 65 73 73 20 6f 66 20 | mPtr</a>..Casting.an.address.of. |
| a84e0 | 30 20 74 6f 20 61 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 0a 20 20 20 20 20 20 77 68 | 0.to.a.destination.type.......wh |
| a8500 | 69 63 68 20 69 6e 20 6e 6f 74 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 50 6f | ich.in.not.<a.href="#Optional-Po |
| a8520 | 69 6e 74 65 72 73 22 3e 6f 70 74 69 6f 6e 61 6c 3c 2f 61 3e 20 61 6e 64 20 64 6f 65 73 20 6e 6f | inters">optional</a>.and.does.no |
| a8540 | 74 20 68 61 76 65 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | t.have.the.<code><span.class="to |
| a8560 | 6b 2d 6b 77 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 74 | k-kw">allowzero</span></code>.at |
| a8580 | 74 72 69 62 75 74 65 20 77 69 6c 6c 20 72 65 73 75 6c 74 20 69 6e 20 61 0a 20 20 20 20 20 20 3c | tribute.will.result.in.a.......< |
| a85a0 | 61 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 2d 4e 75 | a.href="#Pointer-Cast-Invalid-Nu |
| a85c0 | 6c 6c 22 3e 50 6f 69 6e 74 65 72 20 43 61 73 74 20 49 6e 76 61 6c 69 64 20 4e 75 6c 6c 3c 2f 61 | ll">Pointer.Cast.Invalid.Null</a |
| a85e0 | 3e 20 70 61 6e 69 63 20 77 68 65 6e 20 72 75 6e 74 69 6d 65 20 73 61 66 65 74 79 20 63 68 65 63 | >.panic.when.runtime.safety.chec |
| a8600 | 6b 73 20 61 72 65 20 65 6e 61 62 6c 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | ks.are.enabled........</p>...... |
| a8620 | 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 70 6f | .<p>.......If.the.destination.po |
| a8640 | 69 6e 74 65 72 20 74 79 70 65 20 64 6f 65 73 20 6e 6f 74 20 61 6c 6c 6f 77 20 61 64 64 72 65 73 | inter.type.does.not.allow.addres |
| a8660 | 73 20 7a 65 72 6f 20 61 6e 64 20 3c 63 6f 64 65 3e 61 64 64 72 65 73 73 3c 2f 63 6f 64 65 3e 0a | s.zero.and.<code>address</code>. |
| a8680 | 20 20 20 20 20 20 69 73 20 7a 65 72 6f 2c 20 74 68 69 73 20 69 6e 76 6f 6b 65 73 20 73 61 66 65 | ......is.zero,.this.invokes.safe |
| a86a0 | 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 | ty-checked.<a.href="#Illegal-Beh |
| a86c0 | 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 | avior">Illegal.Behavior</a>..... |
| a86e0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 72 65 | ...</p>...............<h3.id="re |
| a8700 | 6d 22 3e 3c 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 | m"><a.href="#toc-rem">@rem</a>.< |
| a8720 | 61 20 63 6c 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 | a.class="hdr".href="#rem">..</a> |
| a8740 | 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </h3>........<pre><code><span.cl |
| a8760 | 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 6e 3e 28 6e 75 | ass="tok-builtin">@rem</span>(nu |
| a8780 | 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 29 20 54 3c 2f 63 | merator:.T,.denominator:.T).T</c |
| a87a0 | 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 65 6d 61 69 | ode></pre>.......<p>.......Remai |
| a87c0 | 6e 64 65 72 20 64 69 76 69 73 69 6f 6e 2e 20 46 6f 72 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 | nder.division..For.unsigned.inte |
| a87e0 | 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 20 20 20 3c | gers.this.is.the.same.as.......< |
| a8800 | 63 6f 64 65 3e 6e 75 6d 65 72 61 74 6f 72 20 25 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3c 2f 63 6f | code>numerator.%.denominator</co |
| a8820 | 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 64 65 3e 64 65 6e | de>..Caller.guarantees.<code>den |
| a8840 | 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 |
| a8860 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 6f 74 68 65 72 77 69 73 | umber">0</span></code>,.otherwis |
| a8880 | 65 20 74 68 65 0a 20 20 20 20 20 20 6f 70 65 72 61 74 69 6f 6e 20 77 69 6c 6c 20 72 65 73 75 6c | e.the.......operation.will.resul |
| a88a0 | 74 20 69 6e 20 61 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6d 61 69 6e 64 65 72 2d 44 69 76 69 73 | t.in.a.<a.href="#Remainder-Divis |
| a88c0 | 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 20 | ion-by-Zero">Remainder.Division. |
| a88e0 | 62 79 20 5a 65 72 6f 3c 2f 61 3e 20 77 68 65 6e 20 72 75 6e 74 69 6d 65 20 73 61 66 65 74 79 20 | by.Zero</a>.when.runtime.safety. |
| a8900 | 63 68 65 63 6b 73 20 61 72 65 20 65 6e 61 62 6c 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | checks.are.enabled........</p>.. |
| a8920 | 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 3e 3c 73 | .....<ul>...........<li><code><s |
| a8940 | 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 73 70 | pan.class="tok-builtin">@rem</sp |
| a8960 | 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 62 65 72 22 3e 35 3c | an>(-<span.class="tok-number">5< |
| a8980 | 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" |
| a89a0 | 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 73 3d 22 74 6f 6b 2d | >3</span>).==.-<span.class="tok- |
| a89c0 | 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 20 20 | number">2</span></code></li>.... |
| a89e0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .......<li><code>(<span.class="t |
| a8a00 | 6f 6b 2d 62 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 | ok-builtin">@divTrunc</span>(a,. |
| a8a20 | 62 29 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 | b).*.b).+.<span.class="tok-built |
| a8a40 | 69 6e 22 3e 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 | in">@rem</span>(a,.b).==.a</code |
| a8a60 | 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 46 6f 72 20 | ></li>.......</ul>.......<p>For. |
| a8a80 | 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 20 65 72 72 6f 72 | a.function.that.returns.an.error |
| a8aa0 | 20 63 6f 64 65 2c 20 73 65 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .code,.see.<code><span.class="to |
| a8ac0 | 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. |
| a8ae0 | 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"< |
| a8b00 | 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 72 65 6d 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 | /span>).math.rem</code>.</p>.... |
| a8b20 | 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 |
| a8b40 | 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 3c 2f 75 6c 3e 0a 0a | ref="#mod">@mod</a></li>.</ul>.. |
| a8b60 | 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 72 65 74 75 72 6e 41 64 64 72 | ..............<h3.id="returnAddr |
| a8b80 | 65 73 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 72 65 74 75 72 6e 41 64 64 72 65 73 73 | ess"><a.href="#toc-returnAddress |
| a8ba0 | 22 3e 40 72 65 74 75 72 6e 41 64 64 72 65 73 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | ">@returnAddress</a>.<a.class="h |
| a8bc0 | 64 72 22 20 68 72 65 66 3d 22 23 72 65 74 75 72 6e 41 64 64 72 65 73 73 22 3e c2 a7 3c 2f 61 3e | dr".href="#returnAddress">..</a> |
| a8be0 | 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </h3>........<pre><code><span.cl |
| a8c00 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 74 75 72 6e 41 64 64 72 65 73 73 | ass="tok-builtin">@returnAddress |
| a8c20 | 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" |
| a8c40 | 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>...... |
| a8c60 | 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 |
| a8c80 | 20 74 68 65 20 61 64 64 72 65 73 73 20 6f 66 20 74 68 65 20 6e 65 78 74 20 6d 61 63 68 69 6e 65 | .the.address.of.the.next.machine |
| a8ca0 | 20 63 6f 64 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 65 | .code.instruction.that.will.be.e |
| a8cc0 | 78 65 63 75 74 65 64 0a 20 20 20 20 20 20 77 68 65 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 66 | xecuted.......when.the.current.f |
| a8ce0 | 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 3e 0a 20 20 20 20 | unction.returns........</p>..... |
| a8d00 | 20 20 3c 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 | ..<p>.......The.implications.of. |
| a8d20 | 74 68 69 73 20 61 72 65 20 74 61 72 67 65 74 2d 73 70 65 63 69 66 69 63 20 61 6e 64 20 6e 6f 74 | this.are.target-specific.and.not |
| a8d40 | 20 63 6f 6e 73 69 73 74 65 6e 74 20 61 63 72 6f 73 73 0a 20 20 20 20 20 20 61 6c 6c 20 70 6c 61 | .consistent.across.......all.pla |
| a8d60 | 74 66 6f 72 6d 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 | tforms........</p>.......<p>.... |
| a8d80 | 20 20 20 54 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 | ...This.function.is.only.valid.w |
| a8da0 | 69 74 68 69 6e 20 66 75 6e 63 74 69 6f 6e 20 73 63 6f 70 65 2e 20 49 66 20 74 68 65 20 66 75 6e | ithin.function.scope..If.the.fun |
| a8dc0 | 63 74 69 6f 6e 20 67 65 74 73 20 69 6e 6c 69 6e 65 64 20 69 6e 74 6f 0a 20 20 20 20 20 20 61 20 | ction.gets.inlined.into.......a. |
| a8de0 | 63 61 6c 6c 69 6e 67 20 66 75 6e 63 74 69 6f 6e 2c 20 74 68 65 20 72 65 74 75 72 6e 65 64 20 61 | calling.function,.the.returned.a |
| a8e00 | 64 64 72 65 73 73 20 77 69 6c 6c 20 61 70 70 6c 79 20 74 6f 20 74 68 65 20 63 61 6c 6c 69 6e 67 | ddress.will.apply.to.the.calling |
| a8e20 | 20 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 0a 0a 20 20 | .function........</p>........... |
| a8e40 | 20 20 20 20 3c 68 33 20 69 64 3d 22 73 65 6c 65 63 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | ....<h3.id="select"><a.href="#to |
| a8e60 | 63 2d 73 65 6c 65 63 74 22 3e 40 73 65 6c 65 63 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | c-select">@select</a>.<a.class=" |
| a8e80 | 68 64 72 22 20 68 72 65 66 3d 22 23 73 65 6c 65 63 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | hdr".href="#select">..</a></h3>. |
| a8ea0 | 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .......<pre><code><span.class="t |
| a8ec0 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 6c 65 63 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | ok-builtin">@select</span>(<span |
| a8ee0 | 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>. |
| a8f00 | 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</ |
| a8f20 | 73 70 61 6e 3e 2c 20 70 72 65 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | span>,.pred:.<span.class="tok-bu |
| a8f40 | 69 6c 74 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 6c 65 6e 2c 20 3c 73 70 61 6e | iltin">@Vector</span>(len,.<span |
| a8f60 | 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 2c 20 | .class="tok-type">bool</span>),. |
| a8f80 | 61 3a 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 56 65 | a:.<span.class="tok-builtin">@Ve |
| a8fa0 | 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 6c 65 6e 2c 20 54 29 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c | ctor</span>(len,.T),.b:.<span.cl |
| a8fc0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e | ass="tok-builtin">@Vector</span> |
| a8fe0 | 28 6c 65 6e 2c 20 54 29 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | (len,.T)).<span.class="tok-built |
| a9000 | 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 6c 65 6e 2c 20 54 29 3c 2f 63 6f 64 65 | in">@Vector</span>(len,.T)</code |
| a9020 | 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 65 6c 65 63 74 73 20 | ></pre>.......<p>.......Selects. |
| a9040 | 76 61 6c 75 65 73 20 65 6c 65 6d 65 6e 74 2d 77 69 73 65 20 66 72 6f 6d 20 3c 63 6f 64 65 3e 61 | values.element-wise.from.<code>a |
| a9060 | 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 62 61 73 65 64 20 | </code>.or.<code>b</code>.based. |
| a9080 | 6f 6e 20 3c 63 6f 64 65 3e 70 72 65 64 3c 2f 63 6f 64 65 3e 2e 20 49 66 20 3c 63 6f 64 65 3e 70 | on.<code>pred</code>..If.<code>p |
| a90a0 | 72 65 64 5b 69 5d 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | red[i]</code>.is.<code><span.cla |
| a90c0 | 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> |
| a90e0 | 2c 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 65 6c 65 6d 65 6e 74 20 69 6e 20 74 | ,.the.corresponding.element.in.t |
| a9100 | 68 65 20 72 65 73 75 6c 74 20 77 69 6c 6c 20 62 65 20 3c 63 6f 64 65 3e 61 5b 69 5d 3c 2f 63 6f | he.result.will.be.<code>a[i]</co |
| a9120 | 64 65 3e 20 61 6e 64 20 6f 74 68 65 72 77 69 73 65 20 3c 63 6f 64 65 3e 62 5b 69 5d 3c 2f 63 6f | de>.and.otherwise.<code>b[i]</co |
| a9140 | 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 |
| a9160 | 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 73 | o:</p><ul>.<li><a.href="#Vectors |
| a9180 | 22 3e 56 65 63 74 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 | ">Vectors</a></li>.</ul>........ |
| a91a0 | 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f | ........<h3.id="setEvalBranchQuo |
| a91c0 | 74 61 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 | ta"><a.href="#toc-setEvalBranchQ |
| a91e0 | 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 3c 61 | uota">@setEvalBranchQuota</a>.<a |
| a9200 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 65 74 45 76 61 6c 42 72 61 6e 63 | .class="hdr".href="#setEvalBranc |
| a9220 | 68 51 75 6f 74 61 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e | hQuota">..</a></h3>........<pre> |
| a9240 | 3c 63 6f 64 65 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 | <code><span.class="tok-builtin"> |
| a9260 | 40 73 65 74 45 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 | @setEvalBranchQuota</span>(<span |
| a9280 | 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>. |
| a92a0 | 6e 65 77 5f 71 75 6f 74 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | new_quota:.<span.class="tok-type |
| a92c0 | 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 |
| a92e0 | 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 70 72 65 3e 0a 20 20 | ype">void</span></code></pre>... |
| a9300 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 63 72 65 61 73 65 20 74 68 65 20 6d 61 78 69 6d | ....<p>.......Increase.the.maxim |
| a9320 | 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 62 61 63 6b 77 61 72 64 73 20 62 72 61 6e 63 68 65 73 20 | um.number.of.backwards.branches. |
| a9340 | 74 68 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 63 6f 64 65 0a 20 20 20 20 20 20 65 78 65 | that.compile-time.code.......exe |
| a9360 | 63 75 74 69 6f 6e 20 63 61 6e 20 75 73 65 20 62 65 66 6f 72 65 20 67 69 76 69 6e 67 20 75 70 20 | cution.can.use.before.giving.up. |
| a9380 | 61 6e 64 20 6d 61 6b 69 6e 67 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 0a 20 20 20 20 | and.making.a.compile.error...... |
| a93a0 | 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 20 3c 63 | ..</p>.......<p>.......If.the.<c |
| a93c0 | 6f 64 65 3e 6e 65 77 5f 71 75 6f 74 61 3c 2f 63 6f 64 65 3e 20 69 73 20 73 6d 61 6c 6c 65 72 20 | ode>new_quota</code>.is.smaller. |
| a93e0 | 74 68 61 6e 20 74 68 65 20 64 65 66 61 75 6c 74 20 71 75 6f 74 61 20 28 3c 63 6f 64 65 3e 3c 73 | than.the.default.quota.(<code><s |
| a9400 | 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 2f 73 70 61 | pan.class="tok-number">1000</spa |
| a9420 | 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 75 73 6c 79 | n></code>).or.......a.previously |
| a9440 | 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 20 69 67 6e | .explicitly.set.quota,.it.is.ign |
| a9460 | 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 20 20 20 20 | ored........</p>.......<p>...... |
| a9480 | 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 66 69 67 75 | .Example:.......</p>.......<figu |
| a94a0 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c | re><figcaption.class="zig-cap">< |
| a94c0 | 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 77 69 74 68 6f 75 74 5f 73 | cite.class="file">test_without_s |
| a94e0 | 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 | etEvalBranchQuota_builtin.zig</c |
| a9500 | 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 | ite></figcaption><pre><code><spa |
| a9520 | 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 |
| a9540 | 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 75 6f | an.class="tok-str">"foo&quo |
| a9560 | 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 |
| a9580 | 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 20 3c | -kw">comptime</span>.{.........< |
| a95a0 | 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 69 | span.class="tok-kw">var</span>.i |
| a95c0 | 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 73 | .=.<span.class="tok-number">0</s |
| a95e0 | 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 6f 6b 2d 6b | pan>;.........<span.class="tok-k |
| a9600 | 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 70 61 6e 20 63 6c | w">while</span>.(i.<.<span.cl |
| a9620 | 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 6e 3e 29 20 3a 20 | ass="tok-number">1001</span>).:. |
| a9640 | 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 62 65 72 22 3e 31 | (i.+=.<span.class="tok-number">1 |
| a9660 | 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 3c 2f 70 72 65 3e | </span>).{}.....}.}</code></pre> |
| a9680 | 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | </figure><figure><figcaption.cla |
| a96a0 | 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e | ss="shell-cap">Shell</figcaption |
| a96c0 | 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 | ><pre><samp>$.<kbd>zig.test.test |
| a96e0 | 5f 77 69 74 68 6f 75 74 5f 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 5f 62 75 69 6c | _without_setEvalBranchQuota_buil |
| a9700 | 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 | tin.zig</kbd>.<span.class="sgr-1 |
| a9720 | 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 | m">/home/andy/dev/zig/doc/langre |
| a9740 | 66 2f 74 65 73 74 5f 77 69 74 68 6f 75 74 5f 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 | f/test_without_setEvalBranchQuot |
| a9760 | 61 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3a 34 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | a_builtin.zig:4:9:.</span><span. |
| a9780 | 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | class="sgr-31m">error:.</span><s |
| a97a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 65 76 61 6c 75 61 74 69 6f 6e 20 65 78 | pan.class="sgr-1m">evaluation.ex |
| a97c0 | 63 65 65 64 65 64 20 31 30 30 30 20 62 61 63 6b 77 61 72 64 73 20 62 72 61 6e 63 68 65 73 0a 3c | ceeded.1000.backwards.branches.< |
| a97e0 | 2f 73 70 61 6e 3e 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 | /span>........while.(i.<.1001 |
| a9800 | 29 20 3a 20 28 69 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 | ).:.(i.+=.1).{}.........<span.cl |
| a9820 | 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e | ass="sgr-32m">^~~~~~~~~~~~~~~~~~ |
| a9840 | 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ~~~~~~~~~~~~.</span><span.class= |
| a9860 | 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f | "sgr-1m">/home/andy/dev/zig/doc/ |
| a9880 | 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 77 69 74 68 6f 75 74 5f 73 65 74 45 76 61 6c 42 72 61 6e | langref/test_without_setEvalBran |
| a98a0 | 63 68 51 75 6f 74 61 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3a 34 3a 39 3a 20 3c 2f 73 70 61 6e 3e | chQuota_builtin.zig:4:9:.</span> |
| a98c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 | <span.class="sgr-36m">note:.</sp |
| a98e0 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 75 73 65 20 40 73 65 74 | an><span.class="sgr-1m">use.@set |
| a9900 | 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 28 29 20 74 6f 20 72 61 69 73 65 20 74 68 65 20 62 | EvalBranchQuota().to.raise.the.b |
| a9920 | 72 61 6e 63 68 20 6c 69 6d 69 74 20 66 72 6f 6d 20 31 30 30 30 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f | ranch.limit.from.1000.</span>.</ |
| a9940 | 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 4e | samp></pre></figure>........<p>N |
| a9960 | 6f 77 20 77 65 20 75 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ow.we.use.<code><span.class="tok |
| a9980 | 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 3c 2f 73 | -builtin">@setEvalBranchQuota</s |
| a99a0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | pan></code>:</p>.......<figure>< |
| a99c0 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 | figcaption.class="zig-cap"><cite |
| a99e0 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 65 74 45 76 61 6c 42 72 61 6e 63 68 | .class="file">test_setEvalBranch |
| a9a00 | 51 75 6f 74 61 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | Quota_builtin.zig</cite></figcap |
| a9a20 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tion><pre><code><span.class="tok |
| a9a40 | 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 |
| a9a60 | 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>.{. |
| a9a80 | 20 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 | ....<span.class="tok-kw">comptim |
| a9aa0 | 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 3d 22 | e</span>.{.........<span.class=" |
| a9ac0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 | tok-builtin">@setEvalBranchQuota |
| a9ae0 | 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" |
| a9b00 | 3e 31 30 30 31 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 | >1001</span>);.........<span.cla |
| a9b20 | 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 |
| a9b40 | 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>;... |
| a9b60 | 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 |
| a9b80 | 3c 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 | </span>.(i.<.<span.class="tok |
| a9ba0 | 2d 6e 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 | -number">1001</span>).:.(i.+=.<s |
| a9bc0 | 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>) |
| a9be0 | 20 7b 7d 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | .{}.....}.}</code></pre></figure |
| a9c00 | 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c | ><figure><figcaption.class="shel |
| a9c20 | 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 | l-cap">Shell</figcaption><pre><s |
| a9c40 | 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 73 65 74 45 76 61 6c | amp>$.<kbd>zig.test.test_setEval |
| a9c60 | 42 72 61 6e 63 68 51 75 6f 74 61 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f | BranchQuota_builtin.zig</kbd>.1/ |
| a9c80 | 31 20 74 65 73 74 5f 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 5f 62 75 69 6c 74 69 | 1.test_setEvalBranchQuota_builti |
| a9ca0 | 6e 2e 74 65 73 74 2e 66 6f 6f 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 | n.test.foo...OK.All.1.tests.pass |
| a9cc0 | 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 0a 20 20 20 | ed..</samp></pre></figure>...... |
| a9ce0 | 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 |
| a9d00 | 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 3c 2f 6c 69 | ref="#comptime">comptime</a></li |
| a9d20 | 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 33 20 69 64 3d 22 73 | >.</ul>................<h3.id="s |
| a9d40 | 65 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 | etFloatMode"><a.href="#toc-setFl |
| a9d60 | 6f 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 | oatMode">@setFloatMode</a>.<a.cl |
| a9d80 | 61 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 | ass="hdr".href="#setFloatMode">. |
| a9da0 | a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 | .</a></h3>........<pre><code><sp |
| a9dc0 | 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 46 6c 6f 61 74 | an.class="tok-builtin">@setFloat |
| a9de0 | 4d 6f 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 6b 77 22 | Mode</span>(<span.class="tok-kw" |
| a9e00 | 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6d 6f 64 65 3a 20 46 6c 6f 61 74 4d 6f 64 65 | >comptime</span>.mode:.FloatMode |
| a9e20 | 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 |
| a9e40 | 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 43 68 61 6e 67 | pan></code></pre>.......<p>Chang |
| a9e60 | 65 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 63 6f 70 65 27 73 20 72 75 6c 65 73 20 61 62 6f | es.the.current.scope's.rules.abo |
| a9e80 | 75 74 20 68 6f 77 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6f 70 65 72 61 74 69 6f 6e 73 | ut.how.floating.point.operations |
| a9ea0 | 20 61 72 65 20 64 65 66 69 6e 65 64 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | .are.defined.</p>.......<ul>.... |
| a9ec0 | 20 20 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 3e 53 74 72 69 | .....<li>.............<code>Stri |
| a9ee0 | 63 74 3c 2f 63 6f 64 65 3e 20 28 64 65 66 61 75 6c 74 29 20 2d 20 46 6c 6f 61 74 69 6e 67 20 70 | ct</code>.(default).-.Floating.p |
| a9f00 | 6f 69 6e 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 66 6f 6c 6c 6f 77 20 73 74 72 69 63 74 20 49 45 | oint.operations.follow.strict.IE |
| a9f20 | 45 45 20 63 6f 6d 70 6c 69 61 6e 63 65 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 | EE.compliance..........</li>.... |
| a9f40 | 20 20 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 3e 4f 70 74 69 | .....<li>.............<code>Opti |
| a9f60 | 6d 69 7a 65 64 3c 2f 63 6f 64 65 3e 20 2d 20 46 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6f 70 | mized</code>.-.Floating.point.op |
| a9f80 | 65 72 61 74 69 6f 6e 73 20 6d 61 79 20 64 6f 20 61 6c 6c 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f | erations.may.do.all.of.the.follo |
| a9fa0 | 77 69 6e 67 3a 0a 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 | wing:...........<ul>............ |
| a9fc0 | 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 20 72 65 | .<li>Assume.the.arguments.and.re |
| a9fe0 | 73 75 6c 74 20 61 72 65 20 6e 6f 74 20 4e 61 4e 2e 20 4f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 | sult.are.not.NaN..Optimizations. |
| aa000 | 61 72 65 20 72 65 71 75 69 72 65 64 20 74 6f 20 72 65 74 61 69 6e 20 6c 65 67 61 6c 20 62 65 68 | are.required.to.retain.legal.beh |
| aa020 | 61 76 69 6f 72 20 6f 76 65 72 20 4e 61 4e 73 2c 20 62 75 74 20 74 68 65 20 76 61 6c 75 65 20 6f | avior.over.NaNs,.but.the.value.o |
| aa040 | 66 20 74 68 65 20 72 65 73 75 6c 74 20 69 73 20 75 6e 64 65 66 69 6e 65 64 2e 3c 2f 6c 69 3e 0a | f.the.result.is.undefined.</li>. |
| aa060 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 73 73 75 6d 65 20 74 68 65 20 61 72 67 75 6d | ............<li>Assume.the.argum |
| aa080 | 65 6e 74 73 20 61 6e 64 20 72 65 73 75 6c 74 20 61 72 65 20 6e 6f 74 20 2b 2f 2d 49 6e 66 2e 20 | ents.and.result.are.not.+/-Inf.. |
| aa0a0 | 4f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 61 72 65 20 72 65 71 75 69 72 65 64 20 74 6f 20 72 65 | Optimizations.are.required.to.re |
| aa0c0 | 74 61 69 6e 20 6c 65 67 61 6c 20 62 65 68 61 76 69 6f 72 20 6f 76 65 72 20 2b 2f 2d 49 6e 66 2c | tain.legal.behavior.over.+/-Inf, |
| aa0e0 | 20 62 75 74 20 74 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 | .but.the.value.of.the.result.is. |
| aa100 | 75 6e 64 65 66 69 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 | undefined.</li>.............<li> |
| aa120 | 54 72 65 61 74 20 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 | Treat.the.sign.of.a.zero.argumen |
| aa140 | 74 20 6f 72 20 72 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 | t.or.result.as.insignificant.</l |
| aa160 | 69 3e 0a 20 20 20 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 | i>.............<li>Use.the.recip |
| aa180 | 72 6f 63 61 6c 20 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 | rocal.of.an.argument.rather.than |
| aa1a0 | 20 70 65 72 66 6f 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 | .perform.division.</li>......... |
| aa1c0 | 20 20 20 20 3c 6c 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 | ....<li>Perform.floating-point.c |
| aa1e0 | 6f 6e 74 72 61 63 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 | ontraction.(e.g..fusing.a.multip |
| aa200 | 6c 79 20 66 6f 6c 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 | ly.followed.by.an.addition.into. |
| aa220 | 61 20 66 75 73 65 64 20 6d 75 6c 74 69 70 6c 79 2d 61 64 64 29 2e 3c 2f 6c 69 3e 0a 20 20 20 20 | a.fused.multiply-add).</li>..... |
| aa240 | 20 20 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 | ........<li>Perform.algebraicall |
| aa260 | 79 20 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 | y.equivalent.transformations.tha |
| aa280 | 74 20 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 | t.may.change.results.in.floating |
| aa2a0 | 20 70 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 | .point.(e.g..reassociate).</li>. |
| aa2c0 | 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 54 68 69 73 20 69 | ..........</ul>...........This.i |
| aa2e0 | 73 20 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 | s.equivalent.to.<code>-ffast-mat |
| aa300 | 68 3c 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 | h</code>.in.GCC..........</li>.. |
| aa320 | 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 54 68 65 20 66 | .....</ul>.......<p>.......The.f |
| aa340 | 6c 6f 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 | loating.point.mode.is.inherited. |
| aa360 | 62 79 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 | by.child.scopes,.and.can.be.over |
| aa380 | 72 69 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 | ridden.in.any.scope........You.c |
| aa3a0 | 61 6e 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 | an.set.the.floating.point.mode.i |
| aa3c0 | 6e 20 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 | n.a.struct.or.module.scope.by.us |
| aa3e0 | 69 6e 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 | ing.a.comptime.block........</p> |
| aa400 | 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 46 6c 6f 61 74 4d 6f 64 65 3c 2f 63 6f 64 65 3e | .......<p><code>FloatMode</code> |
| aa420 | 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 77 69 74 68 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | .can.be.found.with.<code><span.c |
| aa440 | 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 |
| aa460 | 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 |
| aa480 | 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 74 4d 6f 64 | d"</span>).builtin.FloatMod |
| aa4a0 | 65 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 20 61 6c 73 6f 3a | e</code>.</p>.......<p>See.also: |
| aa4c0 | 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 69 6e 67 2d | </p><ul>.<li><a.href="#Floating- |
| aa4e0 | 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 46 6c 6f 61 74 69 6e 67 20 50 6f 69 6e 74 | Point-Operations">Floating.Point |
| aa500 | 20 4f 70 65 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 | .Operations</a></li>.</ul>...... |
| aa520 | 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 | ..........<h3.id="setRuntimeSafe |
| aa540 | 74 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 | ty"><a.href="#toc-setRuntimeSafe |
| aa560 | 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 20 3c 61 20 63 6c 61 | ty">@setRuntimeSafety</a>.<a.cla |
| aa580 | 73 73 3d 22 68 64 72 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 | ss="hdr".href="#setRuntimeSafety |
| aa5a0 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e | ">..</a></h3>........<pre><code> |
| aa5c0 | 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 52 75 | <span.class="tok-builtin">@setRu |
| aa5e0 | 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ntimeSafety</span>(<span.class=" |
| aa600 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 73 61 66 65 74 79 5f 6f | tok-kw">comptime</span>.safety_o |
| aa620 | 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 2f | n:.<span.class="tok-type">bool</ |
| aa640 | 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 6f | span>).<span.class="tok-type">vo |
| aa660 | 69 64 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 | id</span></code></pre>.......<p> |
| aa680 | 0a 20 20 20 20 20 20 53 65 74 73 20 77 68 65 74 68 65 72 20 72 75 6e 74 69 6d 65 20 73 61 66 65 | .......Sets.whether.runtime.safe |
| aa6a0 | 74 79 20 63 68 65 63 6b 73 20 61 72 65 20 65 6e 61 62 6c 65 64 20 66 6f 72 20 74 68 65 20 73 63 | ty.checks.are.enabled.for.the.sc |
| aa6c0 | 6f 70 65 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 | ope.that.contains.the.function.c |
| aa6e0 | 61 6c 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 | all........</p>.......<figure><f |
| aa700 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 | igcaption.class="zig-cap"><cite. |
| aa720 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 | class="file">test_setRuntimeSafe |
| aa740 | 74 79 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | ty_builtin.zig</cite></figcaptio |
| aa760 | 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n><pre><code><span.class="tok-kw |
| aa780 | 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 |
| aa7a0 | 74 72 22 3e 26 71 75 6f 74 3b 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 26 71 75 6f 74 | tr">"@setRuntimeSafety" |
| aa7c0 | 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- |
| aa7e0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 62 75 69 6c 74 69 6e 20 61 70 70 6c 69 65 73 20 | comment">//.The.builtin.applies. |
| aa800 | 74 6f 20 74 68 65 20 73 63 6f 70 65 20 74 68 61 74 20 69 74 20 69 73 20 63 61 6c 6c 65 64 20 69 | to.the.scope.that.it.is.called.i |
| aa820 | 6e 2e 20 53 6f 20 68 65 72 65 2c 20 69 6e 74 65 67 65 72 20 6f 76 65 72 66 6c 6f 77 3c 2f 73 70 | n..So.here,.integer.overflow</sp |
| aa840 | 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 |
| aa860 | 22 3e 2f 2f 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 63 61 75 67 68 74 20 69 6e 20 52 65 6c 65 61 | ">//.will.not.be.caught.in.Relea |
| aa880 | 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 65 73 3a 3c 2f | seFast.and.ReleaseSmall.modes:</ |
| aa8a0 | 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 65 | span>.....<span.class="tok-comme |
| aa8c0 | 6e 74 22 3e 2f 2f 20 76 61 72 20 78 3a 20 75 38 20 3d 20 32 35 35 3b 3c 2f 73 70 61 6e 3e 0a 20 | nt">//.var.x:.u8.=.255;</span>.. |
| aa8e0 | 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">//. |
| aa900 | 78 20 2b 3d 20 31 3b 20 2f 2f 20 55 6e 63 68 65 63 6b 65 64 20 49 6c 6c 65 67 61 6c 20 42 65 68 | x.+=.1;.//.Unchecked.Illegal.Beh |
| aa920 | 61 76 69 6f 72 20 69 6e 20 52 65 6c 65 61 73 65 46 61 73 74 2f 52 65 6c 65 61 73 65 53 6d 61 6c | avior.in.ReleaseFast/ReleaseSmal |
| aa940 | 6c 20 6d 6f 64 65 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 | l.modes.</span>.....{.........<s |
| aa960 | 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 48 6f 77 65 76 | pan.class="tok-comment">//.Howev |
| aa980 | 65 72 20 74 68 69 73 20 62 6c 6f 63 6b 20 68 61 73 20 73 61 66 65 74 79 20 65 6e 61 62 6c 65 64 | er.this.block.has.safety.enabled |
| aa9a0 | 2c 20 73 6f 20 73 61 66 65 74 79 20 63 68 65 63 6b 73 20 68 61 70 70 65 6e 20 68 65 72 65 2c 3c | ,.so.safety.checks.happen.here,< |
| aa9c0 | 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 6b 2d | /span>.........<span.class="tok- |
| aa9e0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 76 65 6e 20 69 6e 20 52 65 6c 65 61 73 65 46 61 73 74 20 | comment">//.even.in.ReleaseFast. |
| aaa00 | 61 6e 64 20 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 | and.ReleaseSmall.modes.</span>.. |
| aaa20 | 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" |
| aaa40 | 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | >@setRuntimeSafety</span>(<span. |
| aaa60 | 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 20 | class="tok-null">true</span>);.. |
| aaa80 | 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 76 61 72 3c | .......<span.class="tok-kw">var< |
| aaaa0 | 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 22 | /span>.x:.<span.class="tok-type" |
| aaac0 | 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 |
| aaae0 | 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 78 20 2b 3d 20 3c | mber">255</span>;.........x.+=.< |
| aab00 | 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> |
| aab20 | 3b 0a 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ;..........{.............<span.c |
| aab40 | 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 76 61 6c 75 65 20 | lass="tok-comment">//.The.value. |
| aab60 | 63 61 6e 20 62 65 20 6f 76 65 72 72 69 64 64 65 6e 20 61 74 20 61 6e 79 20 73 63 6f 70 65 2e 20 | can.be.overridden.at.any.scope.. |
| aab80 | 53 6f 20 68 65 72 65 20 69 6e 74 65 67 65 72 20 6f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 0a | So.here.integer.overflow</span>. |
| aaba0 | 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 |
| aabc0 | 6d 65 6e 74 22 3e 2f 2f 20 77 6f 75 6c 64 20 6e 6f 74 20 62 65 20 63 61 75 67 68 74 20 69 6e 20 | ment">//.would.not.be.caught.in. |
| aabe0 | 61 6e 79 20 62 75 69 6c 64 20 6d 6f 64 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 | any.build.mode.</span>.......... |
| aac00 | 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 73 65 | ...<span.class="tok-builtin">@se |
| aac20 | 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | tRuntimeSafety</span>(<span.clas |
| aac40 | 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 20 20 20 20 | s="tok-null">false</span>);..... |
| aac60 | 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 |
| aac80 | 22 3e 2f 2f 20 76 61 72 20 78 3a 20 75 38 20 3d 20 32 35 35 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 | ">//.var.x:.u8.=.255;</span>.... |
| aaca0 | 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 6d 65 6e | .........<span.class="tok-commen |
| aacc0 | 74 22 3e 2f 2f 20 78 20 2b 3d 20 31 3b 20 2f 2f 20 55 6e 63 68 65 63 6b 65 64 20 49 6c 6c 65 67 | t">//.x.+=.1;.//.Unchecked.Illeg |
| aace0 | 61 6c 20 42 65 68 61 76 69 6f 72 20 69 6e 20 61 6c 6c 20 62 75 69 6c 64 20 6d 6f 64 65 73 2e 3c | al.Behavior.in.all.build.modes.< |
| aad00 | 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 64 65 3e 3c | /span>.........}.....}.}</code>< |
| aad20 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | /pre></figure><figure><figcaptio |
| aad40 | 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 | n.class="shell-cap">Shell</figca |
| aad60 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 | ption><pre><samp>$.<kbd>zig.test |
| aad80 | 20 74 65 73 74 5f 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 5f 62 75 69 6c 74 69 6e 2e 7a | .test_setRuntimeSafety_builtin.z |
| aada0 | 69 67 20 2d 4f 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f | ig.-OReleaseFast</kbd>.1/1.test_ |
| aadc0 | 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 40 73 | setRuntimeSafety_builtin.test.@s |
| aade0 | 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 2e 2e 2e 74 68 72 65 61 64 20 32 31 30 39 38 32 20 | etRuntimeSafety...thread.210982. |
| aae00 | 70 61 6e 69 63 3a 20 69 6e 74 65 67 65 72 20 6f 76 65 72 66 6c 6f 77 0a 3c 73 70 61 6e 20 63 6c | panic:.integer.overflow.<span.cl |
| aae20 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | ass="sgr-1m">/home/andy/dev/zig/ |
| aae40 | 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 | doc/langref/test_setRuntimeSafet |
| aae60 | 79 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3a 31 31 3a 31 31 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | y_builtin.zig:11:11</span>:.<spa |
| aae80 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 30 62 31 33 38 20 69 6e 20 74 65 | n.class="sgr-2m">0x100b138.in.te |
| aaea0 | 73 74 2e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 20 28 74 65 73 74 29 3c 2f 73 70 61 | st.@setRuntimeSafety.(test)</spa |
| aaec0 | 6e 3e 0a 20 20 20 20 20 20 20 20 78 20 2b 3d 20 31 3b 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 | n>.........x.+=.1;...........<sp |
| aaee0 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | an.class="sgr-32m">^</span>.<spa |
| aaf00 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f | n.class="sgr-1m">/home/andy/dev/ |
| aaf20 | 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 | zig/lib/compiler/test_runner.zig |
| aaf40 | 3a 32 31 34 3a 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | :214:25</span>:.<span.class="sgr |
| aaf60 | 2d 32 6d 22 3e 30 78 31 30 33 33 32 36 38 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 | -2m">0x1033268.in.main.(test)</s |
| aaf80 | 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 65 73 74 5f 66 6e 2e 66 75 6e 63 28 29 29 | pan>.........if.(test_fn.func()) |
| aafa0 | 20 7c 5f 7c 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 3c | .|_|.{.........................< |
| aafc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 | span.class="sgr-32m">^</span>.<s |
| aafe0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | pan.class="sgr-1m">/home/andy/de |
| ab000 | 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 35 31 3a 32 32 3c 2f | v/zig/lib/std/start.zig:651:22</ |
| ab020 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 | span>:.<span.class="sgr-2m">0x10 |
| ab040 | 33 31 38 66 64 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 | 318fd.in.posixCallMainAndExit.(t |
| ab060 | 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 61 69 | est)</span>.............root.mai |
| ab080 | 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 6e 20 | n();......................<span. |
| ab0a0 | 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | class="sgr-32m">^</span>.<span.c |
| ab0c0 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 | lass="sgr-1m">/home/andy/dev/zig |
| ab0e0 | 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f 73 70 61 6e 3e 3a | /lib/std/start.zig:271:5</span>: |
| ab100 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 31 34 30 64 20 | .<span.class="sgr-2m">0x103140d. |
| ab120 | 69 6e 20 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 61 73 6d 20 | in._start.(test)</span>.....asm. |
| ab140 | 76 6f 6c 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b | volatile.(switch.(native_arch).{ |
| ab160 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 | .....<span.class="sgr-32m">^</sp |
| ab180 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f | an>.<span.class="sgr-1m">???:?:? |
| ab1a0 | 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 | </span>:.<span.class="sgr-2m">0x |
| ab1c0 | 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 65 72 72 6f 72 3a 20 74 68 65 | 0.in.???.(???)</span>.error:.the |
| ab1e0 | 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 65 64 3a | .following.test.command.crashed: |
| ab200 | 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f | ./home/andy/dev/zig/.zig-cache/o |
| ab220 | 2f 35 64 36 66 33 37 36 35 32 36 32 32 31 33 63 63 39 64 64 35 33 64 31 63 36 34 37 65 37 62 63 | /5d6f3765262213cc9dd53d1c647e7bc |
| ab240 | 35 2f 74 65 73 74 20 2d 2d 73 65 65 64 3d 30 78 65 66 65 38 31 31 39 61 0a 3c 2f 73 61 6d 70 3e | 5/test.--seed=0xefe8119a.</samp> |
| ab260 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 4e 6f 74 65 3a 20 | </pre></figure>........<p>Note:. |
| ab280 | 69 74 20 69 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 6f | it.is.<a.href="https://github.co |
| ab2a0 | 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 39 37 38 22 3e 70 6c 61 6e 6e 65 | m/ziglang/zig/issues/978">planne |
| ab2c0 | 64 3c 2f 61 3e 20 74 6f 20 72 65 70 6c 61 63 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 | d</a>.to.replace.......<code><sp |
| ab2e0 | 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 |
| ab300 | 6d 65 53 61 66 65 74 79 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 74 68 20 3c 63 6f 64 | meSafety</span></code>.with.<cod |
| ab320 | 65 3e 40 6f 70 74 69 6d 69 7a 65 46 6f 72 3c 2f 63 6f 64 65 3e 3c 2f 70 3e 0a 0a 20 20 20 20 20 | e>@optimizeFor</code></p>....... |
| ab340 | 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 73 68 6c 45 78 61 63 74 22 3e 3c 61 20 68 72 | .........<h3.id="shlExact"><a.hr |
| ab360 | 65 66 3d 22 23 74 6f 63 2d 73 68 6c 45 78 61 63 74 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 61 3e | ef="#toc-shlExact">@shlExact</a> |
| ab380 | 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 45 78 61 63 74 22 | .<a.class="hdr".href="#shlExact" |
| ab3a0 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | >..</a></h3>........<pre><code>< |
| ab3c0 | 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 6c 45 78 61 | span.class="tok-builtin">@shlExa |
| ab3e0 | 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 20 4c | ct</span>(value:.T,.shift_amt:.L |
| ab400 | 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 0a 20 | og2T).T</code></pre>.......<p>.. |
| ab420 | 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 20 6f 70 65 | .....Performs.the.left.shift.ope |
| ab440 | 72 61 74 69 6f 6e 20 28 3c 63 6f 64 65 3e 26 6c 74 3b 26 6c 74 3b 3c 2f 63 6f 64 65 3e 29 2e 0a | ration.(<code><<</code>).. |
| ab460 | 20 20 20 20 20 20 46 6f 72 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 73 2c 20 74 68 65 | ......For.unsigned.integers,.the |
| ab480 | 20 72 65 73 75 6c 74 20 69 73 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e | .result.is.<a.href="#undefined"> |
| ab4a0 | 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 20 69 66 20 61 6e 79 20 31 20 62 69 74 73 0a 20 20 20 20 | undefined</a>.if.any.1.bits..... |
| ab4c0 | 20 20 61 72 65 20 73 68 69 66 74 65 64 20 6f 75 74 2e 20 46 6f 72 20 73 69 67 6e 65 64 20 69 6e | ..are.shifted.out..For.signed.in |
| ab4e0 | 74 65 67 65 72 73 2c 20 74 68 65 20 72 65 73 75 6c 74 20 69 73 20 3c 61 20 68 72 65 66 3d 22 23 | tegers,.the.result.is.<a.href="# |
| ab500 | 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 20 69 66 0a 20 20 20 20 | undefined">undefined</a>.if..... |
| ab520 | 20 20 61 6e 79 20 62 69 74 73 20 74 68 61 74 20 64 69 73 61 67 72 65 65 20 77 69 74 68 20 74 68 | ..any.bits.that.disagree.with.th |
| ab540 | 65 20 72 65 73 75 6c 74 61 6e 74 20 73 69 67 6e 20 62 69 74 20 61 72 65 20 73 68 69 66 74 65 64 | e.resultant.sign.bit.are.shifted |
| ab560 | 20 6f 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 | .out........</p>.......<p>...... |
| ab580 | 20 54 68 65 20 74 79 70 65 20 6f 66 20 3c 63 6f 64 65 3e 73 68 69 66 74 5f 61 6d 74 3c 2f 63 6f | .The.type.of.<code>shift_amt</co |
| ab5a0 | 64 65 3e 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 | de>.is.an.unsigned.integer.with. |
| ab5c0 | 3c 63 6f 64 65 3e 6c 6f 67 32 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | <code>log2(<span.class="tok-buil |
| ab5e0 | 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 54 29 2e 69 6e 74 2e 62 69 74 | tin">@typeInfo</span>(T).int.bit |
| ab600 | 73 29 3c 2f 63 6f 64 65 3e 20 62 69 74 73 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 62 65 | s)</code>.bits........This.is.be |
| ab620 | 63 61 75 73 65 20 3c 63 6f 64 65 3e 73 68 69 66 74 5f 61 6d 74 20 26 67 74 3b 3d 20 3c 73 70 61 | cause.<code>shift_amt.>=.<spa |
| ab640 | 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 6f 3c | n.class="tok-builtin">@typeInfo< |
| ab660 | 2f 73 70 61 6e 3e 28 54 29 2e 69 6e 74 2e 62 69 74 73 3c 2f 63 6f 64 65 3e 20 74 72 69 67 67 65 | /span>(T).int.bits</code>.trigge |
| ab680 | 72 73 20 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 49 6c 6c 65 | rs.safety-checked.<a.href="#Ille |
| ab6a0 | 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f | gal-Behavior">Illegal.Behavior</ |
| ab6c0 | 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 20 20 20 3c | a>........</p>.......<p>.......< |
| ab6e0 | 63 6f 64 65 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 | code><span.class="tok-type">comp |
| ab700 | 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 6d 6f 64 65 6c 65 | time_int</span></code>.is.modele |
| ab720 | 64 20 61 73 20 61 6e 20 69 6e 74 65 67 65 72 20 77 69 74 68 20 61 6e 20 69 6e 66 69 6e 69 74 65 | d.as.an.integer.with.an.infinite |
| ab740 | 20 6e 75 6d 62 65 72 20 6f 66 20 62 69 74 73 2c 0a 20 20 20 20 20 20 6d 65 61 6e 69 6e 67 20 74 | .number.of.bits,.......meaning.t |
| ab760 | 68 61 74 20 69 6e 20 73 75 63 68 20 63 61 73 65 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | hat.in.such.case,.<code><span.cl |
| ab780 | 61 73 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 | ass="tok-builtin">@shlExact</spa |
| ab7a0 | 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6c 77 61 79 73 20 70 72 6f 64 75 63 65 73 20 61 20 72 65 73 75 | n></code>.always.produces.a.resu |
| ab7c0 | 6c 74 20 61 6e 64 0a 20 20 20 20 20 20 63 61 6e 6e 6f 74 20 70 72 6f 64 75 63 65 20 61 20 63 6f | lt.and.......cannot.produce.a.co |
| ab7e0 | 6d 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 | mpile.error........</p>.......<p |
| ab800 | 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=" |
| ab820 | 23 73 68 72 45 78 61 63 74 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c | #shrExact">@shrExact</a></li>.<l |
| ab840 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 68 | i><a.href="#shlWithOverflow">@sh |
| ab860 | 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 | lWithOverflow</a></li>.</ul>.... |
| ab880 | 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 73 68 6c 57 69 74 68 4f 76 65 72 66 | ............<h3.id="shlWithOverf |
| ab8a0 | 6c 6f 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 68 6c 57 69 74 68 4f 76 65 72 66 6c | low"><a.href="#toc-shlWithOverfl |
| ab8c0 | 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | ow">@shlWithOverflow</a>.<a.clas |
| ab8e0 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e | s="hdr".href="#shlWithOverflow"> |
| ab900 | c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 | ..</a></h3>........<pre><code><s |
| ab920 | 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 6c 57 69 74 68 | pan.class="tok-builtin">@shlWith |
| ab940 | 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | Overflow</span>(a:.<span.class=" |
| ab960 | 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 73 68 69 66 74 5f 61 6d | tok-kw">anytype</span>,.shift_am |
| ab980 | 74 3a 20 4c 6f 67 32 54 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 | t:.Log2T).<span.class="tok-kw">s |
| ab9a0 | 74 72 75 63 74 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 | truct</span>.{.<span.class="tok- |
| ab9c0 | 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 29 2c 20 3c 73 70 61 | builtin">@TypeOf</span>(a),.<spa |
| ab9e0 | 6e 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 20 7d 3c 2f | n.class="tok-type">u1</span>.}</ |
| aba00 | 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 50 65 72 66 | code></pre>.......<p>.......Perf |
| aba20 | 6f 72 6d 73 20 3c 63 6f 64 65 3e 61 20 26 6c 74 3b 26 6c 74 3b 20 62 3c 2f 63 6f 64 65 3e 20 61 | orms.<code>a.<<.b</code>.a |
| aba40 | 6e 64 20 72 65 74 75 72 6e 73 20 61 20 74 75 70 6c 65 20 77 69 74 68 20 74 68 65 20 72 65 73 75 | nd.returns.a.tuple.with.the.resu |
| aba60 | 6c 74 20 61 6e 64 20 61 20 70 6f 73 73 69 62 6c 65 20 6f 76 65 72 66 6c 6f 77 20 62 69 74 2e 0a | lt.and.a.possible.overflow.bit.. |
| aba80 | 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 20 74 | ......</p>.......<p>.......The.t |
| abaa0 | 79 70 65 20 6f 66 20 3c 63 6f 64 65 3e 73 68 69 66 74 5f 61 6d 74 3c 2f 63 6f 64 65 3e 20 69 73 | ype.of.<code>shift_amt</code>.is |
| abac0 | 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 3e | .an.unsigned.integer.with.<code> |
| abae0 | 6c 6f 67 32 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 | log2(<span.class="tok-builtin">@ |
| abb00 | 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 6b | typeInfo</span>(<span.class="tok |
| abb20 | 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 29 29 2e 69 6e 74 | -builtin">@TypeOf</span>(a)).int |
| abb40 | 2e 62 69 74 73 29 3c 2f 63 6f 64 65 3e 20 62 69 74 73 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 | .bits)</code>.bits........This.i |
| abb60 | 73 20 62 65 63 61 75 73 65 20 3c 63 6f 64 65 3e 73 68 69 66 74 5f 61 6d 74 20 26 67 74 3b 3d 20 | s.because.<code>shift_amt.>=. |
| abb80 | 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 49 | <span.class="tok-builtin">@typeI |
| abba0 | 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 69 6c | nfo</span>(<span.class="tok-buil |
| abbc0 | 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 29 29 2e 69 6e 74 2e 62 69 74 73 | tin">@TypeOf</span>(a)).int.bits |
| abbe0 | 3c 2f 63 6f 64 65 3e 20 74 72 69 67 67 65 72 73 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 20 | </code>.triggers.safety-checked. |
| abc00 | 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 | <a.href="#Illegal-Behavior">Ille |
| abc20 | 67 61 6c 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 | gal.Behavior</a>........</p>.... |
| abc40 | 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 |
| abc60 | 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 3c 2f 6c | ref="#shlExact">@shlExact</a></l |
| abc80 | 69 3e 0a 3c 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 | i>.<li><a.href="#shrExact">@shrE |
| abca0 | 78 61 63 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 | xact</a></li>.</ul>............. |
| abcc0 | 20 20 20 3c 68 33 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 | ...<h3.id="shrExact"><a.href="#t |
| abce0 | 6f 63 2d 73 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 | oc-shrExact">@shrExact</a>.<a.cl |
| abd00 | 61 73 73 3d 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 | ass="hdr".href="#shrExact">..</a |
| abd20 | 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></h3>........<pre><code><span.c |
| abd40 | 6c 61 73 73 3d 22 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 | lass="tok-builtin">@shrExact</sp |
| abd60 | 61 6e 3e 28 76 61 6c 75 65 3a 20 54 2c 20 73 68 69 66 74 5f 61 6d 74 3a 20 4c 6f 67 32 54 29 20 | an>(value:.T,.shift_amt:.Log2T). |
| abd80 | 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 50 | T</code></pre>.......<p>.......P |
| abda0 | 65 72 66 6f 72 6d 73 20 74 68 65 20 72 69 67 68 74 20 73 68 69 66 74 20 6f 70 65 72 61 74 69 6f | erforms.the.right.shift.operatio |
| abdc0 | 6e 20 28 3c 63 6f 64 65 3e 26 67 74 3b 26 67 74 3b 3c 2f 63 6f 64 65 3e 29 2e 20 43 61 6c 6c 65 | n.(<code>>></code>)..Calle |
| abde0 | 72 20 67 75 61 72 61 6e 74 65 65 73 0a 20 20 20 20 20 20 74 68 61 74 20 74 68 65 20 73 68 69 66 | r.guarantees.......that.the.shif |
| abe00 | 74 20 77 69 6c 6c 20 6e 6f 74 20 73 68 69 66 74 20 61 6e 79 20 31 20 62 69 74 73 20 6f 75 74 2e | t.will.not.shift.any.1.bits.out. |
| abe20 | 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 20 | .......</p>.......<p>.......The. |
| abe40 | 74 79 70 65 20 6f 66 20 3c 63 6f 64 65 3e 73 68 69 66 74 5f 61 6d 74 3c 2f 63 6f 64 65 3e 20 69 | type.of.<code>shift_amt</code>.i |
| abe60 | 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 |
| abe80 | 3e 6c 6f 67 32 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 | >log2(<span.class="tok-builtin"> |
| abea0 | 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 54 29 2e 69 6e 74 2e 62 69 74 73 29 3c 2f 63 | @typeInfo</span>(T).int.bits)</c |
| abec0 | 6f 64 65 3e 20 62 69 74 73 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 62 65 63 61 75 73 65 | ode>.bits........This.is.because |
| abee0 | 20 3c 63 6f 64 65 3e 73 68 69 66 74 5f 61 6d 74 20 26 67 74 3b 3d 20 3c 73 70 61 6e 20 63 6c 61 | .<code>shift_amt.>=.<span.cla |
| abf00 | 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 6e | ss="tok-builtin">@typeInfo</span |
| abf20 | 3e 28 54 29 2e 69 6e 74 2e 62 69 74 73 3c 2f 63 6f 64 65 3e 20 74 72 69 67 67 65 72 73 20 73 61 | >(T).int.bits</code>.triggers.sa |
| abf40 | 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 | fety-checked.<a.href="#Illegal-B |
| abf60 | 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 | ehavior">Illegal.Behavior</a>... |
| abf80 | 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 3e | .....</p>.......<p>See.also:</p> |
| abfa0 | 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 45 78 61 63 74 22 3e 40 73 68 | <ul>.<li><a.href="#shlExact">@sh |
| abfc0 | 6c 45 78 61 63 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 73 68 | lExact</a></li>.<li><a.href="#sh |
| abfe0 | 6c 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 | lWithOverflow">@shlWithOverflow< |
| ac000 | 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 |
| ac020 | 33 20 69 64 3d 22 73 68 75 66 66 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 68 75 | 3.id="shuffle"><a.href="#toc-shu |
| ac040 | 66 66 6c 65 22 3e 40 73 68 75 66 66 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | ffle">@shuffle</a>.<a.class="hdr |
| ac060 | 22 20 68 72 65 66 3d 22 23 73 68 75 66 66 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 | ".href="#shuffle">..</a></h3>... |
| ac080 | 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .....<pre><code><span.class="tok |
| ac0a0 | 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 61 6e 20 | -builtin">@shuffle</span>(<span. |
| ac0c0 | 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 45 | class="tok-kw">comptime</span>.E |
| ac0e0 | 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 |
| ac100 | 70 61 6e 3e 2c 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | pan>,.a:.<span.class="tok-builti |
| ac120 | 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 61 5f 6c 65 6e 2c 20 45 29 2c 20 62 3a 20 | n">@Vector</span>(a_len,.E),.b:. |
| ac140 | 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 56 65 63 74 6f | <span.class="tok-builtin">@Vecto |
| ac160 | 72 3c 2f 73 70 61 6e 3e 28 62 5f 6c 65 6e 2c 20 45 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | r</span>(b_len,.E),.<span.class= |
| ac180 | 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 61 73 6b 3a 20 3c | "tok-kw">comptime</span>.mask:.< |
| ac1a0 | 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 56 65 63 74 6f 72 | span.class="tok-builtin">@Vector |
| ac1c0 | 3c 2f 73 70 61 6e 3e 28 6d 61 73 6b 5f 6c 65 6e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>(mask_len,.<span.class="t |
| ac1e0 | 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 29 20 3c 73 70 61 6e 20 63 6c 61 73 | ok-type">i32</span>)).<span.clas |
| ac200 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 6d | s="tok-builtin">@Vector</span>(m |
| ac220 | 61 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 | ask_len,.E)</code></pre>.......< |
| ac240 | 70 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 | p>.......Constructs.a.new.<a.hre |
| ac260 | 66 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 | f="#Vectors">vector</a>.by.selec |
| ac280 | 74 69 6e 67 20 65 6c 65 6d 65 6e 74 73 20 66 72 6f 6d 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 | ting.elements.from.<code>a</code |
| ac2a0 | 3e 20 61 6e 64 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 62 61 73 65 64 | >.and.......<code>b</code>.based |
| ac2c0 | 20 6f 6e 20 3c 63 6f 64 65 3e 6d 61 73 6b 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | .on.<code>mask</code>........</p |
| ac2e0 | 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 74 20 69 | >.......<p>.......Each.element.i |
| ac300 | 6e 20 3c 63 6f 64 65 3e 6d 61 73 6b 3c 2f 63 6f 64 65 3e 20 73 65 6c 65 63 74 73 20 61 6e 20 65 | n.<code>mask</code>.selects.an.e |
| ac320 | 6c 65 6d 65 6e 74 20 66 72 6f 6d 20 65 69 74 68 65 72 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 | lement.from.either.<code>a</code |
| ac340 | 3e 20 6f 72 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 2e 20 50 6f 73 69 74 | >.or.......<code>b</code>..Posit |
| ac360 | 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 63 6f 64 65 3e 61 3c | ive.numbers.select.from.<code>a< |
| ac380 | 2f 63 6f 64 65 3e 20 73 74 61 72 74 69 6e 67 20 61 74 20 30 2e 0a 20 20 20 20 20 20 4e 65 67 61 | /code>.starting.at.0........Nega |
| ac3a0 | 74 69 76 65 20 76 61 6c 75 65 73 20 73 65 6c 65 63 74 20 66 72 6f 6d 20 3c 63 6f 64 65 3e 62 3c | tive.values.select.from.<code>b< |
| ac3c0 | 2f 63 6f 64 65 3e 2c 20 73 74 61 72 74 69 6e 67 20 61 74 20 3c 63 6f 64 65 3e 2d 3c 73 70 61 6e | /code>,.starting.at.<code>-<span |
| ac3e0 | 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 3c 2f 63 6f | .class="tok-number">1</span></co |
| ac400 | 64 65 3e 20 61 6e 64 20 67 6f 69 6e 67 20 64 6f 77 6e 2e 0a 20 20 20 20 20 20 49 74 20 69 73 20 | de>.and.going.down........It.is. |
| ac420 | 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 75 73 65 20 74 68 65 20 3c 63 6f 64 65 3e 7e 3c 2f | recommended.to.use.the.<code>~</ |
| ac440 | 63 6f 64 65 3e 20 6f 70 65 72 61 74 6f 72 20 66 6f 72 20 69 6e 64 65 78 65 73 20 66 72 6f 6d 20 | code>.operator.for.indexes.from. |
| ac460 | 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 73 6f 20 74 68 61 74 20 62 6f 74 | <code>b</code>.......so.that.bot |
| ac480 | 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 64 65 3e 3c | h.indexes.can.start.from.<code>< |
| ac4a0 | 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> |
| ac4c0 | 3c 2f 63 6f 64 65 3e 20 28 69 2e 65 2e 20 3c 63 6f 64 65 3e 7e 3c 73 70 61 6e 20 63 6c 61 73 73 | </code>.(i.e..<code>~<span.class |
| ac4e0 | 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. |
| ac500 | 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 3c 73 70 | class="tok-type">i32</span>,.<sp |
| ac520 | 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 3c | an.class="tok-number">0</span>)< |
| ac540 | 2f 63 6f 64 65 3e 20 69 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 2d 3c 73 70 61 6e 20 63 6c 61 | /code>.is.......<code>-<span.cla |
| ac560 | 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 65 3e 29 | ss="tok-number">1</span></code>) |
| ac580 | 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 46 6f 72 | ........</p>.......<p>.......For |
| ac5a0 | 20 65 61 63 68 20 65 6c 65 6d 65 6e 74 20 6f 66 20 3c 63 6f 64 65 3e 6d 61 73 6b 3c 2f 63 6f 64 | .each.element.of.<code>mask</cod |
| ac5c0 | 65 3e 2c 20 69 66 20 69 74 20 6f 72 20 74 68 65 20 73 65 6c 65 63 74 65 64 20 76 61 6c 75 65 20 | e>,.if.it.or.the.selected.value. |
| ac5e0 | 66 72 6f 6d 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f | from.......<code>a</code>.or.<co |
| ac600 | 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | de>b</code>.is.<code><span.class |
| ac620 | 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 3c 2f 63 6f | ="tok-null">undefined</span></co |
| ac640 | 64 65 3e 2c 0a 20 20 20 20 20 20 74 68 65 6e 20 74 68 65 20 72 65 73 75 6c 74 69 6e 67 20 65 6c | de>,.......then.the.resulting.el |
| ac660 | 65 6d 65 6e 74 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ement.is.<code><span.class="tok- |
| ac680 | 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 2e 0a 20 | null">undefined</span></code>... |
| ac6a0 | 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 65 3e | .....</p>.......<p>.......<code> |
| ac6c0 | 61 5f 6c 65 6e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 62 5f 6c 65 6e 3c 2f 63 6f | a_len</code>.and.<code>b_len</co |
| ac6e0 | 64 65 3e 20 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 | de>.may.differ.in.length..Out-of |
| ac700 | 2d 62 6f 75 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 | -bounds.element.......indexes.in |
| ac720 | 20 3c 63 6f 64 65 3e 6d 61 73 6b 3c 2f 63 6f 64 65 3e 20 72 65 73 75 6c 74 20 69 6e 20 63 6f 6d | .<code>mask</code>.result.in.com |
| ac740 | 70 69 6c 65 20 65 72 72 6f 72 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | pile.errors........</p>.......<p |
| ac760 | 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f | >.......If.<code>a</code>.or.<co |
| ac780 | 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | de>b</code>.is.<code><span.class |
| ac7a0 | 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 3c 2f 63 6f | ="tok-null">undefined</span></co |
| ac7c0 | 64 65 3e 2c 20 69 74 0a 20 20 20 20 20 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 61 | de>,.it.......is.equivalent.to.a |
| ac7e0 | 20 76 65 63 74 6f 72 20 6f 66 20 61 6c 6c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | .vector.of.all.<code><span.class |
| ac800 | 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 3c 2f 63 6f | ="tok-null">undefined</span></co |
| ac820 | 64 65 3e 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 20 6c 65 6e 67 74 68 20 61 73 20 74 68 65 20 | de>.with.the.same.length.as.the. |
| ac840 | 6f 74 68 65 72 20 76 65 63 74 6f 72 2e 0a 20 20 20 20 20 20 49 66 20 62 6f 74 68 20 76 65 63 74 | other.vector........If.both.vect |
| ac860 | 6f 72 73 20 61 72 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ors.are.<code><span.class="tok-n |
| ac880 | 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 2c 20 3c 63 | ull">undefined</span></code>,.<c |
| ac8a0 | 6f 64 65 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 | ode><span.class="tok-builtin">@s |
| ac8c0 | 68 75 66 66 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 74 75 72 6e 73 0a 20 20 20 | huffle</span></code>.returns.... |
| ac8e0 | 20 20 20 61 20 76 65 63 74 6f 72 20 77 69 74 68 20 61 6c 6c 20 65 6c 65 6d 65 6e 74 73 20 3c 63 | ...a.vector.with.all.elements.<c |
| ac900 | 6f 64 65 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 | ode><span.class="tok-null">undef |
| ac920 | 69 6e 65 64 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 | ined</span></code>........</p>.. |
| ac940 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 45 3c 2f 63 6f 64 65 3e 20 6d 75 | .....<p>.......<code>E</code>.mu |
| ac960 | 73 74 20 62 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 69 6e 74 | st.be.an.<a.href="#Integers">int |
| ac980 | 65 67 65 72 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 66 6c 6f 61 | eger</a>,.<a.href="#Floats">floa |
| ac9a0 | 74 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 | t</a>,.......<a.href="#Pointers" |
| ac9c0 | 3e 70 6f 69 6e 74 65 72 3c 2f 61 3e 2c 20 6f 72 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | >pointer</a>,.or.<code><span.cla |
| ac9e0 | 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> |
| aca00 | 2e 20 54 68 65 20 6d 61 73 6b 20 6d 61 79 20 62 65 20 61 6e 79 20 76 65 63 74 6f 72 20 6c 65 6e | ..The.mask.may.be.any.vector.len |
| aca20 | 67 74 68 2c 20 61 6e 64 20 69 74 73 0a 20 20 20 20 20 20 6c 65 6e 67 74 68 20 64 65 74 65 72 6d | gth,.and.its.......length.determ |
| aca40 | 69 6e 65 73 20 74 68 65 20 72 65 73 75 6c 74 20 6c 65 6e 67 74 68 2e 0a 20 20 20 20 20 20 3c 2f | ines.the.result.length........</ |
| aca60 | 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | p>.......<figure><figcaption.cla |
| aca80 | 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | ss="zig-cap"><cite.class="file"> |
| acaa0 | 74 65 73 74 5f 73 68 75 66 66 6c 65 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c | test_shuffle_builtin.zig</cite>< |
| acac0 | 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | /figcaption><pre><code><span.cla |
| acae0 | 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.=.< |
| acb00 | 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 |
| acb20 | 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 |
| acb40 | 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 |
| acb60 | 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. |
| acb80 | 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 |
| acba0 | 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 |
| acbc0 | 61 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 73 68 75 66 | ass="tok-str">"vector.@shuf |
| acbe0 | 66 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 63 6c 61 | fle"</span>.{.....<span.cla |
| acc00 | 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 |
| acc20 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f | an.class="tok-builtin">@Vector</ |
| acc40 | 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 37 | span>(<span.class="tok-number">7 |
| acc60 | 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 74 79 70 65 22 3e | </span>,.<span.class="tok-type"> |
| acc80 | 75 38 3c 2f 73 70 61 6e 3e 29 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | u8</span>){.<span.class="tok-str |
| acca0 | 22 3e 27 6f 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 6b 2d 73 | ">'o'</span>,.<span.class="tok-s |
| accc0 | 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 3d 22 74 6f 6b | tr">'l'</span>,.<span.class="tok |
| acce0 | 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 74 | -str">'h'</span>,.<span.class="t |
| acd00 | 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 3d | ok-str">'e'</span>,.<span.class= |
| acd20 | 22 74 6f 6b 2d 73 74 72 22 3e 27 72 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | "tok-str">'r'</span>,.<span.clas |
| acd40 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 7a 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | s="tok-str">'z'</span>,.<span.cl |
| acd60 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 77 27 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 | ass="tok-str">'w'</span>.};..... |
| acd80 | 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 |
| acda0 | 3e 20 62 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 | >.b.=.<span.class="tok-builtin"> |
| acdc0 | 40 56 65 63 74 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 | @Vector</span>(<span.class="tok- |
| acde0 | 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 22 74 | number">4</span>,.<span.class="t |
| ace00 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-type">u8</span>){.<span.class |
| ace20 | 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 |
| ace40 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 64 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | ss="tok-str">'d'</span>,.<span.c |
| ace60 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 21 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | lass="tok-str">'!'</span>,.<span |
| ace80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 78 27 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a | .class="tok-str">'x'</span>.};.. |
| acea0 | 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">// |
| acec0 | 20 54 6f 20 73 68 75 66 66 6c 65 20 77 69 74 68 69 6e 20 61 20 73 69 6e 67 6c 65 20 76 65 63 74 | .To.shuffle.within.a.single.vect |
| acee0 | 6f 72 2c 20 70 61 73 73 20 75 6e 64 65 66 69 6e 65 64 20 61 73 20 74 68 65 20 73 65 63 6f 6e 64 | or,.pass.undefined.as.the.second |
| acf00 | 20 61 72 67 75 6d 65 6e 74 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | .argument.</span>.....<span.clas |
| acf20 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 6f 74 69 63 65 20 74 68 61 74 20 77 | s="tok-comment">//.Notice.that.w |
| acf40 | 65 20 63 61 6e 20 72 65 2d 6f 72 64 65 72 2c 20 64 75 70 6c 69 63 61 74 65 2c 20 6f 72 20 6f 6d | e.can.re-order,.duplicate,.or.om |
| acf60 | 69 74 20 65 6c 65 6d 65 6e 74 73 20 6f 66 20 74 68 65 20 69 6e 70 75 74 20 76 65 63 74 6f 72 3c | it.elements.of.the.input.vector< |
| acf80 | 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"> |
| acfa0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 61 73 6b 31 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | const</span>.mask1.=.<span.class |
| acfc0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 | ="tok-builtin">@Vector</span>(<s |
| acfe0 | 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 2c | pan.class="tok-number">5</span>, |
| ad000 | 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 |
| ad020 | 6e 3e 29 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 32 3c | n>){.<span.class="tok-number">2< |
| ad040 | 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" |
| ad060 | 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 62 | >3</span>,.<span.class="tok-numb |
| ad080 | 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 22 74 6f 6b 2d 6e | er">1</span>,.<span.class="tok-n |
| ad0a0 | 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 22 74 6f | umber">1</span>,.<span.class="to |
| ad0c0 | 6b 2d 6e 75 6d 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 | k-number">0</span>.};.....<span. |
| ad0e0 | 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 31 | class="tok-kw">const</span>.res1 |
| ad100 | 3a 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 56 65 63 | :.<span.class="tok-builtin">@Vec |
| ad120 | 74 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 6e 75 6d 62 | tor</span>(<span.class="tok-numb |
| ad140 | 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 74 | er">5</span>,.<span.class="tok-t |
| ad160 | 79 70 65 22 3e 75 38 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 | ype">u8</span>).=.<span.class="t |
| ad180 | 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 61 | ok-builtin">@shuffle</span>(<spa |
| ad1a0 | 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 61 2c | n.class="tok-type">u8</span>,.a, |
| ad1c0 | 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 65 | .<span.class="tok-null">undefine |
| ad1e0 | 64 3c 2f 73 70 61 6e 3e 2c 20 6d 61 73 6b 31 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | d</span>,.mask1);.....<span.clas |
| ad200 | 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 |
| ad220 | 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"> |
| ad240 | 75 38 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 3b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | u8</span>,.&<span.class="tok |
| ad260 | 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 5b 3c 73 70 61 6e 20 63 6c 61 73 | -builtin">@as</span>([<span.clas |
| ad280 | 73 3d 22 74 6f 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 | s="tok-number">5</span>]<span.cl |
| ad2a0 | 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 72 65 73 31 29 2c | ass="tok-type">u8</span>,.res1), |
| ad2c0 | 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 |
| ad2e0 | 6c 6f 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 61 6e 20 63 6c | lo"</span>));......<span.cl |
| ad300 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 43 6f 6d 62 69 6e 69 6e 67 20 74 | ass="tok-comment">//.Combining.t |
| ad320 | 77 6f 20 76 65 63 74 6f 72 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | wo.vectors</span>.....<span.clas |
| ad340 | 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 73 6b 32 20 3d 20 | s="tok-kw">const</span>.mask2.=. |
| ad360 | 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 56 65 63 74 6f | <span.class="tok-builtin">@Vecto |
| ad380 | 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 6e 75 6d 62 65 72 | r</span>(<span.class="tok-number |
| ad3a0 | 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 74 79 70 | ">6</span>,.<span.class="tok-typ |
| ad3c0 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 7b 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | e">i32</span>){.-<span.class="to |
| ad3e0 | 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= |
| ad400 | 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 61 | "tok-number">0</span>,.<span.cla |
| ad420 | 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 61 6e 20 | ss="tok-number">4</span>,.<span. |
| ad440 | 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 3c 73 | class="tok-number">1</span>,.-<s |
| ad460 | 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>, |
| ad480 | 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 73 70 | .-<span.class="tok-number">3</sp |
| ad4a0 | 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 3e | an>.};.....<span.class="tok-kw"> |
| ad4c0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 32 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | const</span>.res2:.<span.class=" |
| ad4e0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | tok-builtin">@Vector</span>(<spa |
| ad500 | 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 3e 2c 20 3c | n.class="tok-number">6</span>,.< |
| ad520 | 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>) |
| ad540 | 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 |
| ad560 | 75 66 66 6c 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 74 79 | uffle</span>(<span.class="tok-ty |
| ad580 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 61 2c 20 62 2c 20 6d 61 73 6b 32 29 3b 0a 20 20 20 | pe">u8</span>,.a,.b,.mask2);.... |
| ad5a0 | 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> |
| ad5c0 | 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 3d | .expect(std.mem.eql(<span.class= |
| ad5e0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 3b 3c 73 70 61 6e | "tok-type">u8</span>,.&<span |
| ad600 | 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>( |
| ad620 | 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 36 3c 2f 73 70 61 | [<span.class="tok-number">6</spa |
| ad640 | 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 3c 2f 73 70 | n>]<span.class="tok-type">u8</sp |
| ad660 | 61 6e 3e 2c 20 72 65 73 32 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | an>,.res2),.<span.class="tok-str |
| ad680 | 22 3e 26 71 75 6f 74 3b 77 6f 72 6c 64 21 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d | ">"world!"</span>));.} |
| ad6a0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 | </code></pre></figure><figure><f |
| ad6c0 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c | igcaption.class="shell-cap">Shel |
| ad6e0 | 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e | l</figcaption><pre><samp>$.<kbd> |
| ad700 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 73 68 75 66 66 6c 65 5f 62 75 69 6c 74 69 6e 2e 7a 69 | zig.test.test_shuffle_builtin.zi |
| ad720 | 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 68 75 66 66 6c 65 5f 62 75 69 6c 74 69 6e | g</kbd>.1/1.test_shuffle_builtin |
| ad740 | 2e 74 65 73 74 2e 76 65 63 74 6f 72 20 40 73 68 75 66 66 6c 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 | .test.vector.@shuffle...OK.All.1 |
| ad760 | 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | .tests.passed..</samp></pre></fi |
| ad780 | 67 75 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 75 6c | gure>........<p>See.also:</p><ul |
| ad7a0 | 3e 0a 3c 6c 69 3e 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 | >.<li><a.href="#Vectors">Vectors |
| ad7c0 | 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>................< |
| ad7e0 | 68 33 20 69 64 3d 22 73 69 7a 65 4f 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 69 7a | h3.id="sizeOf"><a.href="#toc-siz |
| ad800 | 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | eOf">@sizeOf</a>.<a.class="hdr". |
| ad820 | 68 72 65 66 3d 22 23 73 69 7a 65 4f 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 | href="#sizeOf">..</a></h3>...... |
| ad840 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | ..<pre><code><span.class="tok-bu |
| ad860 | 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 61 73 | iltin">@sizeOf</span>(<span.clas |
| ad880 | 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 73 | s="tok-kw">comptime</span>.T:.<s |
| ad8a0 | 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> |
| ad8c0 | 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 6d 70 74 69 6d | ).<span.class="tok-type">comptim |
| ad8e0 | 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 20 20 20 20 20 | e_int</span></code></pre>....... |
| ad900 | 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 20 | <p>.......This.function.returns. |
| ad920 | 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 69 74 20 74 61 6b 65 73 20 74 6f 20 | the.number.of.bytes.it.takes.to. |
| ad940 | 73 74 6f 72 65 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 20 69 6e 20 6d 65 6d 6f 72 79 2e 0a | store.<code>T</code>.in.memory.. |
| ad960 | 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 70 65 | ......The.result.is.a.target-spe |
| ad980 | 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 20 20 | cific.compile.time.constant..... |
| ad9a0 | 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 69 7a | ...</p>.......<p>.......This.siz |
| ad9c0 | 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 66 20 | e.may.contain.padding.bytes..If. |
| ad9e0 | 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 6e 20 | there.were.two.consecutive.T.in. |
| ada00 | 6d 65 6d 6f 72 79 2c 20 74 68 65 20 70 61 64 64 69 6e 67 20 77 6f 75 6c 64 20 62 65 20 74 68 65 | memory,.the.padding.would.be.the |
| ada20 | 20 6f 66 66 73 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 | .offset.......in.bytes.between.e |
| ada40 | 6c 65 6d 65 6e 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 | lement.at.index.0.and.the.elemen |
| ada60 | 74 20 61 74 20 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 | t.at.index.1..For.<a.href="#Inte |
| ada80 | 67 65 72 73 22 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 | gers">integer</a>,.......conside |
| adaa0 | 72 20 77 68 65 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 3e | r.whether.you.want.to.use.<code> |
| adac0 | 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 4f | <span.class="tok-builtin">@sizeO |
| adae0 | 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 20 20 20 3c 63 6f 64 | f</span>(T)</code>.or.......<cod |
| adb00 | 65 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 74 79 70 | e><span.class="tok-builtin">@typ |
| adb20 | 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 54 29 2e 69 6e 74 2e 62 69 74 73 3c 2f 63 6f 64 65 3e 2e | eInfo</span>(T).int.bits</code>. |
| adb40 | 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 |
| adb60 | 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 61 74 20 72 | .function.measures.the.size.at.r |
| adb80 | 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 69 73 61 6c | untime..For.types.that.are.disal |
| adba0 | 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 20 20 20 20 | lowed.at.runtime,.such.as....... |
| adbc0 | 3c 63 6f 64 65 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 | <code><span.class="tok-type">com |
| adbe0 | 70 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 | ptime_int</span></code>.and.<cod |
| adc00 | 65 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 65 3c 2f 73 | e><span.class="tok-type">type</s |
| adc20 | 70 61 6e 3e 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 | pan></code>,.the.result.is.<code |
| adc40 | 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 30 3c 2f 73 70 61 | ><span.class="tok-number">0</spa |
| adc60 | 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 |
| adc80 | 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 62 | ee.also:</p><ul>.<li><a.href="#b |
| adca0 | 69 74 53 69 7a 65 4f 66 22 3e 40 62 69 74 53 69 7a 65 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c | itSizeOf">@bitSizeOf</a></li>.<l |
| adcc0 | 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< |
| adce0 | 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 |
| add00 | 33 20 69 64 3d 22 73 70 6c 61 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 70 6c 61 74 | 3.id="splat"><a.href="#toc-splat |
| add20 | 22 3e 40 73 70 6c 61 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 | ">@splat</a>.<a.class="hdr".href |
| add40 | 3d 22 23 73 70 6c 61 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 | ="#splat">..</a></h3>........<pr |
| add60 | 65 3e 3c 63 6f 64 65 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 | e><code><span.class="tok-builtin |
| add80 | 22 3e 40 73 70 6c 61 74 3c 2f 73 70 61 6e 3e 28 73 63 61 6c 61 72 3a 20 3c 73 70 61 6e 20 63 6c | ">@splat</span>(scalar:.<span.cl |
| adda0 | 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 70 | ass="tok-kw">anytype</span>).<sp |
| addc0 | 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> |
| adde0 | 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 50 72 | </code></pre>.......<p>.......Pr |
| ade00 | 6f 64 75 63 65 73 20 61 20 76 65 63 74 6f 72 20 77 68 65 72 65 20 65 61 63 68 20 65 6c 65 6d 65 | oduces.a.vector.where.each.eleme |
| ade20 | 6e 74 20 69 73 20 74 68 65 20 76 61 6c 75 65 20 3c 63 6f 64 65 3e 73 63 61 6c 61 72 3c 2f 63 6f | nt.is.the.value.<code>scalar</co |
| ade40 | 64 65 3e 2e 0a 20 20 20 20 20 20 54 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 61 6e 64 20 74 | de>........The.return.type.and.t |
| ade60 | 68 75 73 20 74 68 65 20 6c 65 6e 67 74 68 20 6f 66 20 74 68 65 20 76 65 63 74 6f 72 20 69 73 20 | hus.the.length.of.the.vector.is. |
| ade80 | 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 20 20 3c 66 69 67 75 | inferred........</p>.......<figu |
| adea0 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c | re><figcaption.class="zig-cap">< |
| adec0 | 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 70 6c 61 74 5f 62 75 69 | cite.class="file">test_splat_bui |
| adee0 | 6c 74 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | ltin.zig</cite></figcaption><pre |
| adf00 | 3e 3c 63 6f 64 65 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 | ><code><span.class="tok-kw">cons |
| adf20 | 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- |
| adf40 | 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 |
| adf60 | 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 |
| adf80 | 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 |
| adfa0 | 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 |
| adfc0 | 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 |
| adfe0 | 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 |
| ae000 | 75 6f 74 3b 76 65 63 74 6f 72 20 40 73 70 6c 61 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | uot;vector.@splat"</span>.{ |
| ae020 | 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< |
| ae040 | 2f 73 70 61 6e 3e 20 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 | /span>.scalar:.<span.class="tok- |
| ae060 | 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=" |
| ae080 | 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 61 6e 20 | tok-number">5</span>;.....<span. |
| ae0a0 | 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 |
| ae0c0 | 6c 74 3a 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 56 | lt:.<span.class="tok-builtin">@V |
| ae0e0 | 65 63 74 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 6e 75 | ector</span>(<span.class="tok-nu |
| ae100 | 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 |
| ae120 | 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | -type">u32</span>).=.<span.class |
| ae140 | 3d 22 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 73 63 61 | ="tok-builtin">@splat</span>(sca |
| ae160 | 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 74 | lar);.....<span.class="tok-kw">t |
| ae180 | 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 70 | ry</span>.expect(std.mem.eql(<sp |
| ae1a0 | 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>,. |
| ae1c0 | 26 61 6d 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 | &<span.class="tok-builtin">@ |
| ae1e0 | 61 73 3c 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 | as</span>([<span.class="tok-numb |
| ae200 | 65 72 22 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 | er">4</span>]<span.class="tok-ty |
| ae220 | 70 65 22 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 | pe">u32</span>,.result),.&[_ |
| ae240 | 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 33 32 3c 2f 73 70 61 | ]<span.class="tok-type">u32</spa |
| ae260 | 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 35 3c 2f | n>{.<span.class="tok-number">5</ |
| ae280 | 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"> |
| ae2a0 | 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 |
| ae2c0 | 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 |
| ae2e0 | 6d 62 65 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 | mber">5</span>.}));.}</code></pr |
| ae300 | 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 | e></figure><figure><figcaption.c |
| ae320 | 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 | lass="shell-cap">Shell</figcapti |
| ae340 | 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 | on><pre><samp>$.<kbd>zig.test.te |
| ae360 | 73 74 5f 73 70 6c 61 74 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 | st_splat_builtin.zig</kbd>.1/1.t |
| ae380 | 65 73 74 5f 73 70 6c 61 74 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 76 65 63 74 6f 72 20 40 73 | est_splat_builtin.test.vector.@s |
| ae3a0 | 70 6c 61 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f | plat...OK.All.1.tests.passed..</ |
| ae3c0 | 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | samp></pre></figure>........<p>. |
| ae3e0 | 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 63 61 6c 61 72 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 | ......<code>scalar</code>.must.b |
| ae400 | 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 69 6e 74 65 67 65 72 | e.an.<a.href="#Integers">integer |
| ae420 | 3c 2f 61 3e 2c 20 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 | </a>,.<a.href="#Primitive-Types" |
| ae440 | 3e 62 6f 6f 6c 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 | >bool</a>,.......<a.href="#Float |
| ae460 | 73 22 3e 66 6c 6f 61 74 3c 2f 61 3e 2c 20 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 | s">float</a>,.or.<a.href="#Point |
| ae480 | 65 72 73 22 3e 70 6f 69 6e 74 65 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | ers">pointer</a>........</p>.... |
| ae4a0 | 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 |
| ae4c0 | 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 3c 2f 6c 69 3e 0a | ref="#Vectors">Vectors</a></li>. |
| ae4e0 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 68 75 66 66 6c 65 22 3e 40 73 68 75 66 66 6c 65 3c | <li><a.href="#shuffle">@shuffle< |
| ae500 | 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 |
| ae520 | 33 20 69 64 3d 22 72 65 64 75 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 72 65 64 75 | 3.id="reduce"><a.href="#toc-redu |
| ae540 | 63 65 22 3e 40 72 65 64 75 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | ce">@reduce</a>.<a.class="hdr".h |
| ae560 | 72 65 66 3d 22 23 72 65 64 75 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | ref="#reduce">..</a></h3>....... |
| ae580 | 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | .<pre><code><span.class="tok-bui |
| ae5a0 | 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 |
| ae5c0 | 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 |
| ae5e0 | 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 |
| ae600 | 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>). |
| ae620 | 45 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 | E</code></pre>.......<p>.......T |
| ae640 | 72 61 6e 73 66 6f 72 6d 73 20 61 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 76 | ransforms.a.<a.href="#Vectors">v |
| ae660 | 65 63 74 6f 72 3c 2f 61 3e 20 69 6e 74 6f 20 61 20 73 63 61 6c 61 72 20 76 61 6c 75 65 20 28 6f | ector</a>.into.a.scalar.value.(o |
| ae680 | 66 20 74 79 70 65 20 3c 63 6f 64 65 3e 45 3c 2f 63 6f 64 65 3e 29 0a 20 20 20 20 20 20 62 79 20 | f.type.<code>E</code>).......by. |
| ae6a0 | 70 65 72 66 6f 72 6d 69 6e 67 20 61 20 73 65 71 75 65 6e 74 69 61 6c 20 68 6f 72 69 7a 6f 6e 74 | performing.a.sequential.horizont |
| ae6c0 | 61 6c 20 72 65 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 | al.reduction.of.its.elements.usi |
| ae6e0 | 6e 67 20 74 68 65 0a 20 20 20 20 20 20 73 70 65 63 69 66 69 65 64 20 6f 70 65 72 61 74 6f 72 20 | ng.the.......specified.operator. |
| ae700 | 3c 63 6f 64 65 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 20 | <code>op</code>........</p>..... |
| ae720 | 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 69 | ..<p>.......Not.every.operator.i |
| ae740 | 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 65 | s.available.for.every.vector.ele |
| ae760 | 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 3e | ment.type:.......</p>.......<ul> |
| ae780 | 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 72 20 69 73 | ...........<li>Every.operator.is |
| ae7a0 | 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 65 67 65 72 | .available.for.<a.href="#Integer |
| ae7c0 | 73 22 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 20 76 65 63 74 6f 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 | s">integer</a>.vectors.</li>.... |
| ae7e0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 2e 41 6e 64 3c 2f 63 6f 64 65 3e 2c 20 3c 63 | .......<li><code>.And</code>,.<c |
| ae800 | 6f 64 65 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 | ode>.Or</code>,.............<cod |
| ae820 | 65 3e 2e 58 6f 72 3c 2f 63 6f 64 65 3e 20 61 72 65 20 61 64 64 69 74 69 6f 6e 61 6c 6c 79 20 61 | e>.Xor</code>.are.additionally.a |
| ae840 | 76 61 69 6c 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 3e 3c | vailable.for.............<code>< |
| ae860 | 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 |
| ae880 | 3e 3c 2f 63 6f 64 65 3e 20 76 65 63 74 6f 72 73 2c 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ></code>.vectors,</li>.......... |
| ae8a0 | 20 3c 6c 69 3e 3c 63 6f 64 65 3e 2e 4d 69 6e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 2e 4d | .<li><code>.Min</code>,.<code>.M |
| ae8c0 | 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 3e 2e 41 64 | ax</code>,.............<code>.Ad |
| ae8e0 | 64 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 2e 4d 75 6c 3c 2f 63 6f 64 65 3e 20 61 72 65 0a | d</code>,.<code>.Mul</code>.are. |
| ae900 | 20 20 20 20 20 20 20 20 20 20 20 20 61 64 64 69 74 69 6f 6e 61 6c 6c 79 20 61 76 61 69 6c 61 62 | ............additionally.availab |
| ae920 | 6c 65 20 66 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 66 6c 6f 61 74 69 6e | le.for.<a.href="#Floats">floatin |
| ae940 | 67 20 70 6f 69 6e 74 3c 2f 61 3e 20 76 65 63 74 6f 72 73 2c 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | g.point</a>.vectors,</li>....... |
| ae960 | 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 74 20 | </ul>.......<p>.......Note.that. |
| ae980 | 3c 63 6f 64 65 3e 2e 41 64 64 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 2e 4d 75 6c | <code>.Add</code>.and.<code>.Mul |
| ae9a0 | 3c 2f 63 6f 64 65 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 | </code>.......reductions.on.inte |
| ae9c0 | 67 72 61 6c 20 74 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 | gral.types.are.wrapping;.when.ap |
| ae9e0 | 70 6c 69 65 64 20 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 | plied.on.floating.point.......ty |
| aea00 | 70 65 73 20 74 68 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 | pes.the.operation.associativity. |
| aea20 | 69 73 20 70 72 65 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 | is.preserved,.unless.the.float.m |
| aea40 | 6f 64 65 20 69 73 0a 20 20 20 20 20 20 73 65 74 20 74 6f 20 3c 63 6f 64 65 3e 4f 70 74 69 6d 69 | ode.is.......set.to.<code>Optimi |
| aea60 | 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 20 20 20 3c 66 69 | zed</code>........</p>.......<fi |
| aea80 | 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 | gure><figcaption.class="zig-cap" |
| aeaa0 | 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 72 65 64 75 63 65 5f | ><cite.class="file">test_reduce_ |
| aeac0 | 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | builtin.zig</cite></figcaption>< |
| aeae0 | 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | pre><code><span.class="tok-kw">c |
| aeb00 | 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 |
| aeb20 | 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 |
| aeb40 | 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" |
| aeb60 | 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 |
| aeb80 | 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 |
| aeba0 | 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 |
| aebc0 | 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" |
| aebe0 | 3e 26 71 75 6f 74 3b 76 65 63 74 6f 72 20 40 72 65 64 75 63 65 26 71 75 6f 74 3b 3c 2f 73 70 61 | >"vector.@reduce"</spa |
| aec00 | 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 |
| aec20 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 56 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | nst</span>.V.=.<span.class="tok- |
| aec40 | 62 75 69 6c 74 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | builtin">@Vector</span>(<span.cl |
| aec60 | 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 61 6e | ass="tok-number">4</span>,.<span |
| aec80 | 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 0a 20 | .class="tok-type">i32</span>);.. |
| aeca0 | 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 |
| aecc0 | 70 61 6e 3e 20 76 61 6c 75 65 20 3d 20 56 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>.value.=.V{.<span.class="tok |
| aece0 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -number">1</span>,.-<span.class= |
| aed00 | 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 6c 61 | "tok-number">1</span>,.<span.cla |
| aed20 | 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 3c 73 70 61 6e | ss="tok-number">1</span>,.-<span |
| aed40 | 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 7d 3b 0a | .class="tok-number">1</span>.};. |
| aed60 | 20 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</ |
| aed80 | 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 76 61 6c 75 65 20 26 67 74 3b 20 3c 73 70 61 6e 20 | span>.result.=.value.>.<span. |
| aeda0 | 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 56 | class="tok-builtin">@as</span>(V |
| aedc0 | 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 73 70 6c | ,.<span.class="tok-builtin">@spl |
| aede0 | 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 75 6d 62 65 | at</span>(<span.class="tok-numbe |
| aee00 | 72 22 3e 30 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">0</span>));.....<span.class=" |
| aee20 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 72 65 73 75 6c 74 20 69 73 20 7b 20 74 72 75 65 | tok-comment">//.result.is.{.true |
| aee40 | 2c 20 66 61 6c 73 65 2c 20 74 72 75 65 2c 20 66 61 6c 73 65 20 7d 3b 3c 2f 73 70 61 6e 3e 0a 20 | ,.false,.true,.false.};</span>.. |
| aee60 | 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 |
| aee80 | 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 6d 70 74 69 6d 65 | n>.<span.class="tok-kw">comptime |
| aeea0 | 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 2d | </span>.expect(<span.class="tok- |
| aeec0 | 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 72 65 73 75 6c 74 29 20 | builtin">@TypeOf</span>(result). |
| aeee0 | 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 56 65 | ==.<span.class="tok-builtin">@Ve |
| aef00 | 63 74 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 6e 75 6d | ctor</span>(<span.class="tok-num |
| aef20 | 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 2d | ber">4</span>,.<span.class="tok- |
| aef40 | 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | type">bool</span>));.....<span.c |
| aef60 | 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 73 5f 61 6c | lass="tok-kw">const</span>.is_al |
| aef80 | 6c 5f 74 72 75 65 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 | l_true.=.<span.class="tok-builti |
| aefa0 | 6e 22 3e 40 72 65 64 75 63 65 3c 2f 73 70 61 6e 3e 28 2e 41 6e 64 2c 20 72 65 73 75 6c 74 29 3b | n">@reduce</span>(.And,.result); |
| aefc0 | 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 |
| aefe0 | 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 6d 70 74 69 | pan>.<span.class="tok-kw">compti |
| af000 | 6d 65 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 | me</span>.expect(<span.class="to |
| af020 | 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 69 73 5f 61 6c 6c | k-builtin">@TypeOf</span>(is_all |
| af040 | 5f 74 72 75 65 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 | _true).==.<span.class="tok-type" |
| af060 | 3e 62 6f 6f 6c 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 | >bool</span>);.....<span.class=" |
| af080 | 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 73 5f 61 6c 6c | tok-kw">try</span>.expect(is_all |
| af0a0 | 5f 74 72 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 3e | _true.==.<span.class="tok-null"> |
| af0c0 | 66 61 6c 73 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 3c 2f 66 | false</span>);.}</code></pre></f |
| af0e0 | 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | igure><figure><figcaption.class= |
| af100 | 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | "shell-cap">Shell</figcaption><p |
| af120 | 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 72 65 | re><samp>$.<kbd>zig.test.test_re |
| af140 | 64 75 63 65 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f | duce_builtin.zig</kbd>.1/1.test_ |
| af160 | 72 65 64 75 63 65 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 76 65 63 74 6f 72 20 40 72 65 64 75 | reduce_builtin.test.vector.@redu |
| af180 | 63 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 | ce...OK.All.1.tests.passed..</sa |
| af1a0 | 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 | mp></pre></figure>........<p>See |
| af1c0 | 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 56 65 63 | .also:</p><ul>.<li><a.href="#Vec |
| af1e0 | 74 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 | tors">Vectors</a></li>.<li><a.hr |
| af200 | 65 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 | ef="#setFloatMode">@setFloatMode |
| af220 | 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>................< |
| af240 | 68 33 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 | h3.id="src"><a.href="#toc-src">@ |
| af260 | 73 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 | src</a>.<a.class="hdr".href="#sr |
| af280 | 63 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | c">..</a></h3>........<pre><code |
| af2a0 | 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 72 63 3c | ><span.class="tok-builtin">@src< |
| af2c0 | 2f 73 70 61 6e 3e 28 29 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 53 6f 75 72 63 65 4c 6f 63 61 74 | /span>().std.builtin.SourceLocat |
| af2e0 | 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 20 20 20 | ion</code></pre>.......<p>...... |
| af300 | 20 52 65 74 75 72 6e 73 20 61 20 3c 63 6f 64 65 3e 53 6f 75 72 63 65 4c 6f 63 61 74 69 6f 6e 3c | .Returns.a.<code>SourceLocation< |
| af320 | 2f 63 6f 64 65 3e 20 73 74 72 75 63 74 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 66 | /code>.struct.representing.the.f |
| af340 | 75 6e 63 74 69 6f 6e 27 73 20 6e 61 6d 65 20 61 6e 64 20 6c 6f 63 61 74 69 6f 6e 20 69 6e 20 74 | unction's.name.and.location.in.t |
| af360 | 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 2e 20 54 68 69 73 20 6d 75 73 74 20 62 65 20 63 61 6c | he.source.code..This.must.be.cal |
| af380 | 6c 65 64 20 69 6e 20 61 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | led.in.a.function........</p>... |
| af3a0 | 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a | ....<figure><figcaption.class="z |
| af3c0 | 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f | ig-cap"><cite.class="file">test_ |
| af3e0 | 73 72 63 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | src_builtin.zig</cite></figcapti |
| af400 | 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | on><pre><code><span.class="tok-k |
| af420 | 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 |
| af440 | 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>(< |
| af460 | 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 |
| af480 | 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 |
| af4a0 | 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 |
| af4c0 | 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 |
| af4e0 | 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- |
| af500 | 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>.{.. |
| af520 | 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 |
| af540 | 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=" |
| af560 | 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 |
| af580 | 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 |
| af5a0 | 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>.{. |
| af5c0 | 20 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</ |
| af5e0 | 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 |
| af600 | 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. |
| af620 | 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 |
| af640 | 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 |
| af660 | 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 |
| af680 | 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. |
| af6a0 | 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 |
| af6c0 | 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=" |
| af6e0 | 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 |
| af700 | 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 |
| af720 | 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. |
| af740 | 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& |
| af760 | 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= |
| af780 | 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 |
| af7a0 | 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 |
| af7c0 | 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 |
| af7e0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 74 5f 73 72 63 5f 62 75 69 | ass="tok-str">"test_src_bui |
| af800 | 6c 74 69 6e 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 | ltin.zig"</span>));.}</code |
| af820 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | ></pre></figure><figure><figcapt |
| af840 | 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 | ion.class="shell-cap">Shell</fig |
| af860 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 | caption><pre><samp>$.<kbd>zig.te |
| af880 | 73 74 20 74 65 73 74 5f 73 72 63 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f | st.test_src_builtin.zig</kbd>.1/ |
| af8a0 | 31 20 74 65 73 74 5f 73 72 63 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 40 73 72 63 2e 2e 2e 4f | 1.test_src_builtin.test.@src...O |
| af8c0 | 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 | K.All.1.tests.passed..</samp></p |
| af8e0 | 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 | re></figure>...............<h3.i |
| af900 | 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 40 73 71 | d="sqrt"><a.href="#toc-sqrt">@sq |
| af920 | 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 73 71 72 | rt</a>.<a.class="hdr".href="#sqr |
| af940 | 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | t">..</a></h3>........<pre><code |
| af960 | 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 71 72 74 | ><span.class="tok-builtin">@sqrt |
| af980 | 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- |
| af9a0 | 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 3d | kw">anytype</span>).<span.class= |
| af9c0 | 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 6c | "tok-builtin">@TypeOf</span>(val |
| af9e0 | 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 20 | ue)</code></pre>.......<p>...... |
| afa00 | 20 50 65 72 66 6f 72 6d 73 20 74 68 65 20 73 71 75 61 72 65 20 72 6f 6f 74 20 6f 66 20 61 20 66 | .Performs.the.square.root.of.a.f |
| afa20 | 6c 6f 61 74 69 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 | loating.point.number..Uses.a.ded |
| afa40 | 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..... |
| afa60 | 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>.... |
| afa80 | 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="# |
| afaa0 | 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=" |
| afac0 | 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 2e | #Vectors">Vectors</a>.of.floats. |
| afae0 | 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 33 20 69 64 3d | .......</p>..............<h3.id= |
| afb00 | 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 73 69 6e 3c 2f 61 | "sin"><a.href="#toc-sin">@sin</a |
| afb20 | 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 6e 22 3e c2 a7 3c | >.<a.class="hdr".href="#sin">..< |
| afb40 | 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e | /a></h3>........<pre><code><span |
| afb60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 6e 3c 2f 73 70 61 6e 3e | .class="tok-builtin">@sin</span> |
| afb80 | 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 79 | (value:.<span.class="tok-kw">any |
| afba0 | 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 75 | type</span>).<span.class="tok-bu |
| afbc0 | 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 6f | iltin">@TypeOf</span>(value)</co |
| afbe0 | 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 69 6e 65 20 74 | de></pre>.......<p>.......Sine.t |
| afc00 | 72 69 67 6f 6e 6f 6d 65 74 72 69 63 20 66 75 6e 63 74 69 6f 6e 20 6f 6e 20 61 20 66 6c 6f 61 74 | rigonometric.function.on.a.float |
| afc20 | 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 20 69 6e 20 72 61 64 69 61 6e 73 2e 20 55 73 65 | ing.point.number.in.radians..Use |
| afc40 | 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 63 74 69 | s.a.dedicated.hardware.instructi |
| afc60 | 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 20 20 3c | on.......when.available........< |
| afc80 | 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 61 20 | /p>.......<p>.......Supports.<a. |
| afca0 | 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 3c 61 | href="#Floats">Floats</a>.and.<a |
| afcc0 | 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 66 20 | .href="#Vectors">Vectors</a>.of. |
| afce0 | 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 20 20 20 20 | floats........</p>.............. |
| afd00 | 20 3c 68 33 20 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 | .<h3.id="cos"><a.href="#toc-cos" |
| afd20 | 3e 40 63 6f 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 | >@cos</a>.<a.class="hdr".href="# |
| afd40 | 63 6f 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | cos">..</a></h3>........<pre><co |
| afd60 | 64 65 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 6f | de><span.class="tok-builtin">@co |
| afd80 | 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 73 73 3d 22 74 6f 6b | s</span>(value:.<span.class="tok |
| afda0 | 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 |
| afdc0 | 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 |
| afde0 | 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>..... |
| afe00 | 20 20 43 6f 73 69 6e 65 20 74 72 69 67 6f 6e 6f 6d 65 74 72 69 63 20 66 75 6e 63 74 69 6f 6e 20 | ..Cosine.trigonometric.function. |
| afe20 | 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 20 69 6e 20 72 61 | on.a.floating.point.number.in.ra |
| afe40 | 64 69 61 6e 73 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 | dians..Uses.a.dedicated.hardware |
| afe60 | 20 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 | .instruction.......when.availabl |
| afe80 | 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 53 75 | e........</p>.......<p>.......Su |
| afea0 | 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 74 73 3c | pports.<a.href="#Floats">Floats< |
| afec0 | 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 63 74 6f | /a>.and.<a.href="#Vectors">Vecto |
| afee0 | 72 73 3c 2f 61 3e 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 | rs</a>.of.floats........</p>.... |
| aff00 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 74 61 6e 22 3e 3c 61 20 68 72 65 66 3d | ...........<h3.id="tan"><a.href= |
| aff20 | 22 23 74 6f 63 2d 74 61 6e 22 3e 40 74 61 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | "#toc-tan">@tan</a>.<a.class="hd |
| aff40 | 72 22 20 68 72 65 66 3d 22 23 74 61 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 | r".href="#tan">..</a></h3>...... |
| aff60 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | ..<pre><code><span.class="tok-bu |
| aff80 | 69 6c 74 69 6e 22 3e 40 74 61 6e 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 | iltin">@tan</span>(value:.<span. |
| affa0 | 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>).< |
| affc0 | 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 |
| affe0 | 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>..... |
| b0000 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 61 6e 67 65 6e 74 20 74 72 69 67 6f 6e 6f 6d 65 74 72 69 | ..<p>.......Tangent.trigonometri |
| b0020 | 63 20 66 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 | c.function.on.a.floating.point.n |
| b0040 | 75 6d 62 65 72 20 69 6e 20 72 61 64 69 61 6e 73 2e 0a 20 20 20 20 20 20 55 73 65 73 20 61 20 64 | umber.in.radians........Uses.a.d |
| b0060 | 65 64 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 20 77 68 | edicated.hardware.instruction.wh |
| b0080 | 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 20 20 20 3c | en.available........</p>.......< |
| b00a0 | 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 46 6c 6f 61 | p>.......Supports.<a.href="#Floa |
| b00c0 | 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 23 56 65 63 | ts">Floats</a>.and.<a.href="#Vec |
| b00e0 | 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 2e 0a 20 20 20 | tors">Vectors</a>.of.floats..... |
| b0100 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 65 78 | ...</p>...............<h3.id="ex |
| b0120 | 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 2f 61 3e 20 3c | p"><a.href="#toc-exp">@exp</a>.< |
| b0140 | 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 a7 3c 2f 61 3e | a.class="hdr".href="#exp">..</a> |
| b0160 | 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </h3>........<pre><code><span.cl |
| b0180 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 78 70 3c 2f 73 70 61 6e 3e 28 76 61 | ass="tok-builtin">@exp</span>(va |
| b01a0 | 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 |
| b01c0 | 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 |
| b01e0 | 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> |
| b0200 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 42 61 73 65 2d 65 20 65 78 | </pre>.......<p>.......Base-e.ex |
| b0220 | 70 6f 6e 65 6e 74 69 61 6c 20 66 75 6e 63 74 69 6f 6e 20 6f 6e 20 61 20 66 6c 6f 61 74 69 6e 67 | ponential.function.on.a.floating |
| b0240 | 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 64 20 | .point.number..Uses.a.dedicated. |
| b0260 | 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 6e 20 | hardware.instruction.......when. |
| b0280 | 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 3e 0a | available........</p>.......<p>. |
| b02a0 | 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 73 22 | ......Supports.<a.href="#Floats" |
| b02c0 | 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 6f 72 | >Floats</a>.and.<a.href="#Vector |
| b02e0 | 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2e 0a 20 20 20 20 20 20 | s">Vectors</a>.of.floats........ |
| b0300 | 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 65 78 70 32 22 3e | </p>..............<h3.id="exp2"> |
| b0320 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 70 32 22 3e 40 65 78 70 32 3c 2f 61 3e 20 3c 61 | <a.href="#toc-exp2">@exp2</a>.<a |
| b0340 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 70 32 22 3e c2 a7 3c 2f 61 3e | .class="hdr".href="#exp2">..</a> |
| b0360 | 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </h3>........<pre><code><span.cl |
| b0380 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 78 70 32 3c 2f 73 70 61 6e 3e 28 76 | ass="tok-builtin">@exp2</span>(v |
| b03a0 | 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 |
| b03c0 | 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 |
| b03e0 | 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 |
| b0400 | 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 42 61 73 65 2d 32 20 65 | ></pre>.......<p>.......Base-2.e |
| b0420 | 78 70 6f 6e 65 6e 74 69 61 6c 20 66 75 6e 63 74 69 6f 6e 20 6f 6e 20 61 20 66 6c 6f 61 74 69 6e | xponential.function.on.a.floatin |
| b0440 | 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 64 | g.point.number..Uses.a.dedicated |
| b0460 | 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 6e | .hardware.instruction.......when |
| b0480 | 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 3e | .available........</p>.......<p> |
| b04a0 | 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 73 | .......Supports.<a.href="#Floats |
| b04c0 | 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 6f | ">Floats</a>.and.<a.href="#Vecto |
| b04e0 | 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 2e 0a 20 20 20 20 20 | rs">Vectors</a>.of.floats....... |
| b0500 | 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 6c 6f 67 22 3e | .</p>..............<h3.id="log"> |
| b0520 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6c 6f 67 22 3e 40 6c 6f 67 3c 2f 61 3e 20 3c 61 20 63 | <a.href="#toc-log">@log</a>.<a.c |
| b0540 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6c 6f 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | lass="hdr".href="#log">..</a></h |
| b0560 | 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | 3>........<pre><code><span.class |
| b0580 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6c 6f 67 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 | ="tok-builtin">@log</span>(value |
| b05a0 | 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 2f | :.<span.class="tok-kw">anytype</ |
| b05c0 | 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 69 6e 22 | span>).<span.class="tok-builtin" |
| b05e0 | 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 3c 2f 70 | >@TypeOf</span>(value)</code></p |
| b0600 | 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 68 65 20 | re>.......<p>.......Returns.the. |
| b0620 | 6e 61 74 75 72 61 6c 20 6c 6f 67 61 72 69 74 68 6d 20 6f 66 20 61 20 66 6c 6f 61 74 69 6e 67 20 | natural.logarithm.of.a.floating. |
| b0640 | 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 64 20 68 | point.number..Uses.a.dedicated.h |
| b0660 | 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 6e 20 61 | ardware.instruction.......when.a |
| b0680 | 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 3e 0a 20 | vailable........</p>.......<p>.. |
| b06a0 | 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 73 22 3e | .....Supports.<a.href="#Floats"> |
| b06c0 | 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 6f 72 73 | Floats</a>.and.<a.href="#Vectors |
| b06e0 | 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2e 0a 20 20 20 20 20 20 3c | ">Vectors</a>.of.floats........< |
| b0700 | 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 6c 6f 67 32 22 3e 3c | /p>..............<h3.id="log2">< |
| b0720 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6c 6f 67 32 22 3e 40 6c 6f 67 32 3c 2f 61 3e 20 3c 61 20 | a.href="#toc-log2">@log2</a>.<a. |
| b0740 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6c 6f 67 32 22 3e c2 a7 3c 2f 61 3e 3c | class="hdr".href="#log2">..</a>< |
| b0760 | 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | /h3>........<pre><code><span.cla |
| b0780 | 73 73 3d 22 74 6f 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 | ss="tok-builtin">@log2</span>(va |
| b07a0 | 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 |
| b07c0 | 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 |
| b07e0 | 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> |
| b0800 | 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 |
| b0820 | 68 65 20 6c 6f 67 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 | he.logarithm.to.the.base.2.of.a. |
| b0840 | 66 6c 6f 61 74 69 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 | floating.point.number..Uses.a.de |
| b0860 | 64 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 | dicated.hardware.instruction.... |
| b0880 | 20 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 | ...when.available........</p>... |
| b08a0 | 20 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 | ....<p>.......Supports.<a.href=" |
| b08c0 | 23 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 | #Floats">Floats</a>.and.<a.href= |
| b08e0 | 22 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 | "#Vectors">Vectors</a>.of.floats |
| b0900 | 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 33 20 69 64 | ........</p>..............<h3.id |
| b0920 | 3d 22 6c 6f 67 31 30 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6c 6f 67 31 30 22 3e 40 6c | ="log10"><a.href="#toc-log10">@l |
| b0940 | 6f 67 31 30 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 | og10</a>.<a.class="hdr".href="#l |
| b0960 | 6f 67 31 30 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | og10">..</a></h3>........<pre><c |
| b0980 | 6f 64 65 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 | ode><span.class="tok-builtin">@l |
| b09a0 | 6f 67 31 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 | og10</span>(value:.<span.class=" |
| b09c0 | 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 |
| b09e0 | 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> |
| b0a00 | 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 3e 0a 20 | (value)</code></pre>.......<p>.. |
| b0a20 | 20 20 20 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 | .....Returns.the.logarithm.to.th |
| b0a40 | 65 20 62 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 | e.base.10.of.a.floating.point.nu |
| b0a60 | 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. |
| b0a80 | 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 |
| b0aa0 | 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 |
| b0ac0 | 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</ |
| b0ae0 | 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 |
| b0b00 | 73 3c 2f 61 3e 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 | s</a>.of.floats........</p>..... |
| b0b20 | 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 61 62 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 | .........<h3.id="abs"><a.href="# |
| b0b40 | 74 6f 63 2d 61 62 73 22 3e 40 61 62 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | toc-abs">@abs</a>.<a.class="hdr" |
| b0b60 | 20 68 72 65 66 3d 22 23 61 62 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | .href="#abs">..</a></h3>........ |
| b0b80 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | <pre><code><span.class="tok-buil |
| b0ba0 | 74 69 6e 22 3e 40 61 62 73 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c | tin">@abs</span>(value:.<span.cl |
| b0bc0 | 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 70 | ass="tok-kw">anytype</span>).<sp |
| b0be0 | 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> |
| b0c00 | 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 65 | </code></pre>.......<p>.......Re |
| b0c20 | 74 75 72 6e 73 20 74 68 65 20 61 62 73 6f 6c 75 74 65 20 76 61 6c 75 65 20 6f 66 20 61 6e 20 69 | turns.the.absolute.value.of.an.i |
| b0c40 | 6e 74 65 67 65 72 20 6f 72 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 | nteger.or.a.floating.point.numbe |
| b0c60 | 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 |
| b0c80 | 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 0a | truction.......when.available... |
| b0ca0 | 20 20 20 20 20 20 54 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 61 6c 77 61 79 73 20 | ......The.return.type.is.always. |
| b0cc0 | 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 6f 66 20 74 68 65 20 73 61 6d 65 20 | an.unsigned.integer.of.the.same. |
| b0ce0 | 62 69 74 20 77 69 64 74 68 20 61 73 20 74 68 65 20 6f 70 65 72 61 6e 64 20 69 66 20 74 68 65 20 | bit.width.as.the.operand.if.the. |
| b0d00 | 6f 70 65 72 61 6e 64 20 69 73 20 61 6e 20 69 6e 74 65 67 65 72 2e 0a 20 20 20 20 20 20 55 6e 73 | operand.is.an.integer........Uns |
| b0d20 | 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 6f 70 65 72 61 6e 64 73 20 61 72 65 20 73 75 70 70 6f | igned.integer.operands.are.suppo |
| b0d40 | 72 74 65 64 2e 20 54 68 65 20 62 75 69 6c 74 69 6e 20 63 61 6e 6e 6f 74 20 6f 76 65 72 66 6c 6f | rted..The.builtin.cannot.overflo |
| b0d60 | 77 20 66 6f 72 20 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 6f 70 65 72 61 6e 64 73 2e 0a 20 | w.for.signed.integer.operands... |
| b0d80 | 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 |
| b0da0 | 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 2c | ts.<a.href="#Floats">Floats</a>, |
| b0dc0 | 20 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 3c 2f 61 | .<a.href="#Integers">Integers</a |
| b0de0 | 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 |
| b0e00 | 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 20 6f 72 20 69 6e 74 65 67 65 72 73 2e 0a 20 20 20 20 | </a>.of.floats.or.integers...... |
| b0e20 | 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 66 6c 6f 6f | ..</p>..............<h3.id="floo |
| b0e40 | 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 6c 6f 6f 72 22 3e 40 66 6c 6f 6f 72 3c 2f | r"><a.href="#toc-floor">@floor</ |
| b0e60 | 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 6c 6f 6f 72 22 3e | a>.<a.class="hdr".href="#floor"> |
| b0e80 | c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 | ..</a></h3>........<pre><code><s |
| b0ea0 | 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 6f 72 3c 2f | pan.class="tok-builtin">@floor</ |
| b0ec0 | 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 6b 77 | span>(value:.<span.class="tok-kw |
| b0ee0 | 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 |
| b0f00 | 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 6c 75 65 | ok-builtin">@TypeOf</span>(value |
| b0f20 | 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 20 20 52 | )</code></pre>.......<p>.......R |
| b0f40 | 65 74 75 72 6e 73 20 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 | eturns.the.largest.integral.valu |
| b0f60 | 65 20 6e 6f 74 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 74 68 65 20 67 69 76 65 6e 20 66 6c 6f | e.not.greater.than.the.given.flo |
| b0f80 | 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 2e 0a 20 20 20 20 20 20 55 73 65 73 20 61 | ating.point.number........Uses.a |
| b0fa0 | 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 63 74 69 6f 6e 20 | .dedicated.hardware.instruction. |
| b0fc0 | 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 20 20 | when.available........</p>...... |
| b0fe0 | 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 46 6c | .<p>.......Supports.<a.href="#Fl |
| b1000 | 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 23 56 | oats">Floats</a>.and.<a.href="#V |
| b1020 | 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 2e 0a 20 | ectors">Vectors</a>.of.floats... |
| b1040 | 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 63 | .....</p>..............<h3.id="c |
| b1060 | 65 69 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 65 69 6c 22 3e 40 63 65 69 6c 3c 2f | eil"><a.href="#toc-ceil">@ceil</ |
| b1080 | 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 65 69 6c 22 3e c2 | a>.<a.class="hdr".href="#ceil">. |
| b10a0 | a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 | .</a></h3>........<pre><code><sp |
| b10c0 | 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 65 69 6c 3c 2f 73 70 | an.class="tok-builtin">@ceil</sp |
| b10e0 | 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"> |
| b1100 | 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 |
| b1120 | 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 6c 75 65 29 3c | -builtin">@TypeOf</span>(value)< |
| b1140 | 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 65 74 | /code></pre>.......<p>.......Ret |
| b1160 | 75 72 6e 73 20 74 68 65 20 73 6d 61 6c 6c 65 73 74 20 69 6e 74 65 67 72 61 6c 20 76 61 6c 75 65 | urns.the.smallest.integral.value |
| b1180 | 20 6e 6f 74 20 6c 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 | .not.less.than.the.given.floatin |
| b11a0 | 67 20 70 6f 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 | g.point.number........Uses.a.ded |
| b11c0 | 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 20 77 68 65 6e | icated.hardware.instruction.when |
| b11e0 | 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 3e | .available........</p>.......<p> |
| b1200 | 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 73 | .......Supports.<a.href="#Floats |
| b1220 | 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 6f | ">Floats</a>.and.<a.href="#Vecto |
| b1240 | 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 2e 0a 20 20 20 20 20 | rs">Vectors</a>.of.floats....... |
| b1260 | 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 74 72 75 6e 63 | .</p>..............<h3.id="trunc |
| b1280 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 74 72 75 6e 63 22 3e 40 74 72 75 6e 63 3c 2f 61 | "><a.href="#toc-trunc">@trunc</a |
| b12a0 | 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 72 75 6e 63 22 3e c2 | >.<a.class="hdr".href="#trunc">. |
| b12c0 | a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 | .</a></h3>........<pre><code><sp |
| b12e0 | 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 72 75 6e 63 3c 2f 73 | an.class="tok-builtin">@trunc</s |
| b1300 | 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 6b 77 22 | pan>(value:.<span.class="tok-kw" |
| b1320 | 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 6f | >anytype</span>).<span.class="to |
| b1340 | 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 6c 75 65 29 | k-builtin">@TypeOf</span>(value) |
| b1360 | 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 6f | </code></pre>.......<p>.......Ro |
| b1380 | 75 6e 64 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 | unds.the.given.floating.point.nu |
| b13a0 | 6d 62 65 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 | mber.to.an.integer,.towards.zero |
| b13c0 | 2e 0a 20 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 | ........Uses.a.dedicated.hardwar |
| b13e0 | 65 20 69 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 | e.instruction.when.available.... |
| b1400 | 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 |
| b1420 | 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 |
| b1440 | 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 |
| b1460 | 3e 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 20 | >.of.floats........</p>......... |
| b1480 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 72 6f 75 6e 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | .....<h3.id="round"><a.href="#to |
| b14a0 | 63 2d 72 6f 75 6e 64 22 3e 40 72 6f 75 6e 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | c-round">@round</a>.<a.class="hd |
| b14c0 | 72 22 20 68 72 65 66 3d 22 23 72 6f 75 6e 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | r".href="#round">..</a></h3>.... |
| b14e0 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ....<pre><code><span.class="tok- |
| b1500 | 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 |
| b1520 | 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 |
| b1540 | 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 |
| b1560 | 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>. |
| b1580 | 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 |
| b15a0 | 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 74 68 65 20 6e 65 | .floating.point.number.to.the.ne |
| b15c0 | 61 72 65 73 74 20 69 6e 74 65 67 65 72 2e 20 49 66 20 74 77 6f 20 69 6e 74 65 67 65 72 73 20 61 | arest.integer..If.two.integers.a |
| b15e0 | 72 65 20 65 71 75 61 6c 6c 79 20 63 6c 6f 73 65 2c 20 72 6f 75 6e 64 73 20 61 77 61 79 20 66 72 | re.equally.close,.rounds.away.fr |
| b1600 | 6f 6d 20 7a 65 72 6f 2e 0a 20 20 20 20 20 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 | om.zero........Uses.a.dedicated. |
| b1620 | 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 61 | hardware.instruction.when.availa |
| b1640 | 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 | ble........</p>.......<figure><f |
| b1660 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 | igcaption.class="zig-cap"><cite. |
| b1680 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 72 6f 75 6e 64 5f 62 75 69 6c 74 69 6e 2e | class="file">test_round_builtin. |
| b16a0 | 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 | zig</cite></figcaption><pre><cod |
| b16c0 | 65 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 | e><span.class="tok-kw">const</sp |
| b16e0 | 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 |
| b1700 | 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 |
| b1720 | 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 |
| b1740 | 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 |
| b1760 | 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 |
| b1780 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 72 6f 75 6e 64 26 71 75 6f 74 3b 3c 2f | s="tok-str">"@round"</ |
| b17a0 | 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" |
| b17c0 | 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=" |
| b17e0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 6f 75 6e 64 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | tok-builtin">@round</span>(<span |
| b1800 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 34 3c 2f 73 70 61 6e 3e 29 20 | .class="tok-number">1.4</span>). |
| b1820 | 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 2f 73 | ==.<span.class="tok-number">1</s |
| b1840 | 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"> |
| b1860 | 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 74 | try</span>.expect(<span.class="t |
| b1880 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 6f 75 6e 64 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | ok-builtin">@round</span>(<span. |
| b18a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 35 3c 2f 73 70 61 6e 3e 29 20 3d | class="tok-number">1.5</span>).= |
| b18c0 | 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 70 | =.<span.class="tok-number">2</sp |
| b18e0 | 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 |
| b1900 | 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 74 6f | ry</span>.expect(<span.class="to |
| b1920 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 6f 75 6e 64 3c 2f 73 70 61 6e 3e 28 2d 3c 73 70 61 6e 20 | k-builtin">@round</span>(-<span. |
| b1940 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 34 3c 2f 73 70 61 6e 3e 29 20 3d | class="tok-number">1.4</span>).= |
| b1960 | 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 31 3c 2f 73 | =.-<span.class="tok-number">1</s |
| b1980 | 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"> |
| b19a0 | 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 74 | try</span>.expect(<span.class="t |
| b19c0 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 6f 75 6e 64 3c 2f 73 70 61 6e 3e 28 2d 3c 73 70 61 6e | ok-builtin">@round</span>(-<span |
| b19e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 2e 35 3c 2f 73 70 61 6e 3e 29 20 | .class="tok-number">2.5</span>). |
| b1a00 | 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</ |
| b1a20 | 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c | span>);.}</code></pre></figure>< |
| b1a40 | 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d | figure><figcaption.class="shell- |
| b1a60 | 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d | cap">Shell</figcaption><pre><sam |
| b1a80 | 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 72 6f 75 6e 64 5f 62 75 69 | p>$.<kbd>zig.test.test_round_bui |
| b1aa0 | 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 72 6f 75 6e 64 5f 62 75 | ltin.zig</kbd>.1/1.test_round_bu |
| b1ac0 | 69 6c 74 69 6e 2e 74 65 73 74 2e 40 72 6f 75 6e 64 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 | iltin.test.@round...OK.All.1.tes |
| b1ae0 | 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | ts.passed..</samp></pre></figure |
| b1b00 | 3e 0a 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 61 20 68 | >........<p>.......Supports.<a.h |
| b1b20 | 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 3c 61 20 | ref="#Floats">Floats</a>.and.<a. |
| b1b40 | 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 66 20 66 | href="#Vectors">Vectors</a>.of.f |
| b1b60 | 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 20 20 20 20 20 | loats........</p>............... |
| b1b80 | 3c 68 33 20 69 64 3d 22 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 3c 61 20 68 72 65 66 | <h3.id="subWithOverflow"><a.href |
| b1ba0 | 3d 22 23 74 6f 63 2d 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 75 62 57 69 74 68 | ="#toc-subWithOverflow">@subWith |
| b1bc0 | 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 72 65 66 | Overflow</a>.<a.class="hdr".href |
| b1be0 | 3d 22 23 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | ="#subWithOverflow">..</a></h3>. |
| b1c00 | 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .......<pre><code><span.class="t |
| b1c20 | 6f 6b 2d 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 | ok-builtin">@subWithOverflow</sp |
| b1c40 | 61 6e 3e 28 61 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 | an>(a:.<span.class="tok-kw">anyt |
| b1c60 | 79 70 65 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 | ype</span>,.b:.<span.class="tok- |
| b1c80 | 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 3d | kw">anytype</span>).<span.class= |
| b1ca0 | 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 | "tok-kw">struct</span>.{.<span.c |
| b1cc0 | 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 |
| b1ce0 | 3e 28 61 2c 20 62 29 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 | >(a,.b),.<span.class="tok-type"> |
| b1d00 | 75 31 3c 2f 73 70 61 6e 3e 20 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c | u1</span>.}</code></pre>.......< |
| b1d20 | 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 3c 63 6f 64 65 3e 61 20 2d 20 62 3c 2f 63 | p>.......Performs.<code>a.-.b</c |
| b1d40 | 6f 64 65 3e 20 61 6e 64 20 72 65 74 75 72 6e 73 20 61 20 74 75 70 6c 65 20 77 69 74 68 20 74 68 | ode>.and.returns.a.tuple.with.th |
| b1d60 | 65 20 72 65 73 75 6c 74 20 61 6e 64 20 61 20 70 6f 73 73 69 62 6c 65 20 6f 76 65 72 66 6c 6f 77 | e.result.and.a.possible.overflow |
| b1d80 | 20 62 69 74 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 | .bit........</p>...............< |
| b1da0 | 68 33 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 61 | h3.id="tagName"><a.href="#toc-ta |
| b1dc0 | 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 64 | gName">@tagName</a>.<a.class="hd |
| b1de0 | 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 33 3e 0a 0a | r".href="#tagName">..</a></h3>.. |
| b1e00 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ......<pre><code><span.class="to |
| b1e20 | 6b 2d 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 76 61 6c 75 65 | k-builtin">@tagName</span>(value |
| b1e40 | 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 2f | :.<span.class="tok-kw">anytype</ |
| b1e60 | 73 70 61 6e 3e 29 20 5b 3a 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 |
| b1e80 | 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 77 22 3e | ">0</span>]<span.class="tok-kw"> |
| b1ea0 | 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 |
| b1ec0 | 70 65 22 3e 75 38 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 | pe">u8</span></code></pre>...... |
| b1ee0 | 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 6e 20 65 6e 75 6d 20 76 61 6c 75 | .<p>.......Converts.an.enum.valu |
| b1f00 | 65 20 6f 72 20 75 6e 69 6f 6e 20 76 61 6c 75 65 20 74 6f 20 61 20 73 74 72 69 6e 67 20 6c 69 74 | e.or.union.value.to.a.string.lit |
| b1f20 | 65 72 61 6c 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 6e 61 6d 65 2e 3c 2f 70 3e 3c | eral.representing.the.name.</p>< |
| b1f40 | 70 3e 49 66 20 74 68 65 20 65 6e 75 6d 20 69 73 20 6e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 | p>If.the.enum.is.non-exhaustive. |
| b1f60 | 61 6e 64 20 74 68 65 20 74 61 67 20 76 61 6c 75 65 20 64 6f 65 73 20 6e 6f 74 20 6d 61 70 20 74 | and.the.tag.value.does.not.map.t |
| b1f80 | 6f 20 61 20 6e 61 6d 65 2c 20 69 74 20 69 6e 76 6f 6b 65 73 20 73 61 66 65 74 79 2d 63 68 65 63 | o.a.name,.it.invokes.safety-chec |
| b1fa0 | 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e | ked.<a.href="#Illegal-Behavior"> |
| b1fc0 | 49 6c 6c 65 67 61 6c 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 | Illegal.Behavior</a>........</p> |
| b1fe0 | 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 68 69 73 22 3e 3c 61 20 | ...............<h3.id="This"><a. |
| b2000 | 68 72 65 66 3d 22 23 74 6f 63 2d 54 68 69 73 22 3e 40 54 68 69 73 3c 2f 61 3e 20 3c 61 20 63 6c | href="#toc-This">@This</a>.<a.cl |
| b2020 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 68 69 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | ass="hdr".href="#This">..</a></h |
| b2040 | 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | 3>........<pre><code><span.class |
| b2060 | 3d 22 74 6f 6b 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 | ="tok-builtin">@This</span>().<s |
| b2080 | 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> |
| b20a0 | 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 65 | </code></pre>.......<p>.......Re |
| b20c0 | 74 75 72 6e 73 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 | turns.the.innermost.struct,.enum |
| b20e0 | 2c 20 6f 72 20 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 | ,.or.union.that.this.function.ca |
| b2100 | 6c 6c 20 69 73 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 | ll.is.inside........This.can.be. |
| b2120 | 75 73 65 66 75 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 | useful.for.an.anonymous.struct.t |
| b2140 | 68 61 74 20 6e 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 | hat.needs.to.refer.to.itself:... |
| b2160 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | ....</p>.......<figure><figcapti |
| b2180 | 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 | on.class="zig-cap"><cite.class=" |
| b21a0 | 66 69 6c 65 22 3e 74 65 73 74 5f 74 68 69 73 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 69 74 | file">test_this_builtin.zig</cit |
| b21c0 | 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | e></figcaption><pre><code><span. |
| b21e0 | 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. |
| b2200 | 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 |
| b2220 | 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" |
| b2240 | 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. |
| b2260 | 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 |
| b2280 | 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. |
| b22a0 | 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 |
| b22c0 | 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 29 26 71 | .class="tok-str">"@This()&q |
| b22e0 | 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 |
| b2300 | 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 3c 73 70 | ok-kw">var</span>.items.=.[_]<sp |
| b2320 | 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 20 | an.class="tok-type">i32</span>{. |
| b2340 | 3c 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 |
| b2360 | 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 73 | >,.<span.class="tok-number">2</s |
| b2380 | 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 |
| b23a0 | 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 |
| b23c0 | 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 3d 22 74 | ">4</span>.};.....<span.class="t |
| b23e0 | 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 73 74 28 | ok-kw">const</span>.list.=.List( |
| b2400 | 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 |
| b2420 | 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 73 3d 22 | >){..items.=.items[<span.class=" |
| b2440 | 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 20 20 3c | tok-number">0</span>..].};.....< |
| b2460 | 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 |
| b2480 | 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 63 6c 61 | xpect(list.length().==.<span.cla |
| b24a0 | 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 0a 3c 73 | ss="tok-number">4</span>);.}..<s |
| b24c0 | 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 |
| b24e0 | 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 28 3c 73 | an.class="tok-fn">List</span>(<s |
| b2500 | 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 |
| b2520 | 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 |
| b2540 | 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" |
| b2560 | 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=" |
| b2580 | 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 |
| b25a0 | 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>.{...... |
| b25c0 | 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 |
| b25e0 | 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 62 75 69 | pan>.Self.=.<span.class="tok-bui |
| b2600 | 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 20 20 69 | ltin">@This</span>();..........i |
| b2620 | 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 73 73 3d | tems:.[]T,..........<span.class= |
| b2640 | 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=" |
| b2660 | 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 65 6c 66 | tok-fn">length</span>(self:.Self |
| b2680 | 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 65 3c 2f | ).<span.class="tok-type">usize</ |
| b26a0 | 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 73 73 3d | span>.{.............<span.class= |
| b26c0 | 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 74 65 6d | "tok-kw">return</span>.self.item |
| b26e0 | 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 64 65 3e | s.len;.........}.....};.}</code> |
| b2700 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | </pre></figure><figure><figcapti |
| b2720 | 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 | on.class="shell-cap">Shell</figc |
| b2740 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 | aption><pre><samp>$.<kbd>zig.tes |
| b2760 | 74 20 74 65 73 74 5f 74 68 69 73 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f | t.test_this_builtin.zig</kbd>.1/ |
| b2780 | 31 20 74 65 73 74 5f 74 68 69 73 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 40 54 68 69 73 28 29 | 1.test_this_builtin.test.@This() |
| b27a0 | 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 | ...OK.All.1.tests.passed..</samp |
| b27c0 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | ></pre></figure>........<p>..... |
| b27e0 | 20 20 57 68 65 6e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | ..When.<code><span.class="tok-bu |
| b2800 | 69 6c 74 69 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 | iltin">@This</span>()</code>.is. |
| b2820 | 75 73 65 64 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 | used.at.file.scope,.it.returns.a |
| b2840 | 20 72 65 66 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 | .reference.to.the.......struct.t |
| b2860 | 68 61 74 20 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 | hat.corresponds.to.the.current.f |
| b2880 | 69 6c 65 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 | ile........</p>...............<h |
| b28a0 | 33 20 69 64 3d 22 74 72 61 70 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 74 72 61 70 22 3e | 3.id="trap"><a.href="#toc-trap"> |
| b28c0 | 40 74 72 61 70 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 | @trap</a>.<a.class="hdr".href="# |
| b28e0 | 74 72 61 70 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | trap">..</a></h3>........<pre><c |
| b2900 | 6f 64 65 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 74 | ode><span.class="tok-builtin">@t |
| b2920 | 72 61 70 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 | rap</span>().<span.class="tok-ty |
| b2940 | 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> |
| b2960 | 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 69 | .......<p>.......This.function.i |
| b2980 | 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 74 72 61 70 2f | nserts.a.platform-specific.trap/ |
| b29a0 | 6a 61 6d 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 77 68 69 63 68 20 63 61 6e 20 62 65 20 75 73 65 | jam.instruction.which.can.be.use |
| b29c0 | 64 20 74 6f 20 65 78 69 74 20 74 68 65 20 70 72 6f 67 72 61 6d 20 61 62 6e 6f 72 6d 61 6c 6c 79 | d.to.exit.the.program.abnormally |
| b29e0 | 2e 0a 20 20 20 20 20 20 54 68 69 73 20 6d 61 79 20 62 65 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 | ........This.may.be.implemented. |
| b2a00 | 62 79 20 65 78 70 6c 69 63 69 74 6c 79 20 65 6d 69 74 74 69 6e 67 20 61 6e 20 69 6e 76 61 6c 69 | by.explicitly.emitting.an.invali |
| b2a20 | 64 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 77 68 69 63 68 20 6d 61 79 20 63 61 75 73 65 20 61 6e | d.instruction.which.may.cause.an |
| b2a40 | 20 69 6c 6c 65 67 61 6c 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 65 78 63 65 70 74 69 6f 6e 20 6f | .illegal.instruction.exception.o |
| b2a60 | 66 20 73 6f 6d 65 20 73 6f 72 74 2e 0a 20 20 20 20 20 20 55 6e 6c 69 6b 65 20 66 6f 72 20 3c 63 | f.some.sort........Unlike.for.<c |
| b2a80 | 6f 64 65 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 62 | ode><span.class="tok-builtin">@b |
| b2aa0 | 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 2c 20 65 78 65 63 75 | reakpoint</span>()</code>,.execu |
| b2ac0 | 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 63 6f 6e 74 69 6e 75 65 20 61 66 74 65 72 20 74 68 69 | tion.does.not.continue.after.thi |
| b2ae0 | 73 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 70 3e 0a 20 20 | s.point........</p>.......<p>... |
| b2b00 | 20 20 20 20 4f 75 74 73 69 64 65 20 66 75 6e 63 74 69 6f 6e 20 73 63 6f 70 65 2c 20 74 68 69 73 | ....Outside.function.scope,.this |
| b2b20 | 20 62 75 69 6c 74 69 6e 20 63 61 75 73 65 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e | .builtin.causes.a.compile.error. |
| b2b40 | 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 2f | .......</p>.......<p>See.also:</ |
| b2b60 | 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 62 72 65 61 6b 70 6f 69 6e 74 22 | p><ul>.<li><a.href="#breakpoint" |
| b2b80 | 3e 40 62 72 65 61 6b 70 6f 69 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 | >@breakpoint</a></li>.</ul>..... |
| b2ba0 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 74 72 75 6e 63 61 74 65 22 3e 3c 61 20 | ...........<h3.id="truncate"><a. |
| b2bc0 | 68 72 65 66 3d 22 23 74 6f 63 2d 74 72 75 6e 63 61 74 65 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f | href="#toc-truncate">@truncate</ |
| b2be0 | 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 72 75 6e 63 61 74 | a>.<a.class="hdr".href="#truncat |
| b2c00 | 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | e">..</a></h3>........<pre><code |
| b2c20 | 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 74 72 75 6e | ><span.class="tok-builtin">@trun |
| b2c40 | 63 61 74 65 3c 2f 73 70 61 6e 3e 28 69 6e 74 65 67 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | cate</span>(integer:.<span.class |
| b2c60 | 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. |
| b2c80 | 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 |
| b2ca0 | 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. |
| b2cc0 | 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 6d 20 61 6e 20 | function.truncates.bits.from.an. |
| b2ce0 | 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 61 20 73 6d 61 | integer.type,.resulting.in.a.sma |
| b2d00 | 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 74 65 67 65 72 | ller.......or.same-sized.integer |
| b2d20 | 20 74 79 70 65 2e 20 54 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 74 68 65 20 69 6e | .type..The.return.type.is.the.in |
| b2d40 | 66 65 72 72 65 64 20 72 65 73 75 6c 74 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | ferred.result.type........</p>.. |
| b2d60 | 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 61 6c 77 | .....<p>.......This.function.alw |
| b2d80 | 61 79 73 20 74 72 75 6e 63 61 74 65 73 20 74 68 65 20 73 69 67 6e 69 66 69 63 61 6e 74 20 62 69 | ays.truncates.the.significant.bi |
| b2da0 | 74 73 20 6f 66 20 74 68 65 20 69 6e 74 65 67 65 72 2c 20 72 65 67 61 72 64 6c 65 73 73 0a 20 20 | ts.of.the.integer,.regardless... |
| b2dc0 | 20 20 20 20 6f 66 20 65 6e 64 69 61 6e 6e 65 73 73 20 6f 6e 20 74 68 65 20 74 61 72 67 65 74 20 | ....of.endianness.on.the.target. |
| b2de0 | 70 6c 61 74 66 6f 72 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | platform........</p>.......<p>.. |
| b2e00 | 20 20 20 20 20 43 61 6c 6c 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .....Calling.<code><span.class=" |
| b2e20 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | tok-builtin">@truncate</span></c |
| b2e40 | 6f 64 65 3e 20 6f 6e 20 61 20 6e 75 6d 62 65 72 20 6f 75 74 20 6f 66 20 72 61 6e 67 65 20 6f 66 | ode>.on.a.number.out.of.range.of |
| b2e60 | 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 77 65 6c 6c 20 64 65 | .the.destination.type.is.well.de |
| b2e80 | 66 69 6e 65 64 20 61 6e 64 20 77 6f 72 6b 69 6e 67 20 63 6f 64 65 3a 0a 20 20 20 20 20 20 3c 2f | fined.and.working.code:.......</ |
| b2ea0 | 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | p>.......<figure><figcaption.cla |
| b2ec0 | 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | ss="zig-cap"><cite.class="file"> |
| b2ee0 | 74 65 73 74 5f 74 72 75 6e 63 61 74 65 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e | test_truncate_builtin.zig</cite> |
| b2f00 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </figcaption><pre><code><span.cl |
| b2f20 | 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.=. |
| b2f40 | 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 |
| b2f60 | 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">& |
| b2f80 | 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 |
| b2fa0 | 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 |
| b2fc0 | 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 |
| b2fe0 | 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 |
| b3000 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 74 65 67 65 72 20 74 72 75 | lass="tok-str">"integer.tru |
| b3020 | 6e 63 61 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 | ncation"</span>.{.....<span |
| b3040 | 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 3a 20 | .class="tok-kw">const</span>.a:. |
| b3060 | 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 70 61 6e | <span.class="tok-type">u16</span |
| b3080 | 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 78 61 | >.=.<span.class="tok-number">0xa |
| b30a0 | 62 63 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 | bcd</span>;.....<span.class="tok |
| b30c0 | 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 6c 61 73 73 | -kw">const</span>.b:.<span.class |
| b30e0 | 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 |
| b3100 | 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 2f 73 70 61 | ass="tok-builtin">@truncate</spa |
| b3120 | 6e 3e 28 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 6b 77 22 3e | n>(a);.....<span.class="tok-kw"> |
| b3140 | 74 72 79 3c 2f 73 70 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 | try</span>.expect(b.==.<span.cla |
| b3160 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 63 64 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c | ss="tok-number">0xcd</span>);.}< |
| b3180 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 | /code></pre></figure><figure><fi |
| b31a0 | 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c | gcaption.class="shell-cap">Shell |
| b31c0 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a | </figcaption><pre><samp>$.<kbd>z |
| b31e0 | 69 67 20 74 65 73 74 20 74 65 73 74 5f 74 72 75 6e 63 61 74 65 5f 62 75 69 6c 74 69 6e 2e 7a 69 | ig.test.test_truncate_builtin.zi |
| b3200 | 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 74 72 75 6e 63 61 74 65 5f 62 75 69 6c 74 69 | g</kbd>.1/1.test_truncate_builti |
| b3220 | 6e 2e 74 65 73 74 2e 69 6e 74 65 67 65 72 20 74 72 75 6e 63 61 74 69 6f 6e 2e 2e 2e 4f 4b 0a 41 | n.test.integer.truncation...OK.A |
| b3240 | 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e | ll.1.tests.passed..</samp></pre> |
| b3260 | 3c 2f 66 69 67 75 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 3c | </figure>........<p>.......Use.< |
| b3280 | 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 20 74 | a.href="#intCast">@intCast</a>.t |
| b32a0 | 6f 20 63 6f 6e 76 65 72 74 20 6e 75 6d 62 65 72 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 | o.convert.numbers.guaranteed.to. |
| b32c0 | 66 69 74 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 2e 0a 20 20 20 20 20 20 | fit.the.destination.type........ |
| b32e0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 79 70 65 22 | </p>...............<h3.id="Type" |
| b3300 | 3e 3c 61 20 68 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 | ><a.href="#toc-Type">@Type</a>.< |
| b3320 | 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 22 3e c2 a7 3c 2f 61 | a.class="hdr".href="#Type">..</a |
| b3340 | 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></h3>........<pre><code><span.c |
| b3360 | 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 2f 73 70 61 6e 3e 28 | lass="tok-builtin">@Type</span>( |
| b3380 | 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 |
| b33a0 | 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 70 65 29 20 3c 73 70 | pan>.info:.std.builtin.Type).<sp |
| b33c0 | 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 3c | an.class="tok-type">type</span>< |
| b33e0 | 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 68 69 | /code></pre>.......<p>.......Thi |
| b3400 | 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 74 68 65 20 69 6e 76 65 72 73 65 20 6f 66 20 3c 61 20 | s.function.is.the.inverse.of.<a. |
| b3420 | 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 2e 20 | href="#typeInfo">@typeInfo</a>.. |
| b3440 | 49 74 20 72 65 69 66 69 65 73 20 74 79 70 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 0a 20 20 20 20 | It.reifies.type.information..... |
| b3460 | 20 20 69 6e 74 6f 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ..into.a.<code><span.class="tok- |
| b3480 | 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 | type">type</span></code>........ |
| b34a0 | 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 61 76 61 69 6c | </p>.......<p>.......It.is.avail |
| b34c0 | 61 62 6c 65 20 66 6f 72 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 79 70 65 73 3a 0a 20 20 | able.for.the.following.types:... |
| b34e0 | 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 6c | ....</p>.......<ul>...........<l |
| b3500 | 69 3e 3c 63 6f 64 65 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 | i><code><span.class="tok-type">t |
| b3520 | 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 20 20 20 | ype</span></code></li>.......... |
| b3540 | 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | .<li><code><span.class="tok-type |
| b3560 | 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 6c 69 3e 0a 20 20 | ">noreturn</span></code></li>... |
| b3580 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ........<li><code><span.class="t |
| b35a0 | 6f 6b 2d 74 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 6c 69 3e | ok-type">void</span></code></li> |
| b35c0 | 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | ...........<li><code><span.class |
| b35e0 | 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 2f | ="tok-type">bool</span></code></ |
| b3600 | 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 49 6e 74 65 | li>...........<li><a.href="#Inte |
| b3620 | 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 6d 61 78 69 6d 75 6d | gers">Integers</a>.-.The.maximum |
| b3640 | 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 20 74 79 70 65 20 69 | .bit.count.for.an.integer.type.i |
| b3660 | 73 20 3c 63 6f 64 65 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.<code><span.class="tok-number" |
| b3680 | 3e 36 35 35 33 35 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 | >65535</span></code>.</li>...... |
| b36a0 | 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 6f 61 74 | .....<li><a.href="#Floats">Float |
| b36c0 | 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 3c 61 20 68 72 65 66 | s</a></li>...........<li><a.href |
| b36e0 | 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 3c 2f 6c 69 3e 0a 20 | ="#Pointers">Pointers</a></li>.. |
| b3700 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .........<li><code><span.class=" |
| b3720 | 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 3c 2f 63 | tok-type">comptime_int</span></c |
| b3740 | 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 3e 3c 73 | ode></li>...........<li><code><s |
| b3760 | 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 66 6c | pan.class="tok-type">comptime_fl |
| b3780 | 6f 61 74 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 | oat</span></code></li>.......... |
| b37a0 | 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | .<li><code><span.class="tok-buil |
| b37c0 | 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tin">@TypeOf</span>(<span.class= |
| b37e0 | 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 29 3c 2f 63 6f | "tok-null">undefined</span>)</co |
| b3800 | 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 3e 3c 73 70 | de></li>...........<li><code><sp |
| b3820 | 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 2f | an.class="tok-builtin">@TypeOf</ |
| b3840 | 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 6e 75 6c | span>(<span.class="tok-null">nul |
| b3860 | 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 20 20 20 | l</span>)</code></li>........... |
| b3880 | 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 2f 61 3e | <li><a.href="#Arrays">Arrays</a> |
| b38a0 | 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 4f 70 | </li>...........<li><a.href="#Op |
| b38c0 | 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 20 20 20 | tionals">Optionals</a></li>..... |
| b38e0 | 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 2d 54 79 | ......<li><a.href="#Error-Set-Ty |
| b3900 | 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 20 20 20 | pe">Error.Set.Type</a></li>..... |
| b3920 | 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 6f 6e 2d | ......<li><a.href="#Error-Union- |
| b3940 | 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 69 3e 0a | Type">Error.Union.Type</a></li>. |
| b3960 | 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 72 73 22 | ..........<li><a.href="#Vectors" |
| b3980 | 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 6c 69 3e | >Vectors</a></li>...........<li> |
| b39a0 | 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 2f 6c 69 | <a.href="#opaque">opaque</a></li |
| b39c0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | >...........<li><code><span.clas |
| b39e0 | 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 64 65 | s="tok-kw">anyframe</span></code |
| b3a00 | 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 23 73 | ></li>...........<li><a.href="#s |
| b3a20 | 74 72 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 | truct">struct</a></li>.......... |
| b3a40 | 20 3c 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 | .<li><a.href="#enum">enum</a></l |
| b3a60 | 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 45 6e 75 6d 2d | i>...........<li><a.href="#Enum- |
| b3a80 | 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 2f 6c 69 3e | Literals">Enum.Literals</a></li> |
| b3aa0 | 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 75 6e 69 6f 6e 22 3e | ...........<li><a.href="#union"> |
| b3ac0 | 75 6e 69 6f 6e 3c 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 | union</a></li>...........<li><a. |
| b3ae0 | 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 3c | href="#Functions">Functions</a>< |
| b3b00 | 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 68 | /li>.......</ul>..............<h |
| b3b20 | 33 20 69 64 3d 22 74 79 70 65 49 6e 66 6f 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 74 79 | 3.id="typeInfo"><a.href="#toc-ty |
| b3b40 | 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | peInfo">@typeInfo</a>.<a.class=" |
| b3b60 | 68 64 72 22 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 | hdr".href="#typeInfo">..</a></h3 |
| b3b80 | 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >........<pre><code><span.class= |
| b3ba0 | 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 3c | "tok-builtin">@typeInfo</span>(< |
| b3bc0 | 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 |
| b3be0 | 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 |
| b3c00 | 70 65 3c 2f 73 70 61 6e 3e 29 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 54 79 70 65 3c 2f 63 6f 64 | pe</span>).std.builtin.Type</cod |
| b3c20 | 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 50 72 6f 76 69 64 65 | e></pre>.......<p>.......Provide |
| b3c40 | 73 20 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 | s.type.reflection........</p>... |
| b3c60 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 79 70 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f | ....<p>.......Type.information.o |
| b3c80 | 66 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 73 3c 2f 61 3e 2c | f.<a.href="#struct">structs</a>, |
| b3ca0 | 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 73 3c 2f 61 3e 2c 20 3c 61 | .<a.href="#union">unions</a>,.<a |
| b3cc0 | 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 73 3c 2f 61 3e 2c 20 61 6e 64 0a 20 20 20 | .href="#enum">enums</a>,.and.... |
| b3ce0 | 20 20 20 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 3e 65 72 72 | ...<a.href="#Error-Set-Type">err |
| b3d00 | 6f 72 20 73 65 74 73 3c 2f 61 3e 20 68 61 73 20 66 69 65 6c 64 73 20 77 68 69 63 68 20 61 72 65 | or.sets</a>.has.fields.which.are |
| b3d20 | 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 69 6e 20 74 68 65 20 73 61 6d 65 0a 20 20 | .guaranteed.to.be.in.the.same... |
| b3d40 | 20 20 20 20 6f 72 64 65 72 20 61 73 20 61 70 70 65 61 72 61 6e 63 65 20 69 6e 20 74 68 65 20 73 | ....order.as.appearance.in.the.s |
| b3d60 | 6f 75 72 63 65 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 | ource.file........</p>.......<p> |
| b3d80 | 0a 20 20 20 20 20 20 54 79 70 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 66 20 3c 61 20 68 72 | .......Type.information.of.<a.hr |
| b3da0 | 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 |
| b3dc0 | 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 | f="#union">unions</a>,.<a.href=" |
| b3de0 | 23 65 6e 75 6d 22 3e 65 6e 75 6d 73 3c 2f 61 3e 2c 20 61 6e 64 0a 20 20 20 20 20 20 3c 61 20 68 | #enum">enums</a>,.and.......<a.h |
| b3e00 | 72 65 66 3d 22 23 6f 70 61 71 75 65 22 3e 6f 70 61 71 75 65 73 3c 2f 61 3e 20 68 61 73 20 64 65 | ref="#opaque">opaques</a>.has.de |
| b3e20 | 63 6c 61 72 61 74 69 6f 6e 73 2c 20 77 68 69 63 68 20 61 72 65 20 61 6c 73 6f 20 67 75 61 72 61 | clarations,.which.are.also.guara |
| b3e40 | 6e 74 65 65 64 20 74 6f 20 62 65 20 69 6e 20 74 68 65 20 73 61 6d 65 0a 20 20 20 20 20 20 6f 72 | nteed.to.be.in.the.same.......or |
| b3e60 | 64 65 72 20 61 73 20 61 70 70 65 61 72 61 6e 63 65 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 20 | der.as.appearance.in.the.source. |
| b3e80 | 66 69 6c 65 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 | file........</p>...............< |
| b3ea0 | 68 33 20 69 64 3d 22 74 79 70 65 4e 61 6d 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 74 | h3.id="typeName"><a.href="#toc-t |
| b3ec0 | 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 63 6c 61 73 73 3d | ypeName">@typeName</a>.<a.class= |
| b3ee0 | 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 2f 61 3e 3c 2f 68 | "hdr".href="#typeName">..</a></h |
| b3f00 | 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | 3>........<pre><code><span.class |
| b3f20 | 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 6e 3e 28 | ="tok-builtin">@typeName</span>( |
| b3f40 | 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</ |
| b3f60 | 73 70 61 6e 3e 29 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 | span>).*<span.class="tok-kw">con |
| b3f80 | 73 74 3c 2f 73 70 61 6e 3e 20 5b 4e 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | st</span>.[N:<span.class="tok-nu |
| b3fa0 | 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 73 3d 22 74 6f 6b 2d | mber">0</span>]<span.class="tok- |
| b3fc0 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | type">u8</span></code></pre>.... |
| b3fe0 | 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 75 72 | ...<p>.......This.function.retur |
| b4000 | 6e 73 20 74 68 65 20 73 74 72 69 6e 67 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 | ns.the.string.representation.of. |
| b4020 | 61 20 74 79 70 65 2c 20 61 73 0a 20 20 20 20 20 20 61 6e 20 61 72 72 61 79 2e 20 49 74 20 69 73 | a.type,.as.......an.array..It.is |
| b4040 | 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 61 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 | .equivalent.to.a.string.literal. |
| b4060 | 6f 66 20 74 68 65 20 74 79 70 65 20 6e 61 6d 65 2e 0a 20 20 20 20 20 20 54 68 65 20 72 65 74 75 | of.the.type.name........The.retu |
| b4080 | 72 6e 65 64 20 74 79 70 65 20 6e 61 6d 65 20 69 73 20 66 75 6c 6c 79 20 71 75 61 6c 69 66 69 65 | rned.type.name.is.fully.qualifie |
| b40a0 | 64 20 77 69 74 68 20 74 68 65 20 70 61 72 65 6e 74 20 6e 61 6d 65 73 70 61 63 65 20 69 6e 63 6c | d.with.the.parent.namespace.incl |
| b40c0 | 75 64 65 64 0a 20 20 20 20 20 20 61 73 20 70 61 72 74 20 6f 66 20 74 68 65 20 74 79 70 65 20 6e | uded.......as.part.of.the.type.n |
| b40e0 | 61 6d 65 20 77 69 74 68 20 61 20 73 65 72 69 65 73 20 6f 66 20 64 6f 74 73 2e 0a 20 20 20 20 20 | ame.with.a.series.of.dots....... |
| b4100 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 79 70 65 | .</p>...............<h3.id="Type |
| b4120 | 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 54 79 70 65 4f | Of"><a.href="#toc-TypeOf">@TypeO |
| b4140 | 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 23 54 79 70 65 | f</a>.<a.class="hdr".href="#Type |
| b4160 | 4f 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | Of">..</a></h3>........<pre><cod |
| b4180 | 65 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 | e><span.class="tok-builtin">@Typ |
| b41a0 | 65 4f 66 3c 2f 73 70 61 6e 3e 28 2e 2e 2e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | eOf</span>(...).<span.class="tok |
| b41c0 | 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 65 3e 0a | -type">type</span></code></pre>. |
| b41e0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | ......<p>.......<code><span.clas |
| b4200 | 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 3c 2f | s="tok-builtin">@TypeOf</span></ |
| b4220 | 63 6f 64 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 | code>.is.a.special.builtin.funct |
| b4240 | 69 6f 6e 20 74 68 61 74 20 74 61 6b 65 73 20 61 6e 79 20 28 6e 6f 6e 2d 7a 65 72 6f 29 20 6e 75 | ion.that.takes.any.(non-zero).nu |
| b4260 | 6d 62 65 72 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 | mber.of.expressions.......as.par |
| b4280 | 61 6d 65 74 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 | ameters.and.returns.the.type.of. |
| b42a0 | 74 68 65 20 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 | the.result,.using.<a.href="#Peer |
| b42c0 | 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 6f | -Type-Resolution">Peer.Type.Reso |
| b42e0 | 6c 75 74 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 | lution</a>........</p>.......<p> |
| b4300 | 0a 20 20 20 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 | .......The.expressions.are.evalu |
| b4320 | 61 74 65 64 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 | ated,.however.they.are.guarantee |
| b4340 | 64 20 74 6f 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 | d.to.have.no.<em>runtime</em>.si |
| b4360 | 64 65 2d 65 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 66 69 | de-effects:.......</p>.......<fi |
| b4380 | 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 | gure><figcaption.class="zig-cap" |
| b43a0 | 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 54 79 70 65 4f 66 5f | ><cite.class="file">test_TypeOf_ |
| b43c0 | 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | builtin.zig</cite></figcaption>< |
| b43e0 | 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | pre><code><span.class="tok-kw">c |
| b4400 | 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 |
| b4420 | 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 |
| b4440 | 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" |
| b4460 | 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 |
| b4480 | 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 |
| b44a0 | 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 |
| b44c0 | 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" |
| b44e0 | 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 26 71 | >"no.runtime.side.effects&q |
| b4500 | 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 |
| b4520 | 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 63 6c | ok-kw">var</span>.data:.<span.cl |
| b4540 | 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 |
| b4560 | 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>;.. |
| b4580 | 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 |
| b45a0 | 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 74 69 | pan>.T.=.<span.class="tok-builti |
| b45c0 | 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 61 73 | n">@TypeOf</span>(foo(<span.clas |
| b45e0 | 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 64 61 | s="tok-type">i32</span>,.&da |
| b4600 | 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 3e 74 | ta));.....<span.class="tok-kw">t |
| b4620 | 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 22 3e 63 | ry</span>.<span.class="tok-kw">c |
| b4640 | 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 54 20 3d 3d 20 3c 73 70 61 6e | omptime</span>.expect(T.==.<span |
| b4660 | 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 0a 20 | .class="tok-type">i32</span>);.. |
| b4680 | 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 |
| b46a0 | 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 22 74 | n>.expect(data.==.<span.class="t |
| b46c0 | 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 20 63 | ok-number">0</span>);.}..<span.c |
| b46e0 | 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 |
| b4700 | 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 63 6c | ass="tok-fn">foo</span>(<span.cl |
| b4720 | 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:. |
| b4740 | 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 |
| b4760 | 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 3c 73 | n>,.ptr:.*T).T.{.....ptr.*.+=.<s |
| b4780 | 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 3b | pan.class="tok-number">1</span>; |
| b47a0 | 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 |
| b47c0 | 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 2f 66 | </span>.ptr.*;.}</code></pre></f |
| b47e0 | 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | igure><figure><figcaption.class= |
| b4800 | 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | "shell-cap">Shell</figcaption><p |
| b4820 | 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 54 79 | re><samp>$.<kbd>zig.test.test_Ty |
| b4840 | 70 65 4f 66 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f | peOf_builtin.zig</kbd>.1/1.test_ |
| b4860 | 54 79 70 65 4f 66 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 6e 6f 20 72 75 6e 74 69 6d 65 20 73 | TypeOf_builtin.test.no.runtime.s |
| b4880 | 69 64 65 20 65 66 66 65 63 74 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 | ide.effects...OK.All.1.tests.pas |
| b48a0 | 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 | sed..</samp></pre></figure>..... |
| b48c0 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 75 6e 69 6f 6e 49 6e 69 74 22 3e 3c 61 | ...........<h3.id="unionInit"><a |
| b48e0 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 75 6e 69 6f 6e 49 6e 69 74 22 3e 40 75 6e 69 6f 6e 49 6e 69 | .href="#toc-unionInit">@unionIni |
| b4900 | 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 75 6e 69 6f | t</a>.<a.class="hdr".href="#unio |
| b4920 | 6e 49 6e 69 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | nInit">..</a></h3>........<pre>< |
| b4940 | 63 6f 64 65 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 | code><span.class="tok-builtin">@ |
| b4960 | 75 6e 69 6f 6e 49 6e 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 | unionInit</span>(<span.class="to |
| b4980 | 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 55 6e 69 6f 6e 3a 20 3c 73 70 | k-kw">comptime</span>.Union:.<sp |
| b49a0 | 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 2c | an.class="tok-type">type</span>, |
| b49c0 | 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</ |
| b49e0 | 73 70 61 6e 3e 20 61 63 74 69 76 65 5f 66 69 65 6c 64 5f 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e | span>.active_field_name:.[]<span |
| b4a00 | 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 |
| b4a20 | 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 69 | an.class="tok-type">u8</span>,.i |
| b4a40 | 6e 69 74 5f 65 78 70 72 29 20 55 6e 69 6f 6e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | nit_expr).Union</code></pre>.... |
| b4a60 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 73 61 6d 65 20 74 68 | ...<p>.......This.is.the.same.th |
| b4a80 | 69 6e 67 20 61 73 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 | ing.as.<a.href="#union">union</a |
| b4aa0 | 3e 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 73 79 6e 74 61 78 2c 20 65 78 63 65 70 74 20 | >.initialization.syntax,.except. |
| b4ac0 | 74 68 61 74 20 74 68 65 20 66 69 65 6c 64 20 6e 61 6d 65 20 69 73 20 61 0a 20 20 20 20 20 20 3c | that.the.field.name.is.a.......< |
| b4ae0 | 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 2d | a.href="#comptime">comptime</a>- |
| b4b00 | 6b 6e 6f 77 6e 20 76 61 6c 75 65 20 72 61 74 68 65 72 20 74 68 61 6e 20 61 6e 20 69 64 65 6e 74 | known.value.rather.than.an.ident |
| b4b20 | 69 66 69 65 72 20 74 6f 6b 65 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | ifier.token........</p>.......<p |
| b4b40 | 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | >.......<code><span.class="tok-b |
| b4b60 | 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 64 65 3e | uiltin">@unionInit</span></code> |
| b4b80 | 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 74 2d 4c | .forwards.its.<a.href="#Result-L |
| b4ba0 | 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 61 74 69 | ocation-Semantics">result.locati |
| b4bc0 | 6f 6e 3c 2f 61 3e 20 74 6f 20 3c 63 6f 64 65 3e 69 6e 69 74 5f 65 78 70 72 3c 2f 63 6f 64 65 3e | on</a>.to.<code>init_expr</code> |
| b4be0 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 0a 20 20 20 20 20 20 3c 68 33 20 | ........</p>................<h3. |
| b4c00 | 69 64 3d 22 56 65 63 74 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 56 65 63 74 6f 72 | id="Vector"><a.href="#toc-Vector |
| b4c20 | 22 3e 40 56 65 63 74 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 | ">@Vector</a>.<a.class="hdr".hre |
| b4c40 | 66 3d 22 23 56 65 63 74 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c | f="#Vector">..</a></h3>........< |
| b4c60 | 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | pre><code><span.class="tok-built |
| b4c80 | 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 6c 65 6e 3a 20 3c 73 70 61 6e 20 63 6c | in">@Vector</span>(len:.<span.cl |
| b4ca0 | 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 |
| b4cc0 | 6e 3e 2c 20 45 6c 65 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 | n>,.Element:.<span.class="tok-ty |
| b4ce0 | 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 61 73 73 3d 22 74 6f | pe">type</span>).<span.class="to |
| b4d00 | 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 65 3e | k-type">type</span></code></pre> |
| b4d20 | 0a 20 20 20 20 20 20 3c 70 3e 43 72 65 61 74 65 73 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 | .......<p>Creates.<a.href="#Vect |
| b4d40 | 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 | ors">Vectors</a>.</p>........... |
| b4d60 | 20 20 20 20 3c 68 33 20 69 64 3d 22 76 6f 6c 61 74 69 6c 65 43 61 73 74 22 3e 3c 61 20 68 72 65 | ....<h3.id="volatileCast"><a.hre |
| b4d80 | 66 3d 22 23 74 6f 63 2d 76 6f 6c 61 74 69 6c 65 43 61 73 74 22 3e 40 76 6f 6c 61 74 69 6c 65 43 | f="#toc-volatileCast">@volatileC |
| b4da0 | 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 76 6f | ast</a>.<a.class="hdr".href="#vo |
| b4dc0 | 6c 61 74 69 6c 65 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c | latileCast">..</a></h3>........< |
| b4de0 | 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | pre><code><span.class="tok-built |
| b4e00 | 69 6e 22 3e 40 76 6f 6c 61 74 69 6c 65 43 61 73 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 | in">@volatileCast</span>(value:. |
| b4e20 | 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 |
| b4e40 | 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 0a 20 20 20 20 20 | an>).DestType</code></pre>...... |
| b4e60 | 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 6d 6f 76 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | .<p>.......Remove.<code><span.cl |
| b4e80 | 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 6f | ass="tok-kw">volatile</span></co |
| b4ea0 | 64 65 3e 20 71 75 61 6c 69 66 69 65 72 20 66 72 6f 6d 20 61 20 70 6f 69 6e 74 65 72 2e 0a 20 20 | de>.qualifier.from.a.pointer.... |
| b4ec0 | 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 33 20 69 64 3d 22 77 | ....</p>...............<h3.id="w |
| b4ee0 | 6f 72 6b 47 72 6f 75 70 49 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 77 6f 72 6b 47 72 | orkGroupId"><a.href="#toc-workGr |
| b4f00 | 6f 75 70 49 64 22 3e 40 77 6f 72 6b 47 72 6f 75 70 49 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | oupId">@workGroupId</a>.<a.class |
| b4f20 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 77 6f 72 6b 47 72 6f 75 70 49 64 22 3e c2 a7 3c 2f 61 | ="hdr".href="#workGroupId">..</a |
| b4f40 | 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></h3>........<pre><code><span.c |
| b4f60 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 77 6f 72 6b 47 72 6f 75 70 49 64 3c | lass="tok-builtin">@workGroupId< |
| b4f80 | 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 |
| b4fa0 | 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 64 69 6d 65 6e 73 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 | time</span>.dimension:.<span.cla |
| b4fc0 | 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. |
| b4fe0 | 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 3c 2f 63 6f 64 | class="tok-type">u32</span></cod |
| b5000 | 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 |
| b5020 | 20 74 68 65 20 69 6e 64 65 78 20 6f 66 20 74 68 65 20 77 6f 72 6b 20 67 72 6f 75 70 20 69 6e 20 | .the.index.of.the.work.group.in. |
| b5040 | 74 68 65 20 63 75 72 72 65 6e 74 20 6b 65 72 6e 65 6c 20 69 6e 76 6f 63 61 74 69 6f 6e 20 69 6e | the.current.kernel.invocation.in |
| b5060 | 20 64 69 6d 65 6e 73 69 6f 6e 20 3c 63 6f 64 65 3e 64 69 6d 65 6e 73 69 6f 6e 3c 2f 63 6f 64 65 | .dimension.<code>dimension</code |
| b5080 | 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 33 20 | >........</p>...............<h3. |
| b50a0 | 69 64 3d 22 77 6f 72 6b 47 72 6f 75 70 53 69 7a 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | id="workGroupSize"><a.href="#toc |
| b50c0 | 2d 77 6f 72 6b 47 72 6f 75 70 53 69 7a 65 22 3e 40 77 6f 72 6b 47 72 6f 75 70 53 69 7a 65 3c 2f | -workGroupSize">@workGroupSize</ |
| b50e0 | 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 77 6f 72 6b 47 72 6f | a>.<a.class="hdr".href="#workGro |
| b5100 | 75 70 53 69 7a 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e | upSize">..</a></h3>........<pre> |
| b5120 | 3c 63 6f 64 65 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 | <code><span.class="tok-builtin"> |
| b5140 | 40 77 6f 72 6b 47 72 6f 75 70 53 69 7a 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | @workGroupSize</span>(<span.clas |
| b5160 | 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 64 69 6d 65 6e | s="tok-kw">comptime</span>.dimen |
| b5180 | 73 69 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 75 33 32 | sion:.<span.class="tok-type">u32 |
| b51a0 | 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"> |
| b51c0 | 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 20 3c 70 | u32</span></code></pre>.......<p |
| b51e0 | 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 77 6f | >.......Returns.the.number.of.wo |
| b5200 | 72 6b 20 69 74 65 6d 73 20 74 68 61 74 20 61 20 77 6f 72 6b 20 67 72 6f 75 70 20 68 61 73 20 69 | rk.items.that.a.work.group.has.i |
| b5220 | 6e 20 64 69 6d 65 6e 73 69 6f 6e 20 3c 63 6f 64 65 3e 64 69 6d 65 6e 73 69 6f 6e 3c 2f 63 6f 64 | n.dimension.<code>dimension</cod |
| b5240 | 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 3c 68 33 | e>........</p>...............<h3 |
| b5260 | 20 69 64 3d 22 77 6f 72 6b 49 74 65 6d 49 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 77 | .id="workItemId"><a.href="#toc-w |
| b5280 | 6f 72 6b 49 74 65 6d 49 64 22 3e 40 77 6f 72 6b 49 74 65 6d 49 64 3c 2f 61 3e 20 3c 61 20 63 6c | orkItemId">@workItemId</a>.<a.cl |
| b52a0 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 77 6f 72 6b 49 74 65 6d 49 64 22 3e c2 a7 3c | ass="hdr".href="#workItemId">..< |
| b52c0 | 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e | /a></h3>........<pre><code><span |
| b52e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 77 6f 72 6b 49 74 65 6d 49 64 | .class="tok-builtin">@workItemId |
| b5300 | 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 |
| b5320 | 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 64 69 6d 65 6e 73 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c | ptime</span>.dimension:.<span.cl |
| b5340 | 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 3c 73 70 61 6e | ass="tok-type">u32</span>).<span |
| b5360 | 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 3c 2f 63 6f | .class="tok-type">u32</span></co |
| b5380 | 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 65 74 75 72 6e | de></pre>.......<p>.......Return |
| b53a0 | 73 20 74 68 65 20 69 6e 64 65 78 20 6f 66 20 74 68 65 20 77 6f 72 6b 20 69 74 65 6d 20 69 6e 20 | s.the.index.of.the.work.item.in. |
| b53c0 | 74 68 65 20 77 6f 72 6b 20 67 72 6f 75 70 20 69 6e 20 64 69 6d 65 6e 73 69 6f 6e 20 3c 63 6f 64 | the.work.group.in.dimension.<cod |
| b53e0 | 65 3e 64 69 6d 65 6e 73 69 6f 6e 3c 2f 63 6f 64 65 3e 2e 20 54 68 69 73 20 66 75 6e 63 74 69 6f | e>dimension</code>..This.functio |
| b5400 | 6e 20 72 65 74 75 72 6e 73 20 76 61 6c 75 65 73 20 62 65 74 77 65 65 6e 20 3c 63 6f 64 65 3e 3c | n.returns.values.between.<code>< |
| b5420 | 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> |
| b5440 | 3c 2f 63 6f 64 65 3e 20 28 69 6e 63 6c 75 73 69 76 65 29 20 61 6e 64 20 3c 63 6f 64 65 3e 3c 73 | </code>.(inclusive).and.<code><s |
| b5460 | 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 6f 72 6b 47 72 6f | pan.class="tok-builtin">@workGro |
| b5480 | 75 70 53 69 7a 65 3c 2f 73 70 61 6e 3e 28 64 69 6d 65 6e 73 69 6f 6e 29 3c 2f 63 6f 64 65 3e 20 | upSize</span>(dimension)</code>. |
| b54a0 | 28 65 78 63 6c 75 73 69 76 65 29 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a | (exclusive)........</p>......... |
| b54c0 | 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 42 75 69 6c 64 2d 4d 6f 64 65 | ..............<h2.id="Build-Mode |
| b54e0 | 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 75 69 6c | "><a.href="#toc-Build-Mode">Buil |
| b5500 | 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 66 3d 22 | d.Mode</a>.<a.class="hdr".href=" |
| b5520 | 23 42 75 69 6c 64 2d 4d 6f 64 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | #Build-Mode">..</a></h2>........ |
| b5540 | 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 6d 6f 64 | <p>.......Zig.has.four.build.mod |
| b5560 | 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 20 20 20 | es:.......</p>.......<ul>....... |
| b5580 | 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 2f 61 3e | ..<li><a.href="#Debug">Debug</a> |
| b55a0 | 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 61 20 68 | .(default)</li>.........<li><a.h |
| b55c0 | 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 2f | ref="#ReleaseFast">ReleaseFast</ |
| b55e0 | 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 23 52 65 | a></li>.........<li><a.href="#Re |
| b5600 | 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 69 3e 0a | leaseSafe">ReleaseSafe</a></li>. |
| b5620 | 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 53 6d 61 | ........<li><a.href="#ReleaseSma |
| b5640 | 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 20 20 20 | ll">ReleaseSmall</a></li>....... |
| b5660 | 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 73 74 61 | </ul>.......<p>.......To.add.sta |
| b5680 | 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 65 20 63 | ndard.build.options.to.a.<code.c |
| b56a0 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 62 75 69 6c 64 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 66 69 6c | lass="file">build.zig</code>.fil |
| b56c0 | 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 | e:.......</p>.......<figure><fig |
| b56e0 | 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c | caption.class="zig-cap"><cite.cl |
| b5700 | 61 73 73 3d 22 66 69 6c 65 22 3e 62 75 69 6c 64 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | ass="file">build.zig</cite></fig |
| b5720 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | caption><pre><code><span.class=" |
| b5740 | 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 |
| b5760 | 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 |
| b5780 | 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">" |
| b57a0 | 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 3d | std"</span>);..<span.class= |
| b57c0 | 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= |
| b57e0 | 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=" |
| b5800 | 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 73 74 64 2e 42 75 69 | tok-fn">build</span>(b:.*std.Bui |
| b5820 | 6c 64 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 | ld).<span.class="tok-type">void< |
| b5840 | 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 |
| b5860 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 6d 69 7a 65 20 3d 20 62 2e 73 74 61 6e | ">const</span>.optimize.=.b.stan |
| b5880 | 64 61 72 64 4f 70 74 69 6d 69 7a 65 4f 70 74 69 6f 6e 28 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 | dardOptimizeOption(.{});.....<sp |
| b58a0 | 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 |
| b58c0 | 78 65 20 3d 20 62 2e 61 64 64 45 78 65 63 75 74 61 62 6c 65 28 2e 7b 0a 20 20 20 20 20 20 20 20 | xe.=.b.addExecutable(.{......... |
| b58e0 | 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 |
| b5900 | 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 0a 20 20 20 20 20 20 | uot;example"</span>,....... |
| b5920 | 20 20 2e 72 6f 6f 74 5f 73 6f 75 72 63 65 5f 66 69 6c 65 20 3d 20 62 2e 70 61 74 68 28 3c 73 70 | ...root_source_file.=.b.path(<sp |
| b5940 | 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 78 61 6d 70 6c 65 | an.class="tok-str">"example |
| b5960 | 2e 7a 69 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 2e 6f 70 74 | .zig"</span>),..........opt |
| b5980 | 69 6d 69 7a 65 20 3d 20 6f 70 74 69 6d 69 7a 65 2c 0a 20 20 20 20 7d 29 3b 0a 20 20 20 20 62 2e | imize.=.optimize,.....});.....b. |
| b59a0 | 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 |
| b59c0 | 74 65 70 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 | tep);.}</code></pre></figure>... |
| b59e0 | 20 20 20 20 20 3c 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 | .....<p>.......This.causes.these |
| b5a00 | 20 6f 70 74 69 6f 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 | .options.to.be.available:....... |
| b5a20 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 64 6c 3e 0a 20 20 20 20 20 20 20 20 3c 64 74 3e 3c 6b 62 64 | </p>.......<dl>.........<dt><kbd |
| b5a40 | 3e 2d 44 6f 70 74 69 6d 69 7a 65 3d 44 65 62 75 67 3c 2f 6b 62 64 3e 3c 2f 64 74 3e 3c 64 64 3e | >-Doptimize=Debug</kbd></dt><dd> |
| b5a60 | 4f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 6f 66 66 20 61 6e 64 20 73 61 66 65 74 79 20 6f 6e 20 | Optimizations.off.and.safety.on. |
| b5a80 | 28 64 65 66 61 75 6c 74 29 3c 2f 64 64 3e 0a 20 20 20 20 20 20 20 20 3c 64 74 3e 3c 6b 62 64 3e | (default)</dd>.........<dt><kbd> |
| b5aa0 | 2d 44 6f 70 74 69 6d 69 7a 65 3d 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 6b 62 64 3e 3c 2f 64 74 | -Doptimize=ReleaseSafe</kbd></dt |
| b5ac0 | 3e 3c 64 64 3e 4f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 6f 6e 20 61 6e 64 20 73 61 66 65 74 79 | ><dd>Optimizations.on.and.safety |
| b5ae0 | 20 6f 6e 3c 2f 64 64 3e 0a 20 20 20 20 20 20 20 20 3c 64 74 3e 3c 6b 62 64 3e 2d 44 6f 70 74 69 | .on</dd>.........<dt><kbd>-Dopti |
| b5b00 | 6d 69 7a 65 3d 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 6b 62 64 3e 3c 2f 64 74 3e 3c 64 64 3e 4f | mize=ReleaseFast</kbd></dt><dd>O |
| b5b20 | 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 6f 6e 20 61 6e 64 20 73 61 66 65 74 79 20 6f 66 66 3c 2f | ptimizations.on.and.safety.off</ |
| b5b40 | 64 64 3e 0a 20 20 20 20 20 20 20 20 3c 64 74 3e 3c 6b 62 64 3e 2d 44 6f 70 74 69 6d 69 7a 65 3d | dd>.........<dt><kbd>-Doptimize= |
| b5b60 | 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 6b 62 64 3e 3c 2f 64 74 3e 3c 64 64 3e 53 69 7a 65 20 | ReleaseSmall</kbd></dt><dd>Size. |
| b5b80 | 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 6f 6e 20 61 6e 64 20 73 61 66 65 74 79 20 6f 66 66 3c | optimizations.on.and.safety.off< |
| b5ba0 | 2f 64 64 3e 0a 20 20 20 20 20 20 3c 2f 64 6c 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 44 | /dd>.......</dl>.......<h3.id="D |
| b5bc0 | 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 22 3e 44 65 62 75 67 | ebug"><a.href="#toc-Debug">Debug |
| b5be0 | 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 62 75 67 | </a>.<a.class="hdr".href="#Debug |
| b5c00 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 | ">..</a></h3>........<figure><fi |
| b5c20 | 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c | gcaption.class="shell-cap">Shell |
| b5c40 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a | </figcaption><pre><samp>$.<kbd>z |
| b5c60 | 69 67 20 62 75 69 6c 64 2d 65 78 65 20 65 78 61 6d 70 6c 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c | ig.build-exe.example.zig</kbd>.< |
| b5c80 | 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 75 6c 3e | /samp></pre></figure>.......<ul> |
| b5ca0 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 61 73 74 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 73 70 | .........<li>Fast.compilation.sp |
| b5cc0 | 65 65 64 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 63 68 65 63 | eed</li>.........<li>Safety.chec |
| b5ce0 | 6b 73 20 65 6e 61 62 6c 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 6c 6f 77 | ks.enabled</li>.........<li>Slow |
| b5d00 | 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 20 | .runtime.performance</li>....... |
| b5d20 | 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 20 20 20 | ..<li>Large.binary.size</li>.... |
| b5d40 | 20 20 20 20 20 3c 6c 69 3e 4e 6f 20 72 65 70 72 6f 64 75 63 69 62 6c 65 20 62 75 69 6c 64 20 72 | .....<li>No.reproducible.build.r |
| b5d60 | 65 71 75 69 72 65 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 | equirement</li>.......</ul>..... |
| b5d80 | 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 52 65 6c 65 61 73 65 46 61 73 74 22 3e 3c 61 | .........<h3.id="ReleaseFast"><a |
| b5da0 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 6c 65 61 73 65 46 61 73 74 22 3e 52 65 6c 65 61 73 65 | .href="#toc-ReleaseFast">Release |
| b5dc0 | 46 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 52 | Fast</a>.<a.class="hdr".href="#R |
| b5de0 | 65 6c 65 61 73 65 46 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c | eleaseFast">..</a></h3>........< |
| b5e00 | 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d | figure><figcaption.class="shell- |
| b5e20 | 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d | cap">Shell</figcaption><pre><sam |
| b5e40 | 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 65 78 61 6d 70 6c 65 2e 7a | p>$.<kbd>zig.build-exe.example.z |
| b5e60 | 69 67 20 2d 4f 20 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 6d 70 3e 3c | ig.-O.ReleaseFast</kbd>.</samp>< |
| b5e80 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | /pre></figure>.......<ul>....... |
| b5ea0 | 20 20 3c 6c 69 3e 46 61 73 74 20 72 75 6e 74 69 6d 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 3c 2f | ..<li>Fast.runtime.performance</ |
| b5ec0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 61 66 65 74 79 20 63 68 65 63 6b 73 20 64 69 | li>.........<li>Safety.checks.di |
| b5ee0 | 73 61 62 6c 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 6c 6f 77 20 63 6f 6d | sabled</li>.........<li>Slow.com |
| b5f00 | 70 69 6c 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 | pilation.speed</li>.........<li> |
| b5f20 | 4c 61 72 67 65 20 62 69 6e 61 72 79 20 73 69 7a 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | Large.binary.size</li>.........< |
| b5f40 | 6c 69 3e 52 65 70 72 6f 64 75 63 69 62 6c 65 20 62 75 69 6c 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 | li>Reproducible.build</li>...... |
| b5f60 | 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 52 65 6c 65 | .</ul>..............<h3.id="Rele |
| b5f80 | 61 73 65 53 61 66 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 6c 65 61 73 65 53 61 | aseSafe"><a.href="#toc-ReleaseSa |
| b5fa0 | 66 65 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | fe">ReleaseSafe</a>.<a.class="hd |
| b5fc0 | 72 22 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 61 66 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | r".href="#ReleaseSafe">..</a></h |
| b5fe0 | 33 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | 3>........<figure><figcaption.cl |
| b6000 | 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f | ass="shell-cap">Shell</figcaptio |
| b6020 | 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 | n><pre><samp>$.<kbd>zig.build-ex |
| b6040 | 65 20 65 78 61 6d 70 6c 65 2e 7a 69 67 20 2d 4f 20 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 6b 62 | e.example.zig.-O.ReleaseSafe</kb |
| b6060 | 64 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 | d>.</samp></pre></figure>....... |
| b6080 | 3c 75 6c 3e 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 | <ul>.........<li>Medium.runtime. |
| b60a0 | 70 65 72 66 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 | performance</li>.........<li>Saf |
| b60c0 | 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>......... |
| b60e0 | 3c 6c 69 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 | <li>Slow.compilation.speed</li>. |
| b6100 | 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 2f 6c | ........<li>Large.binary.size</l |
| b6120 | 69 3e 0a 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 | i>.........<li>Reproducible.buil |
| b6140 | 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 0a 20 20 20 20 20 20 | d</li>.......</ul>.............. |
| b6160 | 3c 68 33 20 69 64 3d 22 52 65 6c 65 61 73 65 53 6d 61 6c 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 | <h3.id="ReleaseSmall"><a.href="# |
| b6180 | 74 6f 63 2d 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 | toc-ReleaseSmall">ReleaseSmall</ |
| b61a0 | 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 6c 65 61 73 65 | a>.<a.class="hdr".href="#Release |
| b61c0 | 53 6d 61 6c 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 | Small">..</a></h3>........<figur |
| b61e0 | 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e | e><figcaption.class="shell-cap"> |
| b6200 | 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c | Shell</figcaption><pre><samp>$.< |
| b6220 | 6b 62 64 3e 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 | kbd>zig.build-exe.example.zig.-O |
| b6240 | 20 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 | .ReleaseSmall</kbd>.</samp></pre |
| b6260 | 3e 3c 2f 66 69 67 75 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 | ></figure>.......<ul>.........<l |
| b6280 | 69 3e 4d 65 64 69 75 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 | i>Medium.runtime.performance</li |
| b62a0 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 61 66 65 74 79 20 63 68 65 63 6b 73 20 64 69 73 61 | >.........<li>Safety.checks.disa |
| b62c0 | 62 6c 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 6c 6f 77 20 63 6f 6d 70 69 | bled</li>.........<li>Slow.compi |
| b62e0 | 6c 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 6d | lation.speed</li>.........<li>Sm |
| b6300 | 61 6c 6c 20 62 69 6e 61 72 79 20 73 69 7a 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | all.binary.size</li>.........<li |
| b6320 | 3e 52 65 70 72 6f 64 75 63 69 62 6c 65 20 62 75 69 6c 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c | >Reproducible.build</li>.......< |
| b6340 | 2f 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 | /ul>..............<p>See.also:</ |
| b6360 | 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 2d 56 61 72 | p><ul>.<li><a.href="#Compile-Var |
| b6380 | 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 3e 3c 2f 6c | iables">Compile.Variables</a></l |
| b63a0 | 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 2d 53 79 73 74 65 | i>.<li><a.href="#Zig-Build-Syste |
| b63c0 | 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 69 3e 0a 3c 6c 69 | m">Zig.Build.System</a></li>.<li |
| b63e0 | 3e 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c | ><a.href="#Illegal-Behavior">Ill |
| b6400 | 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 | egal.Behavior</a></li>.</ul>.... |
| b6420 | 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 53 69 6e 67 6c 65 2d 54 68 72 65 61 | ............<h2.id="Single-Threa |
| b6440 | 64 65 64 2d 42 75 69 6c 64 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 69 6e 67 6c 65 | ded-Builds"><a.href="#toc-Single |
| b6460 | 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 72 65 61 64 65 | -Threaded-Builds">Single.Threade |
| b6480 | 64 20 42 75 69 6c 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 | d.Builds</a>.<a.class="hdr".href |
| b64a0 | 3d 22 23 53 69 6e 67 6c 65 2d 54 68 72 65 61 64 65 64 2d 42 75 69 6c 64 73 22 3e c2 a7 3c 2f 61 | ="#Single-Threaded-Builds">..</a |
| b64c0 | 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 5a 69 67 20 68 61 73 20 61 20 63 6f 6d 70 69 | ></h2>........<p>Zig.has.a.compi |
| b64e0 | 6c 65 20 6f 70 74 69 6f 6e 20 3c 6b 62 64 3e 2d 66 73 69 6e 67 6c 65 2d 74 68 72 65 61 64 65 64 | le.option.<kbd>-fsingle-threaded |
| b6500 | 3c 2f 6b 62 64 3e 20 77 68 69 63 68 20 68 61 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 65 | </kbd>.which.has.the.following.e |
| b6520 | 66 66 65 63 74 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 20 3c | ffects:</p>.......<ul>.........< |
| b6540 | 6c 69 3e 41 6c 6c 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 61 | li>All.<a.href="#Thread-Local-Va |
| b6560 | 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 3c | riables">Thread.Local.Variables< |
| b6580 | 2f 61 3e 20 61 72 65 20 74 72 65 61 74 65 64 20 61 73 20 72 65 67 75 6c 61 72 20 3c 61 20 68 72 | /a>.are.treated.as.regular.<a.hr |
| b65a0 | 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 73 22 3e | ef="#Container-Level-Variables"> |
| b65c0 | 43 6f 6e 74 61 69 6e 65 72 20 4c 65 76 65 6c 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 2e 3c 2f | Container.Level.Variables</a>.</ |
| b65e0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 68 65 20 6f 76 65 72 68 65 61 64 20 6f 66 20 | li>.........<li>The.overhead.of. |
| b6600 | 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 41 73 79 6e 63 | <a.href="#Async-Functions">Async |
| b6620 | 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 62 65 63 6f 6d 65 73 20 65 71 75 69 76 61 6c 65 6e | .Functions</a>.becomes.equivalen |
| b6640 | 74 20 74 6f 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 6f 76 65 72 68 65 61 64 2e 3c 2f 6c 69 | t.to.function.call.overhead.</li |
| b6660 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | >.........<li>The.<code><span.cl |
| b6680 | 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> |
| b66a0 | 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 62 75 69 | (<span.class="tok-str">"bui |
| b66c0 | 6c 74 69 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 | ltin"</span>).single_thread |
| b66e0 | 65 64 3c 2f 63 6f 64 65 3e 20 62 65 63 6f 6d 65 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | ed</code>.becomes.<code><span.cl |
| b6700 | 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 |
| b6720 | 3e 0a 20 20 20 20 20 20 20 20 20 20 61 6e 64 20 74 68 65 72 65 66 6f 72 65 20 76 61 72 69 6f 75 | >...........and.therefore.variou |
| b6740 | 73 20 75 73 65 72 6c 61 6e 64 20 41 50 49 73 20 77 68 69 63 68 20 72 65 61 64 20 74 68 69 73 20 | s.userland.APIs.which.read.this. |
| b6760 | 76 61 72 69 61 62 6c 65 20 62 65 63 6f 6d 65 20 6d 6f 72 65 20 65 66 66 69 63 69 65 6e 74 2e 0a | variable.become.more.efficient.. |
| b6780 | 20 20 20 20 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 20 3c 63 6f 64 65 3e 73 74 64 2e | ..........For.example.<code>std. |
| b67a0 | 4d 75 74 65 78 3c 2f 63 6f 64 65 3e 20 62 65 63 6f 6d 65 73 0a 20 20 20 20 20 20 20 20 20 20 61 | Mutex</code>.becomes...........a |
| b67c0 | 6e 20 65 6d 70 74 79 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 20 61 6e 64 20 61 6c 6c 20 6f | n.empty.data.structure.and.all.o |
| b67e0 | 66 20 69 74 73 20 66 75 6e 63 74 69 6f 6e 73 20 62 65 63 6f 6d 65 20 6e 6f 2d 6f 70 73 2e 3c 2f | f.its.functions.become.no-ops.</ |
| b6800 | 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 3c 68 | li>.......</ul>...............<h |
| b6820 | 32 20 69 64 3d 22 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 3c 61 20 68 72 65 66 3d | 2.id="Illegal-Behavior"><a.href= |
| b6840 | 22 23 74 6f 63 2d 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 | "#toc-Illegal-Behavior">Illegal. |
| b6860 | 42 65 68 61 76 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 | Behavior</a>.<a.class="hdr".href |
| b6880 | 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e | ="#Illegal-Behavior">..</a></h2> |
| b68a0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4d 61 6e 79 20 6f 70 65 72 61 74 69 6f 6e | ........<p>.......Many.operation |
| b68c0 | 73 20 69 6e 20 5a 69 67 20 74 72 69 67 67 65 72 20 77 68 61 74 20 69 73 20 6b 6e 6f 77 6e 20 61 | s.in.Zig.trigger.what.is.known.a |
| b68e0 | 73 20 22 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 22 20 28 49 42 29 2e 20 49 66 20 49 6c | s."Illegal.Behavior".(IB)..If.Il |
| b6900 | 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 20 69 73 20 64 65 74 65 63 74 65 64 20 61 74 0a 20 20 | legal.Behavior.is.detected.at... |
| b6920 | 20 20 20 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 61 20 63 6f | ....compile-time,.Zig.emits.a.co |
| b6940 | 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 6f 6e 74 69 | mpile.error.and.refuses.to.conti |
| b6960 | 6e 75 65 2e 20 4f 74 68 65 72 77 69 73 65 2c 20 77 68 65 6e 20 49 6c 6c 65 67 61 6c 20 42 65 68 | nue..Otherwise,.when.Illegal.Beh |
| b6980 | 61 76 69 6f 72 20 69 73 20 6e 6f 74 20 63 61 75 67 68 74 0a 20 20 20 20 20 20 61 74 20 63 6f 6d | avior.is.not.caught.......at.com |
| b69a0 | 70 69 6c 65 2d 74 69 6d 65 2c 20 69 74 20 66 61 6c 6c 73 20 69 6e 74 6f 20 6f 6e 65 20 6f 66 20 | pile-time,.it.falls.into.one.of. |
| b69c0 | 74 77 6f 20 63 61 74 65 67 6f 72 69 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | two.categories........</p>...... |
| b69e0 | 20 3c 70 3e 0a 20 20 20 20 20 20 53 6f 6d 65 20 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 | .<p>.......Some.Illegal.Behavior |
| b6a00 | 20 69 73 20 3c 65 6d 3e 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 3c 2f 65 6d 3e 3a 20 74 68 69 | .is.<em>safety-checked</em>:.thi |
| b6a20 | 73 20 6d 65 61 6e 73 20 74 68 61 74 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 77 69 6c 6c 20 69 | s.means.that.the.compiler.will.i |
| b6a40 | 6e 73 65 72 74 20 22 73 61 66 65 74 79 20 63 68 65 63 6b 73 22 0a 20 20 20 20 20 20 61 6e 79 77 | nsert."safety.checks".......anyw |
| b6a60 | 68 65 72 65 20 74 68 61 74 20 74 68 65 20 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 20 6d | here.that.the.Illegal.Behavior.m |
| b6a80 | 61 79 20 6f 63 63 75 72 20 61 74 20 72 75 6e 74 69 6d 65 2c 20 74 6f 20 64 65 74 65 72 6d 69 6e | ay.occur.at.runtime,.to.determin |
| b6aa0 | 65 20 77 68 65 74 68 65 72 20 69 74 20 69 73 20 61 62 6f 75 74 20 74 6f 20 68 61 70 70 65 6e 2e | e.whether.it.is.about.to.happen. |
| b6ac0 | 20 49 66 20 69 74 0a 20 20 20 20 20 20 69 73 2c 20 74 68 65 20 73 61 66 65 74 79 20 63 68 65 63 | .If.it.......is,.the.safety.chec |
| b6ae0 | 6b 20 22 66 61 69 6c 73 22 2c 20 77 68 69 63 68 20 74 72 69 67 67 65 72 73 20 61 20 70 61 6e 69 | k."fails",.which.triggers.a.pani |
| b6b00 | 63 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 6c | c........</p>.......<p>.......Al |
| b6b20 | 6c 20 6f 74 68 65 72 20 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 20 69 73 20 3c 65 6d 3e | l.other.Illegal.Behavior.is.<em> |
| b6b40 | 75 6e 63 68 65 63 6b 65 64 3c 2f 65 6d 3e 2c 20 6d 65 61 6e 69 6e 67 20 74 68 65 20 63 6f 6d 70 | unchecked</em>,.meaning.the.comp |
| b6b60 | 69 6c 65 72 20 69 73 20 75 6e 61 62 6c 65 20 74 6f 20 69 6e 73 65 72 74 20 73 61 66 65 74 79 20 | iler.is.unable.to.insert.safety. |
| b6b80 | 63 68 65 63 6b 73 20 66 6f 72 0a 20 20 20 20 20 20 69 74 2e 20 49 66 20 55 6e 63 68 65 63 6b 65 | checks.for.......it..If.Unchecke |
| b6ba0 | 64 20 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 20 69 73 20 69 6e 76 6f 6b 65 64 20 61 74 | d.Illegal.Behavior.is.invoked.at |
| b6bc0 | 20 72 75 6e 74 69 6d 65 2c 20 61 6e 79 74 68 69 6e 67 20 63 61 6e 20 68 61 70 70 65 6e 3a 20 75 | .runtime,.anything.can.happen:.u |
| b6be0 | 73 75 61 6c 6c 79 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 73 6f 6d 65 20 6b 69 6e 64 20 6f 66 | sually.that.will.be.some.kind.of |
| b6c00 | 0a 20 20 20 20 20 20 63 72 61 73 68 2c 20 62 75 74 20 74 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 | .......crash,.but.the.optimizer. |
| b6c20 | 69 73 20 66 72 65 65 20 74 6f 20 6d 61 6b 65 20 55 6e 63 68 65 63 6b 65 64 20 49 6c 6c 65 67 61 | is.free.to.make.Unchecked.Illega |
| b6c40 | 6c 20 42 65 68 61 76 69 6f 72 20 64 6f 20 61 6e 79 74 68 69 6e 67 2c 20 73 75 63 68 20 61 73 20 | l.Behavior.do.anything,.such.as. |
| b6c60 | 63 61 6c 6c 69 6e 67 20 61 72 62 69 74 72 61 72 79 20 66 75 6e 63 74 69 6f 6e 73 0a 20 20 20 20 | calling.arbitrary.functions..... |
| b6c80 | 20 20 6f 72 20 63 6c 6f 62 62 65 72 69 6e 67 20 61 72 62 69 74 72 61 72 79 20 64 61 74 61 2e 20 | ..or.clobbering.arbitrary.data.. |
| b6ca0 | 54 68 69 73 20 69 73 20 73 69 6d 69 6c 61 72 20 74 6f 20 74 68 65 20 63 6f 6e 63 65 70 74 20 6f | This.is.similar.to.the.concept.o |
| b6cc0 | 66 20 22 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 22 20 69 6e 20 73 6f 6d 65 20 6f | f."undefined.behavior".in.some.o |
| b6ce0 | 74 68 65 72 20 6c 61 6e 67 75 61 67 65 73 2e 20 4e 6f 74 65 20 74 68 61 74 0a 20 20 20 20 20 20 | ther.languages..Note.that....... |
| b6d00 | 55 6e 63 68 65 63 6b 65 64 20 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 20 73 74 69 6c 6c | Unchecked.Illegal.Behavior.still |
| b6d20 | 20 61 6c 77 61 79 73 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 | .always.results.in.a.compile.err |
| b6d40 | 6f 72 20 69 66 20 65 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 | or.if.evaluated.at.<a.href="#com |
| b6d60 | 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2c 20 62 65 63 61 75 73 65 20 74 68 65 | ptime">comptime</a>,.because.the |
| b6d80 | 20 5a 69 67 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 72 20 69 73 20 61 62 6c 65 20 74 6f 20 70 | .Zig.......compiler.is.able.to.p |
| b6da0 | 65 72 66 6f 72 6d 20 6d 6f 72 65 20 73 6f 70 68 69 73 74 69 63 61 74 65 64 20 63 68 65 63 6b 73 | erform.more.sophisticated.checks |
| b6dc0 | 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 74 68 61 6e 20 61 74 20 72 75 6e 74 69 6d 65 | .at.compile-time.than.at.runtime |
| b6de0 | 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 4d 6f 73 | ........</p>.......<p>.......Mos |
| b6e00 | 74 20 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 20 69 73 20 73 61 66 65 74 79 2d 63 68 65 | t.Illegal.Behavior.is.safety-che |
| b6e20 | 63 6b 65 64 2e 20 48 6f 77 65 76 65 72 2c 20 74 6f 20 66 61 63 69 6c 69 74 61 74 65 20 6f 70 74 | cked..However,.to.facilitate.opt |
| b6e40 | 69 6d 69 7a 61 74 69 6f 6e 73 2c 20 73 61 66 65 74 79 20 63 68 65 63 6b 73 20 61 72 65 20 64 69 | imizations,.safety.checks.are.di |
| b6e60 | 73 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 0a 20 20 20 20 20 20 69 6e 20 74 68 65 20 3c | sabled.by.default.......in.the.< |
| b6e80 | 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 |
| b6ea0 | 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 6d 61 6c 6c | t</a>.and.<a.href="#ReleaseSmall |
| b6ec0 | 22 3e 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 20 | ">ReleaseSmall</a>.optimization. |
| b6ee0 | 6d 6f 64 65 73 2e 20 53 61 66 65 74 79 20 63 68 65 63 6b 73 20 63 61 6e 20 61 6c 73 6f 20 62 65 | modes..Safety.checks.can.also.be |
| b6f00 | 20 65 6e 61 62 6c 65 64 20 6f 72 20 64 69 73 61 62 6c 65 64 0a 20 20 20 20 20 20 6f 6e 20 61 20 | .enabled.or.disabled.......on.a. |
| b6f20 | 70 65 72 2d 62 6c 6f 63 6b 20 62 61 73 69 73 2c 20 6f 76 65 72 72 69 64 69 6e 67 20 74 68 65 20 | per-block.basis,.overriding.the. |
| b6f40 | 64 65 66 61 75 6c 74 20 66 6f 72 20 74 68 65 20 63 75 72 72 65 6e 74 20 6f 70 74 69 6d 69 7a 61 | default.for.the.current.optimiza |
| b6f60 | 74 69 6f 6e 20 6d 6f 64 65 2c 20 75 73 69 6e 67 20 3c 61 20 68 72 65 66 3d 22 23 73 65 74 52 75 | tion.mode,.using.<a.href="#setRu |
| b6f80 | 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 65 74 79 3c 2f | ntimeSafety">@setRuntimeSafety</ |
| b6fa0 | 61 3e 2e 20 57 68 65 6e 0a 20 20 20 20 20 20 73 61 66 65 74 79 20 63 68 65 63 6b 73 20 61 72 65 | a>..When.......safety.checks.are |
| b6fc0 | 20 64 69 73 61 62 6c 65 64 2c 20 53 61 66 65 74 79 2d 43 68 65 63 6b 65 64 20 49 6c 6c 65 67 61 | .disabled,.Safety-Checked.Illega |
| b6fe0 | 6c 20 42 65 68 61 76 69 6f 72 20 62 65 68 61 76 65 73 20 6c 69 6b 65 20 55 6e 63 68 65 63 6b 65 | l.Behavior.behaves.like.Unchecke |
| b7000 | 64 20 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3b 20 74 68 61 74 20 69 73 2c 20 61 6e 79 | d.Illegal.Behavior;.that.is,.any |
| b7020 | 20 62 65 68 61 76 69 6f 72 0a 20 20 20 20 20 20 6d 61 79 20 72 65 73 75 6c 74 20 66 72 6f 6d 20 | .behavior.......may.result.from. |
| b7040 | 69 6e 76 6f 6b 69 6e 67 20 69 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | invoking.it........</p>.......<p |
| b7060 | 3e 0a 20 20 20 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 | >.......When.a.safety.check.fail |
| b7080 | 73 2c 20 5a 69 67 27 73 20 64 65 66 61 75 6c 74 20 70 61 6e 69 63 20 68 61 6e 64 6c 65 72 20 63 | s,.Zig's.default.panic.handler.c |
| b70a0 | 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 6b 65 20 | rashes.with.a.stack.trace,.like. |
| b70c0 | 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | this:.......</p>.......<figure>< |
| b70e0 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 | figcaption.class="zig-cap"><cite |
| b7100 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 69 6c 6c 65 67 61 6c 5f 62 65 68 61 76 | .class="file">test_illegal_behav |
| b7120 | 69 6f 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | ior.zig</cite></figcaption><pre> |
| b7140 | 3c 63 6f 64 65 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 | <code><span.class="tok-kw">test< |
| b7160 | 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 |
| b7180 | 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 61 6e 3e 20 7b 0a 20 | ot;safety.check"</span>.{.. |
| b71a0 | 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 61 | ...<span.class="tok-kw">unreacha |
| b71c0 | 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 3c 2f 66 69 67 75 | ble</span>;.}</code></pre></figu |
| b71e0 | 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 | re><figure><figcaption.class="sh |
| b7200 | 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | ell-cap">Shell</figcaption><pre> |
| b7220 | 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 69 6c 6c 65 67 | <samp>$.<kbd>zig.test.test_illeg |
| b7240 | 61 6c 5f 62 65 68 61 76 69 6f 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 69 | al_behavior.zig</kbd>.1/1.test_i |
| b7260 | 6c 6c 65 67 61 6c 5f 62 65 68 61 76 69 6f 72 2e 74 65 73 74 2e 73 61 66 65 74 79 20 63 68 65 63 | llegal_behavior.test.safety.chec |
| b7280 | 6b 2e 2e 2e 74 68 72 65 61 64 20 32 31 30 34 39 35 20 70 61 6e 69 63 3a 20 72 65 61 63 68 65 64 | k...thread.210495.panic:.reached |
| b72a0 | 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 73 | .unreachable.code.<span.class="s |
| b72c0 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 | gr-1m">/home/andy/dev/zig/doc/la |
| b72e0 | 6e 67 72 65 66 2f 74 65 73 74 5f 69 6c 6c 65 67 61 6c 5f 62 65 68 61 76 69 6f 72 2e 7a 69 67 3a | ngref/test_illegal_behavior.zig: |
| b7300 | 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 | 2:5</span>:.<span.class="sgr-2m" |
| b7320 | 3e 30 78 31 30 34 38 38 63 38 20 69 6e 20 74 65 73 74 2e 73 61 66 65 74 79 20 63 68 65 63 6b 20 | >0x10488c8.in.test.safety.check. |
| b7340 | 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 75 6e 72 65 61 63 68 61 62 6c 65 3b 0a 20 | (test)</span>.....unreachable;.. |
| b7360 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e | ...<span.class="sgr-32m">^</span |
| b7380 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | >.<span.class="sgr-1m">/home/and |
| b73a0 | 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e | y/dev/zig/lib/compiler/test_runn |
| b73c0 | 65 72 2e 7a 69 67 3a 32 31 34 3a 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | er.zig:214:25</span>:.<span.clas |
| b73e0 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 66 30 36 35 20 69 6e 20 6d 61 69 6e 54 65 72 6d | s="sgr-2m">0x10ef065.in.mainTerm |
| b7400 | 69 6e 61 6c 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 | inal.(test)</span>.........if.(t |
| b7420 | 65 73 74 5f 66 6e 2e 66 75 6e 63 28 29 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | est_fn.func()).|_|.{............ |
| b7440 | 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 73 67 72 2d 33 32 | .............<span.class="sgr-32 |
| b7460 | 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 | m">^</span>.<span.class="sgr-1m" |
| b7480 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 | >/home/andy/dev/zig/lib/compiler |
| b74a0 | 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 36 32 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c | /test_runner.zig:62:28</span>:.< |
| b74c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 37 34 34 64 20 69 6e | span.class="sgr-2m">0x10e744d.in |
| b74e0 | 20 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 72 65 74 75 | .main.(test)</span>.........retu |
| b7500 | 72 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | rn.mainTerminal();.............. |
| b7520 | 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 73 67 72 2d 33 | ..............<span.class="sgr-3 |
| b7540 | 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d | 2m">^</span>.<span.class="sgr-1m |
| b7560 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 | ">/home/andy/dev/zig/lib/std/sta |
| b7580 | 72 74 2e 7a 69 67 3a 36 35 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | rt.zig:651:22</span>:.<span.clas |
| b75a0 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 36 38 63 32 20 69 6e 20 70 6f 73 69 78 43 61 6c | s="sgr-2m">0x10e68c2.in.posixCal |
| b75c0 | 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 20 | lMainAndExit.(test)</span>...... |
| b75e0 | 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 20 | .......root.main();............. |
| b7600 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e | .........<span.class="sgr-32m">^ |
| b7620 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f | </span>.<span.class="sgr-1m">/ho |
| b7640 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | me/andy/dev/zig/lib/std/start.zi |
| b7660 | 67 3a 32 37 31 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | g:271:5</span>:.<span.class="sgr |
| b7680 | 2d 32 6d 22 3e 30 78 31 30 65 36 34 39 64 20 69 6e 20 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c | -2m">0x10e649d.in._start.(test)< |
| b76a0 | 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 | /span>.....asm.volatile.(switch. |
| b76c0 | 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | (native_arch).{.....<span.class= |
| b76e0 | 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | "sgr-32m">^</span>.<span.class=" |
| b7700 | 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | sgr-1m">???:?:?</span>:.<span.cl |
| b7720 | 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 | ass="sgr-2m">0x0.in.???.(???)</s |
| b7740 | 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 20 63 | pan>.error:.the.following.test.c |
| b7760 | 6f 6d 6d 61 6e 64 20 63 72 61 73 68 65 64 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a | ommand.crashed:./home/andy/dev/z |
| b7780 | 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 35 33 32 30 37 39 62 66 33 37 33 63 39 33 37 66 | ig/.zig-cache/o/532079bf373c937f |
| b77a0 | 38 66 39 35 61 39 39 30 64 39 34 37 30 64 37 63 2f 74 65 73 74 20 2d 2d 73 65 65 64 3d 30 78 62 | 8f95a990d9470d7c/test.--seed=0xb |
| b77c0 | 61 65 66 61 33 63 38 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a | aefa3c8.</samp></pre></figure>.. |
| b77e0 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 52 65 61 63 68 69 6e 67 2d 55 6e 72 65 61 63 68 61 62 | ......<h3.id="Reaching-Unreachab |
| b7800 | 6c 65 2d 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 | le-Code"><a.href="#toc-Reaching- |
| b7820 | 55 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 | Unreachable-Code">Reaching.Unrea |
| b7840 | 63 68 61 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 | chable.Code</a>.<a.class="hdr".h |
| b7860 | 72 65 66 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 | ref="#Reaching-Unreachable-Code" |
| b7880 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c | >..</a></h3>........<p>At.compil |
| b78a0 | 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | e-time:</p>.......<figure><figca |
| b78c0 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 | ption.class="zig-cap"><cite.clas |
| b78e0 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 72 65 61 63 68 69 6e 67 5f | s="file">test_comptime_reaching_ |
| b7900 | 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | unreachable.zig</cite></figcapti |
| b7920 | 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | on><pre><code><span.class="tok-k |
| b7940 | 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 28 | w">comptime</span>.{.....assert( |
| b7960 | 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 |
| b7980 | 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 3e 66 6e 3c | an>);.}.<span.class="tok-kw">fn< |
| b79a0 | 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 73 73 65 | /span>.<span.class="tok-fn">asse |
| b79c0 | 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 6f 6b 2d 74 | rt</span>(ok:.<span.class="tok-t |
| b79e0 | 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 73 3d 22 74 | ype">bool</span>).<span.class="t |
| b7a00 | 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 |
| b7a20 | 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 6f 6b 29 20 | .class="tok-kw">if</span>.(!ok). |
| b7a40 | 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 |
| b7a60 | 3c 2f 73 70 61 6e 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 | </span>;.<span.class="tok-commen |
| b7a80 | 74 22 3e 2f 2f 20 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 | t">//.assertion.failure</span>.} |
| b7aa0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 | </code></pre></figure><figure><f |
| b7ac0 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c | igcaption.class="shell-cap">Shel |
| b7ae0 | 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e | l</figcaption><pre><samp>$.<kbd> |
| b7b00 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 72 65 61 63 68 69 6e 67 5f | zig.test.test_comptime_reaching_ |
| b7b20 | 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | unreachable.zig</kbd>.<span.clas |
| b7b40 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f | s="sgr-1m">/home/andy/dev/zig/do |
| b7b60 | 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 72 65 61 63 68 69 6e 67 | c/langref/test_comptime_reaching |
| b7b80 | 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3a 35 3a 31 34 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | _unreachable.zig:5:14:.</span><s |
| b7ba0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 | pan.class="sgr-31m">error:.</spa |
| b7bc0 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 72 65 61 63 68 65 64 20 75 | n><span.class="sgr-1m">reached.u |
| b7be0 | 6e 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 69 66 20 28 21 | nreachable.code.</span>....if.(! |
| b7c00 | 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 66 61 | ok).unreachable;.//.assertion.fa |
| b7c20 | 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 3d 22 | ilure..............<span.class=" |
| b7c40 | 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 | sgr-32m">^~~~~~~~~~~.</span><spa |
| b7c60 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f | n.class="sgr-1m">/home/andy/dev/ |
| b7c80 | 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 72 65 | zig/doc/langref/test_comptime_re |
| b7ca0 | 61 63 68 69 6e 67 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3a 32 3a 31 31 3a 20 3c 2f 73 | aching_unreachable.zig:2:11:.</s |
| b7cc0 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 | pan><span.class="sgr-36m">note:. |
| b7ce0 | 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 63 61 6c 6c | </span><span.class="sgr-1m">call |
| b7d00 | 65 64 20 66 72 6f 6d 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 61 73 73 65 72 74 28 66 | ed.from.here.</span>....assert(f |
| b7d20 | 61 6c 73 65 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 | alse);.....<span.class="sgr-32m" |
| b7d40 | 3e 7e 7e 7e 7e 7e 7e 5e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f | >~~~~~~^~~~~~~.</span>.</samp></ |
| b7d60 | 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 | pre></figure>........<p>At.runti |
| b7d80 | 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | me:</p>.......<figure><figcaptio |
| b7da0 | 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 | n.class="zig-cap"><cite.class="f |
| b7dc0 | 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 72 65 61 63 68 69 6e 67 5f 75 6e 72 65 61 63 68 61 62 6c | ile">runtime_reaching_unreachabl |
| b7de0 | 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 | e.zig</cite></figcaption><pre><c |
| b7e00 | 6f 64 65 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 | ode><span.class="tok-kw">const</ |
| b7e20 | 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 |
| b7e40 | 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 |
| b7e60 | 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 |
| b7e80 | 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 |
| b7ea0 | 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 |
| b7ec0 | 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 |
| b7ee0 | 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 |
| b7f00 | 69 64 3c 2f 73 70 61 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 | id</span>.{.....std.debug.assert |
| b7f20 | 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 73 | (<span.class="tok-null">false</s |
| b7f40 | 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 | pan>);.}</code></pre></figure><f |
| b7f60 | 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 | igure><figcaption.class="shell-c |
| b7f80 | 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 | ap">Shell</figcaption><pre><samp |
| b7fa0 | 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 72 65 | >$.<kbd>zig.build-exe.runtime_re |
| b7fc0 | 61 63 68 69 6e 67 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c | aching_unreachable.zig</kbd>.$.< |
| b7fe0 | 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 72 65 61 63 68 69 6e 67 5f 75 6e 72 65 61 63 68 61 62 | kbd>./runtime_reaching_unreachab |
| b8000 | 6c 65 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 32 30 31 31 37 35 20 70 61 6e 69 63 3a 20 72 65 | le</kbd>.thread.201175.panic:.re |
| b8020 | 61 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 | ached.unreachable.code.<span.cla |
| b8040 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c | ss="sgr-1m">/home/andy/dev/zig/l |
| b8060 | 69 62 2f 73 74 64 2f 64 65 62 75 67 2e 7a 69 67 3a 35 35 30 3a 31 34 3c 2f 73 70 61 6e 3e 3a 20 | ib/std/debug.zig:550:14</span>:. |
| b8080 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 38 39 66 64 20 69 | <span.class="sgr-2m">0x10489fd.i |
| b80a0 | 6e 20 61 73 73 65 72 74 20 28 72 75 6e 74 69 6d 65 5f 72 65 61 63 68 69 6e 67 5f 75 6e 72 65 61 | n.assert.(runtime_reaching_unrea |
| b80c0 | 63 68 61 62 6c 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 66 20 28 21 6f 6b 29 20 75 6e 72 65 | chable)</span>.....if.(!ok).unre |
| b80e0 | 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 72 65 0a 20 20 | achable;.//.assertion.failure... |
| b8100 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 | ...........<span.class="sgr-32m" |
| b8120 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f | >^</span>.<span.class="sgr-1m">/ |
| b8140 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 | home/andy/dev/zig/doc/langref/ru |
| b8160 | 6e 74 69 6d 65 5f 72 65 61 63 68 69 6e 67 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3a 34 | ntime_reaching_unreachable.zig:4 |
| b8180 | 3a 32 31 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 | :21</span>:.<span.class="sgr-2m" |
| b81a0 | 3e 30 78 31 30 64 65 38 34 61 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 72 65 61 63 | >0x10de84a.in.main.(runtime_reac |
| b81c0 | 68 69 6e 67 5f 75 6e 72 65 61 63 68 61 62 6c 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 | hing_unreachable)</span>.....std |
| b81e0 | 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);........... |
| b8200 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e | ..........<span.class="sgr-32m"> |
| b8220 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 | ^</span>.<span.class="sgr-1m">/h |
| b8240 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a | ome/andy/dev/zig/lib/std/start.z |
| b8260 | 69 67 3a 36 35 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 73 | ig:651:22</span>:.<span.class="s |
| b8280 | 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 32 34 32 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 | gr-2m">0x10de242.in.posixCallMai |
| b82a0 | 6e 41 6e 64 45 78 69 74 20 28 72 75 6e 74 69 6d 65 5f 72 65 61 63 68 69 6e 67 5f 75 6e 72 65 61 | nAndExit.(runtime_reaching_unrea |
| b82c0 | 63 68 61 62 6c 65 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 | chable)</span>.............root. |
| b82e0 | 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 70 | main();......................<sp |
| b8300 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | an.class="sgr-32m">^</span>.<spa |
| b8320 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f | n.class="sgr-1m">/home/andy/dev/ |
| b8340 | 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f 73 70 61 | zig/lib/std/start.zig:271:5</spa |
| b8360 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 64 65 | n>:.<span.class="sgr-2m">0x10dde |
| b8380 | 31 64 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 72 65 61 63 68 69 6e 67 5f 75 | 1d.in._start.(runtime_reaching_u |
| b83a0 | 6e 72 65 61 63 68 61 62 6c 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 | nreachable)</span>.....asm.volat |
| b83c0 | 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 | ile.(switch.(native_arch).{..... |
| b83e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c | <span.class="sgr-32m">^</span>.< |
| b8400 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 | span.class="sgr-1m">???:?:?</spa |
| b8420 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 | n>:.<span.class="sgr-2m">0x0.in. |
| b8440 | 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e | ???.(???)</span>.(process.termin |
| b8460 | 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 | ated.by.signal).</samp></pre></f |
| b8480 | 69 67 75 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 49 6e 64 | igure>...............<h3.id="Ind |
| b84a0 | 65 78 2d 6f 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 | ex-out-of-Bounds"><a.href="#toc- |
| b84c0 | 49 6e 64 65 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 | Index-out-of-Bounds">Index.out.o |
| b84e0 | 66 20 42 6f 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 | f.Bounds</a>.<a.class="hdr".href |
| b8500 | 3d 22 23 49 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 | ="#Index-out-of-Bounds">..</a></ |
| b8520 | 68 33 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 | h3>........<p>At.compile-time:</ |
| b8540 | 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | p>.......<figure><figcaption.cla |
| b8560 | 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | ss="zig-cap"><cite.class="file"> |
| b8580 | 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 64 65 78 5f 6f 75 74 5f 6f 66 5f 62 6f 75 6e 64 | test_comptime_index_out_of_bound |
| b85a0 | 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 | s.zig</cite></figcaption><pre><c |
| b85c0 | 6f 64 65 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 | ode><span.class="tok-kw">comptim |
| b85e0 | 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- |
| b8600 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 3a 20 5b 3c 73 70 61 6e 20 63 | kw">const</span>.array:.[<span.c |
| b8620 | 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 3c 73 70 61 6e | lass="tok-number">5</span>]<span |
| b8640 | 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 73 | .class="tok-type">u8</span>.=.<s |
| b8660 | 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 26 | pan.class="tok-str">"hello& |
| b8680 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2e 2a 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | quot;</span>.*;.....<span.class= |
| b86a0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 67 61 72 62 61 67 65 20 3d 20 | "tok-kw">const</span>.garbage.=. |
| b86c0 | 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 35 | array[<span.class="tok-number">5 |
| b86e0 | 3c 2f 73 70 61 6e 3e 5d 3b 0a 20 20 20 20 5f 20 3d 20 67 61 72 62 61 67 65 3b 0a 7d 3c 2f 63 6f | </span>];....._.=.garbage;.}</co |
| b8700 | 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | de></pre></figure><figure><figca |
| b8720 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 | ption.class="shell-cap">Shell</f |
| b8740 | 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 | igcaption><pre><samp>$.<kbd>zig. |
| b8760 | 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 64 65 78 5f 6f 75 74 5f 6f 66 5f | test.test_comptime_index_out_of_ |
| b8780 | 62 6f 75 6e 64 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | bounds.zig</kbd>.<span.class="sg |
| b87a0 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e | r-1m">/home/andy/dev/zig/doc/lan |
| b87c0 | 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 64 65 78 5f 6f 75 74 5f 6f 66 5f | gref/test_comptime_index_out_of_ |
| b87e0 | 62 6f 75 6e 64 73 2e 7a 69 67 3a 33 3a 32 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | bounds.zig:3:27:.</span><span.cl |
| b8800 | 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | ass="sgr-31m">error:.</span><spa |
| b8820 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 69 6e 64 65 78 20 35 20 6f 75 74 73 69 64 65 | n.class="sgr-1m">index.5.outside |
| b8840 | 20 61 72 72 61 79 20 6f 66 20 6c 65 6e 67 74 68 20 35 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f | .array.of.length.5.</span>....co |
| b8860 | 6e 73 74 20 67 61 72 62 61 67 65 20 3d 20 61 72 72 61 79 5b 35 5d 3b 0a 20 20 20 20 20 20 20 20 | nst.garbage.=.array[5];......... |
| b8880 | 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 73 | ..................<span.class="s |
| b88a0 | 67 72 2d 33 32 6d 22 3e 5e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c | gr-32m">^.</span>.</samp></pre>< |
| b88c0 | 2f 66 69 67 75 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 | /figure>........<p>At.runtime:</ |
| b88e0 | 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | p>.......<figure><figcaption.cla |
| b8900 | 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | ss="zig-cap"><cite.class="file"> |
| b8920 | 72 75 6e 74 69 6d 65 5f 69 6e 64 65 78 5f 6f 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 2e 7a 69 67 3c | runtime_index_out_of_bounds.zig< |
| b8940 | 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 | /cite></figcaption><pre><code><s |
| b8960 | 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 |
| b8980 | 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 |
| b89a0 | 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>(). |
| b89c0 | 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 |
| b89e0 | 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 |
| b8a00 | 6e 73 74 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 | nst</span>.x.=.foo(<span.class=" |
| b8a20 | 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 |
| b8a40 | 3e 29 3b 0a 20 20 20 20 5f 20 3d 20 78 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >);....._.=.x;.}..<span.class="t |
| b8a60 | 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 |
| b8a80 | 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 78 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 | k-fn">foo</span>(x:.[]<span.clas |
| b8aa0 | 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 |
| b8ac0 | 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 73 70 61 6e 20 | ass="tok-type">u8</span>).<span. |
| b8ae0 | 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 0a 20 20 20 | class="tok-type">u8</span>.{.... |
| b8b00 | 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 |
| b8b20 | 61 6e 3e 20 78 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 | an>.x[<span.class="tok-number">5 |
| b8b40 | 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | </span>];.}</code></pre></figure |
| b8b60 | 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c | ><figure><figcaption.class="shel |
| b8b80 | 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 | l-cap">Shell</figcaption><pre><s |
| b8ba0 | 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 | amp>$.<kbd>zig.build-exe.runtime |
| b8bc0 | 5f 69 6e 64 65 78 5f 6f 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 | _index_out_of_bounds.zig</kbd>.$ |
| b8be0 | 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 69 6e 64 65 78 5f 6f 75 74 5f 6f 66 5f 62 6f 75 | .<kbd>./runtime_index_out_of_bou |
| b8c00 | 6e 64 73 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 32 30 37 35 32 30 20 70 61 6e 69 63 3a 20 69 | nds</kbd>.thread.207520.panic:.i |
| b8c20 | 6e 64 65 78 20 6f 75 74 20 6f 66 20 62 6f 75 6e 64 73 3a 20 69 6e 64 65 78 20 35 2c 20 6c 65 6e | ndex.out.of.bounds:.index.5,.len |
| b8c40 | 20 35 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e | .5.<span.class="sgr-1m">/home/an |
| b8c60 | 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 69 | dy/dev/zig/doc/langref/runtime_i |
| b8c80 | 6e 64 65 78 5f 6f 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 2e 7a 69 67 3a 37 3a 31 33 3c 2f 73 70 61 | ndex_out_of_bounds.zig:7:13</spa |
| b8ca0 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 66 31 | n>:.<span.class="sgr-2m">0x10df1 |
| b8cc0 | 32 31 20 69 6e 20 66 6f 6f 20 28 72 75 6e 74 69 6d 65 5f 69 6e 64 65 78 5f 6f 75 74 5f 6f 66 5f | 21.in.foo.(runtime_index_out_of_ |
| b8ce0 | 62 6f 75 6e 64 73 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 | bounds)</span>.....return.x[5];. |
| b8d00 | 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 73 67 72 2d 33 32 6d | ............<span.class="sgr-32m |
| b8d20 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e | ">^</span>.<span.class="sgr-1m"> |
| b8d40 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 | /home/andy/dev/zig/doc/langref/r |
| b8d60 | 75 6e 74 69 6d 65 5f 69 6e 64 65 78 5f 6f 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 2e 7a 69 67 3a 32 | untime_index_out_of_bounds.zig:2 |
| b8d80 | 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 73 67 72 2d 32 6d 22 | :18</span>:.<span.class="sgr-2m" |
| b8da0 | 3e 30 78 31 30 64 65 38 38 36 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 69 6e 64 65 | >0x10de886.in.main.(runtime_inde |
| b8dc0 | 78 5f 6f 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 | x_out_of_bounds)</span>.....cons |
| b8de0 | 74 20 78 20 3d 20 66 6f 6f 28 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 29 3b 0a 20 20 | t.x.=.foo("hello");... |
| b8e00 | 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 73 67 72 2d | ...............<span.class="sgr- |
| b8e20 | 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 | 32m">^</span>.<span.class="sgr-1 |
| b8e40 | 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 | m">/home/andy/dev/zig/lib/std/st |
| b8e60 | 61 72 74 2e 7a 69 67 3a 36 35 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | art.zig:651:22</span>:.<span.cla |
| b8e80 | 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 32 37 32 20 69 6e 20 70 6f 73 69 78 43 61 | ss="sgr-2m">0x10de272.in.posixCa |
| b8ea0 | 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 72 75 6e 74 69 6d 65 5f 69 6e 64 65 78 5f 6f 75 74 | llMainAndExit.(runtime_index_out |
| b8ec0 | 5f 6f 66 5f 62 6f 75 6e 64 73 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 | _of_bounds)</span>.............r |
| b8ee0 | 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 20 | oot.main();..................... |
| b8f00 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a | .<span.class="sgr-32m">^</span>. |
| b8f20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | <span.class="sgr-1m">/home/andy/ |
| b8f40 | 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c | dev/zig/lib/std/start.zig:271:5< |
| b8f60 | 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 | /span>:.<span.class="sgr-2m">0x1 |
| b8f80 | 30 64 64 65 34 64 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 69 6e 64 65 78 5f | 0dde4d.in._start.(runtime_index_ |
| b8fa0 | 6f 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f | out_of_bounds)</span>.....asm.vo |
| b8fc0 | 6c 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 | latile.(switch.(native_arch).{.. |
| b8fe0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e | ...<span.class="sgr-32m">^</span |
| b9000 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f | >.<span.class="sgr-1m">???:?:?</ |
| b9020 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 | span>:.<span.class="sgr-2m">0x0. |
| b9040 | 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 | in.???.(???)</span>.(process.ter |
| b9060 | 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e | minated.by.signal).</samp></pre> |
| b9080 | 3c 2f 66 69 67 75 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 | </figure>...............<h3.id=" |
| b90a0 | 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 64 | Cast-Negative-Number-to-Unsigned |
| b90c0 | 2d 49 6e 74 65 67 65 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 61 73 74 2d 4e 65 67 | -Integer"><a.href="#toc-Cast-Neg |
| b90e0 | 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 |
| b9100 | 22 3e 43 61 73 74 20 4e 65 67 61 74 69 76 65 20 4e 75 6d 62 65 72 20 74 6f 20 55 6e 73 69 67 6e | ">Cast.Negative.Number.to.Unsign |
| b9120 | 65 64 20 49 6e 74 65 67 65 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | ed.Integer</a>.<a.class="hdr".hr |
| b9140 | 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 2d 55 6e 73 | ef="#Cast-Negative-Number-to-Uns |
| b9160 | 69 67 6e 65 64 2d 49 6e 74 65 67 65 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 | igned-Integer">..</a></h3>...... |
| b9180 | 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 20 20 | ..<p>At.compile-time:</p>....... |
| b91a0 | 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 | <figure><figcaption.class="zig-c |
| b91c0 | 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 | ap"><cite.class="file">test_comp |
| b91e0 | 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 63 61 73 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 | time_invalid_cast.zig</cite></fi |
| b9200 | 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | gcaption><pre><code><span.class= |
| b9220 | 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 3c | "tok-kw">comptime</span>.{.....< |
| b9240 | 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> |
| b9260 | 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 74 79 70 65 22 3e 69 | .value:.<span.class="tok-type">i |
| b9280 | 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 22 74 6f 6b 2d 6e 75 | 32</span>.=.-<span.class="tok-nu |
| b92a0 | 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= |
| b92c0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 6e 73 69 67 6e 65 64 3a 20 | "tok-kw">const</span>.unsigned:. |
| b92e0 | 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 |
| b9300 | 3e 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 | >.=.<span.class="tok-builtin">@i |
| b9320 | 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 3b 0a 20 20 20 20 5f 20 3d 20 75 6e | ntCast</span>(value);....._.=.un |
| b9340 | 73 69 67 6e 65 64 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c | signed;.}</code></pre></figure>< |
| b9360 | 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d | figure><figcaption.class="shell- |
| b9380 | 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d | cap">Shell</figcaption><pre><sam |
| b93a0 | 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f | p>$.<kbd>zig.test.test_comptime_ |
| b93c0 | 69 6e 76 61 6c 69 64 5f 63 61 73 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 | invalid_cast.zig</kbd>.<span.cla |
| b93e0 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 | ss="sgr-1m">/home/andy/dev/zig/d |
| b9400 | 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 76 61 6c 69 64 | oc/langref/test_comptime_invalid |
| b9420 | 5f 63 61 73 74 2e 7a 69 67 3a 33 3a 33 36 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | _cast.zig:3:36:.</span><span.cla |
| b9440 | 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | ss="sgr-31m">error:.</span><span |
| b9460 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 74 79 70 65 20 27 75 33 32 27 20 63 61 6e 6e 6f | .class="sgr-1m">type.'u32'.canno |
| b9480 | 74 20 72 65 70 72 65 73 65 6e 74 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 20 27 2d 31 27 0a 3c | t.represent.integer.value.'-1'.< |
| b94a0 | 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 75 6e 73 69 67 6e 65 64 3a 20 75 33 32 20 3d 20 | /span>....const.unsigned:.u32.=. |
| b94c0 | 40 69 6e 74 43 61 73 74 28 76 61 6c 75 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | @intCast(value);................ |
| b94e0 | 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= |
| b9500 | 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c | "sgr-32m">^~~~~.</span>.</samp>< |
| b9520 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 | /pre></figure>........<p>At.runt |
| b9540 | 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | ime:</p>.......<figure><figcapti |
| b9560 | 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 | on.class="zig-cap"><cite.class=" |
| b9580 | 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 63 61 73 74 2e 7a 69 67 3c 2f | file">runtime_invalid_cast.zig</ |
| b95a0 | 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 | cite></figcaption><pre><code><sp |
| b95c0 | 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 |
| b95e0 | 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">@ |
| b9600 | 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 |
| b9620 | 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 |
| b9640 | 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 |
| b9660 | 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 |
| b9680 | 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>(). |
| b96a0 | 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 |
| b96c0 | 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 |
| b96e0 | 72 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 | r</span>.value:.<span.class="tok |
| b9700 | 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 |
| b9720 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 20 3c 73 70 61 6e 20 63 6c | ="tok-number">1</span>;.<span.cl |
| b9740 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f | ass="tok-comment">//.runtime-kno |
| b9760 | 77 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 76 61 6c 75 65 3b 0a 20 20 | wn</span>....._.=.&value;... |
| b9780 | 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 |
| b97a0 | 61 6e 3e 20 75 6e 73 69 67 6e 65 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | an>.unsigned:.<span.class="tok-t |
| b97c0 | 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 |
| b97e0 | 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 76 61 6c 75 | ok-builtin">@intCast</span>(valu |
| b9800 | 65 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 | e);.....std.debug.print(<span.cl |
| b9820 | 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& |
| b9840 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 75 6e 73 69 67 6e 65 64 7d 29 3b 0a 7d 3c 2f 63 | quot;</span>,..{unsigned});.}</c |
| b9860 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | ode></pre></figure><figure><figc |
| b9880 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f | aption.class="shell-cap">Shell</ |
| b98a0 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 | figcaption><pre><samp>$.<kbd>zig |
| b98c0 | 20 62 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 63 61 73 74 2e | .build-exe.runtime_invalid_cast. |
| b98e0 | 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c | zig</kbd>.$.<kbd>./runtime_inval |
| b9900 | 69 64 5f 63 61 73 74 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 32 30 32 30 34 30 20 70 61 6e 69 | id_cast</kbd>.thread.202040.pani |
| b9920 | 63 3a 20 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 75 | c:.attempt.to.cast.negative.valu |
| b9940 | 65 20 74 6f 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 0a 3c 73 70 61 6e 20 63 6c 61 73 | e.to.unsigned.integer.<span.clas |
| b9960 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f | s="sgr-1m">/home/andy/dev/zig/do |
| b9980 | 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 63 61 73 74 2e 7a | c/langref/runtime_invalid_cast.z |
| b99a0 | 69 67 3a 36 3a 32 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | ig:6:27</span>:.<span.class="sgr |
| b99c0 | 2d 32 6d 22 3e 30 78 31 30 64 65 39 38 36 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f | -2m">0x10de986.in.main.(runtime_ |
| b99e0 | 69 6e 76 61 6c 69 64 5f 63 61 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 75 | invalid_cast)</span>.....const.u |
| b9a00 | 6e 73 69 67 6e 65 64 3a 20 75 33 32 20 3d 20 40 69 6e 74 43 61 73 74 28 76 61 6c 75 65 29 3b 0a | nsigned:.u32.=.@intCast(value);. |
| b9a20 | 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 20 | ..........................<span. |
| b9a40 | 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | class="sgr-32m">^</span>.<span.c |
| b9a60 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 | lass="sgr-1m">/home/andy/dev/zig |
| b9a80 | 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 35 31 3a 32 32 3c 2f 73 70 61 6e 3e | /lib/std/start.zig:651:22</span> |
| b9aa0 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 33 36 32 | :.<span.class="sgr-2m">0x10de362 |
| b9ac0 | 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 72 75 6e 74 69 6d | .in.posixCallMainAndExit.(runtim |
| b9ae0 | 65 5f 69 6e 76 61 6c 69 64 5f 63 61 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 | e_invalid_cast)</span>.......... |
| b9b00 | 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();................. |
| b9b20 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 | .....<span.class="sgr-32m">^</sp |
| b9b40 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 | an>.<span.class="sgr-1m">/home/a |
| b9b60 | 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 | ndy/dev/zig/lib/std/start.zig:27 |
| b9b80 | 31 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 | 1:5</span>:.<span.class="sgr-2m" |
| b9ba0 | 3e 30 78 31 30 64 64 66 33 64 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 69 6e | >0x10ddf3d.in._start.(runtime_in |
| b9bc0 | 76 61 6c 69 64 5f 63 61 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 | valid_cast)</span>.....asm.volat |
| b9be0 | 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 | ile.(switch.(native_arch).{..... |
| b9c00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c | <span.class="sgr-32m">^</span>.< |
| b9c20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 | span.class="sgr-1m">???:?:?</spa |
| b9c40 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 | n>:.<span.class="sgr-2m">0x0.in. |
| b9c60 | 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e | ???.(???)</span>.(process.termin |
| b9c80 | 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 | ated.by.signal).</samp></pre></f |
| b9ca0 | 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 6f 62 74 61 69 | igure>........<p>.......To.obtai |
| b9cc0 | 6e 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 76 61 6c 75 65 20 6f 66 20 61 6e 20 75 6e 73 69 67 6e | n.the.maximum.value.of.an.unsign |
| b9ce0 | 65 64 20 69 6e 74 65 67 65 72 2c 20 75 73 65 20 3c 63 6f 64 65 3e 73 74 64 2e 6d 61 74 68 2e 6d | ed.integer,.use.<code>std.math.m |
| b9d00 | 61 78 49 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 20 20 0a | axInt</code>........</p>........ |
| b9d20 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 61 73 74 2d 54 72 75 6e 63 61 74 65 73 2d 44 61 74 | ......<h3.id="Cast-Truncates-Dat |
| b9d40 | 61 22 3e 3c 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 | a"><a.href="#toc-Cast-Truncates- |
| b9d60 | 44 61 74 61 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 | Data">Cast.Truncates.Data</a>.<a |
| b9d80 | 20 63 6c 61 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 | .class="hdr".href="#Cast-Truncat |
| b9da0 | 65 73 2d 44 61 74 61 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 | es-Data">..</a></h3>........<p>A |
| b9dc0 | 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 66 69 67 75 72 | t.compile-time:</p>.......<figur |
| b9de0 | 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 | e><figcaption.class="zig-cap"><c |
| b9e00 | 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 | ite.class="file">test_comptime_i |
| b9e20 | 6e 76 61 6c 69 64 5f 63 61 73 74 5f 74 72 75 6e 63 61 74 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c | nvalid_cast_truncate.zig</cite>< |
| b9e40 | 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | /figcaption><pre><code><span.cla |
| b9e60 | 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>.{... |
| b9e80 | 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 |
| b9ea0 | 61 6e 3e 20 73 70 61 72 74 61 6e 5f 63 6f 75 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | an>.spartan_count:.<span.class=" |
| b9ec0 | 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 63 6c 61 | tok-type">u16</span>.=.<span.cla |
| b9ee0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 30 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | ss="tok-number">300</span>;..... |
| b9f00 | 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 |
| b9f20 | 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 70 65 22 3e 75 | >.byte:.<span.class="tok-type">u |
| b9f40 | 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 6c | 8</span>.=.<span.class="tok-buil |
| b9f60 | 74 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 73 70 61 72 74 61 6e 5f 63 6f 75 | tin">@intCast</span>(spartan_cou |
| b9f80 | 6e 74 29 3b 0a 20 20 20 20 5f 20 3d 20 62 79 74 65 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | nt);....._.=.byte;.}</code></pre |
| b9fa0 | 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | ></figure><figure><figcaption.cl |
| b9fc0 | 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f | ass="shell-cap">Shell</figcaptio |
| b9fe0 | 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 | n><pre><samp>$.<kbd>zig.test.tes |
| ba000 | 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 63 61 73 74 5f 74 72 75 6e 63 61 74 65 | t_comptime_invalid_cast_truncate |
| ba020 | 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e | .zig</kbd>.<span.class="sgr-1m"> |
| ba040 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 | /home/andy/dev/zig/doc/langref/t |
| ba060 | 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 63 61 73 74 5f 74 72 75 6e 63 61 | est_comptime_invalid_cast_trunca |
| ba080 | 74 65 2e 7a 69 67 3a 33 3a 33 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | te.zig:3:31:.</span><span.class= |
| ba0a0 | 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | "sgr-31m">error:.</span><span.cl |
| ba0c0 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 74 79 70 65 20 27 75 38 27 20 63 61 6e 6e 6f 74 20 72 65 | ass="sgr-1m">type.'u8'.cannot.re |
| ba0e0 | 70 72 65 73 65 6e 74 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 20 27 33 30 30 27 0a 3c 2f 73 70 | present.integer.value.'300'.</sp |
| ba100 | 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 62 79 74 65 3a 20 75 38 20 3d 20 40 69 6e 74 43 61 73 74 | an>....const.byte:.u8.=.@intCast |
| ba120 | 28 73 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 | (spartan_count);................ |
| ba140 | 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 73 67 72 2d | ...............<span.class="sgr- |
| ba160 | 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d | 32m">^~~~~~~~~~~~~.</span>.</sam |
| ba180 | 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 | p></pre></figure>........<p>At.r |
| ba1a0 | 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | untime:</p>.......<figure><figca |
| ba1c0 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 | ption.class="zig-cap"><cite.clas |
| ba1e0 | 73 3d 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 63 61 73 74 5f 74 72 | s="file">runtime_invalid_cast_tr |
| ba200 | 75 6e 63 61 74 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | uncate.zig</cite></figcaption><p |
| ba220 | 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | re><code><span.class="tok-kw">co |
| ba240 | 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 |
| ba260 | 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. |
| ba280 | 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"< |
| ba2a0 | 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 70 | /span>);..<span.class="tok-kw">p |
| ba2c0 | 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 66 | ub</span>.<span.class="tok-kw">f |
| ba2e0 | 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 61 | n</span>.<span.class="tok-fn">ma |
| ba300 | 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 70 | in</span>().<span.class="tok-typ |
| ba320 | 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 |
| ba340 | 3d 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 | ="tok-kw">var</span>.spartan_cou |
| ba360 | 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 2f | nt:.<span.class="tok-type">u16</ |
| ba380 | 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" |
| ba3a0 | 3e 33 30 30 3c 2f 73 70 61 6e 3e 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | >300</span>;.<span.class="tok-co |
| ba3c0 | 6d 6d 65 6e 74 22 3e 2f 2f 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 3c 2f 73 70 61 6e 3e 0a 20 | mment">//.runtime-known</span>.. |
| ba3e0 | 20 20 20 5f 20 3d 20 26 61 6d 70 3b 73 70 61 72 74 61 6e 5f 63 6f 75 6e 74 3b 0a 20 20 20 20 3c | ..._.=.&spartan_count;.....< |
| ba400 | 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> |
| ba420 | 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 |
| ba440 | 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 6c 74 | </span>.=.<span.class="tok-built |
| ba460 | 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 73 70 61 72 74 61 6e 5f 63 6f 75 6e | in">@intCast</span>(spartan_coun |
| ba480 | 74 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 | t);.....std.debug.print(<span.cl |
| ba4a0 | 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& |
| ba4c0 | 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> |
| ba4e0 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | </pre></figure><figure><figcapti |
| ba500 | 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 | on.class="shell-cap">Shell</figc |
| ba520 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 | aption><pre><samp>$.<kbd>zig.bui |
| ba540 | 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 63 61 73 74 5f 74 72 75 6e | ld-exe.runtime_invalid_cast_trun |
| ba560 | 63 61 74 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f | cate.zig</kbd>.$.<kbd>./runtime_ |
| ba580 | 69 6e 76 61 6c 69 64 5f 63 61 73 74 5f 74 72 75 6e 63 61 74 65 3c 2f 6b 62 64 3e 0a 74 68 72 65 | invalid_cast_truncate</kbd>.thre |
| ba5a0 | 61 64 20 31 39 37 38 39 32 20 70 61 6e 69 63 3a 20 69 6e 74 65 67 65 72 20 63 61 73 74 20 74 72 | ad.197892.panic:.integer.cast.tr |
| ba5c0 | 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 73 67 72 2d 31 6d | uncated.bits.<span.class="sgr-1m |
| ba5e0 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 | ">/home/andy/dev/zig/doc/langref |
| ba600 | 2f 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 63 61 73 74 5f 74 72 75 6e 63 61 74 65 2e 7a | /runtime_invalid_cast_truncate.z |
| ba620 | 69 67 3a 36 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 73 67 72 | ig:6:22</span>:.<span.class="sgr |
| ba640 | 2d 32 6d 22 3e 30 78 31 30 64 65 61 31 38 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f | -2m">0x10dea18.in.main.(runtime_ |
| ba660 | 69 6e 76 61 6c 69 64 5f 63 61 73 74 5f 74 72 75 6e 63 61 74 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 | invalid_cast_truncate)</span>... |
| ba680 | 20 20 63 6f 6e 73 74 20 62 79 74 65 3a 20 75 38 20 3d 20 40 69 6e 74 43 61 73 74 28 73 70 61 72 | ..const.byte:.u8.=.@intCast(spar |
| ba6a0 | 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 20 20 20 | tan_count);..................... |
| ba6c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a | .<span.class="sgr-32m">^</span>. |
| ba6e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | <span.class="sgr-1m">/home/andy/ |
| ba700 | 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 35 31 3a 32 32 | dev/zig/lib/std/start.zig:651:22 |
| ba720 | 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 | </span>:.<span.class="sgr-2m">0x |
| ba740 | 31 30 64 65 33 66 32 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 | 10de3f2.in.posixCallMainAndExit. |
| ba760 | 28 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 63 61 73 74 5f 74 72 75 6e 63 61 74 65 29 3c | (runtime_invalid_cast_truncate)< |
| ba780 | 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();. |
| ba7a0 | 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 |
| ba7c0 | 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ="sgr-32m">^</span>.<span.class= |
| ba7e0 | 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f | "sgr-1m">/home/andy/dev/zig/lib/ |
| ba800 | 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | std/start.zig:271:5</span>:.<spa |
| ba820 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 64 66 63 64 20 69 6e 20 5f 73 | n.class="sgr-2m">0x10ddfcd.in._s |
| ba840 | 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 63 61 73 74 5f 74 72 75 6e 63 | tart.(runtime_invalid_cast_trunc |
| ba860 | 61 74 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 69 6c 65 20 28 73 77 | ate)</span>.....asm.volatile.(sw |
| ba880 | 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | itch.(native_arch).{.....<span.c |
| ba8a0 | 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | lass="sgr-32m">^</span>.<span.cl |
| ba8c0 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | ass="sgr-1m">???:?:?</span>:.<sp |
| ba8e0 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f | an.class="sgr-2m">0x0.in.???.(?? |
| ba900 | 3f 29 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 |
| ba920 | 20 73 69 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a | .signal).</samp></pre></figure>. |
| ba940 | 0a 20 20 20 20 20 20 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 | .......<p>.......To.truncate.bit |
| ba960 | 73 2c 20 75 73 65 20 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 | s,.use.<a.href="#truncate">@trun |
| ba980 | 63 61 74 65 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 | cate</a>........</p>............ |
| ba9a0 | 20 20 3c 68 33 20 69 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 | ..<h3.id="Integer-Overflow"><a.h |
| ba9c0 | 72 65 66 3d 22 23 74 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 | ref="#toc-Integer-Overflow">Inte |
| ba9e0 | 67 65 72 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 | ger.Overflow</a>.<a.class="hdr". |
| baa00 | 68 72 65 66 3d 22 23 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 | href="#Integer-Overflow">..</a>< |
| baa20 | 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 44 65 66 61 75 6c 74 2d 4f 70 65 72 | /h3>........<h4.id="Default-Oper |
| baa40 | 61 74 69 6f 6e 73 22 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 | ations"><a.href="#toc-Default-Op |
| baa60 | 65 72 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 | erations">Default.Operations</a> |
| baa80 | 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 66 61 75 6c 74 2d 4f | .<a.class="hdr".href="#Default-O |
| baaa0 | 70 65 72 61 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 | perations">..</a></h4>........<p |
| baac0 | 3e 54 68 65 20 66 6f 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 | >The.following.operators.can.cau |
| baae0 | 73 65 20 69 6e 74 65 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 | se.integer.overflow:</p>.......< |
| bab00 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 2b 3c 2f 63 6f 64 65 3e | ul>...........<li><code>+</code> |
| bab20 | 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 3c 6c 69 3e 3c | .(addition)</li>...........<li>< |
| bab40 | 63 6f 64 65 3e 2d 3c 2f 63 6f 64 65 3e 20 28 73 75 62 74 72 61 63 74 69 6f 6e 29 3c 2f 6c 69 3e | code>-</code>.(subtraction)</li> |
| bab60 | 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 2d 3c 2f 63 6f 64 65 3e 20 28 6e | ...........<li><code>-</code>.(n |
| bab80 | 65 67 61 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 | egation)</li>...........<li><cod |
| baba0 | 65 3e 2a 3c 2f 63 6f 64 65 3e 20 28 6d 75 6c 74 69 70 6c 69 63 61 74 69 6f 6e 29 3c 2f 6c 69 3e | e>*</code>.(multiplication)</li> |
| babc0 | 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 2f 3c 2f 63 6f 64 65 3e 20 28 64 | ...........<li><code>/</code>.(d |
| babe0 | 69 76 69 73 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 | ivision)</li>.........<li><a.hre |
| bac00 | 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 20 28 64 69 76 | f="#divTrunc">@divTrunc</a>.(div |
| bac20 | 69 73 69 6f 6e 29 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 | ision)</li>.........<li><a.href= |
| bac40 | 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 20 28 64 69 76 69 73 | "#divFloor">@divFloor</a>.(divis |
| bac60 | 69 6f 6e 29 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 23 | ion)</li>.........<li><a.href="# |
| bac80 | 64 69 76 45 78 61 63 74 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 61 3e 20 28 64 69 76 69 73 69 6f | divExact">@divExact</a>.(divisio |
| baca0 | 6e 29 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 | n)</li>.......</ul>.......<p>Exa |
| bacc0 | 6d 70 6c 65 20 77 69 74 68 20 61 64 64 69 74 69 6f 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 | mple.with.addition.at.compile-ti |
| bace0 | 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | me:</p>.......<figure><figcaptio |
| bad00 | 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 | n.class="zig-cap"><cite.class="f |
| bad20 | 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3c | ile">test_comptime_overflow.zig< |
| bad40 | 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 | /cite></figcaption><pre><code><s |
| bad60 | 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 |
| bad80 | 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 |
| bada0 | 72 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 | r</span>.byte:.<span.class="tok- |
| badc0 | 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 |
| bade0 | 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 20 20 62 79 74 65 20 | ok-number">255</span>;.....byte. |
| bae00 | 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 |
| bae20 | 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 | pan>;.}</code></pre></figure><fi |
| bae40 | 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 | gure><figcaption.class="shell-ca |
| bae60 | 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e | p">Shell</figcaption><pre><samp> |
| bae80 | 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 6f 76 | $.<kbd>zig.test.test_comptime_ov |
| baea0 | 65 72 66 6c 6f 77 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | erflow.zig</kbd>.<span.class="sg |
| baec0 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e | r-1m">/home/andy/dev/zig/doc/lan |
| baee0 | 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3a | gref/test_comptime_overflow.zig: |
| baf00 | 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 73 67 72 2d 33 31 | 3:10:.</span><span.class="sgr-31 |
| baf20 | 6d 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 73 67 | m">error:.</span><span.class="sg |
| baf40 | 72 2d 31 6d 22 3e 6f 76 65 72 66 6c 6f 77 20 6f 66 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 27 | r-1m">overflow.of.integer.type.' |
| baf60 | 75 38 27 20 77 69 74 68 20 76 61 6c 75 65 20 27 32 35 36 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 | u8'.with.value.'256'.</span>.... |
| baf80 | 62 79 74 65 20 2b 3d 20 31 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | byte.+=.1;.....<span.class="sgr- |
| bafa0 | 33 32 6d 22 3e 7e 7e 7e 7e 7e 5e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f | 32m">~~~~~^~~~.</span>.</samp></ |
| bafc0 | 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 | pre></figure>........<p>At.runti |
| bafe0 | 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | me:</p>.......<figure><figcaptio |
| bb000 | 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 | n.class="zig-cap"><cite.class="f |
| bb020 | 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3c 2f 63 69 74 65 3e | ile">runtime_overflow.zig</cite> |
| bb040 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </figcaption><pre><code><span.cl |
| bb060 | 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.=. |
| bb080 | 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 |
| bb0a0 | 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">& |
| bb0c0 | 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 |
| bb0e0 | 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 |
| bb100 | 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 |
| bb120 | 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 |
| bb140 | 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>.{. |
| bb160 | 20 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 |
| bb180 | 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 70 65 22 | an>.byte:.<span.class="tok-type" |
| bb1a0 | 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 |
| bb1c0 | 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 20 3c 73 | mber">255</span>;.....byte.+=.<s |
| bb1e0 | 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 3b | pan.class="tok-number">1</span>; |
| bb200 | 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 73 | .....std.debug.print(<span.class |
| bb220 | 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 6f | ="tok-str">"value:.{}\n&quo |
| bb240 | 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 3c 2f 70 | t;</span>,..{byte});.}</code></p |
| bb260 | 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | re></figure><figure><figcaption. |
| bb280 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 | class="shell-cap">Shell</figcapt |
| bb2a0 | 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d | ion><pre><samp>$.<kbd>zig.build- |
| bb2c0 | 65 78 65 20 72 75 6e 74 69 6d 65 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 | exe.runtime_overflow.zig</kbd>.$ |
| bb2e0 | 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 6f 76 65 72 66 6c 6f 77 3c 2f 6b 62 64 3e 0a 74 | .<kbd>./runtime_overflow</kbd>.t |
| bb300 | 68 72 65 61 64 20 32 30 38 35 34 36 20 70 61 6e 69 63 3a 20 69 6e 74 65 67 65 72 20 6f 76 65 72 | hread.208546.panic:.integer.over |
| bb320 | 66 6c 6f 77 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f | flow.<span.class="sgr-1m">/home/ |
| bb340 | 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 | andy/dev/zig/doc/langref/runtime |
| bb360 | 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3a 35 3a 31 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | _overflow.zig:5:10</span>:.<span |
| bb380 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 61 31 39 20 69 6e 20 6d 61 69 | .class="sgr-2m">0x10dea19.in.mai |
| bb3a0 | 6e 20 28 72 75 6e 74 69 6d 65 5f 6f 76 65 72 66 6c 6f 77 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | n.(runtime_overflow)</span>..... |
| bb3c0 | 62 79 74 65 20 2b 3d 20 31 3b 0a 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | byte.+=.1;..........<span.class= |
| bb3e0 | 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | "sgr-32m">^</span>.<span.class=" |
| bb400 | 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 | sgr-1m">/home/andy/dev/zig/lib/s |
| bb420 | 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 35 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | td/start.zig:651:22</span>:.<spa |
| bb440 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 33 66 32 20 69 6e 20 70 6f | n.class="sgr-2m">0x10de3f2.in.po |
| bb460 | 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 72 75 6e 74 69 6d 65 5f 6f 76 65 72 | sixCallMainAndExit.(runtime_over |
| bb480 | 66 6c 6f 77 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 | flow)</span>.............root.ma |
| bb4a0 | 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 6e | in();......................<span |
| bb4c0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | .class="sgr-32m">^</span>.<span. |
| bb4e0 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | class="sgr-1m">/home/andy/dev/zi |
| bb500 | 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f 73 70 61 6e 3e | g/lib/std/start.zig:271:5</span> |
| bb520 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 64 66 63 64 | :.<span.class="sgr-2m">0x10ddfcd |
| bb540 | 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 6f 76 65 72 66 6c 6f 77 29 3c 2f 73 | .in._start.(runtime_overflow)</s |
| bb560 | 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e | pan>.....asm.volatile.(switch.(n |
| bb580 | 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | ative_arch).{.....<span.class="s |
| bb5a0 | 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | gr-32m">^</span>.<span.class="sg |
| bb5c0 | 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | r-1m">???:?:?</span>:.<span.clas |
| bb5e0 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 | s="sgr-2m">0x0.in.???.(???)</spa |
| bb600 | 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 6c | n>.(process.terminated.by.signal |
| bb620 | 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 | ).</samp></pre></figure>........ |
| bb640 | 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 2d | .......<h4.id="Standard-Library- |
| bb660 | 4d 61 74 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 | Math-Functions"><a.href="#toc-St |
| bb680 | 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 6e 73 22 3e 53 | andard-Library-Math-Functions">S |
| bb6a0 | 74 61 6e 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 | tandard.Library.Math.Functions</ |
| bb6c0 | 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 61 6e 64 61 72 | a>.<a.class="hdr".href="#Standar |
| bb6e0 | 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 c2 a7 3c 2f 61 3e | d-Library-Math-Functions">..</a> |
| bb700 | 3c 2f 68 34 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 | </h4>........<p>These.functions. |
| bb720 | 70 72 6f 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 | provided.by.the.standard.library |
| bb740 | 20 72 65 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 | .return.possible.errors.</p>.... |
| bb760 | 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 3e 3c 73 70 61 | ...<ul>...........<li><code><spa |
| bb780 | 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 |
| bb7a0 | 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">" |
| bb7c0 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 61 64 64 3c 2f 63 6f 64 | ;std"</span>).math.add</cod |
| bb7e0 | 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 3e 3c 73 70 61 | e></li>...........<li><code><spa |
| bb800 | 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 |
| bb820 | 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">" |
| bb840 | 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 75 62 3c 2f 63 6f 64 | ;std"</span>).math.sub</cod |
| bb860 | 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 3e 3c 73 70 61 | e></li>...........<li><code><spa |
| bb880 | 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 |
| bb8a0 | 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">" |
| bb8c0 | 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 64 | ;std"</span>).math.mul</cod |
| bb8e0 | 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 3e 3c 73 70 61 | e></li>...........<li><code><spa |
| bb900 | 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 |
| bb920 | 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">" |
| bb940 | 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 69 76 54 72 75 6e 63 | ;std"</span>).math.divTrunc |
| bb960 | 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 |
| bb980 | 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 70 6f | ><span.class="tok-builtin">@impo |
| bb9a0 | 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"> |
| bb9c0 | 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 69 76 | "std"</span>).math.div |
| bb9e0 | 46 6c 6f 6f 72 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 | Floor</code></li>...........<li> |
| bba00 | 3c 63 6f 64 65 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 | <code><span.class="tok-builtin"> |
| bba20 | 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- |
| bba40 | 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 61 74 | str">"std"</span>).mat |
| bba60 | 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 20 20 20 20 20 | h.divExact</code></li>.......... |
| bba80 | 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | .<li><code><span.class="tok-buil |
| bbaa0 | 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= |
| bbac0 | 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> |
| bbae0 | 29 2e 6d 61 74 68 2e 73 68 6c 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 | ).math.shl</code></li>.......</u |
| bbb00 | 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 45 78 61 6d 70 6c 65 20 6f 66 20 63 61 74 63 68 69 6e 67 20 | l>.......<p>Example.of.catching. |
| bbb20 | 61 6e 20 6f 76 65 72 66 6c 6f 77 20 66 6f 72 20 61 64 64 69 74 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 | an.overflow.for.addition:</p>... |
| bbb40 | 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a | ....<figure><figcaption.class="z |
| bbb60 | 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6d 61 74 68 5f | ig-cap"><cite.class="file">math_ |
| bbb80 | 61 64 64 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | add.zig</cite></figcaption><pre> |
| bbba0 | 3c 63 6f 64 65 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 | <code><span.class="tok-kw">const |
| bbbc0 | 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 6b 2d | </span>.math.=.<span.class="tok- |
| bbbe0 | 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 |
| bbc00 | 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 |
| bbc20 | 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 77 22 | pan>).math;.<span.class="tok-kw" |
| bbc40 | 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 61 73 | >const</span>.print.=.<span.clas |
| bbc60 | 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>(< |
| bbc80 | 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 |
| bbca0 | 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 6e 20 | uot;</span>).debug.print;.<span. |
| bbcc0 | 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. |
| bbce0 | 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 |
| bbd00 | 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 |
| bbd20 | 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>. |
| bbd40 | 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</ |
| bbd60 | 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 70 | span>.byte:.<span.class="tok-typ |
| bbd80 | 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- |
| bbda0 | 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 3d 20 | number">255</span>;......byte.=. |
| bbdc0 | 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>.( |
| bbde0 | 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 22 3e | math.add(<span.class="tok-type"> |
| bbe00 | 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 74 6f | u8</span>,.byte,.<span.class="to |
| bbe20 | 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 72 65 | k-number">1</span>)).|result|.re |
| bbe40 | 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 3c 2f | sult.<span.class="tok-kw">else</ |
| bbe60 | 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 70 61 | span>.|err|.{.........print(<spa |
| bbe80 | 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 20 74 | n.class="tok-str">"unable.t |
| bbea0 | 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 20 2e | o.add.one:.{s}\n"</span>,.. |
| bbec0 | 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 72 6f | {<span.class="tok-builtin">@erro |
| bbee0 | 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 73 70 | rName</span>(err)});.........<sp |
| bbf00 | 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>. |
| bbf20 | 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 6c 61 | err;.....};......print(<span.cla |
| bbf40 | 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 6e 26 | ss="tok-str">"result:.{}\n& |
| bbf60 | 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> |
| bbf80 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | </pre></figure><figure><figcapti |
| bbfa0 | 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 | on.class="shell-cap">Shell</figc |
| bbfc0 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 | aption><pre><samp>$.<kbd>zig.bui |
| bbfe0 | 6c 64 2d 65 78 65 20 6d 61 74 68 5f 61 64 64 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 | ld-exe.math_add.zig</kbd>.$.<kbd |
| bc000 | 3e 2e 2f 6d 61 74 68 5f 61 64 64 3c 2f 6b 62 64 3e 0a 75 6e 61 62 6c 65 20 74 6f 20 61 64 64 20 | >./math_add</kbd>.unable.to.add. |
| bc020 | 6f 6e 65 3a 20 4f 76 65 72 66 6c 6f 77 0a 65 72 72 6f 72 3a 20 4f 76 65 72 66 6c 6f 77 0a 3c 73 | one:.Overflow.error:.Overflow.<s |
| bc040 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | pan.class="sgr-1m">/home/andy/de |
| bc060 | 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 6d 61 74 68 2e 7a 69 67 3a 35 36 35 3a 32 31 3c 2f 73 | v/zig/lib/std/math.zig:565:21</s |
| bc080 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 | pan>:.<span.class="sgr-2m">0x10d |
| bc0a0 | 65 61 33 35 20 69 6e 20 61 64 64 5f 5f 61 6e 6f 6e 5f 32 34 30 32 37 20 28 6d 61 74 68 5f 61 64 | ea35.in.add__anon_24027.(math_ad |
| bc0c0 | 64 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 66 20 28 6f 76 5b 31 5d 20 21 3d 20 30 29 20 72 65 | d)</span>.....if.(ov[1].!=.0).re |
| bc0e0 | 74 75 72 6e 20 65 72 72 6f 72 2e 4f 76 65 72 66 6c 6f 77 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | turn.error.Overflow;............ |
| bc100 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e | .........<span.class="sgr-32m">^ |
| bc120 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f | </span>.<span.class="sgr-1m">/ho |
| bc140 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 6d 61 74 68 | me/andy/dev/zig/doc/langref/math |
| bc160 | 5f 61 64 64 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 | _add.zig:8:9</span>:.<span.class |
| bc180 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 39 63 62 20 69 6e 20 6d 61 69 6e 20 28 6d 61 74 | ="sgr-2m">0x10de9cb.in.main.(mat |
| bc1a0 | 68 5f 61 64 64 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 | h_add)</span>.........return.err |
| bc1c0 | 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e | ;.........<span.class="sgr-32m"> |
| bc1e0 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a | ^</span>.</samp></pre></figure>. |
| bc200 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 42 75 69 6c 74 69 6e 2d 4f 76 | ..............<h4.id="Builtin-Ov |
| bc220 | 65 72 66 6c 6f 77 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 | erflow-Functions"><a.href="#toc- |
| bc240 | 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 42 75 69 6c | Builtin-Overflow-Functions">Buil |
| bc260 | 74 69 6e 20 4f 76 65 72 66 6c 6f 77 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c | tin.Overflow.Functions</a>.<a.cl |
| bc280 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 42 75 69 6c 74 69 6e 2d 4f 76 65 72 66 6c 6f | ass="hdr".href="#Builtin-Overflo |
| bc2a0 | 77 2d 46 75 6e 63 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 | w-Functions">..</a></h4>........ |
| bc2c0 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 73 65 20 62 75 69 6c 74 69 6e 73 20 72 65 74 75 72 6e 20 | <p>.......These.builtins.return. |
| bc2e0 | 61 20 74 75 70 6c 65 20 63 6f 6e 74 61 69 6e 69 6e 67 20 77 68 65 74 68 65 72 20 74 68 65 72 65 | a.tuple.containing.whether.there |
| bc300 | 20 77 61 73 20 61 6e 20 6f 76 65 72 66 6c 6f 77 0a 20 20 20 20 20 20 28 61 73 20 61 20 3c 63 6f | .was.an.overflow.......(as.a.<co |
| bc320 | 64 65 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 3c 2f 73 70 | de><span.class="tok-type">u1</sp |
| bc340 | 61 6e 3e 3c 2f 63 6f 64 65 3e 29 20 61 6e 64 20 74 68 65 20 70 6f 73 73 69 62 6c 79 20 6f 76 65 | an></code>).and.the.possibly.ove |
| bc360 | 72 66 6c 6f 77 65 64 20 62 69 74 73 20 6f 66 20 74 68 65 20 6f 70 65 72 61 74 69 6f 6e 3a 0a 20 | rflowed.bits.of.the.operation:.. |
| bc380 | 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>...........< |
| bc3a0 | 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 61 | li><a.href="#addWithOverflow">@a |
| bc3c0 | 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 20 | ddWithOverflow</a></li>......... |
| bc3e0 | 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 22 | ..<li><a.href="#subWithOverflow" |
| bc400 | 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 20 | >@subWithOverflow</a></li>...... |
| bc420 | 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 6c | .....<li><a.href="#mulWithOverfl |
| bc440 | 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 20 | ow">@mulWithOverflow</a></li>... |
| bc460 | 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 65 | ........<li><a.href="#shlWithOve |
| bc480 | 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> |
| bc4a0 | 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 61 | .......</ul>.......<p>.......Exa |
| bc4c0 | 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 6f | mple.of.<a.href="#addWithOverflo |
| bc4e0 | 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 3c | w">@addWithOverflow</a>:.......< |
| bc500 | 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | /p>.......<figure><figcaption.cl |
| bc520 | 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ass="zig-cap"><cite.class="file" |
| bc540 | 3e 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 69 | >addWithOverflow_builtin.zig</ci |
| bc560 | 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e | te></figcaption><pre><code><span |
| bc580 | 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 72 69 | .class="tok-kw">const</span>.pri |
| bc5a0 | 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 3e 40 | nt.=.<span.class="tok-builtin">@ |
| bc5c0 | 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 |
| bc5e0 | 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 62 75 | tr">"std"</span>).debu |
| bc600 | 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 3e 70 75 | g.print;.<span.class="tok-kw">pu |
| bc620 | 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 |
| bc640 | 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 |
| bc660 | 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 |
| bc680 | 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= |
| bc6a0 | 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 3a 20 3c 73 70 61 | "tok-kw">const</span>.byte:.<spa |
| bc6c0 | 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>.=.< |
| bc6e0 | 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 61 | span.class="tok-number">255</spa |
| bc700 | 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 63 6f | n>;......<span.class="tok-kw">co |
| bc720 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 76 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | nst</span>.ov.=.<span.class="tok |
| bc740 | 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 61 6e | -builtin">@addWithOverflow</span |
| bc760 | 3e 28 62 79 74 65 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 | >(byte,.<span.class="tok-number" |
| bc780 | 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 3d 22 74 6f | >10</span>);.....<span.class="to |
| bc7a0 | 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6f 76 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-kw">if</span>.(ov[<span.class= |
| bc7c0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 21 3d 20 3c 73 70 61 6e 20 | "tok-number">1</span>].!=.<span. |
| bc7e0 | 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 20 7b 0a 20 | class="tok-number">0</span>).{.. |
| bc800 | 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 2d 73 74 | .......print(<span.class="tok-st |
| bc820 | 72 22 3e 26 71 75 6f 74 3b 6f 76 65 72 66 6c 6f 77 65 64 20 72 65 73 75 6c 74 3a 20 7b 7d 5c 6e | r">"overflowed.result:.{}\n |
| bc840 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6f 76 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "</span>,..{ov[<span.class= |
| bc860 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 7d 29 3b 0a 20 20 20 20 7d 20 | "tok-number">0</span>]});.....}. |
| bc880 | 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> |
| bc8a0 | 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 6f | .{.........print(<span.class="to |
| bc8c0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 65 73 75 6c 74 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c | k-str">"result:.{}\n"< |
| bc8e0 | 2f 73 70 61 6e 3e 2c 20 2e 7b 6f 76 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | /span>,..{ov[<span.class="tok-nu |
| bc900 | 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 7d 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 | mber">0</span>]});.....}.}</code |
| bc920 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | ></pre></figure><figure><figcapt |
| bc940 | 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 | ion.class="shell-cap">Shell</fig |
| bc960 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 | caption><pre><samp>$.<kbd>zig.bu |
| bc980 | 69 6c 64 2d 65 78 65 20 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 5f 62 75 69 6c 74 69 6e 2e | ild-exe.addWithOverflow_builtin. |
| bc9a0 | 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 61 64 64 57 69 74 68 4f 76 65 72 66 6c | zig</kbd>.$.<kbd>./addWithOverfl |
| bc9c0 | 6f 77 5f 62 75 69 6c 74 69 6e 3c 2f 6b 62 64 3e 0a 6f 76 65 72 66 6c 6f 77 65 64 20 72 65 73 75 | ow_builtin</kbd>.overflowed.resu |
| bc9e0 | 6c 74 3a 20 39 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 | lt:.9.</samp></pre></figure>.... |
| bca00 | 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 57 72 61 70 70 69 6e 67 2d 4f 70 65 72 | ...........<h4.id="Wrapping-Oper |
| bca20 | 61 74 69 6f 6e 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 | ations"><a.href="#toc-Wrapping-O |
| bca40 | 70 65 72 61 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 | perations">Wrapping.Operations</ |
| bca60 | 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 72 61 70 70 69 6e | a>.<a.class="hdr".href="#Wrappin |
| bca80 | 67 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 | g-Operations">..</a></h4>....... |
| bcaa0 | 20 3c 70 3e 0a 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 | .<p>.......These.operations.have |
| bcac0 | 20 67 75 61 72 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 | .guaranteed.wraparound.semantics |
| bcae0 | 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 20 20 20 | ........</p>.......<ul>......... |
| bcb00 | 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 2b 25 3c 2f 63 6f 64 65 3e 20 28 77 72 61 70 61 72 6f 75 6e | ..<li><code>+%</code>.(wraparoun |
| bcb20 | 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 20 20 3c 6c 69 3e 3c | d.addition)</li>...........<li>< |
| bcb40 | 63 6f 64 65 3e 2d 25 3c 2f 63 6f 64 65 3e 20 28 77 72 61 70 61 72 6f 75 6e 64 20 73 75 62 74 72 | code>-%</code>.(wraparound.subtr |
| bcb60 | 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 3c 63 6f 64 65 | action)</li>...........<li><code |
| bcb80 | 3e 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 | >-%</code>.(wraparound.negation) |
| bcba0 | 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 3e 2a 25 3c 2f 63 6f | </li>...........<li><code>*%</co |
| bcbc0 | 64 65 3e 20 28 77 72 61 70 61 72 6f 75 6e 64 20 6d 75 6c 74 69 70 6c 69 63 61 74 69 6f 6e 29 3c | de>.(wraparound.multiplication)< |
| bcbe0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | /li>.......</ul>.......<figure>< |
| bcc00 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 | figcaption.class="zig-cap"><cite |
| bcc20 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 77 72 61 70 61 72 6f 75 6e 64 5f 73 65 | .class="file">test_wraparound_se |
| bcc40 | 6d 61 6e 74 69 63 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | mantics.zig</cite></figcaption>< |
| bcc60 | 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | pre><code><span.class="tok-kw">c |
| bcc80 | 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 |
| bcca0 | 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 |
| bccc0 | 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" |
| bcce0 | 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 |
| bcd00 | 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 |
| bcd20 | 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 |
| bcd40 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 69 6e 49 6e 74 20 3d 20 73 74 64 2e 6d 61 74 68 2e 6d 69 6e | nst</span>.minInt.=.std.math.min |
| bcd60 | 49 6e 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 73 74 3c | Int;.<span.class="tok-kw">const< |
| bcd80 | 2f 73 70 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 | /span>.maxInt.=.std.math.maxInt; |
| bcda0 | 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 |
| bcdc0 | 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 77 | n>.<span.class="tok-str">"w |
| bcde0 | 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 69 | raparound.addition.and.subtracti |
| bce00 | 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 20 63 6c 61 73 | on"</span>.{.....<span.clas |
| bce20 | 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 61 6e | s="tok-kw">const</span>.x:.<span |
| bce40 | 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 6d | .class="tok-type">i32</span>.=.m |
| bce60 | 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 3e 69 33 32 | axInt(<span.class="tok-type">i32 |
| bce80 | 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 |
| bcea0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 69 6e 5f 76 61 6c 20 3d 20 78 20 2b 25 20 3c | w">const</span>.min_val.=.x.+%.< |
| bcec0 | 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> |
| bcee0 | 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</ |
| bcf00 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 69 6e 5f 76 61 6c 20 3d 3d 20 6d 69 6e 49 6e 74 28 3c | span>.expect(min_val.==.minInt(< |
| bcf20 | 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> |
| bcf40 | 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 63 6f 6e | ));.....<span.class="tok-kw">con |
| bcf60 | 73 74 3c 2f 73 70 61 6e 3e 20 6d 61 78 5f 76 61 6c 20 3d 20 6d 69 6e 5f 76 61 6c 20 2d 25 20 3c | st</span>.max_val.=.min_val.-%.< |
| bcf80 | 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> |
| bcfa0 | 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</ |
| bcfc0 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 61 78 5f 76 61 6c 20 3d 3d 20 6d 61 78 49 6e 74 28 3c | span>.expect(max_val.==.maxInt(< |
| bcfe0 | 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> |
| bd000 | 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 | ));.}</code></pre></figure><figu |
| bd020 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 | re><figcaption.class="shell-cap" |
| bd040 | 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 | >Shell</figcaption><pre><samp>$. |
| bd060 | 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 77 72 61 70 61 72 6f 75 6e 64 5f 73 65 | <kbd>zig.test.test_wraparound_se |
| bd080 | 6d 61 6e 74 69 63 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 77 72 61 70 61 | mantics.zig</kbd>.1/1.test_wrapa |
| bd0a0 | 72 6f 75 6e 64 5f 73 65 6d 61 6e 74 69 63 73 2e 74 65 73 74 2e 77 72 61 70 61 72 6f 75 6e 64 20 | round_semantics.test.wraparound. |
| bd0c0 | 61 64 64 69 74 69 6f 6e 20 61 6e 64 20 73 75 62 74 72 61 63 74 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c | addition.and.subtraction...OK.Al |
| bd0e0 | 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c | l.1.tests.passed..</samp></pre>< |
| bd100 | 2f 66 69 67 75 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 | /figure>......................<h |
| bd120 | 33 20 69 64 3d 22 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 | 3.id="Exact-Left-Shift-Overflow" |
| bd140 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 78 61 63 74 2d 4c 65 66 74 2d 53 68 69 66 74 2d | ><a.href="#toc-Exact-Left-Shift- |
| bd160 | 4f 76 65 72 66 6c 6f 77 22 3e 45 78 61 63 74 20 4c 65 66 74 20 53 68 69 66 74 20 4f 76 65 72 66 | Overflow">Exact.Left.Shift.Overf |
| bd180 | 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 45 78 | low</a>.<a.class="hdr".href="#Ex |
| bd1a0 | 61 63 74 2d 4c 65 66 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e c2 a7 3c 2f 61 3e 3c | act-Left-Shift-Overflow">..</a>< |
| bd1c0 | 2f 68 33 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 | /h3>........<p>At.compile-time:< |
| bd1e0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | /p>.......<figure><figcaption.cl |
| bd200 | 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ass="zig-cap"><cite.class="file" |
| bd220 | 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 73 68 6c 45 78 61 63 74 5f 6f 76 65 72 77 6c 6f 77 | >test_comptime_shlExact_overwlow |
| bd240 | 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f | .zig</cite></figcaption><pre><co |
| bd260 | 64 65 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 | de><span.class="tok-kw">comptime |
| bd280 | 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 |
| bd2a0 | 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= |
| bd2c0 | 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 28 3c | "tok-builtin">@shlExact</span>(< |
| bd2e0 | 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 70 | span.class="tok-builtin">@as</sp |
| bd300 | 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 73 | an>(<span.class="tok-type">u8</s |
| bd320 | 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 |
| bd340 | 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 3d 22 | b01010101</span>),.<span.class=" |
| bd360 | 74 6f 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 5f 20 3d 20 78 | tok-number">2</span>);....._.=.x |
| bd380 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 | ;.}</code></pre></figure><figure |
| bd3a0 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 | ><figcaption.class="shell-cap">S |
| bd3c0 | 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b | hell</figcaption><pre><samp>$.<k |
| bd3e0 | 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 73 68 6c 45 78 61 | bd>zig.test.test_comptime_shlExa |
| bd400 | 63 74 5f 6f 76 65 72 77 6c 6f 77 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | ct_overwlow.zig</kbd>.<span.clas |
| bd420 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f | s="sgr-1m">/home/andy/dev/zig/do |
| bd440 | 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 73 68 6c 45 78 61 63 74 | c/langref/test_comptime_shlExact |
| bd460 | 5f 6f 76 65 72 77 6c 6f 77 2e 7a 69 67 3a 32 3a 31 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | _overwlow.zig:2:15:.</span><span |
| bd480 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c | .class="sgr-31m">error:.</span>< |
| bd4a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 6f 70 65 72 61 74 69 6f 6e 20 63 61 | span.class="sgr-1m">operation.ca |
| bd4c0 | 75 73 65 64 20 6f 76 65 72 66 6c 6f 77 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 78 | used.overflow.</span>....const.x |
| bd4e0 | 20 3d 20 40 73 68 6c 45 78 61 63 74 28 40 61 73 28 75 38 2c 20 30 62 30 31 30 31 30 31 30 31 29 | .=.@shlExact(@as(u8,.0b01010101) |
| bd500 | 2c 20 32 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 | ,.2);...............<span.class= |
| bd520 | 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e | "sgr-32m">^~~~~~~~~~~~~~~~~~~~~~ |
| bd540 | 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 | ~~~~~~~~~~~.</span>.</samp></pre |
| bd560 | 3e 3c 2f 66 69 67 75 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 | ></figure>........<p>At.runtime: |
| bd580 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 | </p>.......<figure><figcaption.c |
| bd5a0 | 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 | lass="zig-cap"><cite.class="file |
| bd5c0 | 22 3e 72 75 6e 74 69 6d 65 5f 73 68 6c 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3c | ">runtime_shlExact_overflow.zig< |
| bd5e0 | 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 | /cite></figcaption><pre><code><s |
| bd600 | 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>. |
| bd620 | 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"> |
| bd640 | 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- |
| bd660 | 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>);..< |
| bd680 | 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>.< |
| bd6a0 | 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 |
| bd6c0 | 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>() |
| bd6e0 | 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 |
| bd700 | 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 |
| bd720 | 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 6f 6b 2d 74 79 | ar</span>.x:.<span.class="tok-ty |
| bd740 | 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 |
| bd760 | 2d 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 20 3c 73 70 61 | -number">0b01010101</span>;.<spa |
| bd780 | 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 75 6e 74 69 6d 65 | n.class="tok-comment">//.runtime |
| bd7a0 | 2d 6b 6e 6f 77 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 78 3b 0a 20 20 | -known</span>....._.=.&x;... |
| bd7c0 | 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 |
| bd7e0 | 61 6e 3e 20 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 | an>.y.=.<span.class="tok-builtin |
| bd800 | 22 3e 40 73 68 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 | ">@shlExact</span>(x,.<span.clas |
| bd820 | 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 20 20 20 20 73 74 | s="tok-number">2</span>);.....st |
| bd840 | 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 73 | d.debug.print(<span.class="tok-s |
| bd860 | 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 61 | tr">"value:.{}\n"</spa |
| bd880 | 6e 3e 2c 20 2e 7b 79 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | n>,..{y});.}</code></pre></figur |
| bd8a0 | 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 | e><figure><figcaption.class="she |
| bd8c0 | 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c | ll-cap">Shell</figcaption><pre>< |
| bd8e0 | 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d | samp>$.<kbd>zig.build-exe.runtim |
| bd900 | 65 5f 73 68 6c 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 | e_shlExact_overflow.zig</kbd>.$. |
| bd920 | 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 73 68 6c 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 | <kbd>./runtime_shlExact_overflow |
| bd940 | 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 31 39 37 39 32 39 20 70 61 6e 69 63 3a 20 6c 65 66 74 | </kbd>.thread.197929.panic:.left |
| bd960 | 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 70 61 6e 20 63 6c 61 | .shift.overflowed.bits.<span.cla |
| bd980 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 | ss="sgr-1m">/home/andy/dev/zig/d |
| bd9a0 | 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 73 68 6c 45 78 61 63 74 5f 6f 76 65 72 | oc/langref/runtime_shlExact_over |
| bd9c0 | 66 6c 6f 77 2e 7a 69 67 3a 36 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | flow.zig:6:5</span>:.<span.class |
| bd9e0 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 61 62 31 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e | ="sgr-2m">0x10deab1.in.main.(run |
| bda00 | 74 69 6d 65 5f 73 68 6c 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 29 3c 2f 73 70 61 6e 3e 0a 20 | time_shlExact_overflow)</span>.. |
| bda20 | 20 20 20 63 6f 6e 73 74 20 79 20 3d 20 40 73 68 6c 45 78 61 63 74 28 78 2c 20 32 29 3b 0a 20 20 | ...const.y.=.@shlExact(x,.2);... |
| bda40 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e | ..<span.class="sgr-32m">^</span> |
| bda60 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 | .<span.class="sgr-1m">/home/andy |
| bda80 | 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 35 31 3a 32 | /dev/zig/lib/std/start.zig:651:2 |
| bdaa0 | 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 | 2</span>:.<span.class="sgr-2m">0 |
| bdac0 | 78 31 30 64 65 34 36 32 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 | x10de462.in.posixCallMainAndExit |
| bdae0 | 20 28 72 75 6e 74 69 6d 65 5f 73 68 6c 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 29 3c 2f 73 70 | .(runtime_shlExact_overflow)</sp |
| bdb00 | 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();.... |
| bdb20 | 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 73 | ..................<span.class="s |
| bdb40 | 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | gr-32m">^</span>.<span.class="sg |
| bdb60 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 | r-1m">/home/andy/dev/zig/lib/std |
| bdb80 | 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | /start.zig:271:5</span>:.<span.c |
| bdba0 | 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 30 33 64 20 69 6e 20 5f 73 74 61 72 | lass="sgr-2m">0x10de03d.in._star |
| bdbc0 | 74 20 28 72 75 6e 74 69 6d 65 5f 73 68 6c 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 29 3c 2f 73 | t.(runtime_shlExact_overflow)</s |
| bdbe0 | 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e | pan>.....asm.volatile.(switch.(n |
| bdc00 | 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | ative_arch).{.....<span.class="s |
| bdc20 | 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | gr-32m">^</span>.<span.class="sg |
| bdc40 | 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | r-1m">???:?:?</span>:.<span.clas |
| bdc60 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 | s="sgr-2m">0x0.in.???.(???)</spa |
| bdc80 | 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 6c | n>.(process.terminated.by.signal |
| bdca0 | 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 | ).</samp></pre></figure>........ |
| bdcc0 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 45 78 61 63 74 2d 52 69 67 68 74 2d 53 68 69 66 74 | .......<h3.id="Exact-Right-Shift |
| bdce0 | 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 78 61 63 74 2d 52 | -Overflow"><a.href="#toc-Exact-R |
| bdd00 | 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 20 52 69 67 68 74 | ight-Shift-Overflow">Exact.Right |
| bdd20 | 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 73 73 3d 22 68 64 | .Shift.Overflow</a>.<a.class="hd |
| bdd40 | 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 74 2d 4f 76 65 72 | r".href="#Exact-Right-Shift-Over |
| bdd60 | 66 6c 6f 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 | flow">..</a></h3>........<p>At.c |
| bdd80 | 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | ompile-time:</p>.......<figure>< |
| bdda0 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 | figcaption.class="zig-cap"><cite |
| bddc0 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 73 68 72 45 | .class="file">test_comptime_shrE |
| bdde0 | 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | xact_overflow.zig</cite></figcap |
| bde00 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tion><pre><code><span.class="tok |
| bde20 | 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 |
| bde40 | 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.= |
| bde60 | 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 |
| bde80 | 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 |
| bdea0 | 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 |
| bdec0 | 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=" |
| bdee0 | 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>),. |
| bdf00 | 3c 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 |
| bdf20 | 3e 29 3b 0a 20 20 20 20 5f 20 3d 20 78 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 | >);....._.=.x;.}</code></pre></f |
| bdf40 | 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | igure><figure><figcaption.class= |
| bdf60 | 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | "shell-cap">Shell</figcaption><p |
| bdf80 | 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f | re><samp>$.<kbd>zig.test.test_co |
| bdfa0 | 6d 70 74 69 6d 65 5f 73 68 72 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3c 2f 6b 62 | mptime_shrExact_overflow.zig</kb |
| bdfc0 | 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e | d>.<span.class="sgr-1m">/home/an |
| bdfe0 | 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 | dy/dev/zig/doc/langref/test_comp |
| be000 | 74 69 6d 65 5f 73 68 72 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3a 32 3a 31 35 3a | time_shrExact_overflow.zig:2:15: |
| be020 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 | .</span><span.class="sgr-31m">er |
| be040 | 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 73 67 72 2d 31 6d 22 | ror:.</span><span.class="sgr-1m" |
| be060 | 3e 65 78 61 63 74 20 73 68 69 66 74 20 73 68 69 66 74 65 64 20 6f 75 74 20 31 20 62 69 74 73 0a | >exact.shift.shifted.out.1.bits. |
| be080 | 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 78 20 3d 20 40 73 68 72 45 78 61 63 74 28 40 | </span>....const.x.=.@shrExact(@ |
| be0a0 | 61 73 28 75 38 2c 20 30 62 31 30 31 30 31 30 31 30 29 2c 20 32 29 3b 0a 20 20 20 20 20 20 20 20 | as(u8,.0b10101010),.2);......... |
| be0c0 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e | ......<span.class="sgr-32m">^~~~ |
| be0e0 | 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~.</ |
| be100 | 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 | span>.</samp></pre></figure>.... |
| be120 | 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 66 69 | ....<p>At.runtime:</p>.......<fi |
| be140 | 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 | gure><figcaption.class="zig-cap" |
| be160 | 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 73 68 72 45 | ><cite.class="file">runtime_shrE |
| be180 | 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | xact_overflow.zig</cite></figcap |
| be1a0 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tion><pre><code><span.class="tok |
| be1c0 | 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 |
| be1e0 | 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> |
| be200 | 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 |
| be220 | 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 |
| be240 | 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 |
| be260 | 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 |
| be280 | 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 3d 22 | -fn">main</span>().<span.class=" |
| be2a0 | 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 |
| be2c0 | 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 20 3c | n.class="tok-kw">var</span>.x:.< |
| be2e0 | 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>. |
| be300 | 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 62 31 30 31 | =.<span.class="tok-number">0b101 |
| be320 | 30 31 30 31 30 3c 2f 73 70 61 6e 3e 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | 01010</span>;.<span.class="tok-c |
| be340 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 3c 2f 73 70 61 6e 3e 0a | omment">//.runtime-known</span>. |
| be360 | 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 78 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ...._.=.&x;.....<span.class= |
| be380 | 22 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 | "tok-kw">const</span>.y.=.<span. |
| be3a0 | 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 78 61 63 74 3c 2f 73 | class="tok-builtin">@shrExact</s |
| be3c0 | 70 61 6e 3e 28 78 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 | pan>(x,.<span.class="tok-number" |
| be3e0 | 3e 32 3c 2f 73 70 61 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 | >2</span>);.....std.debug.print( |
| be400 | 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 |
| be420 | 65 3a 20 7b 7d 5c 6e 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 | e:.{}\n"</span>,..{y});.}</ |
| be440 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 | code></pre></figure><figure><fig |
| be460 | 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c | caption.class="shell-cap">Shell< |
| be480 | 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 | /figcaption><pre><samp>$.<kbd>zi |
| be4a0 | 67 20 62 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 73 68 72 45 78 61 63 74 5f 6f 76 65 | g.build-exe.runtime_shrExact_ove |
| be4c0 | 72 66 6c 6f 77 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 | rflow.zig</kbd>.$.<kbd>./runtime |
| be4e0 | 5f 73 68 72 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 | _shrExact_overflow</kbd>.thread. |
| be500 | 32 30 35 36 33 33 20 70 61 6e 69 63 3a 20 72 69 67 68 74 20 73 68 69 66 74 20 6f 76 65 72 66 6c | 205633.panic:.right.shift.overfl |
| be520 | 6f 77 65 64 20 62 69 74 73 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f | owed.bits.<span.class="sgr-1m">/ |
| be540 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 | home/andy/dev/zig/doc/langref/ru |
| be560 | 6e 74 69 6d 65 5f 73 68 72 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3a 36 3a 35 3c | ntime_shrExact_overflow.zig:6:5< |
| be580 | 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 | /span>:.<span.class="sgr-2m">0x1 |
| be5a0 | 30 64 65 61 61 64 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 73 68 72 45 78 61 63 74 | 0deaad.in.main.(runtime_shrExact |
| be5c0 | 5f 6f 76 65 72 66 6c 6f 77 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 79 20 3d 20 | _overflow)</span>.....const.y.=. |
| be5e0 | 40 73 68 72 45 78 61 63 74 28 78 2c 20 32 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | @shrExact(x,.2);.....<span.class |
| be600 | 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ="sgr-32m">^</span>.<span.class= |
| be620 | 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f | "sgr-1m">/home/andy/dev/zig/lib/ |
| be640 | 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 35 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | std/start.zig:651:22</span>:.<sp |
| be660 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 34 36 32 20 69 6e 20 70 | an.class="sgr-2m">0x10de462.in.p |
| be680 | 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 72 75 6e 74 69 6d 65 5f 73 68 72 | osixCallMainAndExit.(runtime_shr |
| be6a0 | 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 | Exact_overflow)</span>.......... |
| be6c0 | 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();................. |
| be6e0 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 | .....<span.class="sgr-32m">^</sp |
| be700 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 | an>.<span.class="sgr-1m">/home/a |
| be720 | 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 | ndy/dev/zig/lib/std/start.zig:27 |
| be740 | 31 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 | 1:5</span>:.<span.class="sgr-2m" |
| be760 | 3e 30 78 31 30 64 65 30 33 64 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 73 68 | >0x10de03d.in._start.(runtime_sh |
| be780 | 72 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 | rExact_overflow)</span>.....asm. |
| be7a0 | 76 6f 6c 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b | volatile.(switch.(native_arch).{ |
| be7c0 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 | .....<span.class="sgr-32m">^</sp |
| be7e0 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f | an>.<span.class="sgr-1m">???:?:? |
| be800 | 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 | </span>:.<span.class="sgr-2m">0x |
| be820 | 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 | 0.in.???.(???)</span>.(process.t |
| be840 | 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 | erminated.by.signal).</samp></pr |
| be860 | 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 | e></figure>...............<h3.id |
| be880 | 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 22 23 74 6f | ="Division-by-Zero"><a.href="#to |
| be8a0 | 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 20 62 79 20 | c-Division-by-Zero">Division.by. |
| be8c0 | 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 3d 22 23 44 | Zero</a>.<a.class="hdr".href="#D |
| be8e0 | 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 33 3e 0a 0a 20 20 | ivision-by-Zero">..</a></h3>.... |
| be900 | 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>..... |
| be920 | 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 | ..<figure><figcaption.class="zig |
| be940 | 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f | -cap"><cite.class="file">test_co |
| be960 | 6d 70 74 69 6d 65 5f 64 69 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 2e 7a 69 67 3c 2f 63 69 74 | mptime_division_by_zero.zig</cit |
| be980 | 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | e></figcaption><pre><code><span. |
| be9a0 | 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>.{ |
| be9c0 | 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< |
| be9e0 | 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" |
| bea00 | 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 6e | >i32</span>.=.<span.class="tok-n |
| bea20 | 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 73 73 | umber">1</span>;.....<span.class |
| bea40 | 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. |
| bea60 | 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 |
| bea80 | 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>; |
| beaa0 | 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< |
| beac0 | 2f 73 70 61 6e 3e 20 63 20 3d 20 61 20 2f 20 62 3b 0a 20 20 20 20 5f 20 3d 20 63 3b 0a 7d 3c 2f | /span>.c.=.a./.b;....._.=.c;.}</ |
| beae0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 | code></pre></figure><figure><fig |
| beb00 | 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c | caption.class="shell-cap">Shell< |
| beb20 | 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 | /figcaption><pre><samp>$.<kbd>zi |
| beb40 | 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 64 69 76 69 73 69 6f 6e 5f 62 79 | g.test.test_comptime_division_by |
| beb60 | 5f 7a 65 72 6f 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | _zero.zig</kbd>.<span.class="sgr |
| beb80 | 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 | -1m">/home/andy/dev/zig/doc/lang |
| beba0 | 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 64 69 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 | ref/test_comptime_division_by_ze |
| bebc0 | 72 6f 2e 7a 69 67 3a 34 3a 31 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ro.zig:4:19:.</span><span.class= |
| bebe0 | 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | "sgr-31m">error:.</span><span.cl |
| bec00 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 69 76 69 73 69 6f 6e 20 62 79 20 7a 65 72 6f 20 68 65 | ass="sgr-1m">division.by.zero.he |
| bec20 | 72 65 20 63 61 75 73 65 73 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 0a 3c 2f 73 | re.causes.undefined.behavior.</s |
| bec40 | 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 63 20 3d 20 61 20 2f 20 62 3b 0a 20 20 20 20 20 20 20 | pan>....const.c.=.a./.b;........ |
| bec60 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 | ...........<span.class="sgr-32m" |
| bec80 | 3e 5e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | >^.</span>.</samp></pre></figure |
| beca0 | 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 20 | >........<p>At.runtime:</p>..... |
| becc0 | 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 | ..<figure><figcaption.class="zig |
| bece0 | 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 | -cap"><cite.class="file">runtime |
| bed00 | 5f 64 69 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 | _division_by_zero.zig</cite></fi |
| bed20 | 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | gcaption><pre><code><span.class= |
| bed40 | 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 |
| bed60 | 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 |
| bed80 | 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">" |
| beda0 | 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 |
| bedc0 | 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 |
| bede0 | 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= |
| bee00 | 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 |
| bee20 | 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>.{..... |
| bee40 | 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>. |
| bee60 | 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 |
| bee80 | 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"> |
| beea0 | 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 |
| beec0 | 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 6f | w">var</span>.b:.<span.class="to |
| beee0 | 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 |
| bef00 | 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 5f 20 3d 20 | ="tok-number">0</span>;....._.=. |
| bef20 | 2e 7b 20 26 61 6d 70 3b 61 2c 20 26 61 6d 70 3b 62 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | .{.&a,.&b.};.....<span.c |
| bef40 | 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 61 | lass="tok-kw">const</span>.c.=.a |
| bef60 | 20 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 | ./.b;.....std.debug.print(<span. |
| bef80 | 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 7b 7d 5c | class="tok-str">"value:.{}\ |
| befa0 | 6e 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 | n"</span>,..{c});.}</code>< |
| befc0 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | /pre></figure><figure><figcaptio |
| befe0 | 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 | n.class="shell-cap">Shell</figca |
| bf000 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c | ption><pre><samp>$.<kbd>zig.buil |
| bf020 | 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 64 69 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 2e 7a | d-exe.runtime_division_by_zero.z |
| bf040 | 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 64 69 76 69 73 69 | ig</kbd>.$.<kbd>./runtime_divisi |
| bf060 | 6f 6e 5f 62 79 5f 7a 65 72 6f 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 32 31 30 35 31 36 20 70 | on_by_zero</kbd>.thread.210516.p |
| bf080 | 61 6e 69 63 3a 20 64 69 76 69 73 69 6f 6e 20 62 79 20 7a 65 72 6f 0a 3c 73 70 61 6e 20 63 6c 61 | anic:.division.by.zero.<span.cla |
| bf0a0 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 | ss="sgr-1m">/home/andy/dev/zig/d |
| bf0c0 | 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 64 69 76 69 73 69 6f 6e 5f 62 79 5f 7a | oc/langref/runtime_division_by_z |
| bf0e0 | 65 72 6f 2e 7a 69 67 3a 37 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ero.zig:7:17</span>:.<span.class |
| bf100 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 39 63 61 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e | ="sgr-2m">0x10de9ca.in.main.(run |
| bf120 | 74 69 6d 65 5f 64 69 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 29 3c 2f 73 70 61 6e 3e 0a 20 20 | time_division_by_zero)</span>... |
| bf140 | 20 20 63 6f 6e 73 74 20 63 20 3d 20 61 20 2f 20 62 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..const.c.=.a./.b;.............. |
| bf160 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e | ...<span.class="sgr-32m">^</span |
| bf180 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | >.<span.class="sgr-1m">/home/and |
| bf1a0 | 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 35 31 3a | y/dev/zig/lib/std/start.zig:651: |
| bf1c0 | 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e | 22</span>:.<span.class="sgr-2m"> |
| bf1e0 | 30 78 31 30 64 65 33 37 32 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 | 0x10de372.in.posixCallMainAndExi |
| bf200 | 74 20 28 72 75 6e 74 69 6d 65 5f 64 69 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 29 3c 2f 73 70 | t.(runtime_division_by_zero)</sp |
| bf220 | 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();.... |
| bf240 | 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 73 | ..................<span.class="s |
| bf260 | 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | gr-32m">^</span>.<span.class="sg |
| bf280 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 | r-1m">/home/andy/dev/zig/lib/std |
| bf2a0 | 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | /start.zig:271:5</span>:.<span.c |
| bf2c0 | 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 64 66 34 64 20 69 6e 20 5f 73 74 61 72 | lass="sgr-2m">0x10ddf4d.in._star |
| bf2e0 | 74 20 28 72 75 6e 74 69 6d 65 5f 64 69 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 29 3c 2f 73 70 | t.(runtime_division_by_zero)</sp |
| bf300 | 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 | an>.....asm.volatile.(switch.(na |
| bf320 | 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | tive_arch).{.....<span.class="sg |
| bf340 | 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | r-32m">^</span>.<span.class="sgr |
| bf360 | 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | -1m">???:?:?</span>:.<span.class |
| bf380 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e | ="sgr-2m">0x0.in.???.(???)</span |
| bf3a0 | 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 6c 29 | >.(process.terminated.by.signal) |
| bf3c0 | 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a | .</samp></pre></figure>......... |
| bf3e0 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 52 65 6d 61 69 6e 64 65 72 2d 44 69 76 69 73 69 6f 6e | ......<h3.id="Remainder-Division |
| bf400 | 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 61 69 6e 64 65 | -by-Zero"><a.href="#toc-Remainde |
| bf420 | 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 65 72 20 44 69 | r-Division-by-Zero">Remainder.Di |
| bf440 | 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 3d 22 68 64 72 | vision.by.Zero</a>.<a.class="hdr |
| bf460 | 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 2d 62 79 2d 5a | ".href="#Remainder-Division-by-Z |
| bf480 | 65 72 6f 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f | ero">..</a></h3>........<p>At.co |
| bf4a0 | 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 | mpile-time:</p>.......<figure><f |
| bf4c0 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 | igcaption.class="zig-cap"><cite. |
| bf4e0 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 72 65 6d 61 69 | class="file">test_comptime_remai |
| bf500 | 6e 64 65 72 5f 64 69 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 2e 7a 69 67 3c 2f 63 69 74 65 3e | nder_division_by_zero.zig</cite> |
| bf520 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </figcaption><pre><code><span.cl |
| bf540 | 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>.{.. |
| bf560 | 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 |
| bf580 | 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 69 | pan>.a:.<span.class="tok-type">i |
| bf5a0 | 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 |
| bf5c0 | 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 3d | ber">10</span>;.....<span.class= |
| bf5e0 | 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 |
| bf600 | 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 |
| bf620 | 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>;. |
| bf640 | 20 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</ |
| bf660 | 73 70 61 6e 3e 20 63 20 3d 20 61 20 25 20 62 3b 0a 20 20 20 20 5f 20 3d 20 63 3b 0a 7d 3c 2f 63 | span>.c.=.a.%.b;....._.=.c;.}</c |
| bf680 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | ode></pre></figure><figure><figc |
| bf6a0 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f | aption.class="shell-cap">Shell</ |
| bf6c0 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 | figcaption><pre><samp>$.<kbd>zig |
| bf6e0 | 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 72 65 6d 61 69 6e 64 65 72 5f 64 69 | .test.test_comptime_remainder_di |
| bf700 | 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 | vision_by_zero.zig</kbd>.<span.c |
| bf720 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 | lass="sgr-1m">/home/andy/dev/zig |
| bf740 | 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 72 65 6d 61 69 | /doc/langref/test_comptime_remai |
| bf760 | 6e 64 65 72 5f 64 69 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 2e 7a 69 67 3a 34 3a 31 39 3a 20 | nder_division_by_zero.zig:4:19:. |
| bf780 | 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 | </span><span.class="sgr-31m">err |
| bf7a0 | 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e | or:.</span><span.class="sgr-1m"> |
| bf7c0 | 64 69 76 69 73 69 6f 6e 20 62 79 20 7a 65 72 6f 20 68 65 72 65 20 63 61 75 73 65 73 20 75 6e 64 | division.by.zero.here.causes.und |
| bf7e0 | 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 | efined.behavior.</span>....const |
| bf800 | 20 63 20 3d 20 61 20 25 20 62 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 | .c.=.a.%.b;...................<s |
| bf820 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f | pan.class="sgr-32m">^.</span>.</ |
| bf840 | 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 | samp></pre></figure>........<p>A |
| bf860 | 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 | t.runtime:</p>.......<figure><fi |
| bf880 | 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 | gcaption.class="zig-cap"><cite.c |
| bf8a0 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 72 65 6d 61 69 6e 64 65 72 5f 64 69 | lass="file">runtime_remainder_di |
| bf8c0 | 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | vision_by_zero.zig</cite></figca |
| bf8e0 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ption><pre><code><span.class="to |
| bf900 | 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 |
| bf920 | 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 |
| bf940 | 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 |
| bf960 | 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 |
| bf980 | 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 |
| bf9a0 | 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 |
| bf9c0 | 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 3d | k-fn">main</span>().<span.class= |
| bf9e0 | 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 70 | "tok-type">void</span>.{.....<sp |
| bfa00 | 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 20 | an.class="tok-kw">var</span>.a:. |
| bfa20 | 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 |
| bfa40 | 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 30 3c | >.=.<span.class="tok-number">10< |
| bfa60 | 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" |
| bfa80 | 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- |
| bfaa0 | 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=" |
| bfac0 | 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 5f 20 3d 20 2e 7b | tok-number">0</span>;....._.=..{ |
| bfae0 | 20 26 61 6d 70 3b 61 2c 20 26 61 6d 70 3b 62 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | .&a,.&b.};.....<span.cla |
| bfb00 | 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 61 20 25 | ss="tok-kw">const</span>.c.=.a.% |
| bfb20 | 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 6c | .b;.....std.debug.print(<span.cl |
| bfb40 | 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& |
| bfb60 | 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 70 | quot;</span>,..{c});.}</code></p |
| bfb80 | 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | re></figure><figure><figcaption. |
| bfba0 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 | class="shell-cap">Shell</figcapt |
| bfbc0 | 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d | ion><pre><samp>$.<kbd>zig.build- |
| bfbe0 | 65 78 65 20 72 75 6e 74 69 6d 65 5f 72 65 6d 61 69 6e 64 65 72 5f 64 69 76 69 73 69 6f 6e 5f 62 | exe.runtime_remainder_division_b |
| bfc00 | 79 5f 7a 65 72 6f 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d | y_zero.zig</kbd>.$.<kbd>./runtim |
| bfc20 | 65 5f 72 65 6d 61 69 6e 64 65 72 5f 64 69 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 3c 2f 6b 62 | e_remainder_division_by_zero</kb |
| bfc40 | 64 3e 0a 74 68 72 65 61 64 20 32 30 34 33 39 34 20 70 61 6e 69 63 3a 20 64 69 76 69 73 69 6f 6e | d>.thread.204394.panic:.division |
| bfc60 | 20 62 79 20 7a 65 72 6f 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 | .by.zero.<span.class="sgr-1m">/h |
| bfc80 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e | ome/andy/dev/zig/doc/langref/run |
| bfca0 | 74 69 6d 65 5f 72 65 6d 61 69 6e 64 65 72 5f 64 69 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 2e | time_remainder_division_by_zero. |
| bfcc0 | 7a 69 67 3a 37 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 73 67 | zig:7:17</span>:.<span.class="sg |
| bfce0 | 72 2d 32 6d 22 3e 30 78 31 30 64 65 39 63 61 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 | r-2m">0x10de9ca.in.main.(runtime |
| bfd00 | 5f 72 65 6d 61 69 6e 64 65 72 5f 64 69 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 29 3c 2f 73 70 | _remainder_division_by_zero)</sp |
| bfd20 | 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 20 | an>.....const.c.=.a.%.b;........ |
| bfd40 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e | .........<span.class="sgr-32m">^ |
| bfd60 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f | </span>.<span.class="sgr-1m">/ho |
| bfd80 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | me/andy/dev/zig/lib/std/start.zi |
| bfda0 | 67 3a 36 35 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 73 67 | g:651:22</span>:.<span.class="sg |
| bfdc0 | 72 2d 32 6d 22 3e 30 78 31 30 64 65 33 37 32 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e | r-2m">0x10de372.in.posixCallMain |
| bfde0 | 41 6e 64 45 78 69 74 20 28 72 75 6e 74 69 6d 65 5f 72 65 6d 61 69 6e 64 65 72 5f 64 69 76 69 73 | AndExit.(runtime_remainder_divis |
| bfe00 | 69 6f 6e 5f 62 79 5f 7a 65 72 6f 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ion_by_zero)</span>............. |
| bfe20 | 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();.................... |
| bfe40 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e | ..<span.class="sgr-32m">^</span> |
| bfe60 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 | .<span.class="sgr-1m">/home/andy |
| bfe80 | 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 | /dev/zig/lib/std/start.zig:271:5 |
| bfea0 | 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 | </span>:.<span.class="sgr-2m">0x |
| bfec0 | 31 30 64 64 66 34 64 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 72 65 6d 61 69 | 10ddf4d.in._start.(runtime_remai |
| bfee0 | 6e 64 65 72 5f 64 69 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 29 3c 2f 73 70 61 6e 3e 0a 20 20 | nder_division_by_zero)</span>... |
| bff00 | 20 20 61 73 6d 20 76 6f 6c 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 | ..asm.volatile.(switch.(native_a |
| bff20 | 72 63 68 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 | rch).{.....<span.class="sgr-32m" |
| bff40 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f | >^</span>.<span.class="sgr-1m">? |
| bff60 | 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | ??:?:?</span>:.<span.class="sgr- |
| bff80 | 32 6d 22 3e 30 78 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f | 2m">0x0.in.???.(???)</span>.(pro |
| bffa0 | 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 0a 3c 2f 73 61 6d | cess.terminated.by.signal).</sam |
| bffc0 | 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | p></pre></figure>............... |
| bffe0 | 3c 68 33 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 | <h3.id="Exact-Division-Remainder |
| c0000 | 22 3e 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 | "><a.href="#toc-Exact-Division-R |
| c0020 | 65 6d 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 | emainder">Exact.Division.Remaind |
| c0040 | 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 66 3d 22 23 45 78 61 | er</a>.<a.class="hdr".href="#Exa |
| c0060 | 63 74 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 | ct-Division-Remainder">..</a></h |
| c0080 | 33 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 | 3>........<p>At.compile-time:</p |
| c00a0 | 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 | >.......<figure><figcaption.clas |
| c00c0 | 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | s="zig-cap"><cite.class="file">t |
| c00e0 | 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 64 69 76 45 78 61 63 74 5f 72 65 6d 61 69 6e 64 65 72 2e | est_comptime_divExact_remainder. |
| c0100 | 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 | zig</cite></figcaption><pre><cod |
| c0120 | 65 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 | e><span.class="tok-kw">comptime< |
| c0140 | 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 |
| c0160 | 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 22 74 | ">const</span>.a:.<span.class="t |
| c0180 | 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 |
| c01a0 | 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 3c 73 | s="tok-number">10</span>;.....<s |
| c01c0 | 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>. |
| c01e0 | 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 3c 2f 73 | b:.<span.class="tok-type">u32</s |
| c0200 | 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"> |
| c0220 | 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 |
| c0240 | 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 73 3d | w">const</span>.c.=.<span.class= |
| c0260 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 61 | "tok-builtin">@divExact</span>(a |
| c0280 | 2c 20 62 29 3b 0a 20 20 20 20 5f 20 3d 20 63 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | ,.b);....._.=.c;.}</code></pre>< |
| c02a0 | 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 | /figure><figure><figcaption.clas |
| c02c0 | 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | s="shell-cap">Shell</figcaption> |
| c02e0 | 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f | <pre><samp>$.<kbd>zig.test.test_ |
| c0300 | 63 6f 6d 70 74 69 6d 65 5f 64 69 76 45 78 61 63 74 5f 72 65 6d 61 69 6e 64 65 72 2e 7a 69 67 3c | comptime_divExact_remainder.zig< |
| c0320 | 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 | /kbd>.<span.class="sgr-1m">/home |
| c0340 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 | /andy/dev/zig/doc/langref/test_c |
| c0360 | 6f 6d 70 74 69 6d 65 5f 64 69 76 45 78 61 63 74 5f 72 65 6d 61 69 6e 64 65 72 2e 7a 69 67 3a 34 | omptime_divExact_remainder.zig:4 |
| c0380 | 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 73 67 72 2d 33 31 6d | :15:.</span><span.class="sgr-31m |
| c03a0 | 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 73 67 72 | ">error:.</span><span.class="sgr |
| c03c0 | 2d 31 6d 22 3e 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 | -1m">exact.division.produced.rem |
| c03e0 | 61 69 6e 64 65 72 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 63 20 3d 20 40 64 69 76 | ainder.</span>....const.c.=.@div |
| c0400 | 45 78 61 63 74 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 | Exact(a,.b);...............<span |
| c0420 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e | .class="sgr-32m">^~~~~~~~~~~~~~~ |
| c0440 | 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a | .</span>.</samp></pre></figure>. |
| c0460 | 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 20 | .......<p>At.runtime:</p>....... |
| c0480 | 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 | <figure><figcaption.class="zig-c |
| c04a0 | 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 64 | ap"><cite.class="file">runtime_d |
| c04c0 | 69 76 45 78 61 63 74 5f 72 65 6d 61 69 6e 64 65 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 | ivExact_remainder.zig</cite></fi |
| c04e0 | 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | gcaption><pre><code><span.class= |
| c0500 | 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 |
| c0520 | 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 |
| c0540 | 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">" |
| c0560 | 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 |
| c0580 | 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 |
| c05a0 | 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= |
| c05c0 | 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 |
| c05e0 | 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>.{..... |
| c0600 | 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>. |
| c0620 | 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 |
| c0640 | 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"> |
| c0660 | 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- |
| c0680 | 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 |
| c06a0 | 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 |
| c06c0 | 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 5f 20 3d | s="tok-number">3</span>;....._.= |
| c06e0 | 20 2e 7b 20 26 61 6d 70 3b 61 2c 20 26 61 6d 70 3b 62 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | ..{.&a,.&b.};.....<span. |
| c0700 | 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.=. |
| c0720 | 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 78 | <span.class="tok-builtin">@divEx |
| c0740 | 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 2e | act</span>(a,.b);.....std.debug. |
| c0760 | 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 6f | print(<span.class="tok-str">&quo |
| c0780 | 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 7d | t;value:.{}\n"</span>,..{c} |
| c07a0 | 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 | );.}</code></pre></figure><figur |
| c07c0 | 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e | e><figcaption.class="shell-cap"> |
| c07e0 | 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c | Shell</figcaption><pre><samp>$.< |
| c0800 | 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 64 69 76 45 78 61 | kbd>zig.build-exe.runtime_divExa |
| c0820 | 63 74 5f 72 65 6d 61 69 6e 64 65 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f | ct_remainder.zig</kbd>.$.<kbd>./ |
| c0840 | 72 75 6e 74 69 6d 65 5f 64 69 76 45 78 61 63 74 5f 72 65 6d 61 69 6e 64 65 72 3c 2f 6b 62 64 3e | runtime_divExact_remainder</kbd> |
| c0860 | 0a 74 68 72 65 61 64 20 32 30 36 30 39 36 20 70 61 6e 69 63 3a 20 65 78 61 63 74 20 64 69 76 69 | .thread.206096.panic:.exact.divi |
| c0880 | 73 69 6f 6e 20 70 72 6f 64 75 63 65 64 20 72 65 6d 61 69 6e 64 65 72 0a 3c 73 70 61 6e 20 63 6c | sion.produced.remainder.<span.cl |
| c08a0 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | ass="sgr-1m">/home/andy/dev/zig/ |
| c08c0 | 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 64 69 76 45 78 61 63 74 5f 72 65 6d | doc/langref/runtime_divExact_rem |
| c08e0 | 61 69 6e 64 65 72 2e 7a 69 67 3a 37 3a 31 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | ainder.zig:7:15</span>:.<span.cl |
| c0900 | 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 39 65 62 20 69 6e 20 6d 61 69 6e 20 28 | ass="sgr-2m">0x10de9eb.in.main.( |
| c0920 | 72 75 6e 74 69 6d 65 5f 64 69 76 45 78 61 63 74 5f 72 65 6d 61 69 6e 64 65 72 29 3c 2f 73 70 61 | runtime_divExact_remainder)</spa |
| c0940 | 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 28 61 2c 20 62 29 | n>.....const.c.=.@divExact(a,.b) |
| c0960 | 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 73 67 72 | ;...............<span.class="sgr |
| c0980 | 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | -32m">^</span>.<span.class="sgr- |
| c09a0 | 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 | 1m">/home/andy/dev/zig/lib/std/s |
| c09c0 | 74 61 72 74 2e 7a 69 67 3a 36 35 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | tart.zig:651:22</span>:.<span.cl |
| c09e0 | 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 33 37 32 20 69 6e 20 70 6f 73 69 78 43 | ass="sgr-2m">0x10de372.in.posixC |
| c0a00 | 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 72 75 6e 74 69 6d 65 5f 64 69 76 45 78 61 63 74 | allMainAndExit.(runtime_divExact |
| c0a20 | 5f 72 65 6d 61 69 6e 64 65 72 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 | _remainder)</span>.............r |
| c0a40 | 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 20 | oot.main();..................... |
| c0a60 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a | .<span.class="sgr-32m">^</span>. |
| c0a80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | <span.class="sgr-1m">/home/andy/ |
| c0aa0 | 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c | dev/zig/lib/std/start.zig:271:5< |
| c0ac0 | 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 | /span>:.<span.class="sgr-2m">0x1 |
| c0ae0 | 30 64 64 66 34 64 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 64 69 76 45 78 61 | 0ddf4d.in._start.(runtime_divExa |
| c0b00 | 63 74 5f 72 65 6d 61 69 6e 64 65 72 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c | ct_remainder)</span>.....asm.vol |
| c0b20 | 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 | atile.(switch.(native_arch).{... |
| c0b40 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e | ..<span.class="sgr-32m">^</span> |
| c0b60 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 | .<span.class="sgr-1m">???:?:?</s |
| c0b80 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 | pan>:.<span.class="sgr-2m">0x0.i |
| c0ba0 | 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d | n.???.(???)</span>.(process.term |
| c0bc0 | 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c | inated.by.signal).</samp></pre>< |
| c0be0 | 2f 66 69 67 75 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 41 | /figure>...............<h3.id="A |
| c0c00 | 74 74 65 6d 70 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 | ttempt-to-Unwrap-Null"><a.href=" |
| c0c20 | 23 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 3e 41 74 74 | #toc-Attempt-to-Unwrap-Null">Att |
| c0c40 | 65 6d 70 74 20 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 | empt.to.Unwrap.Null</a>.<a.class |
| c0c60 | 3d 22 68 64 72 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 | ="hdr".href="#Attempt-to-Unwrap- |
| c0c80 | 4e 75 6c 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 | Null">..</a></h3>........<p>At.c |
| c0ca0 | 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | ompile-time:</p>.......<figure>< |
| c0cc0 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 | figcaption.class="zig-cap"><cite |
| c0ce0 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 75 6e 77 72 | .class="file">test_comptime_unwr |
| c0d00 | 61 70 5f 6e 75 6c 6c 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | ap_null.zig</cite></figcaption>< |
| c0d20 | 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | pre><code><span.class="tok-kw">c |
| c0d40 | 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 6c 61 73 73 | omptime</span>.{.....<span.class |
| c0d60 | 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 61 6c 5f | ="tok-kw">const</span>.optional_ |
| c0d80 | 6e 75 6d 62 65 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 | number:.?<span.class="tok-type"> |
| c0da0 | 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 |
| c0dc0 | 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 20 63 6c 61 73 73 | ll">null</span>;.....<span.class |
| c0de0 | 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 65 72 20 3d 20 | ="tok-kw">const</span>.number.=. |
| c0e00 | 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 2e 3f 3b 0a 20 20 20 20 5f 20 3d 20 6e 75 6d 62 65 | optional_number.?;....._.=.numbe |
| c0e20 | 72 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 | r;.}</code></pre></figure><figur |
| c0e40 | 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e | e><figcaption.class="shell-cap"> |
| c0e60 | 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c | Shell</figcaption><pre><samp>$.< |
| c0e80 | 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 75 6e 77 72 61 | kbd>zig.test.test_comptime_unwra |
| c0ea0 | 70 5f 6e 75 6c 6c 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | p_null.zig</kbd>.<span.class="sg |
| c0ec0 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e | r-1m">/home/andy/dev/zig/doc/lan |
| c0ee0 | 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 75 6e 77 72 61 70 5f 6e 75 6c 6c 2e 7a | gref/test_comptime_unwrap_null.z |
| c0f00 | 69 67 3a 33 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 73 67 72 | ig:3:35:.</span><span.class="sgr |
| c0f20 | 2d 33 31 6d 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 | -31m">error:.</span><span.class= |
| c0f40 | 22 73 67 72 2d 31 6d 22 3e 75 6e 61 62 6c 65 20 74 6f 20 75 6e 77 72 61 70 20 6e 75 6c 6c 0a 3c | "sgr-1m">unable.to.unwrap.null.< |
| c0f60 | 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 6e 75 6d 62 65 72 20 3d 20 6f 70 74 69 6f 6e 61 | /span>....const.number.=.optiona |
| c0f80 | 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 3c | l_number.?;....................< |
| c0fa0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e | span.class="sgr-32m">~~~~~~~~~~~ |
| c0fc0 | 7e 7e 7e 7e 5e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | ~~~~^~.</span>.</samp></pre></fi |
| c0fe0 | 67 75 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 | gure>........<p>At.runtime:</p>. |
| c1000 | 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | ......<figure><figcaption.class= |
| c1020 | 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 72 75 6e | "zig-cap"><cite.class="file">run |
| c1040 | 74 69 6d 65 5f 75 6e 77 72 61 70 5f 6e 75 6c 6c 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | time_unwrap_null.zig</cite></fig |
| c1060 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | caption><pre><code><span.class=" |
| c1080 | 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 |
| c10a0 | 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 |
| c10c0 | 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">" |
| c10e0 | 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 3d | std"</span>);..<span.class= |
| c1100 | 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= |
| c1120 | 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=" |
| c1140 | 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 73 | tok-fn">main</span>().<span.clas |
| c1160 | 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>.{.....< |
| c1180 | 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 6f | span.class="tok-kw">var</span>.o |
| c11a0 | 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 3d 22 74 6f | ptional_number:.?<span.class="to |
| c11c0 | 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 73 | k-type">i32</span>.=.<span.class |
| c11e0 | 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 20 5f 20 3d | ="tok-null">null</span>;....._.= |
| c1200 | 20 26 61 6d 70 3b 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 3b 0a 20 20 20 20 3c 73 70 61 6e | .&optional_number;.....<span |
| c1220 | 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 6d | .class="tok-kw">const</span>.num |
| c1240 | 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 20 73 74 64 | ber.=.optional_number.?;.....std |
| c1260 | 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 |
| c1280 | 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 61 6e | r">"value:.{}\n"</span |
| c12a0 | 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 3e 3c 2f 66 | >,..{number});.}</code></pre></f |
| c12c0 | 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | igure><figure><figcaption.class= |
| c12e0 | 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | "shell-cap">Shell</figcaption><p |
| c1300 | 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 72 75 | re><samp>$.<kbd>zig.build-exe.ru |
| c1320 | 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 6e 75 6c 6c 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b | ntime_unwrap_null.zig</kbd>.$.<k |
| c1340 | 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 6e 75 6c 6c 3c 2f 6b 62 64 3e 0a 74 | bd>./runtime_unwrap_null</kbd>.t |
| c1360 | 68 72 65 61 64 20 32 31 30 36 32 32 20 70 61 6e 69 63 3a 20 61 74 74 65 6d 70 74 20 74 6f 20 75 | hread.210622.panic:.attempt.to.u |
| c1380 | 73 65 20 6e 75 6c 6c 20 76 61 6c 75 65 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 | se.null.value.<span.class="sgr-1 |
| c13a0 | 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 | m">/home/andy/dev/zig/doc/langre |
| c13c0 | 66 2f 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 6e 75 6c 6c 2e 7a 69 67 3a 36 3a 33 35 3c 2f | f/runtime_unwrap_null.zig:6:35</ |
| c13e0 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 | span>:.<span.class="sgr-2m">0x10 |
| c1400 | 64 65 39 62 36 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 6e 75 | de9b6.in.main.(runtime_unwrap_nu |
| c1420 | 6c 6c 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 20 3d 20 6f 70 | ll)</span>.....const.number.=.op |
| c1440 | 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 20 20 20 20 20 20 | tional_number.?;................ |
| c1460 | 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=" |
| c1480 | 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | sgr-32m">^</span>.<span.class="s |
| c14a0 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 | gr-1m">/home/andy/dev/zig/lib/st |
| c14c0 | 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 35 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | d/start.zig:651:22</span>:.<span |
| c14e0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 33 37 32 20 69 6e 20 70 6f 73 | .class="sgr-2m">0x10de372.in.pos |
| c1500 | 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 | ixCallMainAndExit.(runtime_unwra |
| c1520 | 70 5f 6e 75 6c 6c 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 | p_null)</span>.............root. |
| c1540 | 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 70 | main();......................<sp |
| c1560 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | an.class="sgr-32m">^</span>.<spa |
| c1580 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f | n.class="sgr-1m">/home/andy/dev/ |
| c15a0 | 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f 73 70 61 | zig/lib/std/start.zig:271:5</spa |
| c15c0 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 64 66 | n>:.<span.class="sgr-2m">0x10ddf |
| c15e0 | 34 64 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 6e 75 6c | 4d.in._start.(runtime_unwrap_nul |
| c1600 | 6c 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 69 6c 65 20 28 73 77 69 74 | l)</span>.....asm.volatile.(swit |
| c1620 | 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ch.(native_arch).{.....<span.cla |
| c1640 | 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | ss="sgr-32m">^</span>.<span.clas |
| c1660 | 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | s="sgr-1m">???:?:?</span>:.<span |
| c1680 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 | .class="sgr-2m">0x0.in.???.(???) |
| c16a0 | 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 73 | </span>.(process.terminated.by.s |
| c16c0 | 69 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 | ignal).</samp></pre></figure>... |
| c16e0 | 20 20 20 20 20 3c 70 3e 4f 6e 65 20 77 61 79 20 74 6f 20 61 76 6f 69 64 20 74 68 69 73 20 63 72 | .....<p>One.way.to.avoid.this.cr |
| c1700 | 61 73 68 20 69 73 20 74 6f 20 74 65 73 74 20 66 6f 72 20 6e 75 6c 6c 20 69 6e 73 74 65 61 64 20 | ash.is.to.test.for.null.instead. |
| c1720 | 6f 66 20 61 73 73 75 6d 69 6e 67 20 6e 6f 6e 2d 6e 75 6c 6c 2c 20 77 69 74 68 0a 20 20 20 20 20 | of.assuming.non-null,.with...... |
| c1740 | 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .the.<code><span.class="tok-kw"> |
| c1760 | 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 2f 70 3e | if</span></code>.expression:</p> |
| c1780 | 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 | .......<figure><figcaption.class |
| c17a0 | 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 | ="zig-cap"><cite.class="file">te |
| c17c0 | 73 74 69 6e 67 5f 6e 75 6c 6c 5f 77 69 74 68 5f 69 66 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 | sting_null_with_if.zig</cite></f |
| c17e0 | 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | igcaption><pre><code><span.class |
| c1800 | 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.=.< |
| c1820 | 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 |
| c1840 | 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 |
| c1860 | 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 |
| c1880 | 74 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 70 61 | t;.<span.class="tok-kw">pub</spa |
| c18a0 | 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 |
| c18c0 | 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 70 61 | >.<span.class="tok-fn">main</spa |
| c18e0 | 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 69 64 | n>().<span.class="tok-type">void |
| c1900 | 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 |
| c1920 | 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 72 3a | w">const</span>.optional_number: |
| c1940 | 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 73 70 | .?<span.class="tok-type">i32</sp |
| c1960 | 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 |
| c1980 | 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 6f 6b 2d | l</span>;......<span.class="tok- |
| c19a0 | 6b 77 22 3e 69 66 3c 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 | kw">if</span>.(optional_number). |
| c19c0 | 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 20 63 | |number|.{.........print(<span.c |
| c19e0 | 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 72 3a | lass="tok-str">"got.number: |
| c1a00 | 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 3b 0a | .{}\n"</span>,..{number});. |
| c1a20 | 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< |
| c1a40 | 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 20 63 6c 61 | /span>.{.........print(<span.cla |
| c1a60 | 73 73 3d 22 74 6f 6b 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 | ss="tok-str">"it's.null\n&q |
| c1a80 | 75 6f 74 3b 3c 2f 73 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 | uot;</span>,..{});.....}.}</code |
| c1aa0 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | ></pre></figure><figure><figcapt |
| c1ac0 | 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 | ion.class="shell-cap">Shell</fig |
| c1ae0 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 | caption><pre><samp>$.<kbd>zig.bu |
| c1b00 | 69 6c 64 2d 65 78 65 20 74 65 73 74 69 6e 67 5f 6e 75 6c 6c 5f 77 69 74 68 5f 69 66 2e 7a 69 67 | ild-exe.testing_null_with_if.zig |
| c1b20 | 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 74 65 73 74 69 6e 67 5f 6e 75 6c 6c 5f 77 69 74 | </kbd>.$.<kbd>./testing_null_wit |
| c1b40 | 68 5f 69 66 3c 2f 6b 62 64 3e 0a 69 74 27 73 20 6e 75 6c 6c 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 | h_if</kbd>.it's.null.</samp></pr |
| c1b60 | 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c | e></figure>........<p>See.also:< |
| c1b80 | 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 69 6f 6e 61 6c 73 22 | /p><ul>.<li><a.href="#Optionals" |
| c1ba0 | 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 0a 0a 20 20 20 20 20 | >Optionals</a></li>.</ul>....... |
| c1bc0 | 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 | ........<h3.id="Attempt-to-Unwra |
| c1be0 | 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 74 65 6d 70 74 2d 74 | p-Error"><a.href="#toc-Attempt-t |
| c1c00 | 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 |
| c1c20 | 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 22 20 68 72 65 66 3d | p.Error</a>.<a.class="hdr".href= |
| c1c40 | 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 22 3e c2 a7 3c 2f 61 | "#Attempt-to-Unwrap-Error">..</a |
| c1c60 | 3e 3c 2f 68 33 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 | ></h3>........<p>At.compile-time |
| c1c80 | 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | :</p>.......<figure><figcaption. |
| c1ca0 | 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c | class="zig-cap"><cite.class="fil |
| c1cc0 | 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 2e 7a 69 | e">test_comptime_unwrap_error.zi |
| c1ce0 | 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e | g</cite></figcaption><pre><code> |
| c1d00 | 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 |
| c1d20 | 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"> |
| c1d40 | 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 6d 62 65 72 4f | const</span>.number.=.getNumberO |
| c1d60 | 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 22 3e 63 61 74 | rFail().<span.class="tok-kw">cat |
| c1d80 | 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 22 3e 75 | ch</span>.<span.class="tok-kw">u |
| c1da0 | 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 6e 75 6d 62 65 | nreachable</span>;....._.=.numbe |
| c1dc0 | 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 3e 66 6e 3c 2f 73 | r;.}..<span.class="tok-kw">fn</s |
| c1de0 | 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 67 65 74 4e 75 6d | pan>.<span.class="tok-fn">getNum |
| c1e00 | 62 65 72 4f 72 46 61 69 6c 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d | berOrFail</span>().!<span.class= |
| c1e20 | 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 |
| c1e40 | 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>.< |
| c1e60 | 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> |
| c1e80 | 2e 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | .UnableToReturnNumber;.}</code>< |
| c1ea0 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | /pre></figure><figure><figcaptio |
| c1ec0 | 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 | n.class="shell-cap">Shell</figca |
| c1ee0 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 | ption><pre><samp>$.<kbd>zig.test |
| c1f00 | 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 2e 7a 69 67 3c | .test_comptime_unwrap_error.zig< |
| c1f20 | 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 | /kbd>.<span.class="sgr-1m">/home |
| c1f40 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 | /andy/dev/zig/doc/langref/test_c |
| c1f60 | 6f 6d 70 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 2e 7a 69 67 3a 32 3a 34 34 3a 20 3c | omptime_unwrap_error.zig:2:44:.< |
| c1f80 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f | /span><span.class="sgr-31m">erro |
| c1fa0 | 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 63 | r:.</span><span.class="sgr-1m">c |
| c1fc0 | 61 75 67 68 74 20 75 6e 65 78 70 65 63 74 65 64 20 65 72 72 6f 72 20 27 55 6e 61 62 6c 65 54 6f | aught.unexpected.error.'UnableTo |
| c1fe0 | 52 65 74 75 72 6e 4e 75 6d 62 65 72 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 6e | ReturnNumber'.</span>....const.n |
| c2000 | 75 6d 62 65 72 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 | umber.=.getNumberOrFail().catch. |
| c2020 | 75 6e 72 65 61 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 | unreachable;.................... |
| c2040 | 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 6c | ........................<span.cl |
| c2060 | 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e | ass="sgr-32m">^~~~~~~~~~~.</span |
| c2080 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 | ><span.class="sgr-1m">/home/andy |
| c20a0 | 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 | /dev/zig/doc/langref/test_compti |
| c20c0 | 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 2e 7a 69 67 3a 37 3a 31 38 3a 20 3c 2f 73 70 61 6e | me_unwrap_error.zig:7:18:.</span |
| c20e0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 | ><span.class="sgr-36m">note:.</s |
| c2100 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 65 72 72 6f 72 20 72 | pan><span.class="sgr-1m">error.r |
| c2120 | 65 74 75 72 6e 65 64 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 72 65 74 75 72 6e 20 65 | eturned.here.</span>....return.e |
| c2140 | 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 20 20 | rror.UnableToReturnNumber;...... |
| c2160 | 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 73 67 72 2d 33 32 6d | ............<span.class="sgr-32m |
| c2180 | 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c | ">^~~~~~~~~~~~~~~~~~~~.</span>.< |
| c21a0 | 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | /samp></pre></figure>........<p> |
| c21c0 | 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 | At.runtime:</p>.......<figure><f |
| c21e0 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 | igcaption.class="zig-cap"><cite. |
| c2200 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f | class="file">runtime_unwrap_erro |
| c2220 | 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 | r.zig</cite></figcaption><pre><c |
| c2240 | 6f 64 65 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 | ode><span.class="tok-kw">const</ |
| c2260 | 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 |
| c2280 | 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 |
| c22a0 | 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 |
| c22c0 | 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 |
| c22e0 | 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 |
| c2300 | 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 |
| c2320 | 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 |
| c2340 | 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 |
| c2360 | 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 |
| c2380 | 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 |
| c23a0 | 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- |
| c23c0 | 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. |
| c23e0 | 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 |
| c2400 | 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> |
| c2420 | 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 |
| c2440 | 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 |
| c2460 | 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>().!< |
| c2480 | 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> |
| c24a0 | 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 |
| c24c0 | 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 |
| c24e0 | 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 |
| c2500 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 | ;.}</code></pre></figure><figure |
| c2520 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 | ><figcaption.class="shell-cap">S |
| c2540 | 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b | hell</figcaption><pre><samp>$.<k |
| c2560 | 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f | bd>zig.build-exe.runtime_unwrap_ |
| c2580 | 65 72 72 6f 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 | error.zig</kbd>.$.<kbd>./runtime |
| c25a0 | 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 31 39 38 30 33 | _unwrap_error</kbd>.thread.19803 |
| c25c0 | 35 20 70 61 6e 69 63 3a 20 61 74 74 65 6d 70 74 20 74 6f 20 75 6e 77 72 61 70 20 65 72 72 6f 72 | 5.panic:.attempt.to.unwrap.error |
| c25e0 | 3a 20 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 0a 3c 73 70 61 6e 20 63 6c 61 | :.UnableToReturnNumber.<span.cla |
| c2600 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 | ss="sgr-1m">/home/andy/dev/zig/d |
| c2620 | 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 2e | oc/langref/runtime_unwrap_error. |
| c2640 | 7a 69 67 3a 39 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | zig:9:5</span>:.<span.class="sgr |
| c2660 | 2d 32 6d 22 3e 30 78 31 30 64 66 32 38 66 20 69 6e 20 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 | -2m">0x10df28f.in.getNumberOrFai |
| c2680 | 6c 20 28 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 29 3c 2f 73 70 61 6e 3e 0a | l.(runtime_unwrap_error)</span>. |
| c26a0 | 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 6f 72 2e 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e | ....return.error.UnableToReturnN |
| c26c0 | 75 6d 62 65 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 | umber;.....<span.class="sgr-32m" |
| c26e0 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f | >^</span>.<span.class="sgr-1m">/ |
| c2700 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 | home/andy/dev/zig/doc/langref/ru |
| c2720 | 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 2e 7a 69 67 3a 34 3a 34 34 3c 2f 73 70 61 | ntime_unwrap_error.zig:4:44</spa |
| c2740 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 61 | n>:.<span.class="sgr-2m">0x10dea |
| c2760 | 32 31 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 | 21.in.main.(runtime_unwrap_error |
| c2780 | 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 20 3d 20 67 65 74 4e | )</span>.....const.number.=.getN |
| c27a0 | 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; |
| c27c0 | 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 | ................................ |
| c27e0 | 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 73 67 72 2d 33 32 6d | ............<span.class="sgr-32m |
| c2800 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e | ">^</span>.<span.class="sgr-1m"> |
| c2820 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 | /home/andy/dev/zig/lib/std/start |
| c2840 | 2e 7a 69 67 3a 36 35 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:651:22</span>:.<span.class= |
| c2860 | 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 33 64 32 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d | "sgr-2m">0x10de3d2.in.posixCallM |
| c2880 | 61 69 6e 41 6e 64 45 78 69 74 20 28 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 | ainAndExit.(runtime_unwrap_error |
| c28a0 | 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 29 | )</span>.............root.main() |
| c28c0 | 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 61 | ;......................<span.cla |
| c28e0 | 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | ss="sgr-32m">^</span>.<span.clas |
| c2900 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 | s="sgr-1m">/home/andy/dev/zig/li |
| c2920 | 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | b/std/start.zig:271:5</span>:.<s |
| c2940 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 64 66 61 64 20 69 6e 20 | pan.class="sgr-2m">0x10ddfad.in. |
| c2960 | 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 29 3c 2f 73 | _start.(runtime_unwrap_error)</s |
| c2980 | 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e | pan>.....asm.volatile.(switch.(n |
| c29a0 | 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | ative_arch).{.....<span.class="s |
| c29c0 | 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | gr-32m">^</span>.<span.class="sg |
| c29e0 | 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | r-1m">???:?:?</span>:.<span.clas |
| c2a00 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 | s="sgr-2m">0x0.in.???.(???)</spa |
| c2a20 | 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 6c | n>.(process.terminated.by.signal |
| c2a40 | 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 | ).</samp></pre></figure>........ |
| c2a60 | 3c 70 3e 4f 6e 65 20 77 61 79 20 74 6f 20 61 76 6f 69 64 20 74 68 69 73 20 63 72 61 73 68 20 69 | <p>One.way.to.avoid.this.crash.i |
| c2a80 | 73 20 74 6f 20 74 65 73 74 20 66 6f 72 20 61 6e 20 65 72 72 6f 72 20 69 6e 73 74 65 61 64 20 6f | s.to.test.for.an.error.instead.o |
| c2aa0 | 66 20 61 73 73 75 6d 69 6e 67 20 61 20 73 75 63 63 65 73 73 66 75 6c 20 72 65 73 75 6c 74 2c 20 | f.assuming.a.successful.result,. |
| c2ac0 | 77 69 74 68 0a 20 20 20 20 20 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | with.......the.<code><span.class |
| c2ae0 | 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 20 65 78 70 72 65 | ="tok-kw">if</span></code>.expre |
| c2b00 | 73 73 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | ssion:</p>.......<figure><figcap |
| c2b20 | 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 | tion.class="zig-cap"><cite.class |
| c2b40 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 69 6e 67 5f 65 72 72 6f 72 5f 77 69 74 68 5f 69 66 2e 7a 69 | ="file">testing_error_with_if.zi |
| c2b60 | 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e | g</cite></figcaption><pre><code> |
| c2b80 | 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 |
| c2ba0 | 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 6c 74 | >.print.=.<span.class="tok-built |
| c2bc0 | 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=" |
| c2be0 | 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>) |
| c2c00 | 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 6b 2d | .debug.print;..<span.class="tok- |
| c2c20 | 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- |
| c2c40 | 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 |
| c2c60 | 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 3d 22 74 6f | n">main</span>().<span.class="to |
| c2c80 | 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. |
| c2ca0 | 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 |
| c2cc0 | 6c 74 20 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 | lt.=.getNumberOrFail();......<sp |
| c2ce0 | 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 72 65 73 | an.class="tok-kw">if</span>.(res |
| c2d00 | 75 6c 74 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 | ult).|number|.{.........print(<s |
| c2d20 | 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 6e 75 | pan.class="tok-str">"got.nu |
| c2d40 | 6d 62 65 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 | mber:.{}\n"</span>,..{numbe |
| c2d60 | 72 7d 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 | r});.....}.<span.class="tok-kw"> |
| c2d80 | 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 70 72 69 6e | else</span>.|err|.{.........prin |
| c2da0 | 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 67 6f | t(<span.class="tok-str">"go |
| c2dc0 | 74 20 65 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 | t.error:.{s}\n"</span>,..{< |
| c2de0 | 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 4e | span.class="tok-builtin">@errorN |
| c2e00 | 61 6d 65 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 | ame</span>(err)});.....}.}..<spa |
| c2e20 | 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 |
| c2e40 | 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< |
| c2e60 | 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" |
| c2e80 | 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 |
| c2ea0 | 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 |
| c2ec0 | 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 |
| c2ee0 | 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 2f 66 69 67 | eturnNumber;.}</code></pre></fig |
| c2f00 | 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 | ure><figure><figcaption.class="s |
| c2f20 | 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | hell-cap">Shell</figcaption><pre |
| c2f40 | 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 | ><samp>$.<kbd>zig.build-exe.test |
| c2f60 | 69 6e 67 5f 65 72 72 6f 72 5f 77 69 74 68 5f 69 66 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b | ing_error_with_if.zig</kbd>.$.<k |
| c2f80 | 62 64 3e 2e 2f 74 65 73 74 69 6e 67 5f 65 72 72 6f 72 5f 77 69 74 68 5f 69 66 3c 2f 6b 62 64 3e | bd>./testing_error_with_if</kbd> |
| c2fa0 | 0a 67 6f 74 20 65 72 72 6f 72 3a 20 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 | .got.error:.UnableToReturnNumber |
| c2fc0 | 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c | .</samp></pre></figure>........< |
| c2fe0 | 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= |
| c3000 | 22 23 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a | "#Errors">Errors</a></li>.</ul>. |
| c3020 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 6e 76 61 6c 69 64 2d 45 72 | ..............<h3.id="Invalid-Er |
| c3040 | 72 6f 72 2d 43 6f 64 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 76 61 6c 69 64 2d | ror-Code"><a.href="#toc-Invalid- |
| c3060 | 45 72 72 6f 72 2d 43 6f 64 65 22 3e 49 6e 76 61 6c 69 64 20 45 72 72 6f 72 20 43 6f 64 65 3c 2f | Error-Code">Invalid.Error.Code</ |
| c3080 | 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 76 61 6c 69 64 | a>.<a.class="hdr".href="#Invalid |
| c30a0 | 2d 45 72 72 6f 72 2d 43 6f 64 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | -Error-Code">..</a></h3>........ |
| c30c0 | 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 20 20 3c 66 | <p>At.compile-time:</p>.......<f |
| c30e0 | 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 | igure><figcaption.class="zig-cap |
| c3100 | 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 | "><cite.class="file">test_compti |
| c3120 | 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f 63 6f 64 65 2e 7a 69 67 3c 2f 63 69 74 65 3e | me_invalid_error_code.zig</cite> |
| c3140 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </figcaption><pre><code><span.cl |
| c3160 | 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>.{.. |
| c3180 | 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 |
| c31a0 | 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 22 3e | pan>.err.=.<span.class="tok-kw"> |
| c31c0 | 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 6e 20 | error</span>.AnError;.....<span. |
| c31e0 | 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 |
| c3200 | 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">@ |
| c3220 | 69 6e 74 46 72 6f 6d 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 65 72 72 29 20 2b 20 3c 73 70 61 6e | intFromError</span>(err).+.<span |
| c3240 | 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>;.. |
| c3260 | 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 |
| c3280 | 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=" |
| c32a0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 6e | tok-builtin">@errorFromInt</span |
| c32c0 | 3e 28 6e 75 6d 62 65 72 29 3b 0a 20 20 20 20 5f 20 3d 20 69 6e 76 61 6c 69 64 5f 65 72 72 3b 0a | >(number);....._.=.invalid_err;. |
| c32e0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c | }</code></pre></figure><figure>< |
| c3300 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 | figcaption.class="shell-cap">She |
| c3320 | 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 | ll</figcaption><pre><samp>$.<kbd |
| c3340 | 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f | >zig.test.test_comptime_invalid_ |
| c3360 | 65 72 72 6f 72 5f 63 6f 64 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | error_code.zig</kbd>.<span.class |
| c3380 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 | ="sgr-1m">/home/andy/dev/zig/doc |
| c33a0 | 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 | /langref/test_comptime_invalid_e |
| c33c0 | 72 72 6f 72 5f 63 6f 64 65 2e 7a 69 67 3a 34 3a 33 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | rror_code.zig:4:39:.</span><span |
| c33e0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c | .class="sgr-31m">error:.</span>< |
| c3400 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 69 6e 74 65 67 65 72 20 76 61 6c 75 | span.class="sgr-1m">integer.valu |
| c3420 | 65 20 27 31 31 27 20 72 65 70 72 65 73 65 6e 74 73 20 6e 6f 20 65 72 72 6f 72 0a 3c 2f 73 70 61 | e.'11'.represents.no.error.</spa |
| c3440 | 6e 3e 20 20 20 20 63 6f 6e 73 74 20 69 6e 76 61 6c 69 64 5f 65 72 72 20 3d 20 40 65 72 72 6f 72 | n>....const.invalid_err.=.@error |
| c3460 | 46 72 6f 6d 49 6e 74 28 6e 75 6d 62 65 72 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | FromInt(number);................ |
| c3480 | 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 |
| c34a0 | 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 | ss="sgr-32m">^~~~~~.</span>.</sa |
| c34c0 | 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 | mp></pre></figure>........<p>At. |
| c34e0 | 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | runtime:</p>.......<figure><figc |
| c3500 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 | aption.class="zig-cap"><cite.cla |
| c3520 | 73 73 3d 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f | ss="file">runtime_invalid_error_ |
| c3540 | 63 6f 64 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | code.zig</cite></figcaption><pre |
| c3560 | 3e 3c 63 6f 64 65 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 | ><code><span.class="tok-kw">cons |
| c3580 | 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- |
| c35a0 | 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 |
| c35c0 | 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 |
| c35e0 | 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 62 | pan>);..<span.class="tok-kw">pub |
| c3600 | 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 3c | </span>.<span.class="tok-kw">fn< |
| c3620 | 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 6e | /span>.<span.class="tok-fn">main |
| c3640 | 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" |
| c3660 | 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=" |
| c3680 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 72 72 20 3d 20 3c 73 70 61 6e | tok-kw">const</span>.err.=.<span |
| c36a0 | 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 41 6e 45 | .class="tok-kw">error</span>.AnE |
| c36c0 | 72 72 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 76 | rror;.....<span.class="tok-kw">v |
| c36e0 | 61 72 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 3d 22 | ar</span>.number.=.<span.class=" |
| c3700 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 45 72 72 6f 72 3c 2f 73 70 61 6e | tok-builtin">@intFromError</span |
| c3720 | 3e 28 65 72 72 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 72 | >(err).+.<span.class="tok-number |
| c3740 | 22 3e 35 30 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 6e 75 6d 62 65 | ">500</span>;....._.=.&numbe |
| c3760 | 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 6f 6e 73 | r;.....<span.class="tok-kw">cons |
| c3780 | 74 3c 2f 73 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 | t</span>.invalid_err.=.<span.cla |
| c37a0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 46 72 6f 6d 49 6e 74 3c 2f | ss="tok-builtin">@errorFromInt</ |
| c37c0 | 73 70 61 6e 3e 28 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 | span>(number);.....std.debug.pri |
| c37e0 | 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 |
| c3800 | 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 69 6e 76 61 6c | alue:.{}\n"</span>,..{inval |
| c3820 | 69 64 5f 65 72 72 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | id_err});.}</code></pre></figure |
| c3840 | 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c | ><figure><figcaption.class="shel |
| c3860 | 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 | l-cap">Shell</figcaption><pre><s |
| c3880 | 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 | amp>$.<kbd>zig.build-exe.runtime |
| c38a0 | 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f 63 6f 64 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 | _invalid_error_code.zig</kbd>.$. |
| c38c0 | 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f 63 6f 64 | <kbd>./runtime_invalid_error_cod |
| c38e0 | 65 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 32 30 39 37 31 36 20 70 61 6e 69 63 3a 20 69 6e 76 | e</kbd>.thread.209716.panic:.inv |
| c3900 | 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 73 67 72 | alid.error.code.<span.class="sgr |
| c3920 | 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 | -1m">/home/andy/dev/zig/doc/lang |
| c3940 | 72 65 66 2f 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f 63 6f 64 65 2e 7a | ref/runtime_invalid_error_code.z |
| c3960 | 69 67 3a 37 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | ig:7:5</span>:.<span.class="sgr- |
| c3980 | 32 6d 22 3e 30 78 31 30 64 65 61 34 36 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 69 | 2m">0x10dea46.in.main.(runtime_i |
| c39a0 | 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f 63 6f 64 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f | nvalid_error_code)</span>.....co |
| c39c0 | 6e 73 74 20 69 6e 76 61 6c 69 64 5f 65 72 72 20 3d 20 40 65 72 72 6f 72 46 72 6f 6d 49 6e 74 28 | nst.invalid_err.=.@errorFromInt( |
| c39e0 | 6e 75 6d 62 65 72 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 | number);.....<span.class="sgr-32 |
| c3a00 | 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 | m">^</span>.<span.class="sgr-1m" |
| c3a20 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 | >/home/andy/dev/zig/lib/std/star |
| c3a40 | 74 2e 7a 69 67 3a 36 35 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:651:22</span>:.<span.class |
| c3a60 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 33 64 32 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c | ="sgr-2m">0x10de3d2.in.posixCall |
| c3a80 | 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 | MainAndExit.(runtime_invalid_err |
| c3aa0 | 6f 72 5f 63 6f 64 65 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 | or_code)</span>.............root |
| c3ac0 | 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 |
| c3ae0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | pan.class="sgr-32m">^</span>.<sp |
| c3b00 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 | an.class="sgr-1m">/home/andy/dev |
| c3b20 | 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f 73 70 | /zig/lib/std/start.zig:271:5</sp |
| c3b40 | 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 64 | an>:.<span.class="sgr-2m">0x10dd |
| c3b60 | 66 61 64 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 | fad.in._start.(runtime_invalid_e |
| c3b80 | 72 72 6f 72 5f 63 6f 64 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 69 | rror_code)</span>.....asm.volati |
| c3ba0 | 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 3c | le.(switch.(native_arch).{.....< |
| c3bc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 | span.class="sgr-32m">^</span>.<s |
| c3be0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e | pan.class="sgr-1m">???:?:?</span |
| c3c00 | 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 3f | >:.<span.class="sgr-2m">0x0.in.? |
| c3c20 | 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 | ??.(???)</span>.(process.termina |
| c3c40 | 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | ted.by.signal).</samp></pre></fi |
| c3c60 | 67 75 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 49 6e 76 61 | gure>...............<h3.id="Inva |
| c3c80 | 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 6e 76 | lid-Enum-Cast"><a.href="#toc-Inv |
| c3ca0 | 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 61 73 | alid-Enum-Cast">Invalid.Enum.Cas |
| c3cc0 | 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 76 61 | t</a>.<a.class="hdr".href="#Inva |
| c3ce0 | 6c 69 64 2d 45 6e 75 6d 2d 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 | lid-Enum-Cast">..</a></h3>...... |
| c3d00 | 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 20 20 | ..<p>At.compile-time:</p>....... |
| c3d20 | 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 | <figure><figcaption.class="zig-c |
| c3d40 | 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 | ap"><cite.class="file">test_comp |
| c3d60 | 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 6e 75 6d 5f 63 61 73 74 2e 7a 69 67 3c 2f 63 69 74 65 | time_invalid_enum_cast.zig</cite |
| c3d80 | 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></figcaption><pre><code><span.c |
| c3da0 | 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.= |
| c3dc0 | 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 |
| c3de0 | 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 3c 73 70 61 | >.{.....a,.....b,.....c,.};.<spa |
| c3e00 | 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> |
| c3e20 | 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 |
| c3e40 | 74 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 | t</span>.a:.<span.class="tok-typ |
| c3e60 | 65 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 | e">u2</span>.=.<span.class="tok- |
| c3e80 | 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 6c 61 73 | number">3</span>;.....<span.clas |
| c3ea0 | 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 3a 20 46 6f 6f 20 3d | s="tok-kw">const</span>.b:.Foo.= |
| c3ec0 | 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 65 6e 75 6d | .<span.class="tok-builtin">@enum |
| c3ee0 | 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 6e 3e 28 61 29 3b 0a 20 20 20 20 5f 20 3d 20 62 3b 0a 7d 3c | FromInt</span>(a);....._.=.b;.}< |
| c3f00 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 | /code></pre></figure><figure><fi |
| c3f20 | 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c | gcaption.class="shell-cap">Shell |
| c3f40 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a | </figcaption><pre><samp>$.<kbd>z |
| c3f60 | 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 6e | ig.test.test_comptime_invalid_en |
| c3f80 | 75 6d 5f 63 61 73 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | um_cast.zig</kbd>.<span.class="s |
| c3fa0 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 | gr-1m">/home/andy/dev/zig/doc/la |
| c3fc0 | 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 6e 75 6d | ngref/test_comptime_invalid_enum |
| c3fe0 | 5f 63 61 73 74 2e 7a 69 67 3a 38 3a 32 30 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | _cast.zig:8:20:.</span><span.cla |
| c4000 | 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | ss="sgr-31m">error:.</span><span |
| c4020 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 65 6e 75 6d 20 27 74 65 73 74 5f 63 6f 6d 70 74 | .class="sgr-1m">enum.'test_compt |
| c4040 | 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 6e 75 6d 5f 63 61 73 74 2e 46 6f 6f 27 20 68 61 73 20 6e | ime_invalid_enum_cast.Foo'.has.n |
| c4060 | 6f 20 74 61 67 20 77 69 74 68 20 76 61 6c 75 65 20 27 33 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 | o.tag.with.value.'3'.</span>.... |
| c4080 | 63 6f 6e 73 74 20 62 3a 20 46 6f 6f 20 3d 20 40 65 6e 75 6d 46 72 6f 6d 49 6e 74 28 61 29 3b 0a | const.b:.Foo.=.@enumFromInt(a);. |
| c40a0 | 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=" |
| c40c0 | 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e | sgr-32m">^~~~~~~~~~~~~~~.</span> |
| c40e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | <span.class="sgr-1m">/home/andy/ |
| c4100 | 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d | dev/zig/doc/langref/test_comptim |
| c4120 | 65 5f 69 6e 76 61 6c 69 64 5f 65 6e 75 6d 5f 63 61 73 74 2e 7a 69 67 3a 31 3a 31 33 3a 20 3c 2f | e_invalid_enum_cast.zig:1:13:.</ |
| c4140 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a | span><span.class="sgr-36m">note: |
| c4160 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 65 6e 75 | .</span><span.class="sgr-1m">enu |
| c4180 | 6d 20 64 65 63 6c 61 72 65 64 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 63 6f 6e 73 74 20 46 6f 6f | m.declared.here.</span>const.Foo |
| c41a0 | 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 63 6c 61 73 | .=.enum.{.............<span.clas |
| c41c0 | 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e | s="sgr-32m">^~~~.</span>.</samp> |
| c41e0 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e | </pre></figure>........<p>At.run |
| c4200 | 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | time:</p>.......<figure><figcapt |
| c4220 | 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d | ion.class="zig-cap"><cite.class= |
| c4240 | 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 6e 75 6d 5f 63 61 73 74 | "file">runtime_invalid_enum_cast |
| c4260 | 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f | .zig</cite></figcaption><pre><co |
| c4280 | 64 65 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 | de><span.class="tok-kw">const</s |
| c42a0 | 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 |
| c42c0 | 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= |
| c42e0 | 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> |
| c4300 | 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 74 3c 2f | );..<span.class="tok-kw">const</ |
| c4320 | 73 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 | span>.Foo.=.<span.class="tok-kw" |
| c4340 | 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 2c 0a 20 20 20 20 62 2c 0a 20 20 20 | >enum</span>.{.....a,.....b,.... |
| c4360 | 20 63 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 | .c,.};..<span.class="tok-kw">pub |
| c4380 | 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 3c | </span>.<span.class="tok-kw">fn< |
| c43a0 | 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 6e | /span>.<span.class="tok-fn">main |
| c43c0 | 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" |
| c43e0 | 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=" |
| c4400 | 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 |
| c4420 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | s="tok-type">u2</span>.=.<span.c |
| c4440 | 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 20 20 20 20 | lass="tok-number">3</span>;..... |
| c4460 | 5f 20 3d 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 | _.=.&a;.....<span.class="tok |
| c4480 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 46 6f 6f 20 3d 20 3c 73 70 61 6e | -kw">const</span>.b:.Foo.=.<span |
| c44a0 | 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 46 72 6f 6d 49 6e | .class="tok-builtin">@enumFromIn |
| c44c0 | 74 3c 2f 73 70 61 6e 3e 28 61 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 | t</span>(a);.....std.debug.print |
| c44e0 | 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 6c | (<span.class="tok-str">"val |
| c4500 | 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 20 | ue:.{s}\n"</span>,..{<span. |
| c4520 | 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 70 | class="tok-builtin">@tagName</sp |
| c4540 | 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 2f 66 69 67 75 72 65 | an>(b)});.}</code></pre></figure |
| c4560 | 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c | ><figure><figcaption.class="shel |
| c4580 | 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 | l-cap">Shell</figcaption><pre><s |
| c45a0 | 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 | amp>$.<kbd>zig.build-exe.runtime |
| c45c0 | 5f 69 6e 76 61 6c 69 64 5f 65 6e 75 6d 5f 63 61 73 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c | _invalid_enum_cast.zig</kbd>.$.< |
| c45e0 | 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 6e 75 6d 5f 63 61 73 74 3c | kbd>./runtime_invalid_enum_cast< |
| c4600 | 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 32 31 30 37 33 33 20 70 61 6e 69 63 3a 20 69 6e 76 61 6c | /kbd>.thread.210733.panic:.inval |
| c4620 | 69 64 20 65 6e 75 6d 20 76 61 6c 75 65 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 | id.enum.value.<span.class="sgr-1 |
| c4640 | 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 | m">/home/andy/dev/zig/doc/langre |
| c4660 | 66 2f 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 6e 75 6d 5f 63 61 73 74 2e 7a 69 67 3a | f/runtime_invalid_enum_cast.zig: |
| c4680 | 31 32 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 73 67 72 2d 32 | 12:20</span>:.<span.class="sgr-2 |
| c46a0 | 6d 22 3e 30 78 31 30 64 65 61 30 61 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 69 6e | m">0x10dea0a.in.main.(runtime_in |
| c46c0 | 76 61 6c 69 64 5f 65 6e 75 6d 5f 63 61 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 | valid_enum_cast)</span>.....cons |
| c46e0 | 74 20 62 3a 20 46 6f 6f 20 3d 20 40 65 6e 75 6d 46 72 6f 6d 49 6e 74 28 61 29 3b 0a 20 20 20 20 | t.b:.Foo.=.@enumFromInt(a);..... |
| c4700 | 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 73 67 72 2d | ...............<span.class="sgr- |
| c4720 | 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 | 32m">^</span>.<span.class="sgr-1 |
| c4740 | 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 | m">/home/andy/dev/zig/lib/std/st |
| c4760 | 61 72 74 2e 7a 69 67 3a 36 35 31 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | art.zig:651:22</span>:.<span.cla |
| c4780 | 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 33 65 32 20 69 6e 20 70 6f 73 69 78 43 61 | ss="sgr-2m">0x10de3e2.in.posixCa |
| c47a0 | 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 | llMainAndExit.(runtime_invalid_e |
| c47c0 | 6e 75 6d 5f 63 61 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 | num_cast)</span>.............roo |
| c47e0 | 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();......................< |
| c4800 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 | span.class="sgr-32m">^</span>.<s |
| c4820 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | pan.class="sgr-1m">/home/andy/de |
| c4840 | 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f 73 | v/zig/lib/std/start.zig:271:5</s |
| c4860 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 | pan>:.<span.class="sgr-2m">0x10d |
| c4880 | 64 66 62 64 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f | dfbd.in._start.(runtime_invalid_ |
| c48a0 | 65 6e 75 6d 5f 63 61 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 69 | enum_cast)</span>.....asm.volati |
| c48c0 | 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 3c | le.(switch.(native_arch).{.....< |
| c48e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 | span.class="sgr-32m">^</span>.<s |
| c4900 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e | pan.class="sgr-1m">???:?:?</span |
| c4920 | 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 3f | >:.<span.class="sgr-2m">0x0.in.? |
| c4940 | 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 | ??.(???)</span>.(process.termina |
| c4960 | 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | ted.by.signal).</samp></pre></fi |
| c4980 | 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 6e 76 | gure>................<h3.id="Inv |
| c49a0 | 61 6c 69 64 2d 45 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 | alid-Error-Set-Cast"><a.href="#t |
| c49c0 | 6f 63 2d 49 6e 76 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 | oc-Invalid-Error-Set-Cast">Inval |
| c49e0 | 69 64 20 45 72 72 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 | id.Error.Set.Cast</a>.<a.class=" |
| c4a00 | 68 64 72 22 20 68 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 | hdr".href="#Invalid-Error-Set-Ca |
| c4a20 | 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d | st">..</a></h3>........<p>At.com |
| c4a40 | 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 | pile-time:</p>.......<figure><fi |
| c4a60 | 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 | gcaption.class="zig-cap"><cite.c |
| c4a80 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 76 61 6c 69 | lass="file">test_comptime_invali |
| c4aa0 | 64 5f 65 72 72 6f 72 5f 73 65 74 5f 63 61 73 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | d_error_set_cast.zig</cite></fig |
| c4ac0 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | caption><pre><code><span.class=" |
| c4ae0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 65 74 31 20 3d 20 3c 73 70 61 | tok-kw">const</span>.Set1.=.<spa |
| c4b00 | 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 20 | n.class="tok-kw">error</span>{.. |
| c4b20 | 20 20 20 41 2c 0a 20 20 20 20 42 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ...A,.....B,.};.<span.class="tok |
| c4b40 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 65 74 32 20 3d 20 3c 73 70 61 6e 20 63 | -kw">const</span>.Set2.=.<span.c |
| c4b60 | 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 20 20 20 20 | lass="tok-kw">error</span>{..... |
| c4b80 | 41 2c 0a 20 20 20 20 43 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | A,.....C,.};.<span.class="tok-kw |
| c4ba0 | 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 3c 73 70 61 | ">comptime</span>.{....._.=.<spa |
| c4bc0 | 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> |
| c4be0 | 28 53 65 74 32 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 | (Set2,.<span.class="tok-builtin" |
| c4c00 | 3e 40 65 72 72 6f 72 43 61 73 74 3c 2f 73 70 61 6e 3e 28 53 65 74 31 2e 42 29 29 3b 0a 7d 3c 2f | >@errorCast</span>(Set1.B));.}</ |
| c4c20 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 | code></pre></figure><figure><fig |
| c4c40 | 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c | caption.class="shell-cap">Shell< |
| c4c60 | 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 | /figcaption><pre><samp>$.<kbd>zi |
| c4c80 | 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 | g.test.test_comptime_invalid_err |
| c4ca0 | 6f 72 5f 73 65 74 5f 63 61 73 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | or_set_cast.zig</kbd>.<span.clas |
| c4cc0 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f | s="sgr-1m">/home/andy/dev/zig/do |
| c4ce0 | 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f | c/langref/test_comptime_invalid_ |
| c4d00 | 65 72 72 6f 72 5f 73 65 74 5f 63 61 73 74 2e 7a 69 67 3a 31 30 3a 31 39 3a 20 3c 2f 73 70 61 6e | error_set_cast.zig:10:19:.</span |
| c4d20 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f | ><span.class="sgr-31m">error:.</ |
| c4d40 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 27 65 72 72 6f 72 | span><span.class="sgr-1m">'error |
| c4d60 | 2e 42 27 20 6e 6f 74 20 61 20 6d 65 6d 62 65 72 20 6f 66 20 65 72 72 6f 72 20 73 65 74 20 27 65 | .B'.not.a.member.of.error.set.'e |
| c4d80 | 72 72 6f 72 7b 41 2c 43 7d 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 5f 20 3d 20 40 61 73 28 53 65 | rror{A,C}'.</span>...._.=.@as(Se |
| c4da0 | 74 32 2c 20 40 65 72 72 6f 72 43 61 73 74 28 53 65 74 31 2e 42 29 29 3b 0a 20 20 20 20 20 20 20 | t2,.@errorCast(Set1.B));........ |
| c4dc0 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 | ...........<span.class="sgr-32m" |
| c4de0 | 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 | >^~~~~~~~~~~~~~~~~~.</span>.</sa |
| c4e00 | 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 | mp></pre></figure>........<p>At. |
| c4e20 | 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | runtime:</p>.......<figure><figc |
| c4e40 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 | aption.class="zig-cap"><cite.cla |
| c4e60 | 73 73 3d 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f | ss="file">runtime_invalid_error_ |
| c4e80 | 73 65 74 5f 63 61 73 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | set_cast.zig</cite></figcaption> |
| c4ea0 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | <pre><code><span.class="tok-kw"> |
| c4ec0 | 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=" |
| c4ee0 | 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 |
| c4f00 | 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" |
| c4f20 | 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 77 22 | ;</span>);..<span.class="tok-kw" |
| c4f40 | 3e 63 6f 6e 73 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 | >const</span>.Set1.=.<span.class |
| c4f60 | 3d 22 74 6f 6b 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 | ="tok-kw">error</span>{.....A,.. |
| c4f80 | 20 20 20 42 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 63 6f | ...B,.};.<span.class="tok-kw">co |
| c4fa0 | 6e 73 74 3c 2f 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 | nst</span>.Set2.=.<span.class="t |
| c4fc0 | 6f 6b 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 | ok-kw">error</span>{.....A,..... |
| c4fe0 | 43 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 70 75 62 3c 2f | C,.};.<span.class="tok-kw">pub</ |
| c5000 | 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 |
| c5020 | 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</ |
| c5040 | 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 |
| c5060 | 6f 69 64 3c 2f 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 | oid</span>.{.....foo(Set1.B);.}. |
| c5080 | 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>.< |
| c50a0 | 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 73 | span.class="tok-fn">foo</span>(s |
| c50c0 | 65 74 31 3a 20 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 | et1:.Set1).<span.class="tok-type |
| c50e0 | 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= |
| c5100 | 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 53 65 74 32 20 3d 20 | "tok-kw">const</span>.x:.Set2.=. |
| c5120 | 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 |
| c5140 | 43 61 73 74 3c 2f 73 70 61 6e 3e 28 73 65 74 31 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 | Cast</span>(set1);.....std.debug |
| c5160 | 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 |
| c5180 | 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 78 | ot;value:.{}\n"</span>,..{x |
| c51a0 | 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 | });.}</code></pre></figure><figu |
| c51c0 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 | re><figcaption.class="shell-cap" |
| c51e0 | 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 | >Shell</figcaption><pre><samp>$. |
| c5200 | 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c | <kbd>zig.build-exe.runtime_inval |
| c5220 | 69 64 5f 65 72 72 6f 72 5f 73 65 74 5f 63 61 73 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b | id_error_set_cast.zig</kbd>.$.<k |
| c5240 | 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f 73 65 74 5f 63 | bd>./runtime_invalid_error_set_c |
| c5260 | 61 73 74 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 32 30 39 36 33 35 20 70 61 6e 69 63 3a 20 69 | ast</kbd>.thread.209635.panic:.i |
| c5280 | 6e 76 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 73 | nvalid.error.code.<span.class="s |
| c52a0 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 | gr-1m">/home/andy/dev/zig/doc/la |
| c52c0 | 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f 73 65 74 5f | ngref/runtime_invalid_error_set_ |
| c52e0 | 63 61 73 74 2e 7a 69 67 3a 31 35 3a 32 31 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | cast.zig:15:21</span>:.<span.cla |
| c5300 | 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 66 32 66 64 20 69 6e 20 66 6f 6f 20 28 72 75 | ss="sgr-2m">0x10df2fd.in.foo.(ru |
| c5320 | 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f 73 65 74 5f 63 61 73 74 29 3c 2f 73 | ntime_invalid_error_set_cast)</s |
| c5340 | 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 78 3a 20 53 65 74 32 20 3d 20 40 65 72 72 6f 72 43 | pan>.....const.x:.Set2.=.@errorC |
| c5360 | 61 73 74 28 73 65 74 31 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | ast(set1);.....................< |
| c5380 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 | span.class="sgr-32m">^</span>.<s |
| c53a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | pan.class="sgr-1m">/home/andy/de |
| c53c0 | 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 | v/zig/doc/langref/runtime_invali |
| c53e0 | 64 5f 65 72 72 6f 72 5f 73 65 74 5f 63 61 73 74 2e 7a 69 67 3a 31 32 3a 38 3c 2f 73 70 61 6e 3e | d_error_set_cast.zig:12:8</span> |
| c5400 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 61 32 63 | :.<span.class="sgr-2m">0x10dea2c |
| c5420 | 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f | .in.main.(runtime_invalid_error_ |
| c5440 | 73 65 74 5f 63 61 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 6f 6f 28 53 65 74 31 2e 42 29 | set_cast)</span>.....foo(Set1.B) |
| c5460 | 3b 0a 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e | ;........<span.class="sgr-32m">^ |
| c5480 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f | </span>.<span.class="sgr-1m">/ho |
| c54a0 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | me/andy/dev/zig/lib/std/start.zi |
| c54c0 | 67 3a 36 35 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 73 67 | g:651:22</span>:.<span.class="sg |
| c54e0 | 72 2d 32 6d 22 3e 30 78 31 30 64 65 34 31 32 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e | r-2m">0x10de412.in.posixCallMain |
| c5500 | 41 6e 64 45 78 69 74 20 28 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f 73 | AndExit.(runtime_invalid_error_s |
| c5520 | 65 74 5f 63 61 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 | et_cast)</span>.............root |
| c5540 | 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 |
| c5560 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | pan.class="sgr-32m">^</span>.<sp |
| c5580 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 | an.class="sgr-1m">/home/andy/dev |
| c55a0 | 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f 73 70 | /zig/lib/std/start.zig:271:5</sp |
| c55c0 | 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 64 | an>:.<span.class="sgr-2m">0x10dd |
| c55e0 | 66 65 64 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 | fed.in._start.(runtime_invalid_e |
| c5600 | 72 72 6f 72 5f 73 65 74 5f 63 61 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f | rror_set_cast)</span>.....asm.vo |
| c5620 | 6c 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 | latile.(switch.(native_arch).{.. |
| c5640 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e | ...<span.class="sgr-32m">^</span |
| c5660 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f | >.<span.class="sgr-1m">???:?:?</ |
| c5680 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 | span>:.<span.class="sgr-2m">0x0. |
| c56a0 | 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 | in.???.(???)</span>.(process.ter |
| c56c0 | 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e | minated.by.signal).</samp></pre> |
| c56e0 | 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d | </figure>................<h3.id= |
| c5700 | 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 65 6e 74 22 3e 3c 61 | "Incorrect-Pointer-Alignment"><a |
| c5720 | 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 6e 74 65 72 2d 41 6c | .href="#toc-Incorrect-Pointer-Al |
| c5740 | 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 72 20 41 6c 69 67 6e | ignment">Incorrect.Pointer.Align |
| c5760 | 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 49 | ment</a>.<a.class="hdr".href="#I |
| c5780 | 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 c2 a7 3c 2f | ncorrect-Pointer-Alignment">..</ |
| c57a0 | 61 3e 3c 2f 68 33 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></h3>........<p>At.compile-tim |
| c57c0 | 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e | e:</p>.......<figure><figcaption |
| c57e0 | 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 | .class="zig-cap"><cite.class="fi |
| c5800 | 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f 69 6e | le">test_comptime_incorrect_poin |
| c5820 | 74 65 72 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | ter_alignment.zig</cite></figcap |
| c5840 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tion><pre><code><span.class="tok |
| c5860 | 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 |
| c5880 | 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 |
| c58a0 | 3a 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 2f 73 | :.*<span.class="tok-kw">align</s |
| c58c0 | 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 31 3c | pan>(<span.class="tok-number">1< |
| c58e0 | 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 |
| c5900 | 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 62 75 69 | 32</span>.=.<span.class="tok-bui |
| c5920 | 6c 74 69 6e 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | ltin">@ptrFromInt</span>(<span.c |
| c5940 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | lass="tok-number">0x1</span>);.. |
| c5960 | 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 |
| c5980 | 70 61 6e 3e 20 61 6c 69 67 6e 65 64 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>.aligned:.*<span.class="tok- |
| c59a0 | 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 6f | kw">align</span>(<span.class="to |
| c59c0 | 6b 2d 6e 75 6d 62 65 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 | k-number">4</span>).<span.class= |
| c59e0 | 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 6c | "tok-type">i32</span>.=.<span.cl |
| c5a00 | 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 2f 73 70 | ass="tok-builtin">@alignCast</sp |
| c5a20 | 61 6e 3e 28 70 74 72 29 3b 0a 20 20 20 20 5f 20 3d 20 61 6c 69 67 6e 65 64 3b 0a 7d 3c 2f 63 6f | an>(ptr);....._.=.aligned;.}</co |
| c5a40 | 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | de></pre></figure><figure><figca |
| c5a60 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 | ption.class="shell-cap">Shell</f |
| c5a80 | 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 | igcaption><pre><samp>$.<kbd>zig. |
| c5aa0 | 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f 69 | test.test_comptime_incorrect_poi |
| c5ac0 | 6e 74 65 72 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 | nter_alignment.zig</kbd>.<span.c |
| c5ae0 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 | lass="sgr-1m">/home/andy/dev/zig |
| c5b00 | 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 63 6f 72 | /doc/langref/test_comptime_incor |
| c5b20 | 72 65 63 74 5f 70 6f 69 6e 74 65 72 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a 69 67 3a 33 3a 34 37 3a | rect_pointer_alignment.zig:3:47: |
| c5b40 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 | .</span><span.class="sgr-31m">er |
| c5b60 | 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 73 67 72 2d 31 6d 22 | ror:.</span><span.class="sgr-1m" |
| c5b80 | 3e 70 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 | >pointer.address.0x1.is.not.alig |
| c5ba0 | 6e 65 64 20 74 6f 20 34 20 62 79 74 65 73 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 | ned.to.4.bytes.</span>....const. |
| c5bc0 | 61 6c 69 67 6e 65 64 3a 20 2a 61 6c 69 67 6e 28 34 29 20 69 33 32 20 3d 20 40 61 6c 69 67 6e 43 | aligned:.*align(4).i32.=.@alignC |
| c5be0 | 61 73 74 28 70 74 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 | ast(ptr);....................... |
| c5c00 | 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 6c | ........................<span.cl |
| c5c20 | 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 | ass="sgr-32m">^~~.</span>.</samp |
| c5c40 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 | ></pre></figure>........<p>At.ru |
| c5c60 | 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | ntime:</p>.......<figure><figcap |
| c5c80 | 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 | tion.class="zig-cap"><cite.class |
| c5ca0 | 3d 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f 69 6e 74 65 | ="file">runtime_incorrect_pointe |
| c5cc0 | 72 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | r_alignment.zig</cite></figcapti |
| c5ce0 | 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | on><pre><code><span.class="tok-k |
| c5d00 | 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 |
| c5d20 | 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>(< |
| c5d40 | 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 |
| c5d60 | 75 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 | uot;</span>).mem;.<span.class="t |
| c5d80 | 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 |
| c5da0 | 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 |
| c5dc0 | 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 |
| c5de0 | 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 |
| c5e00 | 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 72 | pan.class="tok-kw">var</span>.ar |
| c5e20 | 72 61 79 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 | ray.<span.class="tok-kw">align</ |
| c5e40 | 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 34 | span>(<span.class="tok-number">4 |
| c5e60 | 3c 2f 73 70 61 6e 3e 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 | </span>).=.[_]<span.class="tok-t |
| c5e80 | 79 70 65 22 3e 75 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">u32</span>{.<span.class="to |
| c5ea0 | 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 2c 20 3c 73 70 | k-number">0x11111111</span>,.<sp |
| c5ec0 | 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 31 31 31 31 31 31 31 | an.class="tok-number">0x11111111 |
| c5ee0 | 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 2d | </span>.};.....<span.class="tok- |
| c5f00 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 79 74 65 73 20 3d 20 6d 65 6d 2e 73 6c 69 | kw">const</span>.bytes.=.mem.sli |
| c5f20 | 63 65 41 73 42 79 74 65 73 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ceAsBytes(array[<span.class="tok |
| c5f40 | 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 29 3b 0a 20 20 20 20 3c 73 70 61 6e | -number">0</span>..]);.....<span |
| c5f60 | 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 66 6f 6f 28 62 | .class="tok-kw">if</span>.(foo(b |
| c5f80 | 79 74 65 73 29 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 | ytes).!=.<span.class="tok-number |
| c5fa0 | 22 3e 30 78 31 31 31 31 31 31 31 31 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">0x11111111</span>).<span.class |
| c5fc0 | 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 |
| c5fe0 | 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 57 72 6f 6e 67 3b | ass="tok-kw">error</span>.Wrong; |
| c6000 | 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 |
| c6020 | 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 |
| c6040 | 3e 28 62 79 74 65 73 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 | >(bytes:.[]<span.class="tok-type |
| c6060 | 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 |
| c6080 | 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 73 | pe">u32</span>.{.....<span.class |
| c60a0 | 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 34 20 3d 20 | ="tok-kw">const</span>.slice4.=. |
| c60c0 | 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 31 | bytes[<span.class="tok-number">1 |
| c60e0 | 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 |
| c6100 | 22 3e 35 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 | ">5</span>];.....<span.class="to |
| c6120 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 69 6e 74 5f 73 6c 69 63 65 20 3d 20 6d | k-kw">const</span>.int_slice.=.m |
| c6140 | 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 73 3d 22 74 6f 6b | em.bytesAsSlice(<span.class="tok |
| c6160 | 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 73 73 3d 22 | -type">u32</span>,.<span.class=" |
| c6180 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 5b 5d 3c 73 70 61 6e 20 | tok-builtin">@as</span>([]<span. |
| c61a0 | 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 |
| c61c0 | 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 29 20 3c | n.class="tok-number">4</span>).< |
| c61e0 | 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>, |
| c6200 | 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 6c 69 67 | .<span.class="tok-builtin">@alig |
| c6220 | 6e 43 61 73 74 3c 2f 73 70 61 6e 3e 28 73 6c 69 63 65 34 29 29 29 3b 0a 20 20 20 20 3c 73 70 61 | nCast</span>(slice4)));.....<spa |
| c6240 | 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 69 | n.class="tok-kw">return</span>.i |
| c6260 | 6e 74 5f 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 | nt_slice[<span.class="tok-number |
| c6280 | 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | ">0</span>];.}</code></pre></fig |
| c62a0 | 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 | ure><figure><figcaption.class="s |
| c62c0 | 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | hell-cap">Shell</figcaption><pre |
| c62e0 | 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 | ><samp>$.<kbd>zig.build-exe.runt |
| c6300 | 69 6d 65 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f 69 6e 74 65 72 5f 61 6c 69 67 6e 6d 65 6e 74 2e | ime_incorrect_pointer_alignment. |
| c6320 | 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 69 6e 63 6f 72 | zig</kbd>.$.<kbd>./runtime_incor |
| c6340 | 72 65 63 74 5f 70 6f 69 6e 74 65 72 5f 61 6c 69 67 6e 6d 65 6e 74 3c 2f 6b 62 64 3e 0a 74 68 72 | rect_pointer_alignment</kbd>.thr |
| c6360 | 65 61 64 20 32 31 30 37 37 31 20 70 61 6e 69 63 3a 20 69 6e 63 6f 72 72 65 63 74 20 61 6c 69 67 | ead.210771.panic:.incorrect.alig |
| c6380 | 6e 6d 65 6e 74 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 | nment.<span.class="sgr-1m">/home |
| c63a0 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d | /andy/dev/zig/doc/langref/runtim |
| c63c0 | 65 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f 69 6e 74 65 72 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a 69 | e_incorrect_pointer_alignment.zi |
| c63e0 | 67 3a 39 3a 36 34 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | g:9:64</span>:.<span.class="sgr- |
| c6400 | 32 6d 22 3e 30 78 31 30 64 65 37 64 32 20 69 6e 20 66 6f 6f 20 28 72 75 6e 74 69 6d 65 5f 69 6e | 2m">0x10de7d2.in.foo.(runtime_in |
| c6420 | 63 6f 72 72 65 63 74 5f 70 6f 69 6e 74 65 72 5f 61 6c 69 67 6e 6d 65 6e 74 29 3c 2f 73 70 61 6e | correct_pointer_alignment)</span |
| c6440 | 3e 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 5f 73 6c 69 63 65 20 3d 20 6d 65 6d 2e 62 79 74 65 | >.....const.int_slice.=.mem.byte |
| c6460 | 73 41 73 53 6c 69 63 65 28 75 33 32 2c 20 40 61 73 28 5b 5d 61 6c 69 67 6e 28 34 29 20 75 38 2c | sAsSlice(u32,.@as([]align(4).u8, |
| c6480 | 20 40 61 6c 69 67 6e 43 61 73 74 28 73 6c 69 63 65 34 29 29 29 3b 0a 20 20 20 20 20 20 20 20 20 | .@alignCast(slice4)));.......... |
| c64a0 | 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 | ................................ |
| c64c0 | 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 |
| c64e0 | 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | s="sgr-32m">^</span>.<span.class |
| c6500 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 | ="sgr-1m">/home/andy/dev/zig/doc |
| c6520 | 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f 69 6e 74 | /langref/runtime_incorrect_point |
| c6540 | 65 72 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a 69 67 3a 35 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | er_alignment.zig:5:12</span>:.<s |
| c6560 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 36 63 66 20 69 6e 20 | pan.class="sgr-2m">0x10de6cf.in. |
| c6580 | 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f 69 6e 74 65 72 5f | main.(runtime_incorrect_pointer_ |
| c65a0 | 61 6c 69 67 6e 6d 65 6e 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 66 20 28 66 6f 6f 28 62 79 | alignment)</span>.....if.(foo(by |
| c65c0 | 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 |
| c65e0 | 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=" |
| c6600 | 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | sgr-32m">^</span>.<span.class="s |
| c6620 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 | gr-1m">/home/andy/dev/zig/lib/st |
| c6640 | 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 36 30 3a 33 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | d/start.zig:660:37</span>:.<span |
| c6660 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 35 62 61 20 69 6e 20 70 6f 73 | .class="sgr-2m">0x10de5ba.in.pos |
| c6680 | 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 72 75 6e 74 69 6d 65 5f 69 6e 63 6f 72 | ixCallMainAndExit.(runtime_incor |
| c66a0 | 72 65 63 74 5f 70 6f 69 6e 74 65 72 5f 61 6c 69 67 6e 6d 65 6e 74 29 3c 2f 73 70 61 6e 3e 0a 20 | rect_pointer_alignment)</span>.. |
| c66c0 | 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 6d | ...........const.result.=.root.m |
| c66e0 | 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 20 | ain().catch.|err|.{............. |
| c6700 | 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 6c | ........................<span.cl |
| c6720 | 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | ass="sgr-32m">^</span>.<span.cla |
| c6740 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c | ss="sgr-1m">/home/andy/dev/zig/l |
| c6760 | 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c | ib/std/start.zig:271:5</span>:.< |
| c6780 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 31 36 64 20 69 6e | span.class="sgr-2m">0x10de16d.in |
| c67a0 | 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f 69 6e 74 | ._start.(runtime_incorrect_point |
| c67c0 | 65 72 5f 61 6c 69 67 6e 6d 65 6e 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c | er_alignment)</span>.....asm.vol |
| c67e0 | 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 | atile.(switch.(native_arch).{... |
| c6800 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e | ..<span.class="sgr-32m">^</span> |
| c6820 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 | .<span.class="sgr-1m">???:?:?</s |
| c6840 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 | pan>:.<span.class="sgr-2m">0x0.i |
| c6860 | 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d | n.???.(???)</span>.(process.term |
| c6880 | 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c | inated.by.signal).</samp></pre>< |
| c68a0 | 2f 66 69 67 75 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 57 | /figure>...............<h3.id="W |
| c68c0 | 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 3c 61 20 68 72 65 66 | rong-Union-Field-Access"><a.href |
| c68e0 | 3d 22 23 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 22 | ="#toc-Wrong-Union-Field-Access" |
| c6900 | 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 20 3c 61 | >Wrong.Union.Field.Access</a>.<a |
| c6920 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d | .class="hdr".href="#Wrong-Union- |
| c6940 | 46 69 65 6c 64 2d 41 63 63 65 73 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | Field-Access">..</a></h3>....... |
| c6960 | 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 20 20 3c | .<p>At.compile-time:</p>.......< |
| c6980 | 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 | figure><figcaption.class="zig-ca |
| c69a0 | 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 | p"><cite.class="file">test_compt |
| c69c0 | 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 66 69 65 6c 64 5f 61 63 63 65 73 73 2e 7a 69 67 | ime_wrong_union_field_access.zig |
| c69e0 | 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | </cite></figcaption><pre><code>< |
| c6a00 | 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 |
| c6a20 | 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 |
| c6a40 | 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. |
| c6a60 | 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>.};. |
| c6a80 | 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 6e | ....f.float.=.<span.class="tok-n |
| c6aa0 | 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 6c | umber">12.34</span>;.}..<span.cl |
| c6ac0 | 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 20 | ass="tok-kw">const</span>.Foo.=. |
| c6ae0 | 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 6e | <span.class="tok-kw">union</span |
| c6b00 | 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 2d | >.{.....float:.<span.class="tok- |
| c6b20 | 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 6e | type">f32</span>,.....int:.<span |
| c6b40 | 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 3b | .class="tok-type">u32</span>,.}; |
| c6b60 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 | </code></pre></figure><figure><f |
| c6b80 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c | igcaption.class="shell-cap">Shel |
| c6ba0 | 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e | l</figcaption><pre><samp>$.<kbd> |
| c6bc0 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e 69 | zig.test.test_comptime_wrong_uni |
| c6be0 | 6f 6e 5f 66 69 65 6c 64 5f 61 63 63 65 73 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 | on_field_access.zig</kbd>.<span. |
| c6c00 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | class="sgr-1m">/home/andy/dev/zi |
| c6c20 | 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 77 72 6f 6e | g/doc/langref/test_comptime_wron |
| c6c40 | 67 5f 75 6e 69 6f 6e 5f 66 69 65 6c 64 5f 61 63 63 65 73 73 2e 7a 69 67 3a 33 3a 36 3a 20 3c 2f | g_union_field_access.zig:3:6:.</ |
| c6c60 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 | span><span.class="sgr-31m">error |
| c6c80 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 61 63 | :.</span><span.class="sgr-1m">ac |
| c6ca0 | 63 65 73 73 20 6f 66 20 75 6e 69 6f 6e 20 66 69 65 6c 64 20 27 66 6c 6f 61 74 27 20 77 68 69 6c | cess.of.union.field.'float'.whil |
| c6cc0 | 65 20 66 69 65 6c 64 20 27 69 6e 74 27 20 69 73 20 61 63 74 69 76 65 0a 3c 2f 73 70 61 6e 3e 20 | e.field.'int'.is.active.</span>. |
| c6ce0 | 20 20 20 66 2e 66 6c 6f 61 74 20 3d 20 31 32 2e 33 34 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ...f.float.=.12.34;.....<span.cl |
| c6d00 | 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 7e 5e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 | ass="sgr-32m">~^~~~~~.</span><sp |
| c6d20 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 | an.class="sgr-1m">/home/andy/dev |
| c6d40 | 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 77 | /zig/doc/langref/test_comptime_w |
| c6d60 | 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 66 69 65 6c 64 5f 61 63 63 65 73 73 2e 7a 69 67 3a 36 3a 31 33 | rong_union_field_access.zig:6:13 |
| c6d80 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e | :.</span><span.class="sgr-36m">n |
| c6da0 | 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 73 67 72 2d 31 6d 22 | ote:.</span><span.class="sgr-1m" |
| c6dc0 | 3e 75 6e 69 6f 6e 20 64 65 63 6c 61 72 65 64 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 63 6f 6e 73 | >union.declared.here.</span>cons |
| c6de0 | 74 20 46 6f 6f 20 3d 20 75 6e 69 6f 6e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | t.Foo.=.union.{.............<spa |
| c6e00 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a | n.class="sgr-32m">^~~~~.</span>. |
| c6e20 | 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 | </samp></pre></figure>........<p |
| c6e40 | 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | >At.runtime:</p>.......<figure>< |
| c6e60 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 | figcaption.class="zig-cap"><cite |
| c6e80 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e 69 6f | .class="file">runtime_wrong_unio |
| c6ea0 | 6e 5f 66 69 65 6c 64 5f 61 63 63 65 73 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | n_field_access.zig</cite></figca |
| c6ec0 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ption><pre><code><span.class="to |
| c6ee0 | 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 |
| c6f00 | 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 |
| c6f20 | 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 |
| c6f40 | 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 |
| c6f60 | 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. |
| c6f80 | 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 20 | class="tok-kw">union</span>.{... |
| c6fa0 | 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 65 22 3e | ..float:.<span.class="tok-type"> |
| c6fc0 | 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 61 73 73 | f32</span>,.....int:.<span.class |
| c6fe0 | 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 73 70 61 | ="tok-type">u32</span>,.};..<spa |
| c7000 | 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 |
| c7020 | 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 |
| c7040 | 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 |
| c7060 | 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> |
| c7080 | 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< |
| c70a0 | 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 63 6c 61 | /span>.f.=.Foo{..int.=.<span.cla |
| c70c0 | 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 20 | ss="tok-number">42</span>.};.... |
| c70e0 | 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 22 74 6f | .bar(&f);.}..<span.class="to |
| c7100 | 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 |
| c7120 | 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 6e 20 63 | -fn">bar</span>(f:.*Foo).<span.c |
| c7140 | 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>.{... |
| c7160 | 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 6e 75 6d | ..f.float.=.<span.class="tok-num |
| c7180 | 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 | ber">12.34</span>;.....std.debug |
| c71a0 | 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 |
| c71c0 | 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 66 | ot;value:.{}\n"</span>,..{f |
| c71e0 | 2e 66 6c 6f 61 74 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | .float});.}</code></pre></figure |
| c7200 | 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c | ><figure><figcaption.class="shel |
| c7220 | 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 | l-cap">Shell</figcaption><pre><s |
| c7240 | 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 | amp>$.<kbd>zig.build-exe.runtime |
| c7260 | 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 66 69 65 6c 64 5f 61 63 63 65 73 73 2e 7a 69 67 3c 2f 6b | _wrong_union_field_access.zig</k |
| c7280 | 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e | bd>.$.<kbd>./runtime_wrong_union |
| c72a0 | 5f 66 69 65 6c 64 5f 61 63 63 65 73 73 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 32 30 32 35 37 | _field_access</kbd>.thread.20257 |
| c72c0 | 33 20 70 61 6e 69 63 3a 20 61 63 63 65 73 73 20 6f 66 20 75 6e 69 6f 6e 20 66 69 65 6c 64 20 27 | 3.panic:.access.of.union.field.' |
| c72e0 | 66 6c 6f 61 74 27 20 77 68 69 6c 65 20 66 69 65 6c 64 20 27 69 6e 74 27 20 69 73 20 61 63 74 69 | float'.while.field.'int'.is.acti |
| c7300 | 76 65 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e | ve.<span.class="sgr-1m">/home/an |
| c7320 | 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 77 | dy/dev/zig/doc/langref/runtime_w |
| c7340 | 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 66 69 65 6c 64 5f 61 63 63 65 73 73 2e 7a 69 67 3a 31 34 3a 36 | rong_union_field_access.zig:14:6 |
| c7360 | 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 | </span>:.<span.class="sgr-2m">0x |
| c7380 | 31 30 65 34 62 31 38 20 69 6e 20 62 61 72 20 28 72 75 6e 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e | 10e4b18.in.bar.(runtime_wrong_un |
| c73a0 | 69 6f 6e 5f 66 69 65 6c 64 5f 61 63 63 65 73 73 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 2e 66 | ion_field_access)</span>.....f.f |
| c73c0 | 6c 6f 61 74 20 3d 20 31 32 2e 33 34 3b 0a 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | loat.=.12.34;......<span.class=" |
| c73e0 | 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | sgr-32m">^</span>.<span.class="s |
| c7400 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 | gr-1m">/home/andy/dev/zig/doc/la |
| c7420 | 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 66 69 65 6c 64 5f | ngref/runtime_wrong_union_field_ |
| c7440 | 61 63 63 65 73 73 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 | access.zig:10:8</span>:.<span.cl |
| c7460 | 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 34 32 36 63 20 69 6e 20 6d 61 69 6e 20 28 | ass="sgr-2m">0x10e426c.in.main.( |
| c7480 | 72 75 6e 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 66 69 65 6c 64 5f 61 63 63 65 73 73 | runtime_wrong_union_field_access |
| c74a0 | 29 3c 2f 73 70 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 | )</span>.....bar(&f);....... |
| c74c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a | .<span.class="sgr-32m">^</span>. |
| c74e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | <span.class="sgr-1m">/home/andy/ |
| c7500 | 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 35 31 3a 32 32 | dev/zig/lib/std/start.zig:651:22 |
| c7520 | 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 | </span>:.<span.class="sgr-2m">0x |
| c7540 | 31 30 65 33 63 35 32 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 | 10e3c52.in.posixCallMainAndExit. |
| c7560 | 28 72 75 6e 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 66 69 65 6c 64 5f 61 63 63 65 73 | (runtime_wrong_union_field_acces |
| c7580 | 73 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 | s)</span>.............root.main( |
| c75a0 | 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 |
| c75c0 | 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | ass="sgr-32m">^</span>.<span.cla |
| c75e0 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c | ss="sgr-1m">/home/andy/dev/zig/l |
| c7600 | 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c | ib/std/start.zig:271:5</span>:.< |
| c7620 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 65 33 38 32 64 20 69 6e | span.class="sgr-2m">0x10e382d.in |
| c7640 | 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 66 69 65 | ._start.(runtime_wrong_union_fie |
| c7660 | 6c 64 5f 61 63 63 65 73 73 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 69 | ld_access)</span>.....asm.volati |
| c7680 | 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 3c | le.(switch.(native_arch).{.....< |
| c76a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 | span.class="sgr-32m">^</span>.<s |
| c76c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e | pan.class="sgr-1m">???:?:?</span |
| c76e0 | 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 3f | >:.<span.class="sgr-2m">0x0.in.? |
| c7700 | 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 | ??.(???)</span>.(process.termina |
| c7720 | 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | ted.by.signal).</samp></pre></fi |
| c7740 | 67 75 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 73 61 66 65 | gure>........<p>.......This.safe |
| c7760 | 74 79 20 69 73 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 3c 63 6f 64 65 3e 3c 73 | ty.is.not.available.for.<code><s |
| c7780 | 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 3e | pan.class="tok-kw">extern</span> |
| c77a0 | 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </code>.or.<code><span.class="to |
| c77c0 | 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 20 75 6e 69 6f 6e | k-kw">packed</span></code>.union |
| c77e0 | 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 6f | s........</p>.......<p>.......To |
| c7800 | 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 6f 66 20 61 20 75 6e | .change.the.active.field.of.a.un |
| c7820 | 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 69 6f 6e 2c 20 6c 69 | ion,.assign.the.entire.union,.li |
| c7840 | 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 66 69 67 75 72 | ke.this:.......</p>.......<figur |
| c7860 | 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 | e><figcaption.class="zig-cap"><c |
| c7880 | 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 68 61 6e 67 65 5f 61 63 74 69 76 65 5f 75 | ite.class="file">change_active_u |
| c78a0 | 6e 69 6f 6e 5f 66 69 65 6c 64 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | nion_field.zig</cite></figcaptio |
| c78c0 | 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n><pre><code><span.class="tok-kw |
| c78e0 | 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 |
| c7900 | 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 |
| c7920 | 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 |
| c7940 | 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 |
| c7960 | 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 |
| c7980 | 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 6c | s="tok-kw">union</span>.{.....fl |
| c79a0 | 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 3c | oat:.<span.class="tok-type">f32< |
| c79c0 | 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 6f | /span>,.....int:.<span.class="to |
| c79e0 | 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 6c | k-type">u32</span>,.};..<span.cl |
| c7a00 | 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 |
| c7a20 | 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 |
| c7a40 | 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. |
| c7a60 | 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>.{.. |
| c7a80 | 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 |
| c7aa0 | 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 22 | n>.f.=.Foo{..int.=.<span.class=" |
| c7ac0 | 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 62 61 72 | tok-number">42</span>.};.....bar |
| c7ae0 | 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 22 74 6f 6b 2d 6b 77 | (&f);.}..<span.class="tok-kw |
| c7b00 | 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" |
| c7b20 | 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 6e 20 63 6c 61 73 73 | >bar</span>(f:.*Foo).<span.class |
| c7b40 | 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 66 2e | ="tok-type">void</span>.{.....f. |
| c7b60 | 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 6c 61 73 73 3d 22 74 | *.=.Foo{..float.=.<span.class="t |
| c7b80 | 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 20 20 20 73 | ok-number">12.34</span>.};.....s |
| c7ba0 | 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- |
| c7bc0 | 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 |
| c7be0 | 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 65 3e | an>,..{f.float});.}</code></pre> |
| c7c00 | 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | </figure><figure><figcaption.cla |
| c7c20 | 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e | ss="shell-cap">Shell</figcaption |
| c7c40 | 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 | ><pre><samp>$.<kbd>zig.build-exe |
| c7c60 | 20 63 68 61 6e 67 65 5f 61 63 74 69 76 65 5f 75 6e 69 6f 6e 5f 66 69 65 6c 64 2e 7a 69 67 3c 2f | .change_active_union_field.zig</ |
| c7c80 | 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 63 68 61 6e 67 65 5f 61 63 74 69 76 65 5f 75 6e 69 6f | kbd>.$.<kbd>./change_active_unio |
| c7ca0 | 6e 5f 66 69 65 6c 64 3c 2f 6b 62 64 3e 0a 76 61 6c 75 65 3a 20 31 2e 32 33 34 65 31 0a 3c 2f 73 | n_field</kbd>.value:.1.234e1.</s |
| c7cc0 | 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | amp></pre></figure>........<p>.. |
| c7ce0 | 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. |
| c7d00 | 6f 66 20 61 20 75 6e 69 6f 6e 20 77 68 65 6e 20 61 20 6d 65 61 6e 69 6e 67 66 75 6c 20 76 61 6c | of.a.union.when.a.meaningful.val |
| c7d20 | 75 65 20 66 6f 72 20 74 68 65 20 66 69 65 6c 64 20 69 73 20 6e 6f 74 20 6b 6e 6f 77 6e 2c 0a 20 | ue.for.the.field.is.not.known,.. |
| c7d40 | 20 20 20 20 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e | .....use.<a.href="#undefined">un |
| c7d60 | 64 65 66 69 6e 65 64 3c 2f 61 3e 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f | defined</a>,.like.this:.......</ |
| c7d80 | 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | p>.......<figure><figcaption.cla |
| c7da0 | 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | ss="zig-cap"><cite.class="file"> |
| c7dc0 | 75 6e 64 65 66 69 6e 65 64 5f 61 63 74 69 76 65 5f 75 6e 69 6f 6e 5f 66 69 65 6c 64 2e 7a 69 67 | undefined_active_union_field.zig |
| c7de0 | 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | </cite></figcaption><pre><code>< |
| c7e00 | 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> |
| c7e20 | 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" |
| c7e40 | 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 |
| c7e60 | 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 0a | -str">"std"</span>);.. |
| c7e80 | 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 |
| c7ea0 | 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 75 6e 69 | >.Foo.=.<span.class="tok-kw">uni |
| c7ec0 | 6f 6e 3c 2f 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 | on</span>.{.....float:.<span.cla |
| c7ee0 | 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 20 20 20 69 6e | ss="tok-type">f32</span>,.....in |
| c7f00 | 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 33 32 3c 2f 73 | t:.<span.class="tok-type">u32</s |
| c7f20 | 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 70 | pan>,.};..<span.class="tok-kw">p |
| c7f40 | 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 66 | ub</span>.<span.class="tok-kw">f |
| c7f60 | 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 61 | n</span>.<span.class="tok-fn">ma |
| c7f80 | 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 70 | in</span>().<span.class="tok-typ |
| c7fa0 | 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 |
| c7fc0 | 3d 22 74 6f 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 | ="tok-kw">var</span>.f.=.Foo{..i |
| c7fe0 | 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 34 32 | nt.=.<span.class="tok-number">42 |
| c8000 | 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 66 20 3d 20 46 6f 6f 7b 20 2e 66 6c 6f 61 74 20 3d | </span>.};.....f.=.Foo{..float.= |
| c8020 | 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 65 | .<span.class="tok-null">undefine |
| c8040 | 64 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 62 61 72 28 26 61 6d 70 3b 66 29 3b 0a 20 20 20 | d</span>.};.....bar(&f);.... |
| c8060 | 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 |
| c8080 | 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"</ |
| c80a0 | 73 70 61 6e 3e 2c 20 2e 7b 66 2e 66 6c 6f 61 74 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | span>,..{f.float});.}..<span.cla |
| c80c0 | 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 |
| c80e0 | 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 6f 29 20 3c | s="tok-fn">bar</span>(f:.*Foo).< |
| c8100 | 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 |
| c8120 | 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 73 3d 22 74 | >.{.....f.float.=.<span.class="t |
| c8140 | 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 7d 3c 2f 63 6f 64 65 | ok-number">12.34</span>;.}</code |
| c8160 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | ></pre></figure><figure><figcapt |
| c8180 | 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 | ion.class="shell-cap">Shell</fig |
| c81a0 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 | caption><pre><samp>$.<kbd>zig.bu |
| c81c0 | 69 6c 64 2d 65 78 65 20 75 6e 64 65 66 69 6e 65 64 5f 61 63 74 69 76 65 5f 75 6e 69 6f 6e 5f 66 | ild-exe.undefined_active_union_f |
| c81e0 | 69 65 6c 64 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 75 6e 64 65 66 69 6e 65 | ield.zig</kbd>.$.<kbd>./undefine |
| c8200 | 64 5f 61 63 74 69 76 65 5f 75 6e 69 6f 6e 5f 66 69 65 6c 64 3c 2f 6b 62 64 3e 0a 76 61 6c 75 65 | d_active_union_field</kbd>.value |
| c8220 | 3a 20 31 2e 32 33 34 65 31 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | :.1.234e1.</samp></pre></figure> |
| c8240 | 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 |
| c8260 | 3e 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 3e | ><a.href="#union">union</a></li> |
| c8280 | 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 78 74 | .<li><a.href="#extern-union">ext |
| c82a0 | 65 72 6e 20 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 | ern.union</a></li>.</ul>........ |
| c82c0 | 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 4f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 2d 46 6c | ........<h3.id="Out-of-Bounds-Fl |
| c82e0 | 6f 61 74 2d 74 6f 2d 49 6e 74 65 67 65 72 2d 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | oat-to-Integer-Cast"><a.href="#t |
| c8300 | 6f 63 2d 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 | oc-Out-of-Bounds-Float-to-Intege |
| c8320 | 72 2d 43 61 73 74 22 3e 4f 75 74 20 6f 66 20 42 6f 75 6e 64 73 20 46 6c 6f 61 74 20 74 6f 20 49 | r-Cast">Out.of.Bounds.Float.to.I |
| c8340 | 6e 74 65 67 65 72 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 | nteger.Cast</a>.<a.class="hdr".h |
| c8360 | 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 74 6f 2d 49 6e 74 | ref="#Out-of-Bounds-Float-to-Int |
| c8380 | 65 67 65 72 2d 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 | eger-Cast">..</a></h3>........<p |
| c83a0 | 3e 0a 20 20 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 | >.......This.happens.when.castin |
| c83c0 | 67 20 61 20 66 6c 6f 61 74 20 74 6f 20 61 6e 20 69 6e 74 65 67 65 72 20 77 68 65 72 65 20 74 68 | g.a.float.to.an.integer.where.th |
| c83e0 | 65 20 66 6c 6f 61 74 20 68 61 73 20 61 20 76 61 6c 75 65 20 6f 75 74 73 69 64 65 20 74 68 65 0a | e.float.has.a.value.outside.the. |
| c8400 | 20 20 20 20 20 20 69 6e 74 65 67 65 72 20 74 79 70 65 27 73 20 72 61 6e 67 65 2e 0a 20 20 20 20 | ......integer.type's.range...... |
| c8420 | 20 20 3c 2f 70 3e 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 | ..</p>.......<p>At.compile-time: |
| c8440 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 | </p>.......<figure><figcaption.c |
| c8460 | 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 | lass="zig-cap"><cite.class="file |
| c8480 | 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 6f 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 5f 66 6c | ">test_comptime_out_of_bounds_fl |
| c84a0 | 6f 61 74 5f 74 6f 5f 69 6e 74 65 67 65 72 5f 63 61 73 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | oat_to_integer_cast.zig</cite></ |
| c84c0 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | figcaption><pre><code><span.clas |
| c84e0 | 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>.{.... |
| c8500 | 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 |
| c8520 | 6e 3e 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 65 22 | n>.float:.<span.class="tok-type" |
| c8540 | 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 3d 22 74 6f 6b 2d 6e | >f32</span>.=.<span.class="tok-n |
| c8560 | 75 6d 62 65 72 22 3e 34 32 39 34 39 36 37 32 39 36 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 | umber">4294967296</span>;.....<s |
| c8580 | 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>. |
| c85a0 | 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 33 32 3c | int:.<span.class="tok-type">i32< |
| c85c0 | 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 6c 74 69 | /span>.=.<span.class="tok-builti |
| c85e0 | 6e 22 3e 40 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 3c 2f 73 70 61 6e 3e 28 66 6c 6f 61 74 29 3b 0a | n">@intFromFloat</span>(float);. |
| c8600 | 20 20 20 20 5f 20 3d 20 69 6e 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | ...._.=.int;.}</code></pre></fig |
| c8620 | 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 | ure><figure><figcaption.class="s |
| c8640 | 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | hell-cap">Shell</figcaption><pre |
| c8660 | 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 | ><samp>$.<kbd>zig.test.test_comp |
| c8680 | 74 69 6d 65 5f 6f 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 5f 66 6c 6f 61 74 5f 74 6f 5f 69 6e 74 65 | time_out_of_bounds_float_to_inte |
| c86a0 | 67 65 72 5f 63 61 73 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ger_cast.zig</kbd>.<span.class=" |
| c86c0 | 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c | sgr-1m">/home/andy/dev/zig/doc/l |
| c86e0 | 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 6f 75 74 5f 6f 66 5f 62 6f 75 6e | angref/test_comptime_out_of_boun |
| c8700 | 64 73 5f 66 6c 6f 61 74 5f 74 6f 5f 69 6e 74 65 67 65 72 5f 63 61 73 74 2e 7a 69 67 3a 33 3a 33 | ds_float_to_integer_cast.zig:3:3 |
| c8720 | 36 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e | 6:.</span><span.class="sgr-31m"> |
| c8740 | 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 73 67 72 2d 31 | error:.</span><span.class="sgr-1 |
| c8760 | 6d 22 3e 66 6c 6f 61 74 20 76 61 6c 75 65 20 27 34 32 39 34 39 36 37 32 39 36 27 20 63 61 6e 6e | m">float.value.'4294967296'.cann |
| c8780 | 6f 74 20 62 65 20 73 74 6f 72 65 64 20 69 6e 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 27 69 33 | ot.be.stored.in.integer.type.'i3 |
| c87a0 | 32 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 3a 20 69 33 32 20 3d 20 40 | 2'.</span>....const.int:.i32.=.@ |
| c87c0 | 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 28 66 6c 6f 61 74 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | intFromFloat(float);............ |
| c87e0 | 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 6c | ........................<span.cl |
| c8800 | 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 | ass="sgr-32m">^~~~~.</span>.</sa |
| c8820 | 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 | mp></pre></figure>........<p>At. |
| c8840 | 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | runtime:</p>.......<figure><figc |
| c8860 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 | aption.class="zig-cap"><cite.cla |
| c8880 | 73 73 3d 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 6f 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 5f | ss="file">runtime_out_of_bounds_ |
| c88a0 | 66 6c 6f 61 74 5f 74 6f 5f 69 6e 74 65 67 65 72 5f 63 61 73 74 2e 7a 69 67 3c 2f 63 69 74 65 3e | float_to_integer_cast.zig</cite> |
| c88c0 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </figcaption><pre><code><span.cl |
| c88e0 | 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 |
| c8900 | 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 |
| c8920 | 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. |
| c8940 | 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>.{.. |
| c8960 | 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 |
| c8980 | 6e 3e 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 65 22 | n>.float:.<span.class="tok-type" |
| c89a0 | 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 3d 22 74 6f 6b 2d 6e | >f32</span>.=.<span.class="tok-n |
| c89c0 | 75 6d 62 65 72 22 3e 34 32 39 34 39 36 37 32 39 36 3c 2f 73 70 61 6e 3e 3b 20 3c 73 70 61 6e 20 | umber">4294967296</span>;.<span. |
| c89e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 72 75 6e 74 69 6d 65 2d 6b | class="tok-comment">//.runtime-k |
| c8a00 | 6e 6f 77 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 66 6c 6f 61 74 3b 0a | nown</span>....._.=.&float;. |
| c8a20 | 20 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</ |
| c8a40 | 73 70 61 6e 3e 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 | span>.int:.<span.class="tok-type |
| c8a60 | 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- |
| c8a80 | 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 3c 2f 73 70 61 6e 3e 28 66 6c | builtin">@intFromFloat</span>(fl |
| c8aa0 | 6f 61 74 29 3b 0a 20 20 20 20 5f 20 3d 20 69 6e 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | oat);....._.=.int;.}</code></pre |
| c8ac0 | 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | ></figure><figure><figcaption.cl |
| c8ae0 | 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f | ass="shell-cap">Shell</figcaptio |
| c8b00 | 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 | n><pre><samp>$.<kbd>zig.build-ex |
| c8b20 | 65 20 72 75 6e 74 69 6d 65 5f 6f 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 5f 66 6c 6f 61 74 5f 74 6f | e.runtime_out_of_bounds_float_to |
| c8b40 | 5f 69 6e 74 65 67 65 72 5f 63 61 73 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e | _integer_cast.zig</kbd>.$.<kbd>. |
| c8b60 | 2f 72 75 6e 74 69 6d 65 5f 6f 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 5f 66 6c 6f 61 74 5f 74 6f 5f | /runtime_out_of_bounds_float_to_ |
| c8b80 | 69 6e 74 65 67 65 72 5f 63 61 73 74 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 32 30 30 34 31 34 | integer_cast</kbd>.thread.200414 |
| c8ba0 | 20 70 61 6e 69 63 3a 20 69 6e 74 65 67 65 72 20 70 61 72 74 20 6f 66 20 66 6c 6f 61 74 69 6e 67 | .panic:.integer.part.of.floating |
| c8bc0 | 20 70 6f 69 6e 74 20 76 61 6c 75 65 20 6f 75 74 20 6f 66 20 62 6f 75 6e 64 73 0a 3c 73 70 61 6e | .point.value.out.of.bounds.<span |
| c8be0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a | .class="sgr-1m">/home/andy/dev/z |
| c8c00 | 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 6f 75 74 5f 6f 66 5f 62 6f | ig/doc/langref/runtime_out_of_bo |
| c8c20 | 75 6e 64 73 5f 66 6c 6f 61 74 5f 74 6f 5f 69 6e 74 65 67 65 72 5f 63 61 73 74 2e 7a 69 67 3a 34 | unds_float_to_integer_cast.zig:4 |
| c8c40 | 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 73 67 72 2d 32 6d 22 | :22</span>:.<span.class="sgr-2m" |
| c8c60 | 3e 30 78 31 30 64 65 38 64 39 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 6f 75 74 5f | >0x10de8d9.in.main.(runtime_out_ |
| c8c80 | 6f 66 5f 62 6f 75 6e 64 73 5f 66 6c 6f 61 74 5f 74 6f 5f 69 6e 74 65 67 65 72 5f 63 61 73 74 29 | of_bounds_float_to_integer_cast) |
| c8ca0 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 3a 20 69 33 32 20 3d 20 40 69 6e | </span>.....const.int:.i32.=.@in |
| c8cc0 | 74 46 72 6f 6d 46 6c 6f 61 74 28 66 6c 6f 61 74 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | tFromFloat(float);.............. |
| c8ce0 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c | ........<span.class="sgr-32m">^< |
| c8d00 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d | /span>.<span.class="sgr-1m">/hom |
| c8d20 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 | e/andy/dev/zig/lib/std/start.zig |
| c8d40 | 3a 36 35 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 73 67 72 | :651:22</span>:.<span.class="sgr |
| c8d60 | 2d 32 6d 22 3e 30 78 31 30 64 65 32 37 32 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 | -2m">0x10de272.in.posixCallMainA |
| c8d80 | 6e 64 45 78 69 74 20 28 72 75 6e 74 69 6d 65 5f 6f 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 5f 66 6c | ndExit.(runtime_out_of_bounds_fl |
| c8da0 | 6f 61 74 5f 74 6f 5f 69 6e 74 65 67 65 72 5f 63 61 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | oat_to_integer_cast)</span>..... |
| c8dc0 | 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();............ |
| c8de0 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e | ..........<span.class="sgr-32m"> |
| c8e00 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 | ^</span>.<span.class="sgr-1m">/h |
| c8e20 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a | ome/andy/dev/zig/lib/std/start.z |
| c8e40 | 69 67 3a 32 37 31 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | ig:271:5</span>:.<span.class="sg |
| c8e60 | 72 2d 32 6d 22 3e 30 78 31 30 64 64 65 34 64 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 | r-2m">0x10dde4d.in._start.(runti |
| c8e80 | 6d 65 5f 6f 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 5f 66 6c 6f 61 74 5f 74 6f 5f 69 6e 74 65 67 65 | me_out_of_bounds_float_to_intege |
| c8ea0 | 72 5f 63 61 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 69 6c 65 20 | r_cast)</span>.....asm.volatile. |
| c8ec0 | 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 3c 73 70 61 | (switch.(native_arch).{.....<spa |
| c8ee0 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | n.class="sgr-32m">^</span>.<span |
| c8f00 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e 3e 3a 20 | .class="sgr-1m">???:?:?</span>:. |
| c8f20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 3f 3f 3f 20 | <span.class="sgr-2m">0x0.in.???. |
| c8f40 | 28 3f 3f 3f 29 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 | (???)</span>.(process.terminated |
| c8f60 | 20 62 79 20 73 69 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | .by.signal).</samp></pre></figur |
| c8f80 | 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 50 6f 69 6e 74 65 | e>................<h3.id="Pointe |
| c8fa0 | 72 2d 43 61 73 74 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 | r-Cast-Invalid-Null"><a.href="#t |
| c8fc0 | 6f 63 2d 50 6f 69 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 | oc-Pointer-Cast-Invalid-Null">Po |
| c8fe0 | 69 6e 74 65 72 20 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 | inter.Cast.Invalid.Null</a>.<a.c |
| c9000 | 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 2d 43 61 73 74 2d 49 | lass="hdr".href="#Pointer-Cast-I |
| c9020 | 6e 76 61 6c 69 64 2d 4e 75 6c 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | nvalid-Null">..</a></h3>........ |
| c9040 | 3c 70 3e 0a 20 20 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 | <p>.......This.happens.when.cast |
| c9060 | 69 6e 67 20 61 20 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 | ing.a.pointer.with.the.address.0 |
| c9080 | 20 74 6f 20 61 20 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 | .to.a.pointer.which.may.not.have |
| c90a0 | 20 74 68 65 20 61 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 | .the.address.0........For.exampl |
| c90c0 | 65 2c 20 3c 61 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 | e,.<a.href="#C-Pointers">C.Point |
| c90e0 | 65 72 73 3c 2f 61 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 | ers</a>,.<a.href="#Optional-Poin |
| c9100 | 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 3e 2c 20 61 6e 64 | ters">Optional.Pointers</a>,.and |
| c9120 | 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 6f 77 7a 65 72 6f 3c | .<a.href="#allowzero">allowzero< |
| c9140 | 2f 61 3e 20 70 6f 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 | /a>.pointers.......allow.address |
| c9160 | 20 7a 65 72 6f 2c 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 | .zero,.but.normal.<a.href="#Poin |
| c9180 | 74 65 72 73 22 3e 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 | ters">Pointers</a>.do.not....... |
| c91a0 | 20 3c 2f 70 3e 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 | .</p>.......<p>At.compile-time:< |
| c91c0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | /p>.......<figure><figcaption.cl |
| c91e0 | 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ass="zig-cap"><cite.class="file" |
| c9200 | 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 6e 75 6c 6c 5f 70 6f 69 6e | >test_comptime_invalid_null_poin |
| c9220 | 74 65 72 5f 63 61 73 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | ter_cast.zig</cite></figcaption> |
| c9240 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | <pre><code><span.class="tok-kw"> |
| c9260 | 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 6c 61 73 | comptime</span>.{.....<span.clas |
| c9280 | 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 5f 70 74 72 3a | s="tok-kw">const</span>.opt_ptr: |
| c92a0 | 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 2f 73 | .?*<span.class="tok-type">i32</s |
| c92c0 | 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 75 | pan>.=.<span.class="tok-null">nu |
| c92e0 | 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 2d | ll</span>;.....<span.class="tok- |
| c9300 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 | kw">const</span>.ptr:.*<span.cla |
| c9320 | 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 |
| c9340 | 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 2f 73 | .class="tok-builtin">@ptrCast</s |
| c9360 | 70 61 6e 3e 28 6f 70 74 5f 70 74 72 29 3b 0a 20 20 20 20 5f 20 3d 20 70 74 72 3b 0a 7d 3c 2f 63 | pan>(opt_ptr);....._.=.ptr;.}</c |
| c9380 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | ode></pre></figure><figure><figc |
| c93a0 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f | aption.class="shell-cap">Shell</ |
| c93c0 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 | figcaption><pre><samp>$.<kbd>zig |
| c93e0 | 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 6e 75 6c 6c | .test.test_comptime_invalid_null |
| c9400 | 5f 70 6f 69 6e 74 65 72 5f 63 61 73 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c | _pointer_cast.zig</kbd>.<span.cl |
| c9420 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | ass="sgr-1m">/home/andy/dev/zig/ |
| c9440 | 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 76 61 6c 69 | doc/langref/test_comptime_invali |
| c9460 | 64 5f 6e 75 6c 6c 5f 70 6f 69 6e 74 65 72 5f 63 61 73 74 2e 7a 69 67 3a 33 3a 33 32 3a 20 3c 2f | d_null_pointer_cast.zig:3:32:.</ |
| c9480 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 | span><span.class="sgr-31m">error |
| c94a0 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 6e 75 | :.</span><span.class="sgr-1m">nu |
| c94c0 | 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 33 32 27 | ll.pointer.casted.to.type.'*i32' |
| c94e0 | 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 70 74 72 3a 20 2a 69 33 32 20 3d 20 40 70 | .</span>....const.ptr:.*i32.=.@p |
| c9500 | 74 72 43 61 73 74 28 6f 70 74 5f 70 74 72 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | trCast(opt_ptr);................ |
| c9520 | 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 73 67 72 | ................<span.class="sgr |
| c9540 | 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 | -32m">^~~~~~~.</span>.</samp></p |
| c9560 | 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d | re></figure>........<p>At.runtim |
| c9580 | 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e | e:</p>.......<figure><figcaption |
| c95a0 | 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 | .class="zig-cap"><cite.class="fi |
| c95c0 | 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 6e 75 6c 6c 5f 70 6f 69 6e 74 65 72 | le">runtime_invalid_null_pointer |
| c95e0 | 5f 63 61 73 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 | _cast.zig</cite></figcaption><pr |
| c9600 | 65 3e 3c 63 6f 64 65 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 | e><code><span.class="tok-kw">pub |
| c9620 | 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 3c | </span>.<span.class="tok-kw">fn< |
| c9640 | 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 6e | /span>.<span.class="tok-fn">main |
| c9660 | 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" |
| c9680 | 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=" |
| c96a0 | 74 6f 6b 2d 6b 77 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 | tok-kw">var</span>.opt_ptr:.?*<s |
| c96c0 | 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>. |
| c96e0 | 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 73 | =.<span.class="tok-null">null</s |
| c9700 | 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 6f 70 74 5f 70 74 72 3b 0a 20 20 20 20 | pan>;....._.=.&opt_ptr;..... |
| c9720 | 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 |
| c9740 | 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 74 79 70 65 22 3e 69 | >.ptr:.*<span.class="tok-type">i |
| c9760 | 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 62 75 69 | 32</span>.=.<span.class="tok-bui |
| c9780 | 6c 74 69 6e 22 3e 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e 28 6f 70 74 5f 70 74 72 29 3b 0a | ltin">@ptrCast</span>(opt_ptr);. |
| c97a0 | 20 20 20 20 5f 20 3d 20 70 74 72 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | ...._.=.ptr;.}</code></pre></fig |
| c97c0 | 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 | ure><figure><figcaption.class="s |
| c97e0 | 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | hell-cap">Shell</figcaption><pre |
| c9800 | 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 | ><samp>$.<kbd>zig.build-exe.runt |
| c9820 | 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 6e 75 6c 6c 5f 70 6f 69 6e 74 65 72 5f 63 61 73 74 2e 7a 69 | ime_invalid_null_pointer_cast.zi |
| c9840 | 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 | g</kbd>.$.<kbd>./runtime_invalid |
| c9860 | 5f 6e 75 6c 6c 5f 70 6f 69 6e 74 65 72 5f 63 61 73 74 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 | _null_pointer_cast</kbd>.thread. |
| c9880 | 32 30 32 33 30 39 20 70 61 6e 69 63 3a 20 63 61 73 74 20 63 61 75 73 65 73 20 70 6f 69 6e 74 65 | 202309.panic:.cast.causes.pointe |
| c98a0 | 72 20 74 6f 20 62 65 20 6e 75 6c 6c 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d | r.to.be.null.<span.class="sgr-1m |
| c98c0 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 | ">/home/andy/dev/zig/doc/langref |
| c98e0 | 2f 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 6e 75 6c 6c 5f 70 6f 69 6e 74 65 72 5f 63 61 | /runtime_invalid_null_pointer_ca |
| c9900 | 73 74 2e 7a 69 67 3a 34 3a 32 33 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | st.zig:4:23</span>:.<span.class= |
| c9920 | 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 65 38 38 63 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 | "sgr-2m">0x10de88c.in.main.(runt |
| c9940 | 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 6e 75 6c 6c 5f 70 6f 69 6e 74 65 72 5f 63 61 73 74 29 3c 2f | ime_invalid_null_pointer_cast)</ |
| c9960 | 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 70 74 72 3a 20 2a 69 33 32 20 3d 20 40 70 74 72 | span>.....const.ptr:.*i32.=.@ptr |
| c9980 | 43 61 73 74 28 6f 70 74 5f 70 74 72 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | Cast(opt_ptr);.................. |
| c99a0 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 | .....<span.class="sgr-32m">^</sp |
| c99c0 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 | an>.<span.class="sgr-1m">/home/a |
| c99e0 | 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 35 | ndy/dev/zig/lib/std/start.zig:65 |
| c9a00 | 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 73 67 72 2d 32 6d | 1:22</span>:.<span.class="sgr-2m |
| c9a20 | 22 3e 30 78 31 30 64 65 32 35 32 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 | ">0x10de252.in.posixCallMainAndE |
| c9a40 | 78 69 74 20 28 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 6e 75 6c 6c 5f 70 6f 69 6e 74 65 | xit.(runtime_invalid_null_pointe |
| c9a60 | 72 5f 63 61 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 | r_cast)</span>.............root. |
| c9a80 | 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 70 | main();......................<sp |
| c9aa0 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | an.class="sgr-32m">^</span>.<spa |
| c9ac0 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f | n.class="sgr-1m">/home/andy/dev/ |
| c9ae0 | 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 37 31 3a 35 3c 2f 73 70 61 | zig/lib/std/start.zig:271:5</spa |
| c9b00 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 64 64 65 | n>:.<span.class="sgr-2m">0x10dde |
| c9b20 | 32 64 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 6e 75 | 2d.in._start.(runtime_invalid_nu |
| c9b40 | 6c 6c 5f 70 6f 69 6e 74 65 72 5f 63 61 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 | ll_pointer_cast)</span>.....asm. |
| c9b60 | 76 6f 6c 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b | volatile.(switch.(native_arch).{ |
| c9b80 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 | .....<span.class="sgr-32m">^</sp |
| c9ba0 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f | an>.<span.class="sgr-1m">???:?:? |
| c9bc0 | 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 | </span>:.<span.class="sgr-2m">0x |
| c9be0 | 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 | 0.in.???.(???)</span>.(process.t |
| c9c00 | 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 | erminated.by.signal).</samp></pr |
| c9c20 | 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 | e></figure>..................... |
| c9c40 | 20 20 3c 68 32 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 | ..<h2.id="Memory"><a.href="#toc- |
| c9c60 | 4d 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 | Memory">Memory</a>.<a.class="hdr |
| c9c80 | 22 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 32 3e 0a 0a 20 20 | ".href="#Memory">..</a></h2>.... |
| c9ca0 | 20 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 | ....<p>.......The.Zig.language.p |
| c9cc0 | 65 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 | erforms.no.memory.management.on. |
| c9ce0 | 62 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 | behalf.of.the.programmer..This.i |
| c9d00 | 73 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 | s.......why.Zig.has.no.runtime,. |
| c9d20 | 61 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 | and.why.Zig.code.works.seamlessl |
| c9d40 | 79 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 | y.in.so.many.environments,...... |
| c9d60 | 20 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 | .including.real-time.software,.o |
| c9d80 | 70 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 | perating.system.kernels,.embedde |
| c9da0 | 64 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 | d.devices,.and.......low.latency |
| c9dc0 | 20 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 | .servers..As.a.consequence,.Zig. |
| c9de0 | 70 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 | programmers.must.always.be.able. |
| c9e00 | 74 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 | to.answer.......the.question:... |
| c9e20 | 20 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 | ....</p>.......<p><a.href="#Wher |
| c9e40 | 65 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 | e-are-the-bytes">Where.are.the.b |
| c9e60 | 79 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 | ytes?</a></p>.......<p>.......Li |
| c9e80 | 6b 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 | ke.Zig,.the.C.programming.langua |
| c9ea0 | 67 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 | ge.has.manual.memory.management. |
| c9ec0 | 20 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 | .However,.unlike.Zig,.......C.ha |
| c9ee0 | 73 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 | s.a.default.allocator.-.<code>ma |
| c9f00 | 6c 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 | lloc</code>,.<code>realloc</code |
| c9f20 | 3e 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 | >,.and.<code>free</code>........ |
| c9f40 | 57 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 | When.linking.against.libc,.Zig.e |
| c9f60 | 78 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 | xposes.this.allocator.with.<code |
| c9f80 | 3e 73 74 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 2e 0a 20 20 | >std.heap.c_allocator</code>.... |
| c9fa0 | 20 20 20 20 48 6f 77 65 76 65 72 2c 20 62 79 20 63 6f 6e 76 65 6e 74 69 6f 6e 2c 20 74 68 65 72 | ....However,.by.convention,.ther |
| c9fc0 | 65 20 69 73 20 6e 6f 20 64 65 66 61 75 6c 74 20 61 6c 6c 6f 63 61 74 6f 72 20 69 6e 20 5a 69 67 | e.is.no.default.allocator.in.Zig |
| c9fe0 | 2e 20 49 6e 73 74 65 61 64 2c 20 66 75 6e 63 74 69 6f 6e 73 20 77 68 69 63 68 20 6e 65 65 64 20 | ..Instead,.functions.which.need. |
| ca000 | 74 6f 0a 20 20 20 20 20 20 61 6c 6c 6f 63 61 74 65 20 61 63 63 65 70 74 20 61 6e 20 3c 63 6f 64 | to.......allocate.accept.an.<cod |
| ca020 | 65 3e 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 2e 20 4c 69 | e>Allocator</code>.parameter..Li |
| ca040 | 6b 65 77 69 73 65 2c 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 73 20 73 75 63 68 20 61 73 0a | kewise,.data.structures.such.as. |
| ca060 | 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 2e 41 72 72 61 79 4c 69 73 74 3c 2f 63 6f 64 65 3e | ......<code>std.ArrayList</code> |
| ca080 | 20 61 63 63 65 70 74 20 61 6e 20 3c 63 6f 64 65 3e 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 | .accept.an.<code>Allocator</code |
| ca0a0 | 3e 20 70 61 72 61 6d 65 74 65 72 20 69 6e 0a 20 20 20 20 20 20 74 68 65 69 72 20 69 6e 69 74 69 | >.parameter.in.......their.initi |
| ca0c0 | 61 6c 69 7a 61 74 69 6f 6e 20 66 75 6e 63 74 69 6f 6e 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | alization.functions:.......</p>. |
| ca0e0 | 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | ......<figure><figcaption.class= |
| ca100 | 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | "zig-cap"><cite.class="file">tes |
| ca120 | 74 5f 61 6c 6c 6f 63 61 74 6f 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | t_allocator.zig</cite></figcapti |
| ca140 | 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | on><pre><code><span.class="tok-k |
| ca160 | 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 |
| ca180 | 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>(< |
| ca1a0 | 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 |
| ca1c0 | 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 |
| ca1e0 | 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 2e | w">const</span>.Allocator.=.std. |
| ca200 | 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 2d | mem.Allocator;.<span.class="tok- |
| ca220 | 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 65 | kw">const</span>.expect.=.std.te |
| ca240 | 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- |
| ca260 | 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 |
| ca280 | 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 71 | -str">"using.an.allocator&q |
| ca2a0 | 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 |
| ca2c0 | 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 6e | ok-kw">var</span>.buffer:.[<span |
| ca2e0 | 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 3c | .class="tok-number">100</span>]< |
| ca300 | 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>. |
| ca320 | 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 |
| ca340 | 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- |
| ca360 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 62 61 20 3d 20 73 74 64 2e 68 65 61 70 2e 46 69 | kw">var</span>.fba.=.std.heap.Fi |
| ca380 | 78 65 64 42 75 66 66 65 72 41 6c 6c 6f 63 61 74 6f 72 2e 69 6e 69 74 28 26 61 6d 70 3b 62 75 66 | xedBufferAllocator.init(&buf |
| ca3a0 | 66 65 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 63 | fer);.....<span.class="tok-kw">c |
| ca3c0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 20 3d 20 66 62 61 2e 61 6c 6c 6f | onst</span>.allocator.=.fba.allo |
| ca3e0 | 63 61 74 6f 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 | cator();.....<span.class="tok-kw |
| ca400 | 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 6e 20 63 6c | ">const</span>.result.=.<span.cl |
| ca420 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 63 6f 6e 63 61 74 28 61 | ass="tok-kw">try</span>.concat(a |
| ca440 | 6c 6c 6f 63 61 74 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 | llocator,.<span.class="tok-str"> |
| ca460 | 26 71 75 6f 74 3b 66 6f 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | "foo"</span>,.<span.cl |
| ca480 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 61 72 26 71 75 6f 74 3b 3c 2f 73 | ass="tok-str">"bar"</s |
| ca4a0 | 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"> |
| ca4c0 | 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 |
| ca4e0 | 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>,. |
| ca500 | 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 6f 6f 62 | <span.class="tok-str">"foob |
| ca520 | 61 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 72 65 73 75 6c 74 29 29 3b 0a 7d 0a 0a 3c 73 | ar"</span>,.result));.}..<s |
| ca540 | 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 |
| ca560 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 63 6f 6e 63 61 74 3c 2f 73 70 61 6e 3e 28 | an.class="tok-fn">concat</span>( |
| ca580 | 61 6c 6c 6f 63 61 74 6f 72 3a 20 41 6c 6c 6f 63 61 74 6f 72 2c 20 61 3a 20 5b 5d 3c 73 70 61 6e | allocator:.Allocator,.a:.[]<span |
| ca5a0 | 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 |
| ca5c0 | 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 |
| ca5e0 | 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 74 3c 2f | :.[]<span.class="tok-kw">const</ |
| ca600 | 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 3c | span>.<span.class="tok-type">u8< |
| ca620 | 2f 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 | /span>).![]<span.class="tok-type |
| ca640 | 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 73 3d 22 74 | ">u8</span>.{.....<span.class="t |
| ca660 | 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 3c 73 70 | ok-kw">const</span>.result.=.<sp |
| ca680 | 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 61 6c 6c | an.class="tok-kw">try</span>.all |
| ca6a0 | 6f 63 61 74 6f 72 2e 61 6c 6c 6f 63 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ocator.alloc(<span.class="tok-ty |
| ca6c0 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 61 2e 6c 65 6e 20 2b 20 62 2e 6c 65 6e 29 3b 0a 20 | pe">u8</span>,.a.len.+.b.len);.. |
| ca6e0 | 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 6d 65 | ...<span.class="tok-builtin">@me |
| ca700 | 6d 63 70 79 3c 2f 73 70 61 6e 3e 28 72 65 73 75 6c 74 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | mcpy</span>(result[<span.class=" |
| ca720 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 61 2e 6c 65 6e 5d 2c 20 61 29 | tok-number">0</span>..a.len],.a) |
| ca740 | 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 69 6e 22 3e | ;.....<span.class="tok-builtin"> |
| ca760 | 40 6d 65 6d 63 70 79 3c 2f 73 70 61 6e 3e 28 72 65 73 75 6c 74 5b 61 2e 6c 65 6e 2e 2e 5d 2c 20 | @memcpy</span>(result[a.len..],. |
| ca780 | 62 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 65 74 | b);.....<span.class="tok-kw">ret |
| ca7a0 | 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 3e 3c 2f 70 72 65 | urn</span>.result;.}</code></pre |
| ca7c0 | 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | ></figure><figure><figcaption.cl |
| ca7e0 | 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f | ass="shell-cap">Shell</figcaptio |
| ca800 | 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 | n><pre><samp>$.<kbd>zig.test.tes |
| ca820 | 74 5f 61 6c 6c 6f 63 61 74 6f 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 61 | t_allocator.zig</kbd>.1/1.test_a |
| ca840 | 6c 6c 6f 63 61 74 6f 72 2e 74 65 73 74 2e 75 73 69 6e 67 20 61 6e 20 61 6c 6c 6f 63 61 74 6f 72 | llocator.test.using.an.allocator |
| ca860 | 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 | ...OK.All.1.tests.passed..</samp |
| ca880 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | ></pre></figure>........<p>..... |
| ca8a0 | 20 20 49 6e 20 74 68 65 20 61 62 6f 76 65 20 65 78 61 6d 70 6c 65 2c 20 31 30 30 20 62 79 74 65 | ..In.the.above.example,.100.byte |
| ca8c0 | 73 20 6f 66 20 73 74 61 63 6b 20 6d 65 6d 6f 72 79 20 61 72 65 20 75 73 65 64 20 74 6f 20 69 6e | s.of.stack.memory.are.used.to.in |
| ca8e0 | 69 74 69 61 6c 69 7a 65 20 61 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 46 69 78 65 64 42 75 66 66 | itialize.a.......<code>FixedBuff |
| ca900 | 65 72 41 6c 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 | erAllocator</code>,.which.is.the |
| ca920 | 6e 20 70 61 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 | n.passed.to.a.function........As |
| ca940 | 20 61 20 63 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 | .a.convenience.there.is.a.global |
| ca960 | 20 3c 63 6f 64 65 3e 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 | .<code>FixedBufferAllocator</cod |
| ca980 | 65 3e 0a 20 20 20 20 20 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 71 75 69 63 6b 20 74 65 73 | e>.......available.for.quick.tes |
| ca9a0 | 74 73 20 61 74 20 3c 63 6f 64 65 3e 73 74 64 2e 74 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 61 74 6f | ts.at.<code>std.testing.allocato |
| ca9c0 | 72 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 77 69 6c 6c 20 61 6c 73 6f 20 | r</code>,.......which.will.also. |
| ca9e0 | 70 65 72 66 6f 72 6d 20 62 61 73 69 63 20 6c 65 61 6b 20 64 65 74 65 63 74 69 6f 6e 2e 0a 20 20 | perform.basic.leak.detection.... |
| caa00 | 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 69 67 20 68 61 73 | ....</p>.......<p>.......Zig.has |
| caa20 | 20 61 20 67 65 6e 65 72 61 6c 20 70 75 72 70 6f 73 65 20 61 6c 6c 6f 63 61 74 6f 72 20 61 76 61 | .a.general.purpose.allocator.ava |
| caa40 | 69 6c 61 62 6c 65 20 74 6f 20 62 65 20 69 6d 70 6f 72 74 65 64 0a 20 20 20 20 20 20 77 69 74 68 | ilable.to.be.imported.......with |
| caa60 | 20 3c 63 6f 64 65 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 | .<code>std.heap.GeneralPurposeAl |
| caa80 | 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 73 20 73 | locator</code>..However,.it.is.s |
| caaa0 | 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 6c 6f 77 | till.recommended.to.......follow |
| caac0 | 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 6c 6f 63 | .the.<a.href="#Choosing-an-Alloc |
| caae0 | 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 61 3e 20 | ator">Choosing.an.Allocator</a>. |
| cab00 | 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 33 20 69 64 3d | guide........</p>........<h3.id= |
| cab20 | 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 65 66 3d | "Choosing-an-Allocator"><a.href= |
| cab40 | 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 43 68 6f | "#toc-Choosing-an-Allocator">Cho |
| cab60 | 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 73 73 3d | osing.an.Allocator</a>.<a.class= |
| cab80 | 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 63 61 74 | "hdr".href="#Choosing-an-Allocat |
| caba0 | 6f 72 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 61 74 20 61 | or">..</a></h3>........<p>What.a |
| cabc0 | 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 6e 75 6d | llocator.to.use.depends.on.a.num |
| cabe0 | 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 77 20 63 | ber.of.factors..Here.is.a.flow.c |
| cac00 | 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 20 20 3c | hart.to.help.you.decide:.......< |
| cac20 | 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 0a 20 20 | /p>.......<ol>...........<li>... |
| cac40 | 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 6c 69 62 | ............Are.you.making.a.lib |
| cac60 | 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 63 63 65 | rary?.In.this.case,.best.to.acce |
| cac80 | 70 74 20 61 6e 20 3c 63 6f 64 65 3e 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 0a 20 20 20 | pt.an.<code>Allocator</code>.... |
| caca0 | 20 20 20 20 20 20 20 20 20 20 20 61 73 20 61 20 70 61 72 61 6d 65 74 65 72 20 61 6e 64 20 61 6c | ...........as.a.parameter.and.al |
| cacc0 | 6c 6f 77 20 79 6f 75 72 20 6c 69 62 72 61 72 79 27 73 20 75 73 65 72 73 20 74 6f 20 64 65 63 69 | low.your.library's.users.to.deci |
| cace0 | 64 65 20 77 68 61 74 20 61 6c 6c 6f 63 61 74 6f 72 20 74 6f 20 75 73 65 2e 0a 20 20 20 20 20 20 | de.what.allocator.to.use........ |
| cad00 | 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 72 65 20 79 6f 75 20 | ....</li>...........<li>Are.you. |
| cad20 | 6c 69 6e 6b 69 6e 67 20 6c 69 62 63 3f 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 3c 63 6f 64 | linking.libc?.In.this.case,.<cod |
| cad40 | 65 3e 73 74 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 | e>std.heap.c_allocator</code>.is |
| cad60 | 20 6c 69 6b 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 | .likely...............the.right. |
| cad80 | 63 68 6f 69 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 | choice,.at.least.for.your.main.a |
| cada0 | 6c 6c 6f 63 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 | llocator.</li>...........<li>... |
| cadc0 | 20 20 20 20 20 20 20 20 20 20 20 20 4e 65 65 64 20 74 6f 20 75 73 65 20 74 68 65 20 73 61 6d 65 | ............Need.to.use.the.same |
| cade0 | 20 61 6c 6c 6f 63 61 74 6f 72 20 69 6e 20 6d 75 6c 74 69 70 6c 65 20 74 68 72 65 61 64 73 3f 20 | .allocator.in.multiple.threads?. |
| cae00 | 55 73 65 20 6f 6e 65 20 6f 66 20 79 6f 75 72 20 63 68 6f 69 63 65 0a 20 20 20 20 20 20 20 20 20 | Use.one.of.your.choice.......... |
| cae20 | 20 20 20 20 20 77 72 61 70 70 65 64 20 61 72 6f 75 6e 64 20 3c 63 6f 64 65 3e 73 74 64 2e 68 65 | .....wrapped.around.<code>std.he |
| cae40 | 61 70 2e 54 68 72 65 61 64 53 61 66 65 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 0a 20 20 | ap.ThreadSafeAllocator</code>... |
| cae60 | 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 20 | ........</li>...........<li>.... |
| cae80 | 20 20 20 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 | ...........Is.the.maximum.number |
| caea0 | 20 6f 66 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 | .of.bytes.that.you.will.need.bou |
| caec0 | 6e 64 65 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 | nded.by.a.number.known.at....... |
| caee0 | 20 20 20 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 | ........<a.href="#comptime">comp |
| caf00 | 74 69 6d 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 | time</a>?.In.this.case,.use.<cod |
| caf20 | 65 3e 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 3c | e>std.heap.FixedBufferAllocator< |
| caf40 | 2f 63 6f 64 65 3e 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 | /code>............</li>......... |
| caf60 | 20 20 3c 6c 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 | ..<li>...............Is.your.pro |
| caf80 | 67 72 61 6d 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 | gram.a.command.line.application. |
| cafa0 | 77 68 69 63 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 | which.runs.from.start.to.end.wit |
| cafc0 | 68 6f 75 74 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 | hout.any.fundamental............ |
| cafe0 | 20 20 20 63 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 | ...cyclical.pattern.(such.as.a.v |
| cb000 | 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 20 73 65 | ideo.game.main.loop,.or.a.web.se |
| cb020 | 72 76 65 72 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 | rver.request.handler),.......... |
| cb040 | 20 20 20 20 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 | .....such.that.it.would.make.sen |
| cb060 | 73 65 20 74 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 | se.to.free.everything.at.once.at |
| cb080 | 20 74 68 65 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 | .the.end?...............In.this. |
| cb0a0 | 63 61 73 65 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 | case,.it.is.recommended.to.follo |
| cb0c0 | 77 20 74 68 69 73 20 70 61 74 74 65 72 6e 3a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 | w.this.pattern:.......<figure><f |
| cb0e0 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 | igcaption.class="zig-cap"><cite. |
| cb100 | 63 6c 61 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 | class="file">cli_allocation.zig< |
| cb120 | 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 | /cite></figcaption><pre><code><s |
| cb140 | 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>. |
| cb160 | 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"> |
| cb180 | 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- |
| cb1a0 | 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>);..< |
| cb1c0 | 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>.< |
| cb1e0 | 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 |
| cb200 | 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>() |
| cb220 | 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 |
| cb240 | 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"> |
| cb260 | 76 61 72 3c 2f 73 70 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 | var</span>.arena.=.std.heap.Aren |
| cb280 | 61 41 6c 6c 6f 63 61 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 | aAllocator.init(std.heap.page_al |
| cb2a0 | 6c 6f 63 61 74 6f 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 | locator);.....<span.class="tok-k |
| cb2c0 | 77 22 3e 64 65 66 65 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 | w">defer</span>.arena.deinit();. |
| cb2e0 | 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< |
| cb300 | 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 20 3d 20 61 72 65 6e 61 2e 61 6c 6c 6f 63 61 74 | /span>.allocator.=.arena.allocat |
| cb320 | 6f 72 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 | or();......<span.class="tok-kw"> |
| cb340 | 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 63 6c 61 73 73 3d 22 | const</span>.ptr.=.<span.class=" |
| cb360 | 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 63 72 65 | tok-kw">try</span>.allocator.cre |
| cb380 | 61 74 65 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 | ate(<span.class="tok-type">i32</ |
| cb3a0 | 73 70 61 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 | span>);.....std.debug.print(<spa |
| cb3c0 | 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 74 72 3d 7b 2a 7d 5c | n.class="tok-str">"ptr={*}\ |
| cb3e0 | 6e 26 71 75 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 | n"</span>,..{ptr});.}</code |
| cb400 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | ></pre></figure><figure><figcapt |
| cb420 | 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 | ion.class="shell-cap">Shell</fig |
| cb440 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 | caption><pre><samp>$.<kbd>zig.bu |
| cb460 | 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 3c 2f 6b 62 64 3e | ild-exe.cli_allocation.zig</kbd> |
| cb480 | 0a 24 20 3c 6b 62 64 3e 2e 2f 63 6c 69 5f 61 6c 6c 6f 63 61 74 69 6f 6e 3c 2f 6b 62 64 3e 0a 70 | .$.<kbd>./cli_allocation</kbd>.p |
| cb4a0 | 74 72 3d 69 33 32 40 37 66 38 36 65 36 39 35 33 30 31 30 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 | tr=i32@7f86e6953010.</samp></pre |
| cb4c0 | 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 57 68 65 6e 20 75 | ></figure>................When.u |
| cb4e0 | 73 69 6e 67 20 74 68 69 73 20 6b 69 6e 64 20 6f 66 20 61 6c 6c 6f 63 61 74 6f 72 2c 20 74 68 65 | sing.this.kind.of.allocator,.the |
| cb500 | 72 65 20 69 73 20 6e 6f 20 6e 65 65 64 20 74 6f 20 66 72 65 65 20 61 6e 79 74 68 69 6e 67 20 6d | re.is.no.need.to.free.anything.m |
| cb520 | 61 6e 75 61 6c 6c 79 2e 20 45 76 65 72 79 74 68 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 | anually..Everything............. |
| cb540 | 20 20 67 65 74 73 20 66 72 65 65 64 20 61 74 20 6f 6e 63 65 20 77 69 74 68 20 74 68 65 20 63 61 | ..gets.freed.at.once.with.the.ca |
| cb560 | 6c 6c 20 74 6f 20 3c 63 6f 64 65 3e 61 72 65 6e 61 2e 64 65 69 6e 69 74 28 29 3c 2f 63 6f 64 65 | ll.to.<code>arena.deinit()</code |
| cb580 | 3e 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 69 | >............</li>...........<li |
| cb5a0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 65 20 74 68 65 20 61 6c 6c 6f 63 61 74 69 | >...............Are.the.allocati |
| cb5c0 | 6f 6e 73 20 70 61 72 74 20 6f 66 20 61 20 63 79 63 6c 69 63 61 6c 20 70 61 74 74 65 72 6e 20 73 | ons.part.of.a.cyclical.pattern.s |
| cb5e0 | 75 63 68 20 61 73 20 61 20 76 69 64 65 6f 20 67 61 6d 65 20 6d 61 69 6e 20 6c 6f 6f 70 2c 20 6f | uch.as.a.video.game.main.loop,.o |
| cb600 | 72 20 61 20 77 65 62 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 72 76 65 72 20 72 65 71 | r.a.web...............server.req |
| cb620 | 75 65 73 74 20 68 61 6e 64 6c 65 72 3f 20 49 66 20 74 68 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 73 | uest.handler?.If.the.allocations |
| cb640 | 20 63 61 6e 20 61 6c 6c 20 62 65 20 66 72 65 65 64 20 61 74 20 6f 6e 63 65 2c 20 61 74 20 74 68 | .can.all.be.freed.at.once,.at.th |
| cb660 | 65 20 65 6e 64 20 6f 66 20 74 68 65 20 63 79 63 6c 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 | e.end.of.the.cycle,............. |
| cb680 | 20 20 66 6f 72 20 65 78 61 6d 70 6c 65 20 6f 6e 63 65 20 74 68 65 20 76 69 64 65 6f 20 67 61 6d | ..for.example.once.the.video.gam |
| cb6a0 | 65 20 66 72 61 6d 65 20 68 61 73 20 62 65 65 6e 20 66 75 6c 6c 79 20 72 65 6e 64 65 72 65 64 2c | e.frame.has.been.fully.rendered, |
| cb6c0 | 20 6f 72 20 74 68 65 20 77 65 62 20 73 65 72 76 65 72 20 72 65 71 75 65 73 74 20 68 61 73 0a 20 | .or.the.web.server.request.has.. |
| cb6e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 62 65 65 6e 20 73 65 72 76 65 64 2c 20 74 68 65 6e 20 3c | .............been.served,.then.< |
| cb700 | 63 6f 64 65 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 63 6f | code>std.heap.ArenaAllocator</co |
| cb720 | 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 20 20 | de>.is.a.great.candidate..As.... |
| cb740 | 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 20 70 | ...........demonstrated.in.the.p |
| cb760 | 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 6f 77 | revious.bullet.point,.this.allow |
| cb780 | 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 20 6f | s.you.to.free.entire.arenas.at.o |
| cb7a0 | 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 68 61 | nce................Note.also.tha |
| cb7c0 | 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 63 61 | t.if.an.upper.bound.of.memory.ca |
| cb7e0 | 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 20 20 | n.be.established,.then.......... |
| cb800 | 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 2e 68 65 61 70 2e 46 69 78 65 64 42 75 66 66 65 72 41 | .....<code>std.heap.FixedBufferA |
| cb820 | 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 61 73 20 61 | llocator</code>.can.be.used.as.a |
| cb840 | 20 66 75 72 74 68 65 72 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 | .further.optimization........... |
| cb860 | 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 20 | .</li>...........<li>........... |
| cb880 | 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 2c 20 61 6e 64 20 | ....Are.you.writing.a.test,.and. |
| cb8a0 | 79 6f 75 20 77 61 6e 74 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 3c 63 6f 64 65 3e 3c 73 70 61 | you.want.to.make.sure.<code><spa |
| cb8c0 | 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 |
| cb8e0 | 74 4f 66 4d 65 6d 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 | tOfMemory</code>...............i |
| cb900 | 73 20 68 61 6e 64 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 | s.handled.correctly?.In.this.cas |
| cb920 | 65 2c 20 75 73 65 20 3c 63 6f 64 65 3e 73 74 64 2e 74 65 73 74 69 6e 67 2e 46 61 69 6c 69 6e 67 | e,.use.<code>std.testing.Failing |
| cb940 | 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 20 20 3c 2f 6c 69 | Allocator</code>............</li |
| cb960 | 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 41 | >...........<li>...............A |
| cb980 | 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 74 68 69 73 20 63 | re.you.writing.a.test?.In.this.c |
| cb9a0 | 61 73 65 2c 20 75 73 65 20 3c 63 6f 64 65 3e 73 74 64 2e 74 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 | ase,.use.<code>std.testing.alloc |
| cb9c0 | 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 | ator</code>............</li>.... |
| cb9e0 | 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 46 69 6e 61 6c 6c | .......<li>...............Finall |
| cba00 | 79 2c 20 69 66 20 6e 6f 6e 65 20 6f 66 20 74 68 65 20 61 62 6f 76 65 20 61 70 70 6c 79 2c 20 79 | y,.if.none.of.the.above.apply,.y |
| cba20 | 6f 75 20 6e 65 65 64 20 61 20 67 65 6e 65 72 61 6c 20 70 75 72 70 6f 73 65 20 61 6c 6c 6f 63 61 | ou.need.a.general.purpose.alloca |
| cba40 | 74 6f 72 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5a 69 67 27 73 20 67 65 6e 65 72 61 6c | tor................Zig's.general |
| cba60 | 20 70 75 72 70 6f 73 65 20 61 6c 6c 6f 63 61 74 6f 72 20 69 73 20 61 76 61 69 6c 61 62 6c 65 20 | .purpose.allocator.is.available. |
| cba80 | 61 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 74 61 6b 65 73 20 61 20 3c 61 20 68 72 | as.a.function.that.takes.a.<a.hr |
| cbaa0 | 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 0a 20 20 20 20 | ef="#comptime">comptime</a>..... |
| cbac0 | 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 73 74 72 75 | ..........<a.href="#struct">stru |
| cbae0 | 63 74 3c 2f 61 3e 20 6f 66 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 | ct</a>.of.configuration.options. |
| cbb00 | 61 6e 64 20 72 65 74 75 72 6e 73 20 61 20 74 79 70 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | and.returns.a.type.............. |
| cbb20 | 20 20 47 65 6e 65 72 61 6c 6c 79 2c 20 79 6f 75 20 77 69 6c 6c 20 73 65 74 20 75 70 20 6f 6e 65 | ..Generally,.you.will.set.up.one |
| cbb40 | 20 3c 63 6f 64 65 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 | .<code>std.heap.GeneralPurposeAl |
| cbb60 | 6c 6f 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 | locator</code>.in............... |
| cbb80 | 79 6f 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 | your.main.function,.and.then.pas |
| cbba0 | 73 20 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 | s.it.or.sub-allocators.around.to |
| cbbc0 | 20 76 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 | .various.parts.of.your.......... |
| cbbe0 | 20 20 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 | .....application............</li |
| cbc00 | 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 59 | >...........<li>...............Y |
| cbc20 | 6f 75 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 | ou.can.also.consider.<a.href="#I |
| cbc40 | 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 49 6d 70 6c 65 6d | mplementing-an-Allocator">Implem |
| cbc60 | 65 6e 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 | enting.an.Allocator</a>......... |
| cbc80 | 20 20 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 | ...</li>.......</ol>............ |
| cbca0 | 20 20 20 3c 68 33 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 | ...<h3.id="Where-are-the-bytes"> |
| cbcc0 | 3c 61 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 | <a.href="#toc-Where-are-the-byte |
| cbce0 | 73 22 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 | s">Where.are.the.bytes?</a>.<a.c |
| cbd00 | 6c 61 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 | lass="hdr".href="#Where-are-the- |
| cbd20 | 62 79 74 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 53 74 72 | bytes">..</a></h3>........<p>Str |
| cbd40 | 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | ing.literals.such.as.<code><span |
| cbd60 | 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 |
| cbd80 | 74 3b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 72 65 20 69 6e 20 74 68 65 20 67 6c 6f 62 | t;</span></code>.are.in.the.glob |
| cbda0 | 61 6c 20 63 6f 6e 73 74 61 6e 74 20 64 61 74 61 20 73 65 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 | al.constant.data.section........ |
| cbdc0 | 54 68 69 73 20 69 73 20 77 68 79 20 69 74 20 69 73 20 61 6e 20 65 72 72 6f 72 20 74 6f 20 70 61 | This.is.why.it.is.an.error.to.pa |
| cbde0 | 73 73 20 61 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 74 6f 20 61 20 6d 75 74 61 62 6c 65 | ss.a.string.literal.to.a.mutable |
| cbe00 | 20 73 6c 69 63 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 | .slice,.like.this:.......</p>... |
| cbe20 | 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a | ....<figure><figcaption.class="z |
| cbe40 | 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f | ig-cap"><cite.class="file">test_ |
| cbe60 | 73 74 72 69 6e 67 5f 6c 69 74 65 72 61 6c 5f 74 6f 5f 73 6c 69 63 65 2e 7a 69 67 3c 2f 63 69 74 | string_literal_to_slice.zig</cit |
| cbe80 | 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | e></figcaption><pre><code><span. |
| cbea0 | 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 |
| cbec0 | 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 20 5b 5d 3c 73 | lass="tok-fn">foo</span>(s:.[]<s |
| cbee0 | 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>). |
| cbf00 | 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 |
| cbf20 | 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 73 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>.{....._.=.s;.}..<span.class=" |
| cbf40 | 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= |
| cbf60 | 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 61 6c 20 74 | "tok-str">"string.literal.t |
| cbf80 | 6f 20 6d 75 74 61 62 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 | o.mutable.slice"</span>.{.. |
| cbfa0 | 20 20 20 66 6f 6f 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 | ...foo(<span.class="tok-str">&qu |
| cbfc0 | 6f 74 3b 68 65 6c 6c 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 | ot;hello"</span>);.}</code> |
| cbfe0 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | </pre></figure><figure><figcapti |
| cc000 | 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 | on.class="shell-cap">Shell</figc |
| cc020 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 | aption><pre><samp>$.<kbd>zig.tes |
| cc040 | 74 20 74 65 73 74 5f 73 74 72 69 6e 67 5f 6c 69 74 65 72 61 6c 5f 74 6f 5f 73 6c 69 63 65 2e 7a | t.test_string_literal_to_slice.z |
| cc060 | 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 | ig</kbd>.<span.class="sgr-1m">/h |
| cc080 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 | ome/andy/dev/zig/doc/langref/tes |
| cc0a0 | 74 5f 73 74 72 69 6e 67 5f 6c 69 74 65 72 61 6c 5f 74 6f 5f 73 6c 69 63 65 2e 7a 69 67 3a 36 3a | t_string_literal_to_slice.zig:6: |
| cc0c0 | 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e | 9:.</span><span.class="sgr-31m"> |
| cc0e0 | 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 73 67 72 2d 31 | error:.</span><span.class="sgr-1 |
| cc100 | 6d 22 3e 65 78 70 65 63 74 65 64 20 74 79 70 65 20 27 5b 5d 75 38 27 2c 20 66 6f 75 6e 64 20 27 | m">expected.type.'[]u8',.found.' |
| cc120 | 2a 63 6f 6e 73 74 20 5b 35 3a 30 5d 75 38 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 66 6f 6f 28 26 | *const.[5:0]u8'.</span>....foo(& |
| cc140 | 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | quot;hello");.........<span |
| cc160 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e | .class="sgr-32m">^~~~~~~.</span> |
| cc180 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | <span.class="sgr-1m">/home/andy/ |
| cc1a0 | 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 73 74 72 69 6e 67 5f | dev/zig/doc/langref/test_string_ |
| cc1c0 | 6c 69 74 65 72 61 6c 5f 74 6f 5f 73 6c 69 63 65 2e 7a 69 67 3a 36 3a 39 3a 20 3c 2f 73 70 61 6e | literal_to_slice.zig:6:9:.</span |
| cc1e0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 | ><span.class="sgr-36m">note:.</s |
| cc200 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 63 61 73 74 20 64 69 | pan><span.class="sgr-1m">cast.di |
| cc220 | 73 63 61 72 64 73 20 63 6f 6e 73 74 20 71 75 61 6c 69 66 69 65 72 0a 3c 2f 73 70 61 6e 3e 3c 73 | scards.const.qualifier.</span><s |
| cc240 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | pan.class="sgr-1m">/home/andy/de |
| cc260 | 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 73 74 72 69 6e 67 5f 6c 69 | v/zig/doc/langref/test_string_li |
| cc280 | 74 65 72 61 6c 5f 74 6f 5f 73 6c 69 63 65 2e 7a 69 67 3a 31 3a 31 31 3a 20 3c 2f 73 70 61 6e 3e | teral_to_slice.zig:1:11:.</span> |
| cc2a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 | <span.class="sgr-36m">note:.</sp |
| cc2c0 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 70 61 72 61 6d 65 74 65 | an><span.class="sgr-1m">paramete |
| cc2e0 | 72 20 74 79 70 65 20 64 65 63 6c 61 72 65 64 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 66 6e 20 66 | r.type.declared.here.</span>fn.f |
| cc300 | 6f 6f 28 73 3a 20 5b 5d 75 38 29 20 76 6f 69 64 20 7b 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 | oo(s:.[]u8).void.{...........<sp |
| cc320 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a | an.class="sgr-32m">^~~~.</span>. |
| cc340 | 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 | </samp></pre></figure>........<p |
| cc360 | 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 20 63 | >However.if.you.make.the.slice.c |
| cc380 | 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 20 20 | onstant,.then.it.works:</p>..... |
| cc3a0 | 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 | ..<figure><figcaption.class="zig |
| cc3c0 | 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 74 | -cap"><cite.class="file">test_st |
| cc3e0 | 72 69 6e 67 5f 6c 69 74 65 72 61 6c 5f 74 6f 5f 63 6f 6e 73 74 5f 73 6c 69 63 65 2e 7a 69 67 3c | ring_literal_to_const_slice.zig< |
| cc400 | 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 | /cite></figcaption><pre><code><s |
| cc420 | 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 |
| cc440 | 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 20 | an.class="tok-fn">foo</span>(s:. |
| cc460 | 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 |
| cc480 | 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 |
| cc4a0 | 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 |
| cc4c0 | 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 73 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | d</span>.{....._.=.s;.}..<span.c |
| cc4e0 | 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. |
| cc500 | 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 69 6e 67 20 6c 69 74 | class="tok-str">"string.lit |
| cc520 | 65 72 61 6c 20 74 6f 20 63 6f 6e 73 74 61 6e 74 20 73 6c 69 63 65 26 71 75 6f 74 3b 3c 2f 73 70 | eral.to.constant.slice"</sp |
| cc540 | 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | an>.{.....foo(<span.class="tok-s |
| cc560 | 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 29 3b 0a 7d | tr">"hello"</span>);.} |
| cc580 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 | </code></pre></figure><figure><f |
| cc5a0 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c | igcaption.class="shell-cap">Shel |
| cc5c0 | 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e | l</figcaption><pre><samp>$.<kbd> |
| cc5e0 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 73 74 72 69 6e 67 5f 6c 69 74 65 72 61 6c 5f 74 6f 5f | zig.test.test_string_literal_to_ |
| cc600 | 63 6f 6e 73 74 5f 73 6c 69 63 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 | const_slice.zig</kbd>.1/1.test_s |
| cc620 | 74 72 69 6e 67 5f 6c 69 74 65 72 61 6c 5f 74 6f 5f 63 6f 6e 73 74 5f 73 6c 69 63 65 2e 74 65 73 | tring_literal_to_const_slice.tes |
| cc640 | 74 2e 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 | t.string.literal.to.constant.sli |
| cc660 | 63 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 | ce...OK.All.1.tests.passed..</sa |
| cc680 | 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | mp></pre></figure>........<p>... |
| cc6a0 | 20 20 20 20 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 | ....Just.like.string.literals,.< |
| cc6c0 | 63 6f 64 65 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 | code><span.class="tok-kw">const< |
| cc6e0 | 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 2c 20 77 68 65 6e | /span></code>.declarations,.when |
| cc700 | 20 74 68 65 20 76 61 6c 75 65 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 3c 61 20 68 72 65 66 3d 22 | .the.value.is.known.at.<a.href=" |
| cc720 | 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 20 20 20 20 20 61 | #comptime">comptime</a>,.......a |
| cc740 | 72 65 20 73 74 6f 72 65 64 20 69 6e 20 74 68 65 20 67 6c 6f 62 61 6c 20 63 6f 6e 73 74 61 6e 74 | re.stored.in.the.global.constant |
| cc760 | 20 64 61 74 61 20 73 65 63 74 69 6f 6e 2e 20 41 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 43 6f | .data.section..Also.<a.href="#Co |
| cc780 | 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 70 69 6c 65 20 54 69 | mpile-Time-Variables">Compile.Ti |
| cc7a0 | 6d 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 20 61 72 65 20 73 74 6f 72 65 64 0a 20 20 20 20 | me.Variables</a>.are.stored..... |
| cc7c0 | 20 20 69 6e 20 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 | ..in.the.global.constant.data.se |
| cc7e0 | 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 20 20 | ction........</p>.......<p>..... |
| cc800 | 20 20 3c 63 6f 64 65 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 | ..<code><span.class="tok-kw">var |
| cc820 | 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 6e 73 20 69 6e 73 69 | </span></code>.declarations.insi |
| cc840 | 64 65 20 66 75 6e 63 74 69 6f 6e 73 20 61 72 65 20 73 74 6f 72 65 64 20 69 6e 20 74 68 65 20 66 | de.functions.are.stored.in.the.f |
| cc860 | 75 6e 63 74 69 6f 6e 27 73 20 73 74 61 63 6b 20 66 72 61 6d 65 2e 20 4f 6e 63 65 20 61 20 66 75 | unction's.stack.frame..Once.a.fu |
| cc880 | 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 2c 0a 20 20 20 20 20 20 61 6e 79 20 3c 61 20 68 72 65 | nction.returns,.......any.<a.hre |
| cc8a0 | 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 20 74 6f 20 76 61 | f="#Pointers">Pointers</a>.to.va |
| cc8c0 | 72 69 61 62 6c 65 73 20 69 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 27 73 20 73 74 61 63 6b 20 | riables.in.the.function's.stack. |
| cc8e0 | 66 72 61 6d 65 20 62 65 63 6f 6d 65 20 69 6e 76 61 6c 69 64 20 72 65 66 65 72 65 6e 63 65 73 2c | frame.become.invalid.references, |
| cc900 | 20 61 6e 64 0a 20 20 20 20 20 20 64 65 72 65 66 65 72 65 6e 63 69 6e 67 20 74 68 65 6d 20 62 65 | .and.......dereferencing.them.be |
| cc920 | 63 6f 6d 65 73 20 75 6e 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 | comes.unchecked.<a.href="#Illega |
| cc940 | 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e | l-Behavior">Illegal.Behavior</a> |
| cc960 | 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 6f | ........</p>.......<p>.......<co |
| cc980 | 64 65 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 | de><span.class="tok-kw">var</spa |
| cc9a0 | 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 65 20 74 6f | n></code>.declarations.at.the.to |
| cc9c0 | 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 63 74 22 3e | p.level.or.in.<a.href="#struct"> |
| cc9e0 | 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 73 74 6f 72 | struct</a>.declarations.are.stor |
| cca00 | 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 73 65 63 74 | ed.in.the.global.......data.sect |
| cca20 | 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>....... |
| cca40 | 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 61 74 65 64 | The.location.of.memory.allocated |
| cca60 | 20 77 69 74 68 20 3c 63 6f 64 65 3e 61 6c 6c 6f 63 61 74 6f 72 2e 61 6c 6c 6f 63 3c 2f 63 6f 64 | .with.<code>allocator.alloc</cod |
| cca80 | 65 3e 20 6f 72 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 61 6c 6c 6f 63 61 74 6f 72 2e 63 72 65 61 | e>.or.......<code>allocator.crea |
| ccaa0 | 74 65 3c 2f 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 | te</code>.is.determined.by.the.a |
| ccac0 | 6c 6c 6f 63 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 | llocator's.implementation....... |
| ccae0 | 20 3c 2f 70 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 | .</p>.......<p>TODO:.thread.loca |
| ccb00 | 6c 20 76 61 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 | l.variables</p>...............<h |
| ccb20 | 33 20 69 64 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 | 3.id="Implementing-an-Allocator" |
| ccb40 | 3e 3c 61 20 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 | ><a.href="#toc-Implementing-an-A |
| ccb60 | 6c 6c 6f 63 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 | llocator">Implementing.an.Alloca |
| ccb80 | 74 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 49 6d | tor</a>.<a.class="hdr".href="#Im |
| ccba0 | 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 c2 a7 3c 2f 61 3e 3c | plementing-an-Allocator">..</a>< |
| ccbc0 | 2f 68 33 3e 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 | /h3>........<p>Zig.programmers.c |
| ccbe0 | 61 6e 20 69 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 | an.implement.their.own.allocator |
| ccc00 | 73 20 62 79 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 | s.by.fulfilling.the.Allocator.in |
| ccc20 | 74 65 72 66 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 | terface........In.order.to.do.th |
| ccc40 | 69 73 20 6f 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 | is.one.must.read.carefully.the.d |
| ccc60 | 6f 63 75 6d 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 | ocumentation.comments.in.std/mem |
| ccc80 | 2e 7a 69 67 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 | .zig.and.......then.supply.a.<co |
| ccca0 | 64 65 3e 61 6c 6c 6f 63 46 6e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 61 20 3c 63 6f 64 65 3e 72 65 | de>allocFn</code>.and.a.<code>re |
| cccc0 | 73 69 7a 65 46 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 20 | sizeFn</code>........</p>....... |
| ccce0 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 61 72 65 20 6d 61 6e 79 20 65 78 61 6d 70 6c 65 | <p>.......There.are.many.example |
| ccd00 | 20 61 6c 6c 6f 63 61 74 6f 72 73 20 74 6f 20 6c 6f 6f 6b 20 61 74 20 66 6f 72 20 69 6e 73 70 69 | .allocators.to.look.at.for.inspi |
| ccd20 | 72 61 74 69 6f 6e 2e 20 4c 6f 6f 6b 20 61 74 20 73 74 64 2f 68 65 61 70 2e 7a 69 67 20 61 6e 64 | ration..Look.at.std/heap.zig.and |
| ccd40 | 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 2e 68 65 61 70 2e 47 65 6e 65 72 61 6c 50 75 72 | .......<code>std.heap.GeneralPur |
| ccd60 | 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 70 3e | poseAllocator</code>........</p> |
| ccd80 | 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 48 65 61 70 2d 41 6c 6c 6f | ...............<h3.id="Heap-Allo |
| ccda0 | 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 48 65 | cation-Failure"><a.href="#toc-He |
| ccdc0 | 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 6c 6f | ap-Allocation-Failure">Heap.Allo |
| ccde0 | 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 64 72 | cation.Failure</a>.<a.class="hdr |
| cce00 | 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 72 65 | ".href="#Heap-Allocation-Failure |
| cce20 | 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 4d | ">..</a></h3>........<p>.......M |
| cce40 | 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 73 65 | any.programming.languages.choose |
| cce60 | 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 68 65 | .to.handle.the.possibility.of.he |
| cce80 | 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 20 75 | ap.allocation.failure.by.......u |
| ccea0 | 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 6e 76 | nconditionally.crashing..By.conv |
| ccec0 | 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 20 63 | ention,.Zig.programmers.do.not.c |
| ccee0 | 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 69 73 | onsider.this.to.be.a.......satis |
| ccf00 | 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 64 65 | factory.solution..Instead,.<code |
| ccf20 | 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 61 | ><span.class="tok-kw">error</spa |
| ccf40 | 6e 3e 2e 4f 75 74 4f 66 4d 65 6d 6f 72 79 3c 2f 63 6f 64 65 3e 20 72 65 70 72 65 73 65 6e 74 73 | n>.OutOfMemory</code>.represents |
| ccf60 | 0a 20 20 20 20 20 20 68 65 61 70 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 66 61 69 6c 75 72 65 2c 20 | .......heap.allocation.failure,. |
| ccf80 | 61 6e 64 20 5a 69 67 20 6c 69 62 72 61 72 69 65 73 20 72 65 74 75 72 6e 20 74 68 69 73 20 65 72 | and.Zig.libraries.return.this.er |
| ccfa0 | 72 6f 72 20 63 6f 64 65 20 77 68 65 6e 65 76 65 72 20 68 65 61 70 20 61 6c 6c 6f 63 61 74 69 6f | ror.code.whenever.heap.allocatio |
| ccfc0 | 6e 0a 20 20 20 20 20 20 66 61 69 6c 75 72 65 20 70 72 65 76 65 6e 74 65 64 20 61 6e 20 6f 70 65 | n.......failure.prevented.an.ope |
| ccfe0 | 72 61 74 69 6f 6e 20 66 72 6f 6d 20 63 6f 6d 70 6c 65 74 69 6e 67 20 73 75 63 63 65 73 73 66 75 | ration.from.completing.successfu |
| cd000 | 6c 6c 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 20 20 | lly........</p>.......<p>....... |
| cd020 | 53 6f 6d 65 20 68 61 76 65 20 61 72 67 75 65 64 20 74 68 61 74 20 62 65 63 61 75 73 65 20 73 6f | Some.have.argued.that.because.so |
| cd040 | 6d 65 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 73 20 73 75 63 68 20 61 73 20 4c 69 6e | me.operating.systems.such.as.Lin |
| cd060 | 75 78 20 68 61 76 65 20 6d 65 6d 6f 72 79 20 6f 76 65 72 63 6f 6d 6d 69 74 20 65 6e 61 62 6c 65 | ux.have.memory.overcommit.enable |
| cd080 | 64 20 62 79 0a 20 20 20 20 20 20 64 65 66 61 75 6c 74 2c 20 69 74 20 69 73 20 70 6f 69 6e 74 6c | d.by.......default,.it.is.pointl |
| cd0a0 | 65 73 73 20 74 6f 20 68 61 6e 64 6c 65 20 68 65 61 70 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 66 61 | ess.to.handle.heap.allocation.fa |
| cd0c0 | 69 6c 75 72 65 2e 20 54 68 65 72 65 20 61 72 65 20 6d 61 6e 79 20 70 72 6f 62 6c 65 6d 73 20 77 | ilure..There.are.many.problems.w |
| cd0e0 | 69 74 68 20 74 68 69 73 20 72 65 61 73 6f 6e 69 6e 67 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | ith.this.reasoning:.......</p>.. |
| cd100 | 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 4f 6e 6c 79 20 73 6f 6d | .....<ul>...........<li>Only.som |
| cd120 | 65 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 73 20 68 61 76 65 20 61 6e 20 6f 76 65 72 | e.operating.systems.have.an.over |
| cd140 | 63 6f 6d 6d 69 74 20 66 65 61 74 75 72 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 | commit.feature................<u |
| cd160 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 4c 69 6e 75 78 20 68 | l>...................<li>Linux.h |
| cd180 | 61 73 20 69 74 20 65 6e 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 2c 20 62 75 74 20 69 74 | as.it.enabled.by.default,.but.it |
| cd1a0 | 20 69 73 20 63 6f 6e 66 69 67 75 72 61 62 6c 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | .is.configurable.</li>.......... |
| cd1c0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 57 69 6e 64 6f 77 73 20 64 6f 65 73 20 6e 6f 74 20 6f 76 | .........<li>Windows.does.not.ov |
| cd1e0 | 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 20 20 20 20 20 | ercommit.</li>.................. |
| cd200 | 20 3c 6c 69 3e 45 6d 62 65 64 64 65 64 20 73 79 73 74 65 6d 73 20 64 6f 20 6e 6f 74 20 68 61 76 | .<li>Embedded.systems.do.not.hav |
| cd220 | 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 20 | e.overcommit.</li>.............. |
| cd240 | 20 20 20 20 20 3c 6c 69 3e 48 6f 62 62 79 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 73 | .....<li>Hobby.operating.systems |
| cd260 | 20 6d 61 79 20 6f 72 20 6d 61 79 20 6e 6f 74 20 68 61 76 65 20 6f 76 65 72 63 6f 6d 6d 69 74 2e | .may.or.may.not.have.overcommit. |
| cd280 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 | </li>...............</ul>....... |
| cd2a0 | 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 20 20 20 20 20 | ....</li>...........<li>........ |
| cd2c0 | 20 20 20 20 20 20 20 46 6f 72 20 72 65 61 6c 2d 74 69 6d 65 20 73 79 73 74 65 6d 73 2c 20 6e 6f | .......For.real-time.systems,.no |
| cd2e0 | 74 20 6f 6e 6c 79 20 69 73 20 74 68 65 72 65 20 6e 6f 20 6f 76 65 72 63 6f 6d 6d 69 74 2c 20 62 | t.only.is.there.no.overcommit,.b |
| cd300 | 75 74 20 74 79 70 69 63 61 6c 6c 79 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 61 6d 6f 75 6e 74 0a | ut.typically.the.maximum.amount. |
| cd320 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 66 20 6d 65 6d 6f 72 79 20 70 65 72 20 61 70 70 6c | ..............of.memory.per.appl |
| cd340 | 69 63 61 74 69 6f 6e 20 69 73 20 64 65 74 65 72 6d 69 6e 65 64 20 61 68 65 61 64 20 6f 66 20 74 | ication.is.determined.ahead.of.t |
| cd360 | 69 6d 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 20 20 20 20 3c | ime............</li>...........< |
| cd380 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 57 68 65 6e 20 77 72 69 74 69 6e 67 20 61 | li>...............When.writing.a |
| cd3a0 | 20 6c 69 62 72 61 72 79 2c 20 6f 6e 65 20 6f 66 20 74 68 65 20 6d 61 69 6e 20 67 6f 61 6c 73 20 | .library,.one.of.the.main.goals. |
| cd3c0 | 69 73 20 63 6f 64 65 20 72 65 75 73 65 2e 20 42 79 20 6d 61 6b 69 6e 67 20 63 6f 64 65 20 68 61 | is.code.reuse..By.making.code.ha |
| cd3e0 | 6e 64 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 66 61 | ndle...............allocation.fa |
| cd400 | 69 6c 75 72 65 20 63 6f 72 72 65 63 74 6c 79 2c 20 61 20 6c 69 62 72 61 72 79 20 62 65 63 6f 6d | ilure.correctly,.a.library.becom |
| cd420 | 65 73 20 65 6c 69 67 69 62 6c 65 20 74 6f 20 62 65 20 72 65 75 73 65 64 20 69 6e 0a 20 20 20 20 | es.eligible.to.be.reused.in..... |
| cd440 | 20 20 20 20 20 20 20 20 20 20 6d 6f 72 65 20 63 6f 6e 74 65 78 74 73 2e 0a 20 20 20 20 20 20 20 | ..........more.contexts......... |
| cd460 | 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>......... |
| cd480 | 20 20 20 20 20 20 41 6c 74 68 6f 75 67 68 20 73 6f 6d 65 20 73 6f 66 74 77 61 72 65 20 68 61 73 | ......Although.some.software.has |
| cd4a0 | 20 67 72 6f 77 6e 20 74 6f 20 64 65 70 65 6e 64 20 6f 6e 20 6f 76 65 72 63 6f 6d 6d 69 74 20 62 | .grown.to.depend.on.overcommit.b |
| cd4c0 | 65 69 6e 67 20 65 6e 61 62 6c 65 64 2c 20 69 74 73 20 65 78 69 73 74 65 6e 63 65 0a 20 20 20 20 | eing.enabled,.its.existence..... |
| cd4e0 | 20 20 20 20 20 20 20 20 20 20 69 73 20 74 68 65 20 73 6f 75 72 63 65 20 6f 66 20 63 6f 75 6e 74 | ..........is.the.source.of.count |
| cd500 | 6c 65 73 73 20 75 73 65 72 20 65 78 70 65 72 69 65 6e 63 65 20 64 69 73 61 73 74 65 72 73 2e 20 | less.user.experience.disasters.. |
| cd520 | 57 68 65 6e 20 61 20 73 79 73 74 65 6d 20 77 69 74 68 20 6f 76 65 72 63 6f 6d 6d 69 74 20 65 6e | When.a.system.with.overcommit.en |
| cd540 | 61 62 6c 65 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 75 63 68 20 61 73 20 4c 69 6e | abled,...............such.as.Lin |
| cd560 | 75 78 20 6f 6e 20 64 65 66 61 75 6c 74 20 73 65 74 74 69 6e 67 73 2c 20 63 6f 6d 65 73 20 63 6c | ux.on.default.settings,.comes.cl |
| cd580 | 6f 73 65 20 74 6f 20 6d 65 6d 6f 72 79 20 65 78 68 61 75 73 74 69 6f 6e 2c 20 74 68 65 20 73 79 | ose.to.memory.exhaustion,.the.sy |
| cd5a0 | 73 74 65 6d 20 6c 6f 63 6b 73 20 75 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6e 64 20 | stem.locks.up...............and. |
| cd5c0 | 62 65 63 6f 6d 65 73 20 75 6e 75 73 61 62 6c 65 2e 20 41 74 20 74 68 69 73 20 70 6f 69 6e 74 2c | becomes.unusable..At.this.point, |
| cd5e0 | 20 74 68 65 20 4f 4f 4d 20 4b 69 6c 6c 65 72 20 73 65 6c 65 63 74 73 20 61 6e 20 61 70 70 6c 69 | .the.OOM.Killer.selects.an.appli |
| cd600 | 63 61 74 69 6f 6e 20 74 6f 20 6b 69 6c 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 61 73 | cation.to.kill...............bas |
| cd620 | 65 64 20 6f 6e 20 68 65 75 72 69 73 74 69 63 73 2e 20 54 68 69 73 20 6e 6f 6e 2d 64 65 74 65 72 | ed.on.heuristics..This.non-deter |
| cd640 | 6d 69 6e 69 73 74 69 63 20 64 65 63 69 73 69 6f 6e 20 6f 66 74 65 6e 20 72 65 73 75 6c 74 73 20 | ministic.decision.often.results. |
| cd660 | 69 6e 20 61 6e 20 69 6d 70 6f 72 74 61 6e 74 20 70 72 6f 63 65 73 73 0a 20 20 20 20 20 20 20 20 | in.an.important.process......... |
| cd680 | 20 20 20 20 20 20 62 65 69 6e 67 20 6b 69 6c 6c 65 64 2c 20 61 6e 64 20 6f 66 74 65 6e 20 66 61 | ......being.killed,.and.often.fa |
| cd6a0 | 69 6c 73 20 74 6f 20 72 65 74 75 72 6e 20 74 68 65 20 73 79 73 74 65 6d 20 62 61 63 6b 20 74 6f | ils.to.return.the.system.back.to |
| cd6c0 | 20 77 6f 72 6b 69 6e 67 20 6f 72 64 65 72 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a | .working.order............</li>. |
| cd6e0 | 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 3c 68 33 20 69 64 | ......</ul>...............<h3.id |
| cd700 | 3d 22 52 65 63 75 72 73 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 63 75 72 | ="Recursion"><a.href="#toc-Recur |
| cd720 | 73 69 6f 6e 22 3e 52 65 63 75 72 73 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | sion">Recursion</a>.<a.class="hd |
| cd740 | 72 22 20 68 72 65 66 3d 22 23 52 65 63 75 72 73 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e | r".href="#Recursion">..</a></h3> |
| cd760 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 63 75 72 73 69 6f 6e 20 69 73 20 61 | ........<p>.......Recursion.is.a |
| cd780 | 20 66 75 6e 64 61 6d 65 6e 74 61 6c 20 74 6f 6f 6c 20 69 6e 20 6d 6f 64 65 6c 69 6e 67 20 73 6f | .fundamental.tool.in.modeling.so |
| cd7a0 | 66 74 77 61 72 65 2e 20 48 6f 77 65 76 65 72 20 69 74 20 68 61 73 20 61 6e 20 6f 66 74 65 6e 2d | ftware..However.it.has.an.often- |
| cd7c0 | 6f 76 65 72 6c 6f 6f 6b 65 64 20 70 72 6f 62 6c 65 6d 3a 0a 20 20 20 20 20 20 75 6e 62 6f 75 6e | overlooked.problem:.......unboun |
| cd7e0 | 64 65 64 20 6d 65 6d 6f 72 79 20 61 6c 6c 6f 63 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 | ded.memory.allocation........</p |
| cd800 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 63 75 72 73 69 6f 6e 20 69 73 20 61 | >.......<p>.......Recursion.is.a |
| cd820 | 6e 20 61 72 65 61 20 6f 66 20 61 63 74 69 76 65 20 65 78 70 65 72 69 6d 65 6e 74 61 74 69 6f 6e | n.area.of.active.experimentation |
| cd840 | 20 69 6e 20 5a 69 67 20 61 6e 64 20 73 6f 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e | .in.Zig.and.so.the.documentation |
| cd860 | 20 68 65 72 65 20 69 73 20 6e 6f 74 20 66 69 6e 61 6c 2e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 | .here.is.not.final........You.ca |
| cd880 | 6e 20 72 65 61 64 20 61 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f | n.read.a.......<a.href="https:// |
| cd8a0 | 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 77 6e 6c 6f 61 64 2f 30 2e 33 2e 30 2f 72 65 6c 65 61 | ziglang.org/download/0.3.0/relea |
| cd8c0 | 73 65 2d 6e 6f 74 65 73 2e 68 74 6d 6c 23 72 65 63 75 72 73 69 6f 6e 22 3e 73 75 6d 6d 61 72 79 | se-notes.html#recursion">summary |
| cd8e0 | 20 6f 66 20 72 65 63 75 72 73 69 6f 6e 20 73 74 61 74 75 73 20 69 6e 20 74 68 65 20 30 2e 33 2e | .of.recursion.status.in.the.0.3. |
| cd900 | 30 20 72 65 6c 65 61 73 65 20 6e 6f 74 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | 0.release.notes</a>........</p>. |
| cd920 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 73 68 6f 72 74 20 73 75 6d 6d 61 72 | ......<p>.......The.short.summar |
| cd940 | 79 20 69 73 20 74 68 61 74 20 63 75 72 72 65 6e 74 6c 79 20 72 65 63 75 72 73 69 6f 6e 20 77 6f | y.is.that.currently.recursion.wo |
| cd960 | 72 6b 73 20 6e 6f 72 6d 61 6c 6c 79 20 61 73 20 79 6f 75 20 77 6f 75 6c 64 20 65 78 70 65 63 74 | rks.normally.as.you.would.expect |
| cd980 | 2e 20 41 6c 74 68 6f 75 67 68 20 5a 69 67 20 63 6f 64 65 0a 20 20 20 20 20 20 69 73 20 6e 6f 74 | ..Although.Zig.code.......is.not |
| cd9a0 | 20 79 65 74 20 70 72 6f 74 65 63 74 65 64 20 66 72 6f 6d 20 73 74 61 63 6b 20 6f 76 65 72 66 6c | .yet.protected.from.stack.overfl |
| cd9c0 | 6f 77 2c 20 69 74 20 69 73 20 70 6c 61 6e 6e 65 64 20 74 68 61 74 20 61 20 66 75 74 75 72 65 20 | ow,.it.is.planned.that.a.future. |
| cd9e0 | 76 65 72 73 69 6f 6e 20 6f 66 20 5a 69 67 20 77 69 6c 6c 20 70 72 6f 76 69 64 65 0a 20 20 20 20 | version.of.Zig.will.provide..... |
| cda00 | 20 20 73 75 63 68 20 70 72 6f 74 65 63 74 69 6f 6e 2c 20 77 69 74 68 20 73 6f 6d 65 20 64 65 67 | ..such.protection,.with.some.deg |
| cda20 | 72 65 65 20 6f 66 20 63 6f 6f 70 65 72 61 74 69 6f 6e 20 66 72 6f 6d 20 5a 69 67 20 63 6f 64 65 | ree.of.cooperation.from.Zig.code |
| cda40 | 20 72 65 71 75 69 72 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 | .required........</p>........... |
| cda60 | 20 20 20 20 3c 68 33 20 69 64 3d 22 4c 69 66 65 74 69 6d 65 2d 61 6e 64 2d 4f 77 6e 65 72 73 68 | ....<h3.id="Lifetime-and-Ownersh |
| cda80 | 69 70 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4c 69 66 65 74 69 6d 65 2d 61 6e 64 2d 4f | ip"><a.href="#toc-Lifetime-and-O |
| cdaa0 | 77 6e 65 72 73 68 69 70 22 3e 4c 69 66 65 74 69 6d 65 20 61 6e 64 20 4f 77 6e 65 72 73 68 69 70 | wnership">Lifetime.and.Ownership |
| cdac0 | 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 69 66 65 74 | </a>.<a.class="hdr".href="#Lifet |
| cdae0 | 69 6d 65 2d 61 6e 64 2d 4f 77 6e 65 72 73 68 69 70 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a | ime-and-Ownership">..</a></h3>.. |
| cdb00 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 69 73 20 74 68 65 20 5a 69 67 20 70 72 | ......<p>.......It.is.the.Zig.pr |
| cdb20 | 6f 67 72 61 6d 6d 65 72 27 73 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 20 74 6f 20 65 6e 73 | ogrammer's.responsibility.to.ens |
| cdb40 | 75 72 65 20 74 68 61 74 20 61 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 70 | ure.that.a.<a.href="#Pointers">p |
| cdb60 | 6f 69 6e 74 65 72 3c 2f 61 3e 20 69 73 20 6e 6f 74 0a 20 20 20 20 20 20 61 63 63 65 73 73 65 64 | ointer</a>.is.not.......accessed |
| cdb80 | 20 77 68 65 6e 20 74 68 65 20 6d 65 6d 6f 72 79 20 70 6f 69 6e 74 65 64 20 74 6f 20 69 73 20 6e | .when.the.memory.pointed.to.is.n |
| cdba0 | 6f 20 6c 6f 6e 67 65 72 20 61 76 61 69 6c 61 62 6c 65 2e 20 4e 6f 74 65 20 74 68 61 74 20 61 20 | o.longer.available..Note.that.a. |
| cdbc0 | 3c 61 20 68 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e 73 6c 69 63 65 3c 2f 61 3e 0a 20 20 20 20 | <a.href="#Slices">slice</a>..... |
| cdbe0 | 20 20 69 73 20 61 20 66 6f 72 6d 20 6f 66 20 70 6f 69 6e 74 65 72 2c 20 69 6e 20 74 68 61 74 20 | ..is.a.form.of.pointer,.in.that. |
| cdc00 | 69 74 20 72 65 66 65 72 65 6e 63 65 73 20 6f 74 68 65 72 20 6d 65 6d 6f 72 79 2e 0a 20 20 20 20 | it.references.other.memory...... |
| cdc20 | 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 6f 72 64 65 72 20 | ..</p>.......<p>.......In.order. |
| cdc40 | 74 6f 20 70 72 65 76 65 6e 74 20 62 75 67 73 2c 20 74 68 65 72 65 20 61 72 65 20 73 6f 6d 65 20 | to.prevent.bugs,.there.are.some. |
| cdc60 | 68 65 6c 70 66 75 6c 20 63 6f 6e 76 65 6e 74 69 6f 6e 73 20 74 6f 20 66 6f 6c 6c 6f 77 20 77 68 | helpful.conventions.to.follow.wh |
| cdc80 | 65 6e 20 64 65 61 6c 69 6e 67 20 77 69 74 68 20 70 6f 69 6e 74 65 72 73 2e 0a 20 20 20 20 20 20 | en.dealing.with.pointers........ |
| cdca0 | 49 6e 20 67 65 6e 65 72 61 6c 2c 20 77 68 65 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 | In.general,.when.a.function.retu |
| cdcc0 | 72 6e 73 20 61 20 70 6f 69 6e 74 65 72 2c 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e | rns.a.pointer,.the.documentation |
| cdce0 | 20 66 6f 72 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 73 68 6f 75 6c 64 20 65 78 70 6c 61 69 6e | .for.the.function.should.explain |
| cdd00 | 0a 20 20 20 20 20 20 77 68 6f 20 22 6f 77 6e 73 22 20 74 68 65 20 70 6f 69 6e 74 65 72 2e 20 54 | .......who."owns".the.pointer..T |
| cdd20 | 68 69 73 20 63 6f 6e 63 65 70 74 20 68 65 6c 70 73 20 74 68 65 20 70 72 6f 67 72 61 6d 6d 65 72 | his.concept.helps.the.programmer |
| cdd40 | 20 64 65 63 69 64 65 20 77 68 65 6e 20 69 74 20 69 73 20 61 70 70 72 6f 70 72 69 61 74 65 2c 20 | .decide.when.it.is.appropriate,. |
| cdd60 | 69 66 20 65 76 65 72 2c 0a 20 20 20 20 20 20 74 6f 20 66 72 65 65 20 74 68 65 20 70 6f 69 6e 74 | if.ever,.......to.free.the.point |
| cdd80 | 65 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 20 20 20 46 | er........</p>.......<p>.......F |
| cdda0 | 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 27 73 20 64 6f 63 75 6d | or.example,.the.function's.docum |
| cddc0 | 65 6e 74 61 74 69 6f 6e 20 6d 61 79 20 73 61 79 20 22 63 61 6c 6c 65 72 20 6f 77 6e 73 20 74 68 | entation.may.say."caller.owns.th |
| cdde0 | 65 20 72 65 74 75 72 6e 65 64 20 6d 65 6d 6f 72 79 22 2c 20 69 6e 20 77 68 69 63 68 20 63 61 73 | e.returned.memory",.in.which.cas |
| cde00 | 65 0a 20 20 20 20 20 20 74 68 65 20 63 6f 64 65 20 74 68 61 74 20 63 61 6c 6c 73 20 74 68 65 20 | e.......the.code.that.calls.the. |
| cde20 | 66 75 6e 63 74 69 6f 6e 20 6d 75 73 74 20 68 61 76 65 20 61 20 70 6c 61 6e 20 66 6f 72 20 77 68 | function.must.have.a.plan.for.wh |
| cde40 | 65 6e 20 74 6f 20 66 72 65 65 20 74 68 61 74 20 6d 65 6d 6f 72 79 2e 20 50 72 6f 62 61 62 6c 79 | en.to.free.that.memory..Probably |
| cde60 | 20 69 6e 20 74 68 69 73 20 73 69 74 75 61 74 69 6f 6e 2c 0a 20 20 20 20 20 20 74 68 65 20 66 75 | .in.this.situation,.......the.fu |
| cde80 | 6e 63 74 69 6f 6e 20 77 69 6c 6c 20 61 63 63 65 70 74 20 61 6e 20 3c 63 6f 64 65 3e 41 6c 6c 6f | nction.will.accept.an.<code>Allo |
| cdea0 | 63 61 74 6f 72 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 | cator</code>.parameter........</ |
| cdec0 | 70 3e 0a 20 20 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 | p>.......<p>.......Sometimes.the |
| cdee0 | 20 6c 69 66 65 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 | .lifetime.of.a.pointer.may.be.mo |
| cdf00 | 72 65 20 63 6f 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 | re.complicated..For.example,.the |
| cdf20 | 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 2e 41 72 72 61 79 4c 69 73 74 28 54 29 2e 69 74 | .......<code>std.ArrayList(T).it |
| cdf40 | 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 66 65 74 69 6d 65 20 | ems</code>.slice.has.a.lifetime. |
| cdf60 | 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 75 6e 74 69 6c 20 74 | that.remains.......valid.until.t |
| cdf80 | 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 72 65 73 69 7a 65 64 | he.next.time.the.list.is.resized |
| cdfa0 | 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 77 20 65 6c 65 6d 65 | ,.such.as.by.appending.new.eleme |
| cdfc0 | 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 0a 20 20 20 20 20 20 | nts........</p>.......<p>....... |
| cdfe0 | 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 20 66 75 6e 63 74 69 | The.API.documentation.for.functi |
| ce000 | 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 68 6f 75 6c 64 20 74 | ons.and.data.structures.should.t |
| ce020 | 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 0a 20 20 20 20 20 20 | ake.great.care.to.explain....... |
| ce040 | 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 65 20 73 65 6d 61 6e | the.ownership.and.lifetime.seman |
| ce060 | 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 69 70 20 64 65 74 65 | tics.of.pointers..Ownership.dete |
| ce080 | 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 74 79 20 69 74 0a 20 | rmines.whose.responsibility.it.. |
| ce0a0 | 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 79 20 72 65 66 65 72 | .....is.to.free.the.memory.refer |
| ce0c0 | 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 20 6c 69 66 65 74 69 | enced.by.the.pointer,.and.lifeti |
| ce0e0 | 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 74 20 77 68 69 63 68 | me.determines.the.point.at.which |
| ce100 | 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 20 69 6e 61 63 63 65 | .......the.memory.becomes.inacce |
| ce120 | 73 73 69 62 6c 65 20 28 6c 65 73 74 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 | ssible.(lest.<a.href="#Illegal-B |
| ce140 | 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 20 6f 63 | ehavior">Illegal.Behavior</a>.oc |
| ce160 | 63 75 72 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 0a | cur)........</p>................ |
| ce180 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 43 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 | ......<h2.id="Compile-Variables" |
| ce1a0 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 | ><a.href="#toc-Compile-Variables |
| ce1c0 | 22 3e 43 6f 6d 70 69 6c 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | ">Compile.Variables</a>.<a.class |
| ce1e0 | 3d 22 68 64 72 22 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 | ="hdr".href="#Compile-Variables" |
| ce200 | 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 43 6f | >..</a></h2>........<p>.......Co |
| ce220 | 6d 70 69 6c 65 20 76 61 72 69 61 62 6c 65 73 20 61 72 65 20 61 63 63 65 73 73 69 62 6c 65 20 62 | mpile.variables.are.accessible.b |
| ce240 | 79 20 69 6d 70 6f 72 74 69 6e 67 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | y.importing.the.<code><span.clas |
| ce260 | 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"< |
| ce280 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 70 61 63 6b 61 67 65 2c 0a 20 20 20 20 20 20 77 68 69 | /span></code>.package,.......whi |
| ce2a0 | 63 68 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 6d 61 6b 65 73 20 61 76 61 69 6c 61 62 6c 65 20 | ch.the.compiler.makes.available. |
| ce2c0 | 74 6f 20 65 76 65 72 79 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 2e 20 49 74 20 63 6f 6e | to.every.Zig.source.file..It.con |
| ce2e0 | 74 61 69 6e 73 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 63 6f 6e 73 74 61 6e | tains.......compile-time.constan |
| ce300 | 74 73 20 73 75 63 68 20 61 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 74 61 72 67 65 74 2c 20 65 | ts.such.as.the.current.target,.e |
| ce320 | 6e 64 69 61 6e 6e 65 73 73 2c 20 61 6e 64 20 72 65 6c 65 61 73 65 20 6d 6f 64 65 2e 0a 20 20 20 | ndianness,.and.release.mode..... |
| ce340 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | ...</p>.......<figure><figcaptio |
| ce360 | 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 | n.class="zig-cap"><cite.class="f |
| ce380 | 69 6c 65 22 3e 63 6f 6d 70 69 6c 65 5f 76 61 72 69 61 62 6c 65 73 2e 7a 69 67 3c 2f 63 69 74 65 | ile">compile_variables.zig</cite |
| ce3a0 | 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ></figcaption><pre><code><span.c |
| ce3c0 | 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 69 6c 74 | lass="tok-kw">const</span>.built |
| ce3e0 | 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 22 3e 40 | in.=.<span.class="tok-builtin">@ |
| ce400 | 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 |
| ce420 | 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 3b | tr">"builtin"</span>); |
| ce440 | 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 |
| ce460 | 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 6f 6b 2d | n>.separator.=.<span.class="tok- |
| ce480 | 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 20 3d 3d | kw">if</span>.(builtin.os.tag.== |
| ce4a0 | 20 2e 77 69 6e 64 6f 77 73 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | ..windows).<span.class="tok-str" |
| ce4c0 | 3e 27 5c 5c 27 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 | >'\\'</span>.<span.class="tok-kw |
| ce4e0 | 22 3e 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 73 | ">else</span>.<span.class="tok-s |
| ce500 | 74 72 22 3e 27 2f 27 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | tr">'/'</span>;</code></pre></fi |
| ce520 | 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 78 61 6d 70 6c 65 20 6f | gure>........<p>.......Example.o |
| ce540 | 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 3e 3c 73 | f.what.is.imported.with.<code><s |
| ce560 | 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< |
| ce580 | 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 |
| ce5a0 | 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3a | ot;builtin"</span>)</code>: |
| ce5c0 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | .......</p>.......<figure><figca |
| ce5e0 | 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 3e 40 69 6d 70 | ption.class="zig-cap"><cite>@imp |
| ce600 | 6f 72 74 28 22 62 75 69 6c 74 69 6e 22 29 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | ort("builtin")</cite></figcaptio |
| ce620 | 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n><pre><code><span.class="tok-kw |
| ce640 | 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 |
| ce660 | 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 |
| ce680 | 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 |
| ce6a0 | 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 63 6f | ot;</span>);.<span.class="tok-co |
| ce6c0 | 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 5a 69 67 20 76 65 72 73 69 6f 6e 2e 20 57 68 65 6e 20 77 72 69 | mment">///.Zig.version..When.wri |
| ce6e0 | 74 69 6e 67 20 63 6f 64 65 20 74 68 61 74 20 73 75 70 70 6f 72 74 73 20 6d 75 6c 74 69 70 6c 65 | ting.code.that.supports.multiple |
| ce700 | 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 5a 69 67 2c 20 70 72 65 66 65 72 3c 2f 73 70 61 6e 3e 0a | .versions.of.Zig,.prefer</span>. |
| ce720 | 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 66 65 | <span.class="tok-comment">///.fe |
| ce740 | 61 74 75 72 65 20 64 65 74 65 63 74 69 6f 6e 20 28 69 2e 65 2e 20 77 69 74 68 20 60 40 68 61 73 | ature.detection.(i.e..with.`@has |
| ce760 | 44 65 63 6c 60 20 6f 72 20 60 40 68 61 73 46 69 65 6c 64 60 29 20 6f 76 65 72 20 76 65 72 73 69 | Decl`.or.`@hasField`).over.versi |
| ce780 | 6f 6e 20 63 68 65 63 6b 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | on.checks.</span>.<span.class="t |
| ce7a0 | 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 |
| ce7c0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 7a 69 67 5f 76 65 72 73 69 6f 6e 20 | ok-kw">const</span>.zig_version. |
| ce7e0 | 3d 20 73 74 64 2e 53 65 6d 61 6e 74 69 63 56 65 72 73 69 6f 6e 2e 70 61 72 73 65 28 7a 69 67 5f | =.std.SemanticVersion.parse(zig_ |
| ce800 | 76 65 72 73 69 6f 6e 5f 73 74 72 69 6e 67 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | version_string).<span.class="tok |
| ce820 | 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 |
| ce840 | 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 3c 73 70 61 6e | ok-kw">unreachable</span>;.<span |
| ce860 | 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 6e | .class="tok-kw">pub</span>.<span |
| ce880 | 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 69 67 | .class="tok-kw">const</span>.zig |
| ce8a0 | 5f 76 65 72 73 69 6f 6e 5f 73 74 72 69 6e 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | _version_string.=.<span.class="t |
| ce8c0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 30 2e 31 34 2e 31 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | ok-str">"0.14.1"</span |
| ce8e0 | 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 70 61 | >;.<span.class="tok-kw">pub</spa |
| ce900 | 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 |
| ce920 | 70 61 6e 3e 20 7a 69 67 5f 62 61 63 6b 65 6e 64 20 3d 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 43 | pan>.zig_backend.=.std.builtin.C |
| ce940 | 6f 6d 70 69 6c 65 72 42 61 63 6b 65 6e 64 2e 73 74 61 67 65 32 5f 6c 6c 76 6d 3b 0a 0a 3c 73 70 | ompilerBackend.stage2_llvm;..<sp |
| ce960 | 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 |
| ce980 | 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 |
| ce9a0 | 75 74 70 75 74 5f 6d 6f 64 65 3a 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 4f 75 74 70 75 74 4d 6f | utput_mode:.std.builtin.OutputMo |
| ce9c0 | 64 65 20 3d 20 2e 45 78 65 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | de.=..Exe;.<span.class="tok-kw"> |
| ce9e0 | 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"> |
| cea00 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 6e 6b 5f 6d 6f 64 65 3a 20 73 74 64 2e 62 75 69 6c | const</span>.link_mode:.std.buil |
| cea20 | 74 69 6e 2e 4c 69 6e 6b 4d 6f 64 65 20 3d 20 2e 73 74 61 74 69 63 3b 0a 3c 73 70 61 6e 20 63 6c | tin.LinkMode.=..static;.<span.cl |
| cea40 | 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 |
| cea60 | 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 77 69 6e 64 | ass="tok-kw">const</span>.unwind |
| cea80 | 5f 74 61 62 6c 65 73 3a 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 55 6e 77 69 6e 64 54 61 62 6c 65 | _tables:.std.builtin.UnwindTable |
| ceaa0 | 73 20 3d 20 2e 40 26 71 75 6f 74 3b 61 73 79 6e 63 26 71 75 6f 74 3b 3b 0a 3c 73 70 61 6e 20 63 | s.=..@"async";.<span.c |
| ceac0 | 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 |
| ceae0 | 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 73 5f 74 65 | lass="tok-kw">const</span>.is_te |
| ceb00 | 73 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 66 61 6c 73 | st.=.<span.class="tok-null">fals |
| ceb20 | 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 |
| ceb40 | 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 |
| ceb60 | 6f 6e 73 74 3c 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 | onst</span>.single_threaded.=.<s |
| ceb80 | 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 |
| ceba0 | 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 70 61 | >;.<span.class="tok-kw">pub</spa |
| cebc0 | 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 |
| cebe0 | 70 61 6e 3e 20 61 62 69 3a 20 73 74 64 2e 54 61 72 67 65 74 2e 41 62 69 20 3d 20 2e 67 6e 75 3b | pan>.abi:.std.Target.Abi.=..gnu; |
| cec00 | 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> |
| cec20 | 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 |
| cec40 | 6e 3e 20 63 70 75 3a 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 | n>.cpu:.std.Target.Cpu.=..{..... |
| cec60 | 2e 61 72 63 68 20 3d 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 | .arch.=..x86_64,......model.=.&a |
| cec80 | 6d 70 3b 73 74 64 2e 54 61 72 67 65 74 2e 78 38 36 2e 63 70 75 2e 7a 6e 76 65 72 34 2c 0a 20 20 | mp;std.Target.x86.cpu.znver4,... |
| ceca0 | 20 20 2e 66 65 61 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 | ...features.=.std.Target.x86.fea |
| cecc0 | 74 75 72 65 53 65 74 28 26 61 6d 70 3b 2e 7b 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b | tureSet(&.{..........@" |
| cece0 | 36 34 62 69 74 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 61 64 78 2c 0a 20 20 20 20 20 | 64bit",..........adx,...... |
| ced00 | 20 20 20 2e 61 65 73 2c 0a 20 20 20 20 20 20 20 20 2e 61 6c 6c 6f 77 5f 6c 69 67 68 74 5f 32 35 | ....aes,..........allow_light_25 |
| ced20 | 36 5f 62 69 74 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 | 6_bit,..........avx,..........av |
| ced40 | 78 32 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 62 66 31 36 2c 0a 20 20 20 20 20 20 20 | x2,..........avx512bf16,........ |
| ced60 | 20 2e 61 76 78 35 31 32 62 69 74 61 6c 67 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 62 | ..avx512bitalg,..........avx512b |
| ced80 | 77 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 63 64 2c 0a 20 20 20 20 20 20 20 20 2e 61 | w,..........avx512cd,..........a |
| ceda0 | 76 78 35 31 32 64 71 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 66 2c 0a 20 20 20 20 20 | vx512dq,..........avx512f,...... |
| cedc0 | 20 20 20 2e 61 76 78 35 31 32 69 66 6d 61 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 76 | ....avx512ifma,..........avx512v |
| cede0 | 62 6d 69 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 76 62 6d 69 32 2c 0a 20 20 20 20 20 | bmi,..........avx512vbmi2,...... |
| cee00 | 20 20 20 2e 61 76 78 35 31 32 76 6c 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 76 6e 6e | ....avx512vl,..........avx512vnn |
| cee20 | 69 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 76 70 6f 70 63 6e 74 64 71 2c 0a 20 20 20 | i,..........avx512vpopcntdq,.... |
| cee40 | 20 20 20 20 20 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 | ......bmi,..........bmi2,....... |
| cee60 | 20 20 2e 62 72 61 6e 63 68 66 75 73 69 6f 6e 2c 0a 20 20 20 20 20 20 20 20 2e 63 6c 66 6c 75 73 | ...branchfusion,..........clflus |
| cee80 | 68 6f 70 74 2c 0a 20 20 20 20 20 20 20 20 2e 63 6c 77 62 2c 0a 20 20 20 20 20 20 20 20 2e 63 6c | hopt,..........clwb,..........cl |
| ceea0 | 7a 65 72 6f 2c 0a 20 20 20 20 20 20 20 20 2e 63 6d 6f 76 2c 0a 20 20 20 20 20 20 20 20 2e 63 72 | zero,..........cmov,..........cr |
| ceec0 | 63 33 32 2c 0a 20 20 20 20 20 20 20 20 2e 63 78 31 36 2c 0a 20 20 20 20 20 20 20 20 2e 63 78 38 | c32,..........cx16,..........cx8 |
| ceee0 | 2c 0a 20 20 20 20 20 20 20 20 2e 65 76 65 78 35 31 32 2c 0a 20 20 20 20 20 20 20 20 2e 66 31 36 | ,..........evex512,..........f16 |
| cef00 | 63 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 31 35 62 79 74 65 6e 6f 70 2c 0a 20 20 20 20 | c,..........fast_15bytenop,..... |
| cef20 | 20 20 20 20 2e 66 61 73 74 5f 62 65 78 74 72 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 64 | .....fast_bextr,..........fast_d |
| cef40 | 70 77 73 73 64 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 69 6d 6d 31 36 2c 0a 20 20 20 20 | pwssd,..........fast_imm16,..... |
| cef60 | 20 20 20 20 2e 66 61 73 74 5f 6c 7a 63 6e 74 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 6d | .....fast_lzcnt,..........fast_m |
| cef80 | 6f 76 62 65 2c 0a 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 | ovbe,..........fast_scalar_fsqrt |
| cefa0 | 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 73 63 61 6c 61 72 5f 73 68 69 66 74 5f 6d 61 73 | ,..........fast_scalar_shift_mas |
| cefc0 | 6b 73 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 76 61 72 69 61 62 6c 65 5f 70 65 72 6c 61 | ks,..........fast_variable_perla |
| cefe0 | 6e 65 5f 73 68 75 66 66 6c 65 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 76 65 63 74 6f 72 | ne_shuffle,..........fast_vector |
| cf000 | 5f 66 73 71 72 74 2c 0a 20 20 20 20 20 20 20 20 2e 66 6d 61 2c 0a 20 20 20 20 20 20 20 20 2e 66 | _fsqrt,..........fma,..........f |
| cf020 | 73 67 73 62 61 73 65 2c 0a 20 20 20 20 20 20 20 20 2e 66 73 72 6d 2c 0a 20 20 20 20 20 20 20 20 | sgsbase,..........fsrm,......... |
| cf040 | 2e 66 78 73 72 2c 0a 20 20 20 20 20 20 20 20 2e 67 66 6e 69 2c 0a 20 20 20 20 20 20 20 20 2e 69 | .fxsr,..........gfni,..........i |
| cf060 | 64 69 76 71 5f 74 6f 5f 64 69 76 6c 2c 0a 20 20 20 20 20 20 20 20 2e 69 6e 76 70 63 69 64 2c 0a | divq_to_divl,..........invpcid,. |
| cf080 | 20 20 20 20 20 20 20 20 2e 6c 7a 63 6e 74 2c 0a 20 20 20 20 20 20 20 20 2e 6d 61 63 72 6f 66 75 | .........lzcnt,..........macrofu |
| cf0a0 | 73 69 6f 6e 2c 0a 20 20 20 20 20 20 20 20 2e 6d 6d 78 2c 0a 20 20 20 20 20 20 20 20 2e 6d 6f 76 | sion,..........mmx,..........mov |
| cf0c0 | 62 65 2c 0a 20 20 20 20 20 20 20 20 2e 6d 77 61 69 74 78 2c 0a 20 20 20 20 20 20 20 20 2e 6e 6f | be,..........mwaitx,..........no |
| cf0e0 | 70 6c 2c 0a 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 6b | pl,..........pclmul,..........pk |
| cf100 | 75 2c 0a 20 20 20 20 20 20 20 20 2e 70 6f 70 63 6e 74 2c 0a 20 20 20 20 20 20 20 20 2e 70 72 66 | u,..........popcnt,..........prf |
| cf120 | 63 68 77 2c 0a 20 20 20 20 20 20 20 20 2e 72 64 70 69 64 2c 0a 20 20 20 20 20 20 20 20 2e 72 64 | chw,..........rdpid,..........rd |
| cf140 | 70 72 75 2c 0a 20 20 20 20 20 20 20 20 2e 72 64 72 6e 64 2c 0a 20 20 20 20 20 20 20 20 2e 72 64 | pru,..........rdrnd,..........rd |
| cf160 | 73 65 65 64 2c 0a 20 20 20 20 20 20 20 20 2e 73 61 68 66 2c 0a 20 20 20 20 20 20 20 20 2e 73 62 | seed,..........sahf,..........sb |
| cf180 | 62 5f 64 65 70 5f 62 72 65 61 6b 69 6e 67 2c 0a 20 20 20 20 20 20 20 20 2e 73 68 61 2c 0a 20 20 | b_dep_breaking,..........sha,... |
| cf1a0 | 20 20 20 20 20 20 2e 73 68 73 74 6b 2c 0a 20 20 20 20 20 20 20 20 2e 73 6c 6f 77 5f 73 68 6c 64 | .......shstk,..........slow_shld |
| cf1c0 | 2c 0a 20 20 20 20 20 20 20 20 2e 73 6d 61 70 2c 0a 20 20 20 20 20 20 20 20 2e 73 6d 65 70 2c 0a | ,..........smap,..........smep,. |
| cf1e0 | 20 20 20 20 20 20 20 20 2e 73 73 65 2c 0a 20 20 20 20 20 20 20 20 2e 73 73 65 32 2c 0a 20 20 20 | .........sse,..........sse2,.... |
| cf200 | 20 20 20 20 20 2e 73 73 65 33 2c 0a 20 20 20 20 20 20 20 20 2e 73 73 65 34 5f 31 2c 0a 20 20 20 | ......sse3,..........sse4_1,.... |
| cf220 | 20 20 20 20 20 2e 73 73 65 34 5f 32 2c 0a 20 20 20 20 20 20 20 20 2e 73 73 65 34 61 2c 0a 20 20 | ......sse4_2,..........sse4a,... |
| cf240 | 20 20 20 20 20 20 2e 73 73 73 65 33 2c 0a 20 20 20 20 20 20 20 20 2e 76 61 65 73 2c 0a 20 20 20 | .......ssse3,..........vaes,.... |
| cf260 | 20 20 20 20 20 2e 76 70 63 6c 6d 75 6c 71 64 71 2c 0a 20 20 20 20 20 20 20 20 2e 76 7a 65 72 6f | ......vpclmulqdq,..........vzero |
| cf280 | 75 70 70 65 72 2c 0a 20 20 20 20 20 20 20 20 2e 77 62 6e 6f 69 6e 76 64 2c 0a 20 20 20 20 20 20 | upper,..........wbnoinvd,....... |
| cf2a0 | 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 20 20 | ...x87,..........xsave,......... |
| cf2c0 | 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 20 20 | .xsavec,..........xsaveopt,..... |
| cf2e0 | 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 63 6c | .....xsaves,.....}),.};.<span.cl |
| cf300 | 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 |
| cf320 | 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 3a 20 73 74 | ass="tok-kw">const</span>.os:.st |
| cf340 | 64 2e 54 61 72 67 65 74 2e 4f 73 20 3d 20 2e 7b 0a 20 20 20 20 2e 74 61 67 20 3d 20 2e 6c 69 6e | d.Target.Os.=..{......tag.=..lin |
| cf360 | 75 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 | ux,......version_range.=..{..lin |
| cf380 | 75 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 | ux.=..{..........range.=..{..... |
| cf3a0 | 20 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 | .........min.=..{............... |
| cf3c0 | 20 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 | ...major.=.<span.class="tok-numb |
| cf3e0 | 65 72 22 3e 36 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 | er">6</span>,..................m |
| cf400 | 69 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 | inor.=.<span.class="tok-number"> |
| cf420 | 31 34 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 | 14</span>,..................patc |
| cf440 | 68 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 | h.=.<span.class="tok-number">5</ |
| cf460 | 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>,.............},........... |
| cf480 | 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 |
| cf4a0 | 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 36 3c | or.=.<span.class="tok-number">6< |
| cf4c0 | 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.= |
| cf4e0 | 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 34 3c 2f 73 70 | .<span.class="tok-number">14</sp |
| cf500 | 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 3d 20 3c 73 | an>,..................patch.=.<s |
| cf520 | 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 2c | pan.class="tok-number">5</span>, |
| cf540 | 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 20 | .............},.........},...... |
| cf560 | 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 6f | ....glibc.=..{..............majo |
| cf580 | 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 2f | r.=.<span.class="tok-number">2</ |
| cf5a0 | 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 61 | span>,..............minor.=.<spa |
| cf5c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 39 3c 2f 73 70 61 6e 3e 2c 0a | n.class="tok-number">39</span>,. |
| cf5e0 | 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 73 | .............patch.=.<span.class |
| cf600 | 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 20 | ="tok-number">0</span>,......... |
| cf620 | 7d 2c 0a 20 20 20 20 20 20 20 20 2e 61 6e 64 72 6f 69 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | },..........android.=.<span.clas |
| cf640 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 7d | s="tok-number">14</span>,.....}} |
| cf660 | 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 70 75 62 3c 2f 73 | ,.};.<span.class="tok-kw">pub</s |
| cf680 | 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< |
| cf6a0 | 2f 73 70 61 6e 3e 20 74 61 72 67 65 74 3a 20 73 74 64 2e 54 61 72 67 65 74 20 3d 20 2e 7b 0a 20 | /span>.target:.std.Target.=..{.. |
| cf6c0 | 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 6f 73 2c 0a 20 20 20 | ....cpu.=.cpu,......os.=.os,.... |
| cf6e0 | 20 2e 61 62 69 20 3d 20 61 62 69 2c 0a 20 20 20 20 2e 6f 66 6d 74 20 3d 20 6f 62 6a 65 63 74 5f | ..abi.=.abi,......ofmt.=.object_ |
| cf700 | 66 6f 72 6d 61 74 2c 0a 20 20 20 20 2e 64 79 6e 61 6d 69 63 5f 6c 69 6e 6b 65 72 20 3d 20 2e 69 | format,......dynamic_linker.=..i |
| cf720 | 6e 69 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 | nit(<span.class="tok-str">" |
| cf740 | 2f 6e 69 78 2f 73 74 6f 72 65 2f 70 39 6b 64 6a 35 35 67 35 6c 33 39 6e 62 72 78 70 6a 79 7a 35 | /nix/store/p9kdj55g5l39nbrxpjyz5 |
| cf760 | 77 63 31 6d 30 73 37 72 7a 73 78 2d 67 6c 69 62 63 2d 32 2e 34 30 2d 36 36 2f 6c 69 62 2f 6c 64 | wc1m0s7rzsx-glibc-2.40-66/lib/ld |
| cf780 | 2d 6c 69 6e 75 78 2d 78 38 36 2d 36 34 2e 73 6f 2e 32 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | -linux-x86-64.so.2"</span>) |
| cf7a0 | 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 70 75 62 3c 2f 73 | ,.};.<span.class="tok-kw">pub</s |
| cf7c0 | 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< |
| cf7e0 | 2f 73 70 61 6e 3e 20 6f 62 6a 65 63 74 5f 66 6f 72 6d 61 74 3a 20 73 74 64 2e 54 61 72 67 65 74 | /span>.object_format:.std.Target |
| cf800 | 2e 4f 62 6a 65 63 74 46 6f 72 6d 61 74 20 3d 20 2e 65 6c 66 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 | .ObjectFormat.=..elf;.<span.clas |
| cf820 | 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 |
| cf840 | 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 6f 64 65 3a 20 73 74 | s="tok-kw">const</span>.mode:.st |
| cf860 | 64 2e 62 75 69 6c 74 69 6e 2e 4f 70 74 69 6d 69 7a 65 4d 6f 64 65 20 3d 20 2e 44 65 62 75 67 3b | d.builtin.OptimizeMode.=..Debug; |
| cf880 | 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> |
| cf8a0 | 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 |
| cf8c0 | 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 3d 22 74 6f 6b 2d | n>.link_libc.=.<span.class="tok- |
| cf8e0 | 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 73 3d | null">false</span>;.<span.class= |
| cf900 | 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= |
| cf920 | 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 5f 6c 69 62 63 70 | "tok-kw">const</span>.link_libcp |
| cf940 | 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 3e 66 61 6c 73 65 | p.=.<span.class="tok-null">false |
| cf960 | 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 75 | </span>;.<span.class="tok-kw">pu |
| cf980 | 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 |
| cf9a0 | 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 72 6e 5f 74 72 61 | nst</span>.have_error_return_tra |
| cf9c0 | 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 6c 6c 22 3e 74 72 | cing.=.<span.class="tok-null">tr |
| cf9e0 | 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 6b 77 22 3e | ue</span>;.<span.class="tok-kw"> |
| cfa00 | 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"> |
| cfa20 | 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 6f 72 74 20 3d 20 | const</span>.valgrind_support.=. |
| cfa40 | 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 |
| cfa60 | 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 70 | n>;.<span.class="tok-kw">pub</sp |
| cfa80 | 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 2f | an>.<span.class="tok-kw">const</ |
| cfaa0 | 73 70 61 6e 3e 20 73 61 6e 69 74 69 7a 65 5f 74 68 72 65 61 64 20 3d 20 3c 73 70 61 6e 20 63 6c | span>.sanitize_thread.=.<span.cl |
| cfac0 | 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 70 | ass="tok-null">false</span>;.<sp |
| cfae0 | 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 |
| cfb00 | 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 |
| cfb20 | 75 7a 7a 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 | uzz.=.<span.class="tok-null">fal |
| cfb40 | 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 22 3e | se</span>;.<span.class="tok-kw"> |
| cfb60 | 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"> |
| cfb80 | 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 65 6e | const</span>.position_independen |
| cfba0 | 74 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 | t_code.=.<span.class="tok-null"> |
| cfbc0 | 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 6b | false</span>;.<span.class="tok-k |
| cfbe0 | 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 |
| cfc00 | 77 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 | w">const</span>.position_indepen |
| cfc20 | 64 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 | dent_executable.=.<span.class="t |
| cfc40 | 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 63 6c 61 | ok-null">false</span>;.<span.cla |
| cfc60 | 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 |
| cfc80 | 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 72 69 70 5f 64 | ss="tok-kw">const</span>.strip_d |
| cfca0 | 65 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 | ebug_info.=.<span.class="tok-nul |
| cfcc0 | 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 73 3d 22 74 6f | l">false</span>;.<span.class="to |
| cfce0 | 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 |
| cfd00 | 6b 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 3a 20 73 | k-kw">const</span>.code_model:.s |
| cfd20 | 74 64 2e 62 75 69 6c 74 69 6e 2e 43 6f 64 65 4d 6f 64 65 6c 20 3d 20 2e 64 65 66 61 75 6c 74 3b | td.builtin.CodeModel.=..default; |
| cfd40 | 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> |
| cfd60 | 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 |
| cfd80 | 6e 3e 20 6f 6d 69 74 5f 66 72 61 6d 65 5f 70 6f 69 6e 74 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c | n>.omit_frame_pointer.=.<span.cl |
| cfda0 | 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 3c 2f 63 6f | ass="tok-null">false</span>;</co |
| cfdc0 | 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 | de></pre></figure>.......<p>See. |
| cfde0 | 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 42 75 69 6c | also:</p><ul>.<li><a.href="#Buil |
| cfe00 | 64 2d 4d 6f 64 65 22 3e 42 75 69 6c 64 20 4d 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c | d-Mode">Build.Mode</a></li>.</ul |
| cfe20 | 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 43 6f 6d 70 69 6c 61 74 | >...............<h2.id="Compilat |
| cfe40 | 69 6f 6e 2d 4d 6f 64 65 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6f 6d 70 69 6c 61 | ion-Model"><a.href="#toc-Compila |
| cfe60 | 74 69 6f 6e 2d 4d 6f 64 65 6c 22 3e 43 6f 6d 70 69 6c 61 74 69 6f 6e 20 4d 6f 64 65 6c 3c 2f 61 | tion-Model">Compilation.Model</a |
| cfe80 | 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 61 74 | >.<a.class="hdr".href="#Compilat |
| cfea0 | 69 6f 6e 2d 4d 6f 64 65 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 | ion-Model">..</a></h2>........<p |
| cfec0 | 3e 0a 20 20 20 20 20 20 41 20 5a 69 67 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 69 73 20 73 65 70 | >.......A.Zig.compilation.is.sep |
| cfee0 | 61 72 61 74 65 64 20 69 6e 74 6f 20 3c 65 6d 3e 6d 6f 64 75 6c 65 73 3c 2f 65 6d 3e 2e 20 45 61 | arated.into.<em>modules</em>..Ea |
| cff00 | 63 68 20 6d 6f 64 75 6c 65 20 69 73 20 61 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 6f 66 20 5a 69 67 | ch.module.is.a.collection.of.Zig |
| cff20 | 20 73 6f 75 72 63 65 20 66 69 6c 65 73 2c 0a 20 20 20 20 20 20 6f 6e 65 20 6f 66 20 77 68 69 63 | .source.files,.......one.of.whic |
| cff40 | 68 20 69 73 20 74 68 65 20 6d 6f 64 75 6c 65 27 73 20 3c 65 6d 3e 72 6f 6f 74 20 73 6f 75 72 63 | h.is.the.module's.<em>root.sourc |
| cff60 | 65 20 66 69 6c 65 3c 2f 65 6d 3e 2e 20 45 61 63 68 20 6d 6f 64 75 6c 65 20 63 61 6e 20 3c 65 6d | e.file</em>..Each.module.can.<em |
| cff80 | 3e 64 65 70 65 6e 64 3c 2f 65 6d 3e 20 6f 6e 20 61 6e 79 20 6e 75 6d 62 65 72 20 6f 66 0a 20 20 | >depend</em>.on.any.number.of... |
| cffa0 | 20 20 20 20 6f 74 68 65 72 20 6d 6f 64 75 6c 65 73 2c 20 66 6f 72 6d 69 6e 67 20 61 20 64 69 72 | ....other.modules,.forming.a.dir |
| cffc0 | 65 63 74 65 64 20 67 72 61 70 68 20 28 64 65 70 65 6e 64 65 6e 63 79 20 6c 6f 6f 70 73 20 62 65 | ected.graph.(dependency.loops.be |
| cffe0 | 74 77 65 65 6e 20 6d 6f 64 75 6c 65 73 20 61 72 65 20 61 6c 6c 6f 77 65 64 29 2e 20 49 66 20 6d | tween.modules.are.allowed)..If.m |
| d0000 | 6f 64 75 6c 65 20 41 0a 20 20 20 20 20 20 64 65 70 65 6e 64 73 20 6f 6e 20 6d 6f 64 75 6c 65 20 | odule.A.......depends.on.module. |
| d0020 | 42 2c 20 74 68 65 6e 20 61 6e 79 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 20 69 6e 20 6d | B,.then.any.Zig.source.file.in.m |
| d0040 | 6f 64 75 6c 65 20 41 20 63 61 6e 20 69 6d 70 6f 72 74 20 74 68 65 20 3c 65 6d 3e 72 6f 6f 74 20 | odule.A.can.import.the.<em>root. |
| d0060 | 73 6f 75 72 63 65 20 66 69 6c 65 3c 2f 65 6d 3e 20 6f 66 0a 20 20 20 20 20 20 6d 6f 64 75 6c 65 | source.file</em>.of.......module |
| d0080 | 20 42 20 75 73 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .B.using.<code><span.class="tok- |
| d00a0 | 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 20 77 | builtin">@import</span></code>.w |
| d00c0 | 69 74 68 20 74 68 65 20 6d 6f 64 75 6c 65 27 73 20 6e 61 6d 65 2e 20 49 6e 20 65 73 73 65 6e 63 | ith.the.module's.name..In.essenc |
| d00e0 | 65 2c 20 61 20 6d 6f 64 75 6c 65 20 61 63 74 73 20 61 73 20 61 6e 0a 20 20 20 20 20 20 61 6c 69 | e,.a.module.acts.as.an.......ali |
| d0100 | 61 73 20 74 6f 20 69 6d 70 6f 72 74 20 61 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 20 28 | as.to.import.a.Zig.source.file.( |
| d0120 | 77 68 69 63 68 20 6d 69 67 68 74 20 65 78 69 73 74 20 69 6e 20 61 20 63 6f 6d 70 6c 65 74 65 6c | which.might.exist.in.a.completel |
| d0140 | 79 20 73 65 70 61 72 61 74 65 20 70 61 72 74 20 6f 66 20 74 68 65 20 66 69 6c 65 73 79 73 74 65 | y.separate.part.of.the.filesyste |
| d0160 | 6d 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 20 20 20 20 20 41 | m)........</p>.......<p>.......A |
| d0180 | 20 73 69 6d 70 6c 65 20 5a 69 67 20 70 72 6f 67 72 61 6d 20 63 6f 6d 70 69 6c 65 64 20 77 69 74 | .simple.Zig.program.compiled.wit |
| d01a0 | 68 20 3c 63 6f 64 65 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 3c 2f 63 6f 64 65 3e 20 68 61 73 | h.<code>zig.build-exe</code>.has |
| d01c0 | 20 74 77 6f 20 6b 65 79 20 6d 6f 64 75 6c 65 73 3a 20 74 68 65 20 6f 6e 65 20 63 6f 6e 74 61 69 | .two.key.modules:.the.one.contai |
| d01e0 | 6e 69 6e 67 20 79 6f 75 72 0a 20 20 20 20 20 20 63 6f 64 65 2c 20 6b 6e 6f 77 6e 20 61 73 20 74 | ning.your.......code,.known.as.t |
| d0200 | 68 65 20 22 6d 61 69 6e 22 20 6f 72 20 22 72 6f 6f 74 22 20 6d 6f 64 75 6c 65 2c 20 61 6e 64 20 | he."main".or."root".module,.and. |
| d0220 | 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 2e 20 59 6f 75 72 20 6d 6f 64 75 6c | the.standard.library..Your.modul |
| d0240 | 65 20 3c 65 6d 3e 64 65 70 65 6e 64 73 20 6f 6e 3c 2f 65 6d 3e 0a 20 20 20 20 20 20 74 68 65 20 | e.<em>depends.on</em>.......the. |
| d0260 | 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 6d 6f 64 75 6c 65 20 75 6e 64 65 72 20 74 68 | standard.library.module.under.th |
| d0280 | 65 20 6e 61 6d 65 20 22 73 74 64 22 2c 20 77 68 69 63 68 20 69 73 20 77 68 61 74 20 61 6c 6c 6f | e.name."std",.which.is.what.allo |
| d02a0 | 77 73 20 79 6f 75 20 74 6f 20 77 72 69 74 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 | ws.you.to.write.......<code><spa |
| d02c0 | 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 |
| d02e0 | 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">" |
| d0300 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 21 20 49 6e 20 66 61 | ;std"</span>)</code>!.In.fa |
| d0320 | 63 74 2c 20 65 76 65 72 79 20 73 69 6e 67 6c 65 20 6d 6f 64 75 6c 65 20 69 6e 20 61 20 5a 69 67 | ct,.every.single.module.in.a.Zig |
| d0340 | 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 26 23 38 32 31 32 3b 20 69 6e 63 6c 75 64 69 6e 67 0a 20 | .compilation.—.including.. |
| d0360 | 20 20 20 20 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 69 74 73 65 6c 66 | .....the.standard.library.itself |
| d0380 | 20 26 23 38 32 31 32 3b 20 69 6d 70 6c 69 63 69 74 6c 79 20 64 65 70 65 6e 64 73 20 6f 6e 20 74 | .—.implicitly.depends.on.t |
| d03a0 | 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 6d 6f 64 75 6c 65 20 75 6e 64 65 72 | he.standard.library.module.under |
| d03c0 | 20 74 68 65 20 6e 61 6d 65 20 22 73 74 64 22 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | .the.name."std"........</p>..... |
| d03e0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 22 72 6f 6f 74 20 6d 6f 64 75 6c 65 22 20 28 74 | ..<p>.......The."root.module".(t |
| d0400 | 68 65 20 6f 6e 65 20 70 72 6f 76 69 64 65 64 20 62 79 20 79 6f 75 20 69 6e 20 74 68 65 20 3c 63 | he.one.provided.by.you.in.the.<c |
| d0420 | 6f 64 65 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 3c 2f 63 6f 64 65 3e 20 65 78 61 6d 70 6c 65 | ode>zig.build-exe</code>.example |
| d0440 | 29 20 68 61 73 20 61 20 73 70 65 63 69 61 6c 0a 20 20 20 20 20 20 70 72 6f 70 65 72 74 79 2e 20 | ).has.a.special.......property.. |
| d0460 | 4c 69 6b 65 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 2c 20 69 74 20 69 73 | Like.the.standard.library,.it.is |
| d0480 | 20 69 6d 70 6c 69 63 69 74 6c 79 20 6d 61 64 65 20 61 76 61 69 6c 61 62 6c 65 20 74 6f 20 61 6c | .implicitly.made.available.to.al |
| d04a0 | 6c 20 6d 6f 64 75 6c 65 73 20 28 69 6e 63 6c 75 64 69 6e 67 20 69 74 73 65 6c 66 29 2c 0a 20 20 | l.modules.(including.itself),... |
| d04c0 | 20 20 20 20 74 68 69 73 20 74 69 6d 65 20 75 6e 64 65 72 20 74 68 65 20 6e 61 6d 65 20 22 72 6f | ....this.time.under.the.name."ro |
| d04e0 | 6f 74 22 2e 20 53 6f 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ot"..So,.<code><span.class="tok- |
| d0500 | 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 |
| d0520 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 6f 6f 74 26 71 75 6f 74 3b 3c 2f | ass="tok-str">"root"</ |
| d0540 | 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 62 65 20 65 71 75 | span>)</code>.will.always.be.equ |
| d0560 | 69 76 61 6c 65 6e 74 20 74 6f 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | ivalent.to.......<code><span.cla |
| d0580 | 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>< |
| d05a0 | 2f 63 6f 64 65 3e 20 6f 66 20 79 6f 75 72 20 22 6d 61 69 6e 22 20 73 6f 75 72 63 65 20 66 69 6c | /code>.of.your."main".source.fil |
| d05c0 | 65 20 28 6f 66 74 65 6e 2c 20 62 75 74 20 6e 6f 74 20 6e 65 63 65 73 73 61 72 69 6c 79 2c 20 6e | e.(often,.but.not.necessarily,.n |
| d05e0 | 61 6d 65 64 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 6d 61 69 6e 2e 7a 69 67 3c 2f 63 6f 64 65 3e | amed.......<code>main.zig</code> |
| d0600 | 29 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 53 6f 75 72 | )........</p>.......<h3.id="Sour |
| d0620 | 63 65 2d 46 69 6c 65 2d 53 74 72 75 63 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 | ce-File-Structs"><a.href="#toc-S |
| d0640 | 6f 75 72 63 65 2d 46 69 6c 65 2d 53 74 72 75 63 74 73 22 3e 53 6f 75 72 63 65 20 46 69 6c 65 20 | ource-File-Structs">Source.File. |
| d0660 | 53 74 72 75 63 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 | Structs</a>.<a.class="hdr".href= |
| d0680 | 22 23 53 6f 75 72 63 65 2d 46 69 6c 65 2d 53 74 72 75 63 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | "#Source-File-Structs">..</a></h |
| d06a0 | 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 76 65 72 79 20 5a 69 67 20 73 6f | 3>........<p>.......Every.Zig.so |
| d06c0 | 75 72 63 65 20 66 69 6c 65 20 69 73 20 69 6d 70 6c 69 63 69 74 6c 79 20 61 20 3c 63 6f 64 65 3e | urce.file.is.implicitly.a.<code> |
| d06e0 | 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 |
| d0700 | 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 61 74 69 6f 6e 3b 20 79 6f 75 20 63 61 6e 20 69 | n></code>.declaration;.you.can.i |
| d0720 | 6d 61 67 69 6e 65 20 74 68 61 74 0a 20 20 20 20 20 20 74 68 65 20 66 69 6c 65 27 73 20 63 6f 6e | magine.that.......the.file's.con |
| d0740 | 74 65 6e 74 73 20 61 72 65 20 6c 69 74 65 72 61 6c 6c 79 20 73 75 72 72 6f 75 6e 64 65 64 20 62 | tents.are.literally.surrounded.b |
| d0760 | 79 20 3c 63 6f 64 65 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 | y.<code><span.class="tok-kw">str |
| d0780 | 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 20 2e 2e 2e 20 7d 3c 2f 63 6f 64 65 3e 2e 20 54 68 69 73 20 | uct</span>.{.....}</code>..This. |
| d07a0 | 6d 65 61 6e 73 20 74 68 61 74 0a 20 20 20 20 20 20 61 73 20 77 65 6c 6c 20 61 73 20 64 65 63 6c | means.that.......as.well.as.decl |
| d07c0 | 61 72 61 74 69 6f 6e 73 2c 20 74 68 65 20 74 6f 70 20 6c 65 76 65 6c 20 6f 66 20 61 20 66 69 6c | arations,.the.top.level.of.a.fil |
| d07e0 | 65 20 69 73 20 70 65 72 6d 69 74 74 65 64 20 74 6f 20 63 6f 6e 74 61 69 6e 20 66 69 65 6c 64 73 | e.is.permitted.to.contain.fields |
| d0800 | 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | :.......</p>.......<figure><figc |
| d0820 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 | aption.class="zig-cap"><cite.cla |
| d0840 | 73 73 3d 22 66 69 6c 65 22 3e 54 6f 70 4c 65 76 65 6c 46 69 65 6c 64 73 2e 7a 69 67 3c 2f 63 69 | ss="file">TopLevelFields.zig</ci |
| d0860 | 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e | te></figcaption><pre><code><span |
| d0880 | 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 42 65 63 61 75 73 65 | .class="tok-comment">//!.Because |
| d08a0 | 20 74 68 69 73 20 66 69 6c 65 20 63 6f 6e 74 61 69 6e 73 20 66 69 65 6c 64 73 2c 20 69 74 20 69 | .this.file.contains.fields,.it.i |
| d08c0 | 73 20 61 20 74 79 70 65 20 77 68 69 63 68 20 69 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 62 65 | s.a.type.which.is.intended.to.be |
| d08e0 | 20 69 6e 73 74 61 6e 74 69 61 74 65 64 2c 20 61 6e 64 20 73 6f 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | .instantiated,.and.so</span>.<sp |
| d0900 | 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 69 73 20 6e 61 | an.class="tok-comment">//!.is.na |
| d0920 | 6d 65 64 20 69 6e 20 54 69 74 6c 65 43 61 73 65 20 69 6e 73 74 65 61 64 20 6f 66 20 73 6e 61 6b | med.in.TitleCase.instead.of.snak |
| d0940 | 65 5f 63 61 73 65 20 62 79 20 63 6f 6e 76 65 6e 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 0a 66 6f | e_case.by.convention.</span>..fo |
| d0960 | 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 75 33 32 3c 2f 73 | o:.<span.class="tok-type">u32</s |
| d0980 | 70 61 6e 3e 2c 0a 62 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 | pan>,.bar:.<span.class="tok-type |
| d09a0 | 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 2c 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">u64</span>,..<span.class="tok- |
| d09c0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 60 40 54 68 69 73 28 29 60 20 63 61 6e 20 62 65 20 75 73 | comment">///.`@This()`.can.be.us |
| d09e0 | 65 64 20 74 6f 20 72 65 66 65 72 20 74 6f 20 74 68 69 73 20 73 74 72 75 63 74 20 74 79 70 65 2e | ed.to.refer.to.this.struct.type. |
| d0a00 | 20 49 6e 20 66 69 6c 65 73 20 77 69 74 68 20 66 69 65 6c 64 73 2c 20 69 74 20 69 73 20 71 75 69 | .In.files.with.fields,.it.is.qui |
| d0a20 | 74 65 20 63 6f 6d 6d 6f 6e 20 74 6f 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | te.common.to</span>.<span.class= |
| d0a40 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 6e 61 6d 65 20 74 68 65 20 74 79 70 65 20 | "tok-comment">///.name.the.type. |
| d0a60 | 68 65 72 65 2c 20 73 6f 20 69 74 20 63 61 6e 20 62 65 20 65 61 73 69 6c 79 20 72 65 66 65 72 65 | here,.so.it.can.be.easily.refere |
| d0a80 | 6e 63 65 64 20 62 79 20 6f 74 68 65 72 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 69 6e 20 74 68 | nced.by.other.declarations.in.th |
| d0aa0 | 69 73 20 66 69 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 | is.file.</span>.<span.class="tok |
| d0ac0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 6f 70 4c 65 76 65 6c 46 69 65 6c 64 73 | -kw">const</span>.TopLevelFields |
| d0ae0 | 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 54 68 | .=.<span.class="tok-builtin">@Th |
| d0b00 | 69 73 3c 2f 73 70 61 6e 3e 28 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | is</span>();..<span.class="tok-k |
| d0b20 | 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 |
| d0b40 | 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 |
| d0b60 | 22 3e 69 6e 69 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">init</span>(val:.<span.class=" |
| d0b80 | 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 54 6f 70 4c 65 76 65 6c 46 69 | tok-type">u32</span>).TopLevelFi |
| d0ba0 | 65 6c 64 73 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 | elds.{.....<span.class="tok-kw"> |
| d0bc0 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 2e 7b 0a 20 20 20 20 20 20 20 20 2e 66 6f 6f 20 3d 20 | return</span>..{..........foo.=. |
| d0be0 | 76 61 6c 2c 0a 20 20 20 20 20 20 20 20 2e 62 61 72 20 3d 20 76 61 6c 20 2a 20 3c 73 70 61 6e 20 | val,..........bar.=.val.*.<span. |
| d0c00 | 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 0a 20 20 | class="tok-number">10</span>,... |
| d0c20 | 20 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 | ..};.}</code></pre></figure>.... |
| d0c40 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 63 68 20 66 69 6c 65 73 20 63 61 6e 20 62 65 20 69 | ...<p>.......Such.files.can.be.i |
| d0c60 | 6e 73 74 61 6e 74 69 61 74 65 64 20 6a 75 73 74 20 6c 69 6b 65 20 61 6e 79 20 6f 74 68 65 72 20 | nstantiated.just.like.any.other. |
| d0c80 | 3c 63 6f 64 65 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 | <code><span.class="tok-kw">struc |
| d0ca0 | 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 79 70 65 2e 20 41 20 66 69 6c 65 27 73 20 22 | t</span></code>.type..A.file's." |
| d0cc0 | 72 6f 6f 74 0a 20 20 20 20 20 20 73 74 72 75 63 74 20 74 79 70 65 22 20 63 61 6e 20 62 65 20 72 | root.......struct.type".can.be.r |
| d0ce0 | 65 66 65 72 72 65 64 20 74 6f 20 77 69 74 68 69 6e 20 74 68 61 74 20 66 69 6c 65 20 75 73 69 6e | eferred.to.within.that.file.usin |
| d0d00 | 67 20 3c 61 20 68 72 65 66 3d 22 23 54 68 69 73 22 3e 40 54 68 69 73 3c 2f 61 3e 2e 0a 20 20 20 | g.<a.href="#This">@This</a>..... |
| d0d20 | 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 46 69 6c | ...</p>..............<h3.id="Fil |
| d0d40 | 65 2d 61 6e 64 2d 44 65 63 6c 61 72 61 74 69 6f 6e 2d 44 69 73 63 6f 76 65 72 79 22 3e 3c 61 20 | e-and-Declaration-Discovery"><a. |
| d0d60 | 68 72 65 66 3d 22 23 74 6f 63 2d 46 69 6c 65 2d 61 6e 64 2d 44 65 63 6c 61 72 61 74 69 6f 6e 2d | href="#toc-File-and-Declaration- |
| d0d80 | 44 69 73 63 6f 76 65 72 79 22 3e 46 69 6c 65 20 61 6e 64 20 44 65 63 6c 61 72 61 74 69 6f 6e 20 | Discovery">File.and.Declaration. |
| d0da0 | 44 69 73 63 6f 76 65 72 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | Discovery</a>.<a.class="hdr".hre |
| d0dc0 | 66 3d 22 23 46 69 6c 65 2d 61 6e 64 2d 44 65 63 6c 61 72 61 74 69 6f 6e 2d 44 69 73 63 6f 76 65 | f="#File-and-Declaration-Discove |
| d0de0 | 72 79 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 | ry">..</a></h3>........<p>...... |
| d0e00 | 20 5a 69 67 20 70 6c 61 63 65 73 20 69 6d 70 6f 72 74 61 6e 63 65 20 6f 6e 20 74 68 65 20 63 6f | .Zig.places.importance.on.the.co |
| d0e20 | 6e 63 65 70 74 20 6f 66 20 77 68 65 74 68 65 72 20 61 6e 79 20 70 69 65 63 65 20 6f 66 20 63 6f | ncept.of.whether.any.piece.of.co |
| d0e40 | 64 65 20 69 73 20 3c 65 6d 3e 73 65 6d 61 6e 74 69 63 61 6c 6c 79 20 61 6e 61 6c 79 7a 65 64 3c | de.is.<em>semantically.analyzed< |
| d0e60 | 2f 65 6d 3e 3b 20 69 6e 0a 20 20 20 20 20 20 65 73 73 65 6e 63 65 2c 20 77 68 65 74 68 65 72 20 | /em>;.in.......essence,.whether. |
| d0e80 | 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 22 6c 6f 6f 6b 73 20 61 74 22 20 69 74 2e 20 57 68 61 74 | the.compiler."looks.at".it..What |
| d0ea0 | 20 63 6f 64 65 20 69 73 20 61 6e 61 6c 79 7a 65 64 20 69 73 20 62 61 73 65 64 20 6f 6e 20 77 68 | .code.is.analyzed.is.based.on.wh |
| d0ec0 | 61 74 20 66 69 6c 65 73 20 61 6e 64 0a 20 20 20 20 20 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 | at.files.and.......declarations. |
| d0ee0 | 61 72 65 20 22 64 69 73 63 6f 76 65 72 65 64 22 20 66 72 6f 6d 20 61 20 63 65 72 74 61 69 6e 20 | are."discovered".from.a.certain. |
| d0f00 | 70 6f 69 6e 74 2e 20 54 68 69 73 20 70 72 6f 63 65 73 73 20 6f 66 20 22 64 69 73 63 6f 76 65 72 | point..This.process.of."discover |
| d0f20 | 79 22 20 69 73 20 62 61 73 65 64 20 6f 6e 20 61 20 73 69 6d 70 6c 65 20 73 65 74 0a 20 20 20 20 | y".is.based.on.a.simple.set..... |
| d0f40 | 20 20 6f 66 20 72 65 63 75 72 73 69 76 65 20 72 75 6c 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | ..of.recursive.rules:.......</p> |
| d0f60 | 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 61 20 63 61 6c | .......<ul>.........<li>If.a.cal |
| d0f80 | 6c 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | l.to.<code><span.class="tok-buil |
| d0fa0 | 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 20 69 73 20 61 6e | tin">@import</span></code>.is.an |
| d0fc0 | 61 6c 79 7a 65 64 2c 20 74 68 65 20 66 69 6c 65 20 62 65 69 6e 67 20 69 6d 70 6f 72 74 65 64 20 | alyzed,.the.file.being.imported. |
| d0fe0 | 69 73 20 61 6e 61 6c 79 7a 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 | is.analyzed.</li>.........<li>If |
| d1000 | 20 61 20 74 79 70 65 20 28 69 6e 63 6c 75 64 69 6e 67 20 61 20 66 69 6c 65 29 20 69 73 20 61 6e | .a.type.(including.a.file).is.an |
| d1020 | 61 6c 79 7a 65 64 2c 20 61 6c 6c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | alyzed,.all.<code><span.class="t |
| d1040 | 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 2c 20 3c | ok-kw">comptime</span></code>,.< |
| d1060 | 63 6f 64 65 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 | code><span.class="tok-kw">usingn |
| d1080 | 61 6d 65 73 70 61 63 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 | amespace</span></code>,.and.<cod |
| d10a0 | 65 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 | e><span.class="tok-kw">export</s |
| d10c0 | 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 77 69 74 68 69 6e 20 | pan></code>.declarations.within. |
| d10e0 | 69 74 20 61 72 65 20 61 6e 61 6c 79 7a 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c | it.are.analyzed.</li>.........<l |
| d1100 | 69 3e 49 66 20 61 20 74 79 70 65 20 28 69 6e 63 6c 75 64 69 6e 67 20 61 20 66 69 6c 65 29 20 69 | i>If.a.type.(including.a.file).i |
| d1120 | 73 20 61 6e 61 6c 79 7a 65 64 2c 20 61 6e 64 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 | s.analyzed,.and.the.compilation. |
| d1140 | 69 73 20 66 6f 72 20 61 20 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 54 65 73 74 22 3e 74 65 73 | is.for.a.<a.href="#Zig-Test">tes |
| d1160 | 74 3c 2f 61 3e 2c 20 61 6e 64 20 74 68 65 20 6d 6f 64 75 6c 65 20 74 68 65 20 74 79 70 65 20 69 | t</a>,.and.the.module.the.type.i |
| d1180 | 73 20 77 69 74 68 69 6e 20 69 73 20 74 68 65 20 72 6f 6f 74 20 6d 6f 64 75 6c 65 20 6f 66 20 74 | s.within.is.the.root.module.of.t |
| d11a0 | 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2c 20 74 68 65 6e 20 61 6c 6c 20 3c 63 6f 64 65 3e 3c | he.compilation,.then.all.<code>< |
| d11c0 | 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 3c | span.class="tok-kw">test</span>< |
| d11e0 | 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 77 69 74 68 69 6e 20 69 74 20 61 72 | /code>.declarations.within.it.ar |
| d1200 | 65 20 61 6c 73 6f 20 61 6e 61 6c 79 7a 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c | e.also.analyzed.</li>.........<l |
| d1220 | 69 3e 49 66 20 61 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 61 20 6e 61 6d 65 64 20 64 65 63 6c | i>If.a.reference.to.a.named.decl |
| d1240 | 61 72 61 74 69 6f 6e 20 28 69 2e 65 2e 20 61 20 75 73 61 67 65 20 6f 66 20 69 74 29 20 69 73 20 | aration.(i.e..a.usage.of.it).is. |
| d1260 | 61 6e 61 6c 79 7a 65 64 2c 20 74 68 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 62 65 69 6e 67 20 | analyzed,.the.declaration.being. |
| d1280 | 72 65 66 65 72 65 6e 63 65 64 20 69 73 20 61 6e 61 6c 79 7a 65 64 2e 20 44 65 63 6c 61 72 61 74 | referenced.is.analyzed..Declarat |
| d12a0 | 69 6f 6e 73 20 61 72 65 20 6f 72 64 65 72 2d 69 6e 64 65 70 65 6e 64 65 6e 74 2c 20 73 6f 20 74 | ions.are.order-independent,.so.t |
| d12c0 | 68 69 73 20 72 65 66 65 72 65 6e 63 65 20 6d 61 79 20 62 65 20 61 62 6f 76 65 20 6f 72 20 62 65 | his.reference.may.be.above.or.be |
| d12e0 | 6c 6f 77 20 74 68 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 62 65 69 6e 67 20 72 65 66 65 72 65 | low.the.declaration.being.refere |
| d1300 | 6e 63 65 64 2c 20 6f 72 20 65 76 65 6e 20 69 6e 20 61 6e 6f 74 68 65 72 20 66 69 6c 65 20 65 6e | nced,.or.even.in.another.file.en |
| d1320 | 74 69 72 65 6c 79 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 | tirely.</li>.......</ul>.......< |
| d1340 | 70 3e 0a 20 20 20 20 20 20 54 68 61 74 27 73 20 69 74 21 20 54 68 6f 73 65 20 72 75 6c 65 73 20 | p>.......That's.it!.Those.rules. |
| d1360 | 64 65 66 69 6e 65 20 68 6f 77 20 5a 69 67 20 66 69 6c 65 73 20 61 6e 64 20 64 65 63 6c 61 72 61 | define.how.Zig.files.and.declara |
| d1380 | 74 69 6f 6e 73 20 61 72 65 20 64 69 73 63 6f 76 65 72 65 64 2e 20 41 6c 6c 20 74 68 61 74 20 72 | tions.are.discovered..All.that.r |
| d13a0 | 65 6d 61 69 6e 73 20 69 73 20 74 6f 0a 20 20 20 20 20 20 75 6e 64 65 72 73 74 61 6e 64 20 77 68 | emains.is.to.......understand.wh |
| d13c0 | 65 72 65 20 74 68 69 73 20 70 72 6f 63 65 73 73 20 3c 65 6d 3e 73 74 61 72 74 73 3c 2f 65 6d 3e | ere.this.process.<em>starts</em> |
| d13e0 | 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 65 | ........</p>.......<p>.......The |
| d1400 | 20 61 6e 73 77 65 72 20 74 6f 20 74 68 61 74 20 69 73 20 74 68 65 20 72 6f 6f 74 20 6f 66 20 74 | .answer.to.that.is.the.root.of.t |
| d1420 | 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 3a 20 65 76 65 72 79 20 5a 69 67 20 63 | he.standard.library:.every.Zig.c |
| d1440 | 6f 6d 70 69 6c 61 74 69 6f 6e 20 62 65 67 69 6e 73 20 62 79 20 61 6e 61 6c 79 7a 69 6e 67 20 74 | ompilation.begins.by.analyzing.t |
| d1460 | 68 65 0a 20 20 20 20 20 20 66 69 6c 65 20 3c 63 6f 64 65 3e 6c 69 62 2f 73 74 64 2f 73 74 64 2e | he.......file.<code>lib/std/std. |
| d1480 | 7a 69 67 3c 2f 63 6f 64 65 3e 2e 20 54 68 69 73 20 66 69 6c 65 20 63 6f 6e 74 61 69 6e 73 20 61 | zig</code>..This.file.contains.a |
| d14a0 | 20 3c 63 6f 64 65 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 | .<code><span.class="tok-kw">comp |
| d14c0 | 74 69 6d 65 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 6e 0a 20 | time</span></code>.declaration.. |
| d14e0 | 20 20 20 20 20 77 68 69 63 68 20 69 6d 70 6f 72 74 73 20 3c 63 6f 64 65 3e 6c 69 62 2f 73 74 64 | .....which.imports.<code>lib/std |
| d1500 | 2f 73 74 61 72 74 2e 7a 69 67 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 74 68 61 74 20 66 69 6c 65 | /start.zig</code>,.and.that.file |
| d1520 | 20 69 6e 20 74 75 72 6e 20 75 73 65 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | .in.turn.uses.......<code><span. |
| d1540 | 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 |
| d1560 | 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 72 | n>(<span.class="tok-str">"r |
| d1580 | 6f 6f 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 20 74 6f 20 72 65 66 65 | oot"</span>)</code>.to.refe |
| d15a0 | 72 65 6e 63 65 20 74 68 65 20 22 72 6f 6f 74 20 6d 6f 64 75 6c 65 22 3b 20 73 6f 2c 20 74 68 65 | rence.the."root.module";.so,.the |
| d15c0 | 20 66 69 6c 65 20 79 6f 75 20 70 72 6f 76 69 64 65 20 61 73 20 79 6f 75 72 0a 20 20 20 20 20 20 | .file.you.provide.as.your....... |
| d15e0 | 6d 61 69 6e 20 6d 6f 64 75 6c 65 27 73 20 72 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 20 69 | main.module's.root.source.file.i |
| d1600 | 73 20 65 66 66 65 63 74 69 76 65 6c 79 20 61 6c 73 6f 20 61 20 72 6f 6f 74 2c 20 62 65 63 61 75 | s.effectively.also.a.root,.becau |
| d1620 | 73 65 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 77 69 6c 6c 20 61 6c 77 | se.the.standard.library.will.alw |
| d1640 | 61 79 73 0a 20 20 20 20 20 20 72 65 66 65 72 65 6e 63 65 20 69 74 2e 0a 20 20 20 20 20 20 3c 2f | ays.......reference.it........</ |
| d1660 | 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 6f 66 74 65 6e 20 64 | p>.......<p>.......It.is.often.d |
| d1680 | 65 73 69 72 61 62 6c 65 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 61 74 20 63 65 72 74 61 | esirable.to.make.sure.that.certa |
| d16a0 | 69 6e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 26 23 38 32 31 32 3b 20 70 61 72 74 69 63 75 6c | in.declarations.—.particul |
| d16c0 | 61 72 6c 79 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | arly.<code><span.class="tok-kw"> |
| d16e0 | 74 65 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 6f 72 20 3c 63 6f 64 | test</span></code>.......or.<cod |
| d1700 | 65 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 | e><span.class="tok-kw">export</s |
| d1720 | 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 26 23 38 32 31 32 3b | pan></code>.declarations.— |
| d1740 | 20 61 72 65 20 64 69 73 63 6f 76 65 72 65 64 2e 20 42 61 73 65 64 20 6f 6e 20 74 68 65 20 61 62 | .are.discovered..Based.on.the.ab |
| d1760 | 6f 76 65 20 72 75 6c 65 73 2c 20 61 20 63 6f 6d 6d 6f 6e 0a 20 20 20 20 20 20 73 74 72 61 74 65 | ove.rules,.a.common.......strate |
| d1780 | 67 79 20 66 6f 72 20 74 68 69 73 20 69 73 20 74 6f 20 75 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 | gy.for.this.is.to.use.<code><spa |
| d17a0 | 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 |
| d17c0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 74 68 69 6e 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | pan></code>.within.a.<code><span |
| d17e0 | 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 3c | .class="tok-kw">comptime</span>< |
| d1800 | 2f 63 6f 64 65 3e 20 6f 72 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | /code>.or.......<code><span.clas |
| d1820 | 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 6f 64 65 3e 20 62 6c | s="tok-kw">test</span></code>.bl |
| d1840 | 6f 63 6b 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 | ock:.......</p>.......<figure><f |
| d1860 | 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 | igcaption.class="zig-cap"><cite. |
| d1880 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 66 6f 72 63 65 5f 66 69 6c 65 5f 64 69 73 63 6f 76 65 72 | class="file">force_file_discover |
| d18a0 | 79 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 | y.zig</cite></figcaption><pre><c |
| d18c0 | 6f 64 65 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 | ode><span.class="tok-kw">comptim |
| d18e0 | 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- |
| d1900 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 77 69 6c 6c 20 65 6e 73 75 72 65 20 74 68 61 | comment">//.This.will.ensure.tha |
| d1920 | 74 20 74 68 65 20 66 69 6c 65 20 27 61 70 69 2e 7a 69 67 27 20 69 73 20 61 6c 77 61 79 73 20 64 | t.the.file.'api.zig'.is.always.d |
| d1940 | 69 73 63 6f 76 65 72 65 64 20 28 61 73 20 6c 6f 6e 67 20 61 73 20 74 68 69 73 20 66 69 6c 65 20 | iscovered.(as.long.as.this.file. |
| d1960 | 69 73 20 64 69 73 63 6f 76 65 72 65 64 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | is.discovered).</span>.....<span |
| d1980 | 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 74 20 69 73 20 75 73 | .class="tok-comment">//.It.is.us |
| d19a0 | 65 66 75 6c 20 69 66 20 27 61 70 69 2e 7a 69 67 27 20 63 6f 6e 74 61 69 6e 73 20 69 6d 70 6f 72 | eful.if.'api.zig'.contains.impor |
| d19c0 | 74 61 6e 74 20 65 78 70 6f 72 74 65 64 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2e 3c 2f 73 70 61 | tant.exported.declarations.</spa |
| d19e0 | 6e 3e 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 | n>....._.=.<span.class="tok-buil |
| d1a00 | 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= |
| d1a20 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 70 69 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 | "tok-str">"api.zig"</s |
| d1a40 | 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 6d | pan>);......<span.class="tok-com |
| d1a60 | 6d 65 6e 74 22 3e 2f 2f 20 57 65 20 63 6f 75 6c 64 20 61 6c 73 6f 20 68 61 76 65 20 61 20 66 69 | ment">//.We.could.also.have.a.fi |
| d1a80 | 6c 65 20 77 68 69 63 68 20 63 6f 6e 74 61 69 6e 73 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 77 | le.which.contains.declarations.w |
| d1aa0 | 65 20 6f 6e 6c 79 20 77 61 6e 74 20 74 6f 20 65 78 70 6f 72 74 20 64 65 70 65 6e 64 69 6e 67 20 | e.only.want.to.export.depending. |
| d1ac0 | 6f 6e 20 61 20 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | on.a.comptime</span>.....<span.c |
| d1ae0 | 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 64 69 74 69 6f 6e 2e | lass="tok-comment">//.condition. |
| d1b00 | 20 49 6e 20 74 68 61 74 20 63 61 73 65 2c 20 77 65 20 63 61 6e 20 75 73 65 20 61 6e 20 60 69 66 | .In.that.case,.we.can.use.an.`if |
| d1b20 | 60 20 73 74 61 74 65 6d 65 6e 74 20 68 65 72 65 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | `.statement.here:</span>.....<sp |
| d1b40 | 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 62 75 69 | an.class="tok-kw">if</span>.(bui |
| d1b60 | 6c 74 69 6e 2e 6f 73 2e 74 61 67 20 3d 3d 20 2e 77 69 6e 64 6f 77 73 29 20 7b 0a 20 20 20 20 20 | ltin.os.tag.==..windows).{...... |
| d1b80 | 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 74 69 6e 22 | ..._.=.<span.class="tok-builtin" |
| d1ba0 | 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 |
| d1bc0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 69 6e 64 6f 77 73 5f 61 70 69 2e 7a 69 67 26 71 75 6f 74 | -str">"windows_api.zig" |
| d1be0 | 3b 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 63 6c 61 73 73 3d | ;</span>);.....}.}..<span.class= |
| d1c00 | 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | "tok-kw">test</span>.{.....<span |
| d1c20 | 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 6c | .class="tok-comment">//.This.wil |
| d1c40 | 6c 20 65 6e 73 75 72 65 20 74 68 61 74 20 74 68 65 20 66 69 6c 65 20 27 74 65 73 74 73 2e 7a 69 | l.ensure.that.the.file.'tests.zi |
| d1c60 | 67 27 20 69 73 20 61 6c 77 61 79 73 20 64 69 73 63 6f 76 65 72 65 64 20 28 61 73 20 6c 6f 6e 67 | g'.is.always.discovered.(as.long |
| d1c80 | 20 61 73 20 74 68 69 73 20 66 69 6c 65 20 69 73 20 64 69 73 63 6f 76 65 72 65 64 29 2c 3c 2f 73 | .as.this.file.is.discovered),</s |
| d1ca0 | 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 |
| d1cc0 | 74 22 3e 2f 2f 20 69 66 20 74 68 69 73 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 69 73 20 61 20 74 | t">//.if.this.compilation.is.a.t |
| d1ce0 | 65 73 74 2e 20 49 74 20 69 73 20 75 73 65 66 75 6c 20 69 66 20 27 74 65 73 74 73 2e 7a 69 67 27 | est..It.is.useful.if.'tests.zig' |
| d1d00 | 20 63 6f 6e 74 61 69 6e 73 20 74 65 73 74 73 20 77 65 20 77 61 6e 74 20 74 6f 20 65 6e 73 75 72 | .contains.tests.we.want.to.ensur |
| d1d20 | 65 20 61 72 65 20 72 75 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 3c 73 70 61 6e 20 | e.are.run.</span>....._.=.<span. |
| d1d40 | 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 |
| d1d60 | 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 74 | n>(<span.class="tok-str">"t |
| d1d80 | 65 73 74 73 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 3c 73 70 | ests.zig"</span>);......<sp |
| d1da0 | 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 65 20 63 6f 75 | an.class="tok-comment">//.We.cou |
| d1dc0 | 6c 64 20 61 6c 73 6f 20 68 61 76 65 20 61 20 66 69 6c 65 20 77 68 69 63 68 20 63 6f 6e 74 61 69 | ld.also.have.a.file.which.contai |
| d1de0 | 6e 73 20 74 65 73 74 73 20 77 65 20 6f 6e 6c 79 20 77 61 6e 74 20 74 6f 20 72 75 6e 20 64 65 70 | ns.tests.we.only.want.to.run.dep |
| d1e00 | 65 6e 64 69 6e 67 20 6f 6e 20 61 20 63 6f 6d 70 74 69 6d 65 20 63 6f 6e 64 69 74 69 6f 6e 2e 3c | ending.on.a.comptime.condition.< |
| d1e20 | 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 |
| d1e40 | 65 6e 74 22 3e 2f 2f 20 49 6e 20 74 68 61 74 20 63 61 73 65 2c 20 77 65 20 63 61 6e 20 75 73 65 | ent">//.In.that.case,.we.can.use |
| d1e60 | 20 61 6e 20 60 69 66 60 20 73 74 61 74 65 6d 65 6e 74 20 68 65 72 65 3a 3c 2f 73 70 61 6e 3e 0a | .an.`if`.statement.here:</span>. |
| d1e80 | 20 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 |
| d1ea0 | 6e 3e 20 28 62 75 69 6c 74 69 6e 2e 6f 73 2e 74 61 67 20 3d 3d 20 2e 77 69 6e 64 6f 77 73 29 20 | n>.(builtin.os.tag.==..windows). |
| d1ec0 | 7b 0a 20 20 20 20 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 | {........._.=.<span.class="tok-b |
| d1ee0 | 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 |
| d1f00 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 69 6e 64 6f 77 73 5f 74 65 73 74 73 | ss="tok-str">"windows_tests |
| d1f20 | 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 | .zig"</span>);.....}.}..<sp |
| d1f40 | 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 |
| d1f60 | 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 |
| d1f80 | 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 |
| d1fa0 | 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 |
| d1fc0 | 6e 3e 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 | n>);</code></pre></figure>...... |
| d1fe0 | 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 53 70 65 63 69 61 6c 2d 52 6f 6f 74 2d 44 65 63 | ........<h3.id="Special-Root-Dec |
| d2000 | 6c 61 72 61 74 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 70 65 63 69 61 6c | larations"><a.href="#toc-Special |
| d2020 | 2d 52 6f 6f 74 2d 44 65 63 6c 61 72 61 74 69 6f 6e 73 22 3e 53 70 65 63 69 61 6c 20 52 6f 6f 74 | -Root-Declarations">Special.Root |
| d2040 | 20 44 65 63 6c 61 72 61 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | .Declarations</a>.<a.class="hdr" |
| d2060 | 20 68 72 65 66 3d 22 23 53 70 65 63 69 61 6c 2d 52 6f 6f 74 2d 44 65 63 6c 61 72 61 74 69 6f 6e | .href="#Special-Root-Declaration |
| d2080 | 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 20 20 20 | s">..</a></h3>........<p>....... |
| d20a0 | 42 65 63 61 75 73 65 20 74 68 65 20 72 6f 6f 74 20 6d 6f 64 75 6c 65 27 73 20 72 6f 6f 74 20 73 | Because.the.root.module's.root.s |
| d20c0 | 6f 75 72 63 65 20 66 69 6c 65 20 69 73 20 61 6c 77 61 79 73 20 61 63 63 65 73 73 69 62 6c 65 20 | ource.file.is.always.accessible. |
| d20e0 | 75 73 69 6e 67 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | using.......<code><span.class="t |
| d2100 | 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 |
| d2120 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 6f 6f 74 26 71 75 6f 74 | .class="tok-str">"root" |
| d2140 | 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 2c 20 69 73 20 69 73 20 73 6f 6d 65 74 69 6d 65 | ;</span>)</code>,.is.is.sometime |
| d2160 | 73 20 75 73 65 64 20 62 79 20 6c 69 62 72 61 72 69 65 73 20 26 23 38 32 31 32 3b 20 69 6e 63 6c | s.used.by.libraries.—.incl |
| d2180 | 75 64 69 6e 67 20 74 68 65 20 5a 69 67 20 53 74 61 6e 64 61 72 64 0a 20 20 20 20 20 20 4c 69 62 | uding.the.Zig.Standard.......Lib |
| d21a0 | 72 61 72 79 20 26 23 38 32 31 32 3b 20 61 73 20 61 20 70 6c 61 63 65 20 66 6f 72 20 74 68 65 20 | rary.—.as.a.place.for.the. |
| d21c0 | 70 72 6f 67 72 61 6d 20 74 6f 20 65 78 70 6f 73 65 20 73 6f 6d 65 20 22 67 6c 6f 62 61 6c 22 20 | program.to.expose.some."global". |
| d21e0 | 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 74 6f 20 74 68 61 74 20 6c 69 62 72 61 72 79 2e 20 54 68 65 | information.to.that.library..The |
| d2200 | 20 5a 69 67 0a 20 20 20 20 20 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 77 69 6c 6c | .Zig.......Standard.Library.will |
| d2220 | 20 6c 6f 6f 6b 20 66 6f 72 20 73 65 76 65 72 61 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 69 | .look.for.several.declarations.i |
| d2240 | 6e 20 74 68 69 73 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 68 | n.this.file........</p>.......<h |
| d2260 | 34 20 69 64 3d 22 45 6e 74 72 79 2d 50 6f 69 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | 4.id="Entry-Point"><a.href="#toc |
| d2280 | 2d 45 6e 74 72 79 2d 50 6f 69 6e 74 22 3e 45 6e 74 72 79 20 50 6f 69 6e 74 3c 2f 61 3e 20 3c 61 | -Entry-Point">Entry.Point</a>.<a |
| d22a0 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 6e 74 72 79 2d 50 6f 69 6e 74 22 | .class="hdr".href="#Entry-Point" |
| d22c0 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 | >..</a></h4>........<p>.......Wh |
| d22e0 | 65 6e 20 62 75 69 6c 64 69 6e 67 20 61 6e 20 65 78 65 63 75 74 61 62 6c 65 2c 20 74 68 65 20 6d | en.building.an.executable,.the.m |
| d2300 | 6f 73 74 20 69 6d 70 6f 72 74 61 6e 74 20 74 68 69 6e 67 20 74 6f 20 62 65 20 6c 6f 6f 6b 65 64 | ost.important.thing.to.be.looked |
| d2320 | 20 75 70 20 69 6e 20 74 68 69 73 20 66 69 6c 65 20 69 73 20 74 68 65 20 70 72 6f 67 72 61 6d 27 | .up.in.this.file.is.the.program' |
| d2340 | 73 0a 20 20 20 20 20 20 3c 65 6d 3e 65 6e 74 72 79 20 70 6f 69 6e 74 3c 2f 65 6d 3e 2e 20 4d 6f | s.......<em>entry.point</em>..Mo |
| d2360 | 73 74 20 63 6f 6d 6d 6f 6e 6c 79 2c 20 74 68 69 73 20 69 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 | st.commonly,.this.is.a.function. |
| d2380 | 6e 61 6d 65 64 20 3c 63 6f 64 65 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 2c 20 77 68 69 63 68 0a 20 | named.<code>main</code>,.which.. |
| d23a0 | 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 2e 73 74 61 72 74 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c | .....<code>std.start</code>.will |
| d23c0 | 20 63 61 6c 6c 20 6a 75 73 74 20 61 66 74 65 72 20 70 65 72 66 6f 72 6d 69 6e 67 20 69 6d 70 6f | .call.just.after.performing.impo |
| d23e0 | 72 74 61 6e 74 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 77 6f 72 6b 2e 0a 20 20 20 20 20 | rtant.initialization.work....... |
| d2400 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6c 74 65 72 6e 61 74 69 76 | .</p>.......<p>.......Alternativ |
| d2420 | 65 6c 79 2c 20 74 68 65 20 70 72 65 73 65 6e 63 65 20 6f 66 20 61 20 64 65 63 6c 61 72 61 74 69 | ely,.the.presence.of.a.declarati |
| d2440 | 6f 6e 20 6e 61 6d 65 64 20 3c 63 6f 64 65 3e 5f 73 74 61 72 74 3c 2f 63 6f 64 65 3e 20 28 66 6f | on.named.<code>_start</code>.(fo |
| d2460 | 72 20 69 6e 73 74 61 6e 63 65 2c 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | r.instance,.......<code><span.cl |
| d2480 | 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 |
| d24a0 | 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 5f 73 74 61 72 74 | ass="tok-kw">const</span>._start |
| d24c0 | 20 3d 20 7b 7d 3b 3c 2f 63 6f 64 65 3e 29 20 77 69 6c 6c 20 64 69 73 61 62 6c 65 20 74 68 65 20 | .=.{};</code>).will.disable.the. |
| d24e0 | 64 65 66 61 75 6c 74 20 3c 63 6f 64 65 3e 73 74 64 2e 73 74 61 72 74 3c 2f 63 6f 64 65 3e 0a 20 | default.<code>std.start</code>.. |
| d2500 | 20 20 20 20 20 6c 6f 67 69 63 2c 20 61 6c 6c 6f 77 69 6e 67 20 79 6f 75 72 20 72 6f 6f 74 20 73 | .....logic,.allowing.your.root.s |
| d2520 | 6f 75 72 63 65 20 66 69 6c 65 20 74 6f 20 65 78 70 6f 72 74 20 61 20 6c 6f 77 2d 6c 65 76 65 6c | ource.file.to.export.a.low-level |
| d2540 | 20 65 6e 74 72 79 20 70 6f 69 6e 74 20 61 73 20 6e 65 65 64 65 64 2e 0a 20 20 20 20 20 20 3c 2f | .entry.point.as.needed........</ |
| d2560 | 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | p>.......<figure><figcaption.cla |
| d2580 | 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | ss="zig-cap"><cite.class="file"> |
| d25a0 | 65 6e 74 72 79 5f 70 6f 69 6e 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | entry_point.zig</cite></figcapti |
| d25c0 | 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | on><pre><code><span.class="tok-c |
| d25e0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 60 73 74 64 2e 73 74 61 72 74 60 20 69 6d 70 6f 72 74 73 20 | omment">///.`std.start`.imports. |
| d2600 | 74 68 69 73 20 66 69 6c 65 20 75 73 69 6e 67 20 60 40 69 6d 70 6f 72 74 28 26 71 75 6f 74 3b 72 | this.file.using.`@import("r |
| d2620 | 6f 6f 74 26 71 75 6f 74 3b 29 60 2c 20 61 6e 64 20 75 73 65 73 20 74 68 69 73 20 64 65 63 6c 61 | oot")`,.and.uses.this.decla |
| d2640 | 72 61 74 69 6f 6e 20 61 73 20 74 68 65 20 70 72 6f 67 72 61 6d 27 73 3c 2f 73 70 61 6e 3e 0a 3c | ration.as.the.program's</span>.< |
| d2660 | 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 75 73 65 | span.class="tok-comment">///.use |
| d2680 | 72 2d 70 72 6f 76 69 64 65 64 20 65 6e 74 72 79 20 70 6f 69 6e 74 2e 20 49 74 20 63 61 6e 20 72 | r-provided.entry.point..It.can.r |
| d26a0 | 65 74 75 72 6e 20 61 6e 79 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 79 70 65 73 | eturn.any.of.the.following.types |
| d26c0 | 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 6d 65 6e | :</span>.<span.class="tok-commen |
| d26e0 | 74 22 3e 2f 2f 2f 20 2a 20 60 76 6f 69 64 60 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | t">///.*.`void`</span>.<span.cla |
| d2700 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 2a 20 60 45 21 76 6f 69 64 60 2c | ss="tok-comment">///.*.`E!void`, |
| d2720 | 20 66 6f 72 20 61 6e 79 20 65 72 72 6f 72 20 73 65 74 20 60 45 60 3c 2f 73 70 61 6e 3e 0a 3c 73 | .for.any.error.set.`E`</span>.<s |
| d2740 | 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 2a 20 60 75 | pan.class="tok-comment">///.*.`u |
| d2760 | 38 60 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 | 8`</span>.<span.class="tok-comme |
| d2780 | 6e 74 22 3e 2f 2f 2f 20 2a 20 60 45 21 75 38 60 2c 20 66 6f 72 20 61 6e 79 20 65 72 72 6f 72 20 | nt">///.*.`E!u8`,.for.any.error. |
| d27a0 | 73 65 74 20 60 45 60 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 | set.`E`</span>.<span.class="tok- |
| d27c0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 52 65 74 75 72 6e 69 6e 67 20 61 20 60 76 6f 69 64 60 20 | comment">///.Returning.a.`void`. |
| d27e0 | 76 61 6c 75 65 20 66 72 6f 6d 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 77 69 6c 6c 20 65 78 | value.from.this.function.will.ex |
| d2800 | 69 74 20 77 69 74 68 20 63 6f 64 65 20 30 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | it.with.code.0.</span>.<span.cla |
| d2820 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 52 65 74 75 72 6e 69 6e 67 20 61 | ss="tok-comment">///.Returning.a |
| d2840 | 20 60 75 38 60 20 76 61 6c 75 65 20 66 72 6f 6d 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 77 | .`u8`.value.from.this.function.w |
| d2860 | 69 6c 6c 20 65 78 69 74 20 77 69 74 68 20 74 68 65 20 67 69 76 65 6e 20 73 74 61 74 75 73 20 63 | ill.exit.with.the.given.status.c |
| d2880 | 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 74 6f 6b 2d 63 6f 6d | ode.</span>.<span.class="tok-com |
| d28a0 | 6d 65 6e 74 22 3e 2f 2f 2f 20 52 65 74 75 72 6e 69 6e 67 20 61 6e 20 65 72 72 6f 72 20 76 61 6c | ment">///.Returning.an.error.val |
| d28c0 | 75 65 20 66 72 6f 6d 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 77 69 6c 6c 20 70 72 69 6e 74 | ue.from.this.function.will.print |
| d28e0 | 20 61 6e 20 45 72 72 6f 72 20 52 65 74 75 72 6e 20 54 72 61 63 65 20 61 6e 64 20 65 78 69 74 20 | .an.Error.Return.Trace.and.exit. |
| d2900 | 77 69 74 68 20 63 6f 64 65 20 31 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | with.code.1.</span>.<span.class= |
| d2920 | 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= |
| d2940 | 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=" |
| d2960 | 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 73 | tok-fn">main</span>().<span.clas |
| d2980 | 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 73 | s="tok-type">void</span>.{.....s |
| d29a0 | 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- |
| d29c0 | 73 74 72 22 3e 26 71 75 6f 74 3b 48 65 6c 6c 6f 2c 20 57 6f 72 6c 64 21 5c 6e 26 71 75 6f 74 3b | str">"Hello,.World!\n" |
| d29e0 | 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>,..{});.}..<span.class="t |
| d2a00 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 75 6e 63 6f 6d 6d 65 6e 74 65 64 2c 20 74 | ok-comment">//.If.uncommented,.t |
| d2a20 | 68 69 73 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 77 6f 75 6c 64 20 73 75 70 70 72 65 73 73 20 74 | his.declaration.would.suppress.t |
| d2a40 | 68 65 20 75 73 75 61 6c 20 73 74 64 2e 73 74 61 72 74 20 6c 6f 67 69 63 2c 20 63 61 75 73 69 6e | he.usual.std.start.logic,.causin |
| d2a60 | 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 |
| d2a80 | 74 22 3e 2f 2f 20 74 68 65 20 60 6d 61 69 6e 60 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 61 62 6f | t">//.the.`main`.declaration.abo |
| d2aa0 | 76 65 20 74 6f 20 62 65 20 69 67 6e 6f 72 65 64 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | ve.to.be.ignored.</span>.<span.c |
| d2ac0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 70 75 62 20 63 6f 6e 73 74 20 5f | lass="tok-comment">//pub.const._ |
| d2ae0 | 73 74 61 72 74 20 3d 20 7b 7d 3b 3c 2f 73 70 61 6e 3e 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | start.=.{};</span>..<span.class= |
| d2b00 | 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 |
| d2b20 | 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 |
| d2b40 | 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">" |
| d2b60 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ;std"</span>);</code></pre> |
| d2b80 | 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | </figure><figure><figcaption.cla |
| d2ba0 | 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e | ss="shell-cap">Shell</figcaption |
| d2bc0 | 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 | ><pre><samp>$.<kbd>zig.build-exe |
| d2be0 | 20 65 6e 74 72 79 5f 70 6f 69 6e 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f | .entry_point.zig</kbd>.$.<kbd>./ |
| d2c00 | 65 6e 74 72 79 5f 70 6f 69 6e 74 3c 2f 6b 62 64 3e 0a 48 65 6c 6c 6f 2c 20 57 6f 72 6c 64 21 0a | entry_point</kbd>.Hello,.World!. |
| d2c20 | 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e | </samp></pre></figure>.......<p> |
| d2c40 | 0a 20 20 20 20 20 20 49 66 20 74 68 65 20 5a 69 67 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6c 69 | .......If.the.Zig.compilation.li |
| d2c60 | 6e 6b 73 20 6c 69 62 63 2c 20 74 68 65 20 3c 63 6f 64 65 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 20 | nks.libc,.the.<code>main</code>. |
| d2c80 | 66 75 6e 63 74 69 6f 6e 20 63 61 6e 20 6f 70 74 69 6f 6e 61 6c 6c 79 20 62 65 20 61 6e 0a 20 20 | function.can.optionally.be.an... |
| d2ca0 | 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | ....<code><span.class="tok-kw">e |
| d2cc0 | 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 6b 2d 6b 77 | xport</span>.<span.class="tok-kw |
| d2ce0 | 22 3e 66 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 68 69 63 68 20 6d 61 74 63 68 65 73 | ">fn</span></code>.which.matches |
| d2d00 | 20 74 68 65 20 73 69 67 6e 61 74 75 72 65 20 6f 66 20 74 68 65 20 43 20 3c 63 6f 64 65 3e 6d 61 | .the.signature.of.the.C.<code>ma |
| d2d20 | 69 6e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | in</code>.function:.......</p>.. |
| d2d40 | 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 | .....<figure><figcaption.class=" |
| d2d60 | 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6c 69 62 63 | zig-cap"><cite.class="file">libc |
| d2d80 | 5f 65 78 70 6f 72 74 5f 65 6e 74 72 79 5f 70 6f 69 6e 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | _export_entry_point.zig</cite></ |
| d2da0 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | figcaption><pre><code><span.clas |
| d2dc0 | 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 |
| d2de0 | 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 6e 20 63 | s="tok-kw">export</span>.<span.c |
| d2e00 | 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 |
| d2e20 | 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 61 72 67 63 3a 20 3c | ass="tok-fn">main</span>(argc:.< |
| d2e40 | 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 61 | span.class="tok-type">c_int</spa |
| d2e60 | 6e 3e 2c 20 61 72 67 76 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n>,.argv:.[*]<span.class="tok-kw |
| d2e80 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 5b 2a 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">const</span>.[*:<span.class="t |
| d2ea0 | 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 73 3d | ok-number">0</span>]<span.class= |
| d2ec0 | 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 73 | "tok-kw">const</span>.<span.clas |
| d2ee0 | 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 73 70 61 6e 20 63 6c | s="tok-type">u8</span>).<span.cl |
| d2f00 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 69 6e 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | ass="tok-type">c_int</span>.{... |
| d2f20 | 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 |
| d2f40 | 61 6e 3e 20 61 72 67 73 20 3d 20 61 72 67 76 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | an>.args.=.argv[<span.class="tok |
| d2f60 | 2d 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 | -number">0</span>..<span.class=" |
| d2f80 | 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 61 72 67 | tok-builtin">@intCast</span>(arg |
| d2fa0 | 63 29 5d 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 | c)];.....std.debug.print(<span.c |
| d2fc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 48 65 6c 6c 6f 21 20 61 72 67 76 | lass="tok-str">"Hello!.argv |
| d2fe0 | 5b 30 5d 20 69 73 20 27 7b 73 7d 27 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 61 | [0].is.'{s}'\n"</span>,..{a |
| d3000 | 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 30 3c 2f | rgs[<span.class="tok-number">0</ |
| d3020 | 73 70 61 6e 3e 5d 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 | span>]});.....<span.class="tok-k |
| d3040 | 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 |
| d3060 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | k-number">0</span>;.}..<span.cla |
| d3080 | 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.=.< |
| d30a0 | 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 |
| d30c0 | 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 |
| d30e0 | 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 | uot;std"</span>);</code></p |
| d3100 | 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | re></figure><figure><figcaption. |
| d3120 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 | class="shell-cap">Shell</figcapt |
| d3140 | 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d | ion><pre><samp>$.<kbd>zig.build- |
| d3160 | 65 78 65 20 6c 69 62 63 5f 65 78 70 6f 72 74 5f 65 6e 74 72 79 5f 70 6f 69 6e 74 2e 7a 69 67 20 | exe.libc_export_entry_point.zig. |
| d3180 | 2d 6c 63 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 6c 69 62 63 5f 65 78 70 6f 72 74 5f 65 | -lc</kbd>.$.<kbd>./libc_export_e |
| d31a0 | 6e 74 72 79 5f 70 6f 69 6e 74 3c 2f 6b 62 64 3e 0a 48 65 6c 6c 6f 21 20 61 72 67 76 5b 30 5d 20 | ntry_point</kbd>.Hello!.argv[0]. |
| d31c0 | 69 73 20 27 2e 2f 6c 69 62 63 5f 65 78 70 6f 72 74 5f 65 6e 74 72 79 5f 70 6f 69 6e 74 27 0a 3c | is.'./libc_export_entry_point'.< |
| d31e0 | 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | /samp></pre></figure>.......<p>. |
| d3200 | 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 2e 73 74 61 72 74 3c 2f 63 6f 64 65 3e 20 6d 61 79 | ......<code>std.start</code>.may |
| d3220 | 20 61 6c 73 6f 20 75 73 65 20 6f 74 68 65 72 20 65 6e 74 72 79 20 70 6f 69 6e 74 20 64 65 63 6c | .also.use.other.entry.point.decl |
| d3240 | 61 72 61 74 69 6f 6e 73 20 69 6e 20 63 65 72 74 61 69 6e 20 73 69 74 75 61 74 69 6f 6e 73 2c 20 | arations.in.certain.situations,. |
| d3260 | 73 75 63 68 0a 20 20 20 20 20 20 61 73 20 3c 63 6f 64 65 3e 77 57 69 6e 4d 61 69 6e 3c 2f 63 6f | such.......as.<code>wWinMain</co |
| d3280 | 64 65 3e 20 6f 72 20 3c 63 6f 64 65 3e 45 66 69 4d 61 69 6e 3c 2f 63 6f 64 65 3e 2e 20 52 65 66 | de>.or.<code>EfiMain</code>..Ref |
| d32a0 | 65 72 20 74 6f 20 74 68 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 6c 69 62 2f 73 74 64 2f 73 74 | er.to.the.......<code>lib/std/st |
| d32c0 | 61 72 74 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 6c 6f 67 69 63 20 66 6f 72 20 64 65 74 61 69 6c 73 | art.zig</code>.logic.for.details |
| d32e0 | 20 6f 66 20 74 68 65 73 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f | .of.these.declarations........</ |
| d3300 | 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 53 74 61 6e 64 61 72 64 | p>..............<h4.id="Standard |
| d3320 | 2d 4c 69 62 72 61 72 79 2d 4f 70 74 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | -Library-Options"><a.href="#toc- |
| d3340 | 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 2d 4f 70 74 69 6f 6e 73 22 3e 53 74 61 6e 64 61 | Standard-Library-Options">Standa |
| d3360 | 72 64 20 4c 69 62 72 61 72 79 20 4f 70 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | rd.Library.Options</a>.<a.class= |
| d3380 | 22 68 64 72 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 4f 70 | "hdr".href="#Standard-Library-Op |
| d33a0 | 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | tions">..</a></h4>........<p>... |
| d33c0 | 20 20 20 20 54 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 61 6c 73 6f 20 6c 6f | ....The.standard.library.also.lo |
| d33e0 | 6f 6b 73 20 66 6f 72 20 61 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 69 6e 20 74 68 65 20 72 6f 6f | oks.for.a.declaration.in.the.roo |
| d3400 | 74 20 6d 6f 64 75 6c 65 27 73 20 72 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 20 6e 61 6d 65 | t.module's.root.source.file.name |
| d3420 | 64 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 5f 6f 70 74 69 6f 6e 73 3c 2f 63 6f 64 65 3e | d.......<code>std_options</code> |
| d3440 | 2e 20 49 66 20 70 72 65 73 65 6e 74 2c 20 74 68 69 73 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 69 | ..If.present,.this.declaration.i |
| d3460 | 73 20 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 20 61 20 73 74 72 75 63 74 20 6f 66 20 74 79 70 | s.expected.to.be.a.struct.of.typ |
| d3480 | 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 2e 4f 70 74 69 6f 6e 73 3c 2f 63 6f 64 65 3e | e.......<code>std.Options</code> |
| d34a0 | 2c 20 61 6e 64 20 61 6c 6c 6f 77 73 20 74 68 65 20 70 72 6f 67 72 61 6d 20 74 6f 20 63 75 73 74 | ,.and.allows.the.program.to.cust |
| d34c0 | 6f 6d 69 7a 65 20 73 6f 6d 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 0a 20 20 20 20 | omize.some.standard.library..... |
| d34e0 | 20 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 2c 20 73 75 63 68 20 61 73 20 74 68 65 20 3c 63 6f | ..functionality,.such.as.the.<co |
| d3500 | 64 65 3e 73 74 64 2e 6c 6f 67 3c 2f 63 6f 64 65 3e 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e | de>std.log</code>.implementation |
| d3520 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | ........</p>.......<figure><figc |
| d3540 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 | aption.class="zig-cap"><cite.cla |
| d3560 | 73 73 3d 22 66 69 6c 65 22 3e 73 74 64 5f 6f 70 74 69 6f 6e 73 2e 7a 69 67 3c 2f 63 69 74 65 3e | ss="file">std_options.zig</cite> |
| d3580 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </figcaption><pre><code><span.cl |
| d35a0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 54 68 65 20 70 72 65 73 65 6e | ass="tok-comment">///.The.presen |
| d35c0 | 63 65 20 6f 66 20 74 68 69 73 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 61 6c 6c 6f 77 73 20 74 68 | ce.of.this.declaration.allows.th |
| d35e0 | 65 20 70 72 6f 67 72 61 6d 20 74 6f 20 6f 76 65 72 72 69 64 65 20 63 65 72 74 61 69 6e 20 62 65 | e.program.to.override.certain.be |
| d3600 | 68 61 76 69 6f 72 73 20 6f 66 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 2e | haviors.of.the.standard.library. |
| d3620 | 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 |
| d3640 | 22 3e 2f 2f 2f 20 46 6f 72 20 61 20 66 75 6c 6c 20 6c 69 73 74 20 6f 66 20 61 76 61 69 6c 61 62 | ">///.For.a.full.list.of.availab |
| d3660 | 6c 65 20 6f 70 74 69 6f 6e 73 2c 20 73 65 65 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f | le.options,.see.the.documentatio |
| d3680 | 6e 20 66 6f 72 20 60 73 74 64 2e 4f 70 74 69 6f 6e 73 60 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | n.for.`std.Options`.</span>.<spa |
| d36a0 | 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 |
| d36c0 | 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 |
| d36e0 | 64 5f 6f 70 74 69 6f 6e 73 3a 20 73 74 64 2e 4f 70 74 69 6f 6e 73 20 3d 20 2e 7b 0a 20 20 20 20 | d_options:.std.Options.=..{..... |
| d3700 | 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 42 79 20 | <span.class="tok-comment">//.By. |
| d3720 | 64 65 66 61 75 6c 74 2c 20 69 6e 20 73 61 66 65 20 62 75 69 6c 64 20 6d 6f 64 65 73 2c 20 74 68 | default,.in.safe.build.modes,.th |
| d3740 | 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 77 69 6c 6c 20 61 74 74 61 63 68 20 61 | e.standard.library.will.attach.a |
| d3760 | 20 73 65 67 66 61 75 6c 74 20 68 61 6e 64 6c 65 72 20 74 6f 20 74 68 65 20 70 72 6f 67 72 61 6d | .segfault.handler.to.the.program |
| d3780 | 20 74 6f 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 | .to</span>.....<span.class="tok- |
| d37a0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 70 72 69 6e 74 20 61 20 68 65 6c 70 66 75 6c 20 73 74 61 63 | comment">//.print.a.helpful.stac |
| d37c0 | 6b 20 74 72 61 63 65 20 69 66 20 61 20 73 65 67 6d 65 6e 74 61 74 69 6f 6e 20 66 61 75 6c 74 20 | k.trace.if.a.segmentation.fault. |
| d37e0 | 6f 63 63 75 72 73 2e 20 48 65 72 65 2c 20 77 65 20 63 61 6e 20 64 69 73 61 62 6c 65 20 74 68 69 | occurs..Here,.we.can.disable.thi |
| d3800 | 73 2c 20 6f 72 20 65 76 65 6e 20 65 6e 61 62 6c 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | s,.or.even.enable</span>.....<sp |
| d3820 | 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 74 20 69 6e 20 | an.class="tok-comment">//.it.in. |
| d3840 | 75 6e 73 61 66 65 20 62 75 69 6c 64 20 6d 6f 64 65 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 2e | unsafe.build.modes.</span>...... |
| d3860 | 65 6e 61 62 6c 65 5f 73 65 67 66 61 75 6c 74 5f 68 61 6e 64 6c 65 72 20 3d 20 3c 73 70 61 6e 20 | enable_segfault_handler.=.<span. |
| d3880 | 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 0a 20 20 | class="tok-null">true</span>,... |
| d38a0 | 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 |
| d38c0 | 68 69 73 20 69 73 20 74 68 65 20 6c 6f 67 67 69 6e 67 20 66 75 6e 63 74 69 6f 6e 20 75 73 65 64 | his.is.the.logging.function.used |
| d38e0 | 20 62 79 20 60 73 74 64 2e 6c 6f 67 60 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 2e 6c 6f 67 46 6e | .by.`std.log`.</span>......logFn |
| d3900 | 20 3d 20 6d 79 4c 6f 67 46 6e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .=.myLogFn,.};..<span.class="tok |
| d3920 | 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- |
| d3940 | 66 6e 22 3e 6d 79 4c 6f 67 46 6e 3c 2f 73 70 61 6e 3e 28 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | fn">myLogFn</span>(.....<span.cl |
| d3960 | 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 6c 65 76 | ass="tok-kw">comptime</span>.lev |
| d3980 | 65 6c 3a 20 73 74 64 2e 6c 6f 67 2e 4c 65 76 65 6c 2c 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | el:.std.log.Level,.....<span.cla |
| d39a0 | 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 73 63 6f 70 | ss="tok-kw">comptime</span>.scop |
| d39c0 | 65 3a 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 | e:.<span.class="tok-builtin">@Ty |
| d39e0 | 70 65 3c 2f 73 70 61 6e 3e 28 2e 65 6e 75 6d 5f 6c 69 74 65 72 61 6c 29 2c 0a 20 20 20 20 3c 73 | pe</span>(.enum_literal),.....<s |
| d3a00 | 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 |
| d3a20 | 6e 3e 20 66 6f 72 6d 61 74 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n>.format:.[]<span.class="tok-kw |
| d3a40 | 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- |
| d3a60 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 61 72 67 73 3a 20 3c 73 70 61 6e | type">u8</span>,.....args:.<span |
| d3a80 | 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 2c 0a | .class="tok-kw">anytype</span>,. |
| d3aa0 | 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 |
| d3ac0 | 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 |
| d3ae0 | 65 6e 74 22 3e 2f 2f 20 57 65 20 63 6f 75 6c 64 20 64 6f 20 61 6e 79 74 68 69 6e 67 20 77 65 20 | ent">//.We.could.do.anything.we. |
| d3b00 | 77 61 6e 74 20 68 65 72 65 21 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | want.here!</span>.....<span.clas |
| d3b20 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2e 2e 2e 62 75 74 20 61 63 74 75 61 6c | s="tok-comment">//....but.actual |
| d3b40 | 6c 79 2c 20 6c 65 74 27 73 20 6a 75 73 74 20 63 61 6c 6c 20 74 68 65 20 64 65 66 61 75 6c 74 20 | ly,.let's.just.call.the.default. |
| d3b60 | 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6c | implementation.</span>.....std.l |
| d3b80 | 6f 67 2e 64 65 66 61 75 6c 74 4c 6f 67 28 6c 65 76 65 6c 2c 20 73 63 6f 70 65 2c 20 66 6f 72 6d | og.defaultLog(level,.scope,.form |
| d3ba0 | 61 74 2c 20 61 72 67 73 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | at,.args);.}..<span.class="tok-k |
| d3bc0 | 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 |
| d3be0 | 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>(< |
| d3c00 | 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 |
| d3c20 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | uot;</span>);</code></pre></figu |
| d3c40 | 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 50 61 6e 69 63 2d 48 | re>..............<h4.id="Panic-H |
| d3c60 | 61 6e 64 6c 65 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 61 6e 69 63 2d 48 61 6e 64 | andler"><a.href="#toc-Panic-Hand |
| d3c80 | 6c 65 72 22 3e 50 61 6e 69 63 20 48 61 6e 64 6c 65 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | ler">Panic.Handler</a>.<a.class= |
| d3ca0 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 50 61 6e 69 63 2d 48 61 6e 64 6c 65 72 22 3e c2 a7 3c 2f | "hdr".href="#Panic-Handler">..</ |
| d3cc0 | 61 3e 3c 2f 68 34 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 | a></h4>........<p>.......The.Zig |
| d3ce0 | 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 6c 6f 6f 6b 73 20 66 6f 72 20 61 20 64 65 | .Standard.Library.looks.for.a.de |
| d3d00 | 63 6c 61 72 61 74 69 6f 6e 20 6e 61 6d 65 64 20 3c 63 6f 64 65 3e 70 61 6e 69 63 3c 2f 63 6f 64 | claration.named.<code>panic</cod |
| d3d20 | 65 3e 20 69 6e 20 74 68 65 20 72 6f 6f 74 20 6d 6f 64 75 6c 65 27 73 0a 20 20 20 20 20 20 72 6f | e>.in.the.root.module's.......ro |
| d3d40 | 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 2e 20 49 66 20 70 72 65 73 65 6e 74 2c 20 69 74 20 69 | ot.source.file..If.present,.it.i |
| d3d60 | 73 20 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 20 61 20 6e 61 6d 65 73 70 61 63 65 20 28 63 6f | s.expected.to.be.a.namespace.(co |
| d3d80 | 6e 74 61 69 6e 65 72 20 74 79 70 65 29 20 77 69 74 68 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 0a | ntainer.type).with.declarations. |
| d3da0 | 20 20 20 20 20 20 70 72 6f 76 69 64 69 6e 67 20 64 69 66 66 65 72 65 6e 74 20 70 61 6e 69 63 20 | ......providing.different.panic. |
| d3dc0 | 68 61 6e 64 6c 65 72 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 | handlers........</p>.......<p>.. |
| d3de0 | 20 20 20 20 20 53 65 65 20 3c 63 6f 64 65 3e 73 74 64 2e 64 65 62 75 67 2e 73 69 6d 70 6c 65 5f | .....See.<code>std.debug.simple_ |
| d3e00 | 70 61 6e 69 63 3c 2f 63 6f 64 65 3e 20 66 6f 72 20 61 20 62 61 73 69 63 20 69 6d 70 6c 65 6d 65 | panic</code>.for.a.basic.impleme |
| d3e20 | 6e 74 61 74 69 6f 6e 20 6f 66 20 74 68 69 73 20 6e 61 6d 65 73 70 61 63 65 2e 0a 20 20 20 20 20 | ntation.of.this.namespace....... |
| d3e40 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 76 65 72 72 69 64 69 6e 67 | .</p>.......<p>.......Overriding |
| d3e60 | 20 68 6f 77 20 74 68 65 20 70 61 6e 69 63 20 68 61 6e 64 6c 65 72 20 61 63 74 75 61 6c 6c 79 20 | .how.the.panic.handler.actually. |
| d3e80 | 6f 75 74 70 75 74 73 20 6d 65 73 73 61 67 65 73 2c 20 62 75 74 20 6b 65 65 70 69 6e 67 20 74 68 | outputs.messages,.but.keeping.th |
| d3ea0 | 65 20 66 6f 72 6d 61 74 74 65 64 20 73 61 66 65 74 79 20 70 61 6e 69 63 73 0a 20 20 20 20 20 20 | e.formatted.safety.panics....... |
| d3ec0 | 77 68 69 63 68 20 61 72 65 20 65 6e 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 2c 20 63 61 | which.are.enabled.by.default,.ca |
| d3ee0 | 6e 20 62 65 20 65 61 73 69 6c 79 20 61 63 68 69 65 76 65 64 20 77 69 74 68 20 3c 63 6f 64 65 3e | n.be.easily.achieved.with.<code> |
| d3f00 | 73 74 64 2e 64 65 62 75 67 2e 46 75 6c 6c 50 61 6e 69 63 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 | std.debug.FullPanic</code>:..... |
| d3f20 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e | ..</p>.......<figure><figcaption |
| d3f40 | 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 | .class="zig-cap"><cite.class="fi |
| d3f60 | 6c 65 22 3e 70 61 6e 69 63 5f 68 61 6e 64 6c 65 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 | le">panic_handler.zig</cite></fi |
| d3f80 | 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | gcaption><pre><code><span.class= |
| d3fa0 | 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= |
| d3fc0 | 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=" |
| d3fe0 | 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 73 | tok-fn">main</span>().<span.clas |
| d4000 | 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>.{.....< |
| d4020 | 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 52 75 6e | span.class="tok-builtin">@setRun |
| d4040 | 74 69 6d 65 53 61 66 65 74 79 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | timeSafety</span>(<span.class="t |
| d4060 | 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 3c 73 70 61 6e | ok-null">true</span>);.....<span |
| d4080 | 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 |
| d40a0 | 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 3d | pan.class="tok-type">u8</span>.= |
| d40c0 | 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 3c 2f 73 | .<span.class="tok-number">255</s |
| d40e0 | 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 6d 65 | pan>;.....<span.class="tok-comme |
| d4100 | 6e 74 22 3e 2f 2f 20 4c 65 74 27 73 20 6f 76 65 72 66 6c 6f 77 20 74 68 69 73 20 69 6e 74 65 67 | nt">//.Let's.overflow.this.integ |
| d4120 | 65 72 21 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 | er!</span>.....x.+=.<span.class= |
| d4140 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | "tok-number">1</span>;.}..<span. |
| d4160 | 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. |
| d4180 | 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 61 6e 69 | class="tok-kw">const</span>.pani |
| d41a0 | 63 20 3d 20 73 74 64 2e 64 65 62 75 67 2e 46 75 6c 6c 50 61 6e 69 63 28 6d 79 50 61 6e 69 63 29 | c.=.std.debug.FullPanic(myPanic) |
| d41c0 | 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 6e | ;..<span.class="tok-kw">fn</span |
| d41e0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 79 50 61 6e 69 63 3c 2f | >.<span.class="tok-fn">myPanic</ |
| d4200 | 73 70 61 6e 3e 28 6d 73 67 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | span>(msg:.[]<span.class="tok-kw |
| d4220 | 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- |
| d4240 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 66 69 72 73 74 5f 74 72 61 63 65 5f 61 64 64 | type">u8</span>,.first_trace_add |
| d4260 | 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 75 73 69 7a 65 | r:.?<span.class="tok-type">usize |
| d4280 | 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"> |
| d42a0 | 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 66 69 72 73 74 5f | noreturn</span>.{....._.=.first_ |
| d42c0 | 74 72 61 63 65 5f 61 64 64 72 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 | trace_addr;.....std.debug.print( |
| d42e0 | 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 50 61 6e 69 | <span.class="tok-str">"Pani |
| d4300 | 63 21 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6d 73 67 7d 29 3b 0a | c!.{s}\n"</span>,..{msg});. |
| d4320 | 20 20 20 20 73 74 64 2e 70 72 6f 63 65 73 73 2e 65 78 69 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ....std.process.exit(<span.class |
| d4340 | 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 7d 0a 0a 3c 73 70 61 | ="tok-number">1</span>);.}..<spa |
| d4360 | 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 |
| d4380 | 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 |
| d43a0 | 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 |
| d43c0 | 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 3c 2f 63 6f 64 | r">"std"</span>);</cod |
| d43e0 | 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | e></pre></figure><figure><figcap |
| d4400 | 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 | tion.class="shell-cap">Shell</fi |
| d4420 | 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 | gcaption><pre><samp>$.<kbd>zig.b |
| d4440 | 75 69 6c 64 2d 65 78 65 20 70 61 6e 69 63 5f 68 61 6e 64 6c 65 72 2e 7a 69 67 3c 2f 6b 62 64 3e | uild-exe.panic_handler.zig</kbd> |
| d4460 | 0a 24 20 3c 6b 62 64 3e 2e 2f 70 61 6e 69 63 5f 68 61 6e 64 6c 65 72 3c 2f 6b 62 64 3e 0a 50 61 | .$.<kbd>./panic_handler</kbd>.Pa |
| d4480 | 6e 69 63 21 20 69 6e 74 65 67 65 72 20 6f 76 65 72 66 6c 6f 77 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 | nic!.integer.overflow.</samp></p |
| d44a0 | 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | re></figure>.................... |
| d44c0 | 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 5a 69 67 2d 42 75 69 6c 64 2d 53 79 73 74 65 6d | ........<h2.id="Zig-Build-System |
| d44e0 | 22 3e 3c 61 20 68 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 | "><a.href="#toc-Zig-Build-System |
| d4500 | 22 3e 5a 69 67 20 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 | ">Zig.Build.System</a>.<a.class= |
| d4520 | 22 68 64 72 22 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 c2 | "hdr".href="#Zig-Build-System">. |
| d4540 | 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 68 65 20 | .</a></h2>........<p>.......The. |
| d4560 | 5a 69 67 20 42 75 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 | Zig.Build.System.provides.a.cros |
| d4580 | 73 2d 70 6c 61 74 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 | s-platform,.dependency-free.way. |
| d45a0 | 74 6f 20 64 65 63 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 | to.declare.......the.logic.requi |
| d45c0 | 72 65 64 20 74 6f 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 | red.to.build.a.project..With.thi |
| d45e0 | 73 20 73 79 73 74 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 | s.system,.the.logic.to.build.... |
| d4600 | 20 20 20 61 20 70 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 | ...a.project.is.written.in.a.bui |
| d4620 | 6c 64 2e 7a 69 67 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 | ld.zig.file,.using.the.Zig.Build |
| d4640 | 20 53 79 73 74 65 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 | .System.API.to.......declare.and |
| d4660 | 20 63 6f 6e 66 69 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 | .configure.build.artifacts.and.o |
| d4680 | 74 68 65 72 20 74 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 | ther.tasks........</p>.......<p> |
| d46a0 | 0a 20 20 20 20 20 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 | .......Some.examples.of.tasks.th |
| d46c0 | 65 20 62 75 69 6c 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 | e.build.system.can.help.with:... |
| d46e0 | 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> |
| d4700 | 50 65 72 66 6f 72 6d 69 6e 67 20 74 61 73 6b 73 20 69 6e 20 70 61 72 61 6c 6c 65 6c 20 61 6e 64 | Performing.tasks.in.parallel.and |
| d4720 | 20 63 61 63 68 69 6e 67 20 74 68 65 20 72 65 73 75 6c 74 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | .caching.the.results.</li>...... |
| d4740 | 20 20 20 3c 6c 69 3e 44 65 70 65 6e 64 69 6e 67 20 6f 6e 20 6f 74 68 65 72 20 70 72 6f 6a 65 63 | ...<li>Depending.on.other.projec |
| d4760 | 74 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 50 72 6f 76 69 64 69 6e 67 20 61 | ts.</li>.........<li>Providing.a |
| d4780 | 20 70 61 63 6b 61 67 65 20 66 6f 72 20 6f 74 68 65 72 20 70 72 6f 6a 65 63 74 73 20 74 6f 20 64 | .package.for.other.projects.to.d |
| d47a0 | 65 70 65 6e 64 20 6f 6e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 72 65 61 74 | epend.on.</li>.........<li>Creat |
| d47c0 | 69 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 | ing.build.artifacts.by.executing |
| d47e0 | 20 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 | .the.Zig.compiler..This.includes |
| d4800 | 0a 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 | ...........building.Zig.source.c |
| d4820 | 6f 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 | ode.as.well.as.C.and.C++.source. |
| d4840 | 63 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 | code.</li>.........<li>Capturing |
| d4860 | 20 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 | .user-configured.options.and.usi |
| d4880 | 6e 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 | ng.those.options.to.configure... |
| d48a0 | 20 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 | ........the.build.</li>......... |
| d48c0 | 3c 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 | <li>Surfacing.build.configuratio |
| d48e0 | 6e 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 | n.as.<a.href="#comptime">comptim |
| d4900 | 65 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 | e</a>.values.by.providing.a..... |
| d4920 | 20 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 | ......file.that.can.be.<a.href=" |
| d4940 | 23 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 | #import">imported</a>.by.Zig.cod |
| d4960 | 65 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 | e.</li>.........<li>Caching.buil |
| d4980 | 64 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 | d.artifacts.to.avoid.unnecessari |
| d49a0 | 6c 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 | ly.repeating.steps.</li>........ |
| d49c0 | 20 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 | .<li>Executing.build.artifacts.o |
| d49e0 | 72 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 | r.system-installed.tools.</li>.. |
| d4a00 | 20 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 | .......<li>Running.tests.and.ver |
| d4a20 | 69 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 | ifying.the.output.of.executing.a |
| d4a40 | 20 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 | .build.artifact.matches......... |
| d4a60 | 74 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 | the.expected.value.</li>........ |
| d4a80 | 20 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 | .<li>Running.<code>zig.fmt</code |
| d4aa0 | 3e 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 | >.on.a.codebase.or.a.subset.of.i |
| d4ac0 | 74 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 | t.</li>.........<li>Custom.tasks |
| d4ae0 | 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 3e 0a 20 20 20 | .</li>.......</ul>.......<p>.... |
| d4b00 | 20 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 | ...To.use.the.build.system,.run. |
| d4b20 | 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 20 2d 2d 68 65 6c 70 3c 2f 6b 62 64 3e 0a 20 20 20 20 | <kbd>zig.build.--help</kbd>..... |
| d4b40 | 20 20 74 6f 20 73 65 65 20 61 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 75 73 61 67 65 20 68 65 | ..to.see.a.command-line.usage.he |
| d4b60 | 6c 70 20 6d 65 6e 75 2e 20 54 68 69 73 20 77 69 6c 6c 20 69 6e 63 6c 75 64 65 20 70 72 6f 6a 65 | lp.menu..This.will.include.proje |
| d4b80 | 63 74 2d 73 70 65 63 69 66 69 63 0a 20 20 20 20 20 20 6f 70 74 69 6f 6e 73 20 74 68 61 74 20 77 | ct-specific.......options.that.w |
| d4ba0 | 65 72 65 20 64 65 63 6c 61 72 65 64 20 69 6e 20 74 68 65 20 62 75 69 6c 64 2e 7a 69 67 20 73 63 | ere.declared.in.the.build.zig.sc |
| d4bc0 | 72 69 70 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 | ript........</p>.......<p>...... |
| d4be0 | 20 46 6f 72 20 74 68 65 20 74 69 6d 65 20 62 65 69 6e 67 2c 20 74 68 65 20 62 75 69 6c 64 20 73 | .For.the.time.being,.the.build.s |
| d4c00 | 79 73 74 65 6d 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 69 73 20 68 6f 73 74 65 64 20 65 78 | ystem.documentation.is.hosted.ex |
| d4c20 | 74 65 72 6e 61 6c 6c 79 3a 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f | ternally:.......<a.href="https:/ |
| d4c40 | 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 6c 65 61 72 6e 2f 62 75 69 6c 64 2d 73 79 73 74 65 6d 2f | /ziglang.org/learn/build-system/ |
| d4c60 | 22 3e 42 75 69 6c 64 20 53 79 73 74 65 6d 20 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3c 2f 61 3e | ">Build.System.Documentation</a> |
| d4c80 | 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= |
| d4ca0 | 22 43 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 22 3e 43 3c 2f 61 3e 20 3c 61 20 63 6c | "C"><a.href="#toc-C">C</a>.<a.cl |
| d4cc0 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | ass="hdr".href="#C">..</a></h2>. |
| d4ce0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6c 74 68 6f 75 67 68 20 5a 69 67 20 69 73 | .......<p>.......Although.Zig.is |
| d4d00 | 20 69 6e 64 65 70 65 6e 64 65 6e 74 20 6f 66 20 43 2c 20 61 6e 64 2c 20 75 6e 6c 69 6b 65 20 6d | .independent.of.C,.and,.unlike.m |
| d4d20 | 6f 73 74 20 6f 74 68 65 72 20 6c 61 6e 67 75 61 67 65 73 2c 20 64 6f 65 73 20 6e 6f 74 20 64 65 | ost.other.languages,.does.not.de |
| d4d40 | 70 65 6e 64 20 6f 6e 20 6c 69 62 63 2c 0a 20 20 20 20 20 20 5a 69 67 20 61 63 6b 6e 6f 77 6c 65 | pend.on.libc,.......Zig.acknowle |
| d4d60 | 64 67 65 73 20 74 68 65 20 69 6d 70 6f 72 74 61 6e 63 65 20 6f 66 20 69 6e 74 65 72 61 63 74 69 | dges.the.importance.of.interacti |
| d4d80 | 6e 67 20 77 69 74 68 20 65 78 69 73 74 69 6e 67 20 43 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c | ng.with.existing.C.code........< |
| d4da0 | 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 61 20 | /p>.......<p>.......There.are.a. |
| d4dc0 | 66 65 77 20 77 61 79 73 20 74 68 61 74 20 5a 69 67 20 66 61 63 69 6c 69 74 61 74 65 73 20 43 20 | few.ways.that.Zig.facilitates.C. |
| d4de0 | 69 6e 74 65 72 6f 70 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 | interop........</p>.......<h3.id |
| d4e00 | 3d 22 43 2d 54 79 70 65 2d 50 72 69 6d 69 74 69 76 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | ="C-Type-Primitives"><a.href="#t |
| d4e20 | 6f 63 2d 43 2d 54 79 70 65 2d 50 72 69 6d 69 74 69 76 65 73 22 3e 43 20 54 79 70 65 20 50 72 69 | oc-C-Type-Primitives">C.Type.Pri |
| d4e40 | 6d 69 74 69 76 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 | mitives</a>.<a.class="hdr".href= |
| d4e60 | 22 23 43 2d 54 79 70 65 2d 50 72 69 6d 69 74 69 76 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e | "#C-Type-Primitives">..</a></h3> |
| d4e80 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 73 65 20 68 61 76 65 20 67 75 61 | ........<p>.......These.have.gua |
| d4ea0 | 72 61 6e 74 65 65 64 20 43 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 61 6e 64 20 | ranteed.C.ABI.compatibility.and. |
| d4ec0 | 63 61 6e 20 62 65 20 75 73 65 64 20 6c 69 6b 65 20 61 6e 79 20 6f 74 68 65 72 20 74 79 70 65 2e | can.be.used.like.any.other.type. |
| d4ee0 | 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 20 | .......</p>.......<ul>.......... |
| d4f00 | 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | .<li><code><span.class="tok-type |
| d4f20 | 22 3e 63 5f 63 68 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | ">c_char</span></code></li>..... |
| d4f40 | 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ......<li><code><span.class="tok |
| d4f60 | 2d 74 79 70 65 22 3e 63 5f 73 68 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 | -type">c_short</span></code></li |
| d4f80 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | >...........<li><code><span.clas |
| d4fa0 | 73 3d 22 74 6f 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 | s="tok-type">c_ushort</span></co |
| d4fc0 | 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 3e 3c 73 70 | de></li>...........<li><code><sp |
| d4fe0 | 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 61 6e 3e | an.class="tok-type">c_int</span> |
| d5000 | 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 |
| d5020 | 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 75 69 6e 74 3c 2f | ><span.class="tok-type">c_uint</ |
| d5040 | 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 3e | span></code></li>...........<li> |
| d5060 | 3c 63 6f 64 65 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 | <code><span.class="tok-type">c_l |
| d5080 | 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 20 20 20 20 20 20 | ong</span></code></li>.......... |
| d50a0 | 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | .<li><code><span.class="tok-type |
| d50c0 | 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 6c 69 3e 0a 20 20 20 | ">c_ulong</span></code></li>.... |
| d50e0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .......<li><code><span.class="to |
| d5100 | 6b 2d 74 79 70 65 22 3e 63 5f 6c 6f 6e 67 6c 6f 6e 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | k-type">c_longlong</span></code> |
| d5120 | 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 3e 3c 73 70 61 6e 20 | </li>...........<li><code><span. |
| d5140 | 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 |
| d5160 | 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 63 | an></code></li>...........<li><c |
| d5180 | 6f 64 65 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 | ode><span.class="tok-type">c_lon |
| d51a0 | 67 64 6f 75 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 | gdouble</span></code></li>...... |
| d51c0 | 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 69 6e 74 65 72 6f | .</ul>.......<p>.......To.intero |
| d51e0 | 70 20 77 69 74 68 20 74 68 65 20 43 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | p.with.the.C.<code><span.class=" |
| d5200 | 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 79 70 | tok-type">void</span></code>.typ |
| d5220 | 65 2c 20 75 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | e,.use.<code><span.class="tok-ty |
| d5240 | 70 65 22 3e 61 6e 79 6f 70 61 71 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 | pe">anyopaque</span></code>..... |
| d5260 | 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 |
| d5280 | 6c 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 | l>.<li><a.href="#Primitive-Types |
| d52a0 | 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 3c 2f 75 6c 3e | ">Primitive.Types</a></li>.</ul> |
| d52c0 | 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 6d 70 6f 72 74 2d 66 72 | ...............<h3.id="Import-fr |
| d52e0 | 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- |
| d5300 | 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 |
| d5320 | 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 |
| d5340 | 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 |
| d5360 | 64 65 72 2d 46 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | der-File">..</a></h3>........<p> |
| d5380 | 0a 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .......The.<code><span.class="to |
| d53a0 | 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 |
| d53c0 | 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 75 73 65 64 0a 20 | >.builtin.function.can.be.used.. |
| d53e0 | 20 20 20 20 20 74 6f 20 64 69 72 65 63 74 6c 79 20 69 6d 70 6f 72 74 20 73 79 6d 62 6f 6c 73 20 | .....to.directly.import.symbols. |
| d5400 | 66 72 6f 6d 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 2e 68 3c 2f 63 6f 64 65 | from.<code.class="file">.h</code |
| d5420 | 3e 20 66 69 6c 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 | >.files:.......</p>.......<figur |
| d5440 | 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 | e><figcaption.class="zig-cap"><c |
| d5460 | 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 49 6d 70 6f 72 74 5f 62 75 69 6c 74 69 6e | ite.class="file">cImport_builtin |
| d5480 | 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f | .zig</cite></figcaption><pre><co |
| d54a0 | 64 65 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 | de><span.class="tok-kw">const</s |
| d54c0 | 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 74 69 | pan>.c.=.<span.class="tok-builti |
| d54e0 | 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 70 61 6e 20 63 | n">@cImport</span>({.....<span.c |
| d5500 | 6c 61 73 73 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 | lass="tok-comment">//.See.https: |
| d5520 | 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 2f | //github.com/ziglang/zig/issues/ |
| d5540 | 35 31 35 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 | 515</span>.....<span.class="tok- |
| d5560 | 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 3c 73 70 61 6e 20 63 | builtin">@cDefine</span>(<span.c |
| d5580 | 6c 61 73 73 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 | lass="tok-str">"_NO_CRT_STD |
| d55a0 | 49 4f 5f 49 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 | IO_INLINE"</span>,.<span.cl |
| d55c0 | 61 73 73 3d 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 | ass="tok-str">"1"</spa |
| d55e0 | 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 69 | n>);.....<span.class="tok-builti |
| d5600 | 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 3d | n">@cInclude</span>(<span.class= |
| d5620 | 22 74 6f 6b 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 | "tok-str">"stdio.h"</s |
| d5640 | 70 61 6e 3e 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 | pan>);.});.<span.class="tok-kw"> |
| d5660 | 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"> |
| d5680 | 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 |
| d56a0 | 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 |
| d56c0 | 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 20 63 2e 70 72 69 6e | pe">void</span>.{....._.=.c.prin |
| d56e0 | 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 75 6f 74 3b 68 | tf(<span.class="tok-str">"h |
| d5700 | 65 6c 6c 6f 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 | ello\n"</span>);.}</code></ |
| d5720 | 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e | pre></figure><figure><figcaption |
| d5740 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 | .class="shell-cap">Shell</figcap |
| d5760 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 | tion><pre><samp>$.<kbd>zig.build |
| d5780 | 2d 65 78 65 20 63 49 6d 70 6f 72 74 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 20 2d 6c 63 3c 2f 6b 62 | -exe.cImport_builtin.zig.-lc</kb |
| d57a0 | 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 63 49 6d 70 6f 72 74 5f 62 75 69 6c 74 69 6e 3c 2f 6b 62 64 | d>.$.<kbd>./cImport_builtin</kbd |
| d57c0 | 3e 0a 68 65 6c 6c 6f 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a | >.hello.</samp></pre></figure>.. |
| d57e0 | 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 3e 3c 73 70 61 6e 20 | ......<p>.......The.<code><span. |
| d5800 | 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 |
| d5820 | 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 |
| d5840 | 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 |
| d5860 | 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 |
| d5880 | 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 |
| d58a0 | 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. |
| d58c0 | 61 6e 64 20 69 6e 63 6c 75 64 65 20 6d 75 6c 74 69 70 6c 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 | and.include.multiple.<code.class |
| d58e0 | 3d 22 66 69 6c 65 22 3e 2e 68 3c 2f 63 6f 64 65 3e 20 66 69 6c 65 73 3a 0a 20 20 20 20 20 20 3c | ="file">.h</code>.files:.......< |
| d5900 | 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | /p>.......<figure><figcaption.cl |
| d5920 | 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ass="zig-cap"><cite.class="file" |
| d5940 | 3e 40 63 49 6d 70 6f 72 74 20 45 78 70 72 65 73 73 69 6f 6e 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | >@cImport.Expression</cite></fig |
| d5960 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | caption><pre><code><span.class=" |
| d5980 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 20 3d 20 3c | tok-kw">const</span>.builtin.=.< |
| d59a0 | 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 |
| d59c0 | 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 |
| d59e0 | 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 3b 0a 0a 3c 73 70 61 | uot;builtin"</span>);..<spa |
| d5a00 | 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 63 20 | n.class="tok-kw">const</span>.c. |
| d5a20 | 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 63 49 6d | =.<span.class="tok-builtin">@cIm |
| d5a40 | 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 3d 22 74 | port</span>({.....<span.class="t |
| d5a60 | 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 3c 73 70 61 | ok-builtin">@cDefine</span>(<spa |
| d5a80 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 4e 44 45 42 55 47 26 71 | n.class="tok-str">"NDEBUG&q |
| d5aa0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 62 75 69 6c 74 69 6e 2e 6d 6f 64 65 20 3d 3d 20 2e 52 65 | uot;</span>,.builtin.mode.==..Re |
| d5ac0 | 6c 65 61 73 65 46 61 73 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | leaseFast);.....<span.class="tok |
| d5ae0 | 2d 6b 77 22 3e 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 | -kw">if</span>.(something).{.... |
| d5b00 | 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 40 | .....<span.class="tok-builtin">@ |
| d5b20 | 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 2d | cDefine</span>(<span.class="tok- |
| d5b40 | 73 74 72 22 3e 26 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 | str">"_GNU_SOURCE"</sp |
| d5b60 | 61 6e 3e 2c 20 7b 7d 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 | an>,.{});.....}.....<span.class= |
| d5b80 | 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 28 3c | "tok-builtin">@cInclude</span>(< |
| d5ba0 | 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 6c 69 | span.class="tok-str">"stdli |
| d5bc0 | 62 2e 68 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 | b.h"</span>);.....<span.cla |
| d5be0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 6f 6d 65 74 68 69 6e 67 | ss="tok-kw">if</span>.(something |
| d5c00 | 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 62 75 69 | ).{.........<span.class="tok-bui |
| d5c20 | 6c 74 69 6e 22 3e 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 | ltin">@cUndef</span>(<span.class |
| d5c40 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5f 47 4e 55 5f 53 4f 55 52 43 45 26 71 75 6f | ="tok-str">"_GNU_SOURCE&quo |
| d5c60 | 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | t;</span>);.....}.....<span.clas |
| d5c80 | 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 73 70 61 6e 3e | s="tok-builtin">@cInclude</span> |
| d5ca0 | 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 6f 75 | (<span.class="tok-str">"sou |
| d5cc0 | 6e 64 69 6f 2e 68 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 | ndio.h"</span>);.});</code> |
| d5ce0 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 | </pre></figure>.......<p>See.als |
| d5d00 | 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 49 6d 70 6f 72 74 | o:</p><ul>.<li><a.href="#cImport |
| d5d20 | 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | ">@cImport</a></li>.<li><a.href= |
| d5d40 | 22 23 63 49 6e 63 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 | "#cInclude">@cInclude</a></li>.< |
| d5d60 | 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 65 3c 2f | li><a.href="#cDefine">@cDefine</ |
| d5d80 | 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 66 22 3e 40 63 | a></li>.<li><a.href="#cUndef">@c |
| d5da0 | 55 6e 64 65 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 69 6d 70 | Undef</a></li>.<li><a.href="#imp |
| d5dc0 | 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 20 20 | ort">@import</a></li>.</ul>..... |
| d5de0 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 2d 54 72 61 6e 73 6c 61 74 69 6f 6e | ...........<h3.id="C-Translation |
| d5e00 | 2d 43 4c 49 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 2d 54 72 61 6e 73 6c 61 74 69 6f | -CLI"><a.href="#toc-C-Translatio |
| d5e20 | 6e 2d 43 4c 49 22 3e 43 20 54 72 61 6e 73 6c 61 74 69 6f 6e 20 43 4c 49 3c 2f 61 3e 20 3c 61 20 | n-CLI">C.Translation.CLI</a>.<a. |
| d5e40 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 2d 54 72 61 6e 73 6c 61 74 69 6f 6e | class="hdr".href="#C-Translation |
| d5e60 | 2d 43 4c 49 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 | -CLI">..</a></h3>........<p>.... |
| d5e80 | 20 20 20 5a 69 67 27 73 20 43 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20 63 61 70 61 62 69 6c 69 74 | ...Zig's.C.translation.capabilit |
| d5ea0 | 79 20 69 73 20 61 76 61 69 6c 61 62 6c 65 20 61 73 20 61 20 43 4c 49 20 74 6f 6f 6c 20 76 69 61 | y.is.available.as.a.CLI.tool.via |
| d5ec0 | 20 3c 6b 62 64 3e 7a 69 67 20 74 72 61 6e 73 6c 61 74 65 2d 63 3c 2f 6b 62 64 3e 2e 0a 20 20 20 | .<kbd>zig.translate-c</kbd>..... |
| d5ee0 | 20 20 20 49 74 20 72 65 71 75 69 72 65 73 20 61 20 73 69 6e 67 6c 65 20 66 69 6c 65 6e 61 6d 65 | ...It.requires.a.single.filename |
| d5f00 | 20 61 73 20 61 6e 20 61 72 67 75 6d 65 6e 74 2e 20 49 74 20 6d 61 79 20 61 6c 73 6f 20 74 61 6b | .as.an.argument..It.may.also.tak |
| d5f20 | 65 20 61 20 73 65 74 20 6f 66 20 6f 70 74 69 6f 6e 61 6c 20 66 6c 61 67 73 20 74 68 61 74 20 61 | e.a.set.of.optional.flags.that.a |
| d5f40 | 72 65 0a 20 20 20 20 20 20 66 6f 72 77 61 72 64 65 64 20 74 6f 20 63 6c 61 6e 67 2e 20 49 74 20 | re.......forwarded.to.clang..It. |
| d5f60 | 77 72 69 74 65 73 20 74 68 65 20 74 72 61 6e 73 6c 61 74 65 64 20 66 69 6c 65 20 74 6f 20 73 74 | writes.the.translated.file.to.st |
| d5f80 | 64 6f 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 43 | dout........</p>.......<h4.id="C |
| d5fa0 | 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 2d 66 6c 61 67 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | ommand-line-flags"><a.href="#toc |
| d5fc0 | 2d 43 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 2d 66 6c 61 67 73 22 3e 43 6f 6d 6d 61 6e 64 20 6c 69 6e | -Command-line-flags">Command.lin |
| d5fe0 | 65 20 66 6c 61 67 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 | e.flags</a>.<a.class="hdr".href= |
| d6000 | 22 23 43 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 2d 66 6c 61 67 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 | "#Command-line-flags">..</a></h4 |
| d6020 | 3e 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 0a 20 20 20 20 20 | >........<ul>.........<li>...... |
| d6040 | 20 20 20 20 20 3c 6b 62 64 3e 2d 49 3c 2f 6b 62 64 3e 3a 0a 20 20 20 20 20 20 20 20 20 20 53 70 | .....<kbd>-I</kbd>:...........Sp |
| d6060 | 65 63 69 66 79 20 61 20 73 65 61 72 63 68 20 64 69 72 65 63 74 6f 72 79 20 66 6f 72 20 69 6e 63 | ecify.a.search.directory.for.inc |
| d6080 | 6c 75 64 65 20 66 69 6c 65 73 2e 20 4d 61 79 20 62 65 20 75 73 65 64 20 6d 75 6c 74 69 70 6c 65 | lude.files..May.be.used.multiple |
| d60a0 | 20 74 69 6d 65 73 2e 20 45 71 75 69 76 61 6c 65 6e 74 20 74 6f 0a 20 20 20 20 20 20 20 20 20 20 | .times..Equivalent.to........... |
| d60c0 | 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 72 65 6c 65 61 73 65 73 2e 6c 6c 76 6d 2e 6f | <a.href="https://releases.llvm.o |
| d60e0 | 72 67 2f 31 32 2e 30 2e 30 2f 74 6f 6f 6c 73 2f 63 6c 61 6e 67 2f 64 6f 63 73 2f 43 6c 61 6e 67 | rg/12.0.0/tools/clang/docs/Clang |
| d6100 | 43 6f 6d 6d 61 6e 64 4c 69 6e 65 52 65 66 65 72 65 6e 63 65 2e 68 74 6d 6c 23 63 6d 64 6f 70 74 | CommandLineReference.html#cmdopt |
| d6120 | 69 6f 6e 2d 63 6c 61 6e 67 2d 69 2d 64 69 72 22 3e 0a 20 20 20 20 20 20 20 20 20 20 63 6c 61 6e | ion-clang-i-dir">...........clan |
| d6140 | 67 27 73 20 3c 6b 62 64 3e 2d 49 3c 2f 6b 62 64 3e 20 66 6c 61 67 3c 2f 61 3e 2e 20 54 68 65 20 | g's.<kbd>-I</kbd>.flag</a>..The. |
| d6160 | 63 75 72 72 65 6e 74 20 64 69 72 65 63 74 6f 72 79 20 69 73 20 3c 65 6d 3e 6e 6f 74 3c 2f 65 6d | current.directory.is.<em>not</em |
| d6180 | 3e 20 69 6e 63 6c 75 64 65 64 20 62 79 20 64 65 66 61 75 6c 74 3b 0a 20 20 20 20 20 20 20 20 20 | >.included.by.default;.......... |
| d61a0 | 20 75 73 65 20 3c 6b 62 64 3e 2d 49 2e 3c 2f 6b 62 64 3e 20 74 6f 20 69 6e 63 6c 75 64 65 20 69 | .use.<kbd>-I.</kbd>.to.include.i |
| d61c0 | 74 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 | t..........</li>.........<li>... |
| d61e0 | 20 20 20 20 20 20 20 20 3c 6b 62 64 3e 2d 44 3c 2f 6b 62 64 3e 3a 20 44 65 66 69 6e 65 20 61 20 | ........<kbd>-D</kbd>:.Define.a. |
| d6200 | 70 72 65 70 72 6f 63 65 73 73 6f 72 20 6d 61 63 72 6f 2e 20 45 71 75 69 76 61 6c 65 6e 74 20 74 | preprocessor.macro..Equivalent.t |
| d6220 | 6f 0a 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 72 65 6c | o...........<a.href="https://rel |
| d6240 | 65 61 73 65 73 2e 6c 6c 76 6d 2e 6f 72 67 2f 31 32 2e 30 2e 30 2f 74 6f 6f 6c 73 2f 63 6c 61 6e | eases.llvm.org/12.0.0/tools/clan |
| d6260 | 67 2f 64 6f 63 73 2f 43 6c 61 6e 67 43 6f 6d 6d 61 6e 64 4c 69 6e 65 52 65 66 65 72 65 6e 63 65 | g/docs/ClangCommandLineReference |
| d6280 | 2e 68 74 6d 6c 23 63 6d 64 6f 70 74 69 6f 6e 2d 63 6c 61 6e 67 2d 64 2d 6d 61 63 72 6f 22 3e 0a | .html#cmdoption-clang-d-macro">. |
| d62a0 | 20 20 20 20 20 20 20 20 20 20 63 6c 61 6e 67 27 73 20 3c 6b 62 64 3e 2d 44 3c 2f 6b 62 64 3e 20 | ..........clang's.<kbd>-D</kbd>. |
| d62c0 | 66 6c 61 67 3c 2f 61 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 | flag</a>..........</li>......... |
| d62e0 | 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6b 62 64 3e 2d 63 66 6c 61 67 73 20 5b 66 6c 61 | <li>...........<kbd>-cflags.[fla |
| d6300 | 67 73 5d 20 2d 2d 3c 2f 6b 62 64 3e 3a 20 50 61 73 73 20 61 72 62 69 74 72 61 72 79 20 61 64 64 | gs].--</kbd>:.Pass.arbitrary.add |
| d6320 | 69 74 69 6f 6e 61 6c 0a 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 | itional...........<a.href="https |
| d6340 | 3a 2f 2f 72 65 6c 65 61 73 65 73 2e 6c 6c 76 6d 2e 6f 72 67 2f 31 32 2e 30 2e 30 2f 74 6f 6f 6c | ://releases.llvm.org/12.0.0/tool |
| d6360 | 73 2f 63 6c 61 6e 67 2f 64 6f 63 73 2f 43 6c 61 6e 67 43 6f 6d 6d 61 6e 64 4c 69 6e 65 52 65 66 | s/clang/docs/ClangCommandLineRef |
| d6380 | 65 72 65 6e 63 65 2e 68 74 6d 6c 22 3e 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 0a 20 20 20 20 20 20 | erence.html">command.line....... |
| d63a0 | 20 20 20 20 66 6c 61 67 73 3c 2f 61 3e 20 74 6f 20 63 6c 61 6e 67 2e 20 4e 6f 74 65 3a 20 74 68 | ....flags</a>.to.clang..Note:.th |
| d63c0 | 65 20 6c 69 73 74 20 6f 66 20 66 6c 61 67 73 20 6d 75 73 74 20 65 6e 64 20 77 69 74 68 20 3c 6b | e.list.of.flags.must.end.with.<k |
| d63e0 | 62 64 3e 2d 2d 3c 2f 6b 62 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | bd>--</kbd>.........</li>....... |
| d6400 | 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6b 62 64 3e 2d 74 61 72 67 65 74 3c 2f 6b | ..<li>...........<kbd>-target</k |
| d6420 | 62 64 3e 3a 20 54 68 65 20 3c 61 20 68 72 65 66 3d 22 23 54 61 72 67 65 74 73 22 3e 74 61 72 67 | bd>:.The.<a.href="#Targets">targ |
| d6440 | 65 74 20 74 72 69 70 6c 65 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 74 72 61 6e 73 6c 61 74 65 64 | et.triple</a>.for.the.translated |
| d6460 | 20 5a 69 67 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 20 20 20 20 49 66 20 6e 6f 20 74 61 72 67 65 | .Zig.code............If.no.targe |
| d6480 | 74 20 69 73 20 73 70 65 63 69 66 69 65 64 2c 20 74 68 65 20 63 75 72 72 65 6e 74 20 68 6f 73 74 | t.is.specified,.the.current.host |
| d64a0 | 20 74 61 72 67 65 74 20 77 69 6c 6c 20 62 65 20 75 73 65 64 2e 0a 20 20 20 20 20 20 20 20 3c 2f | .target.will.be.used..........</ |
| d64c0 | 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 34 | li>.......</ul>..............<h4 |
| d64e0 | 20 69 64 3d 22 55 73 69 6e 67 2d 2d 74 61 72 67 65 74 2d 61 6e 64 2d 2d 63 66 6c 61 67 73 22 3e | .id="Using--target-and--cflags"> |
| d6500 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 55 73 69 6e 67 2d 2d 74 61 72 67 65 74 2d 61 6e 64 2d | <a.href="#toc-Using--target-and- |
| d6520 | 2d 63 66 6c 61 67 73 22 3e 55 73 69 6e 67 20 2d 74 61 72 67 65 74 20 61 6e 64 20 2d 63 66 6c 61 | -cflags">Using.-target.and.-cfla |
| d6540 | 67 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 55 73 69 | gs</a>.<a.class="hdr".href="#Usi |
| d6560 | 6e 67 2d 2d 74 61 72 67 65 74 2d 61 6e 64 2d 2d 63 66 6c 61 67 73 22 3e c2 a7 3c 2f 61 3e 3c 2f | ng--target-and--cflags">..</a></ |
| d6580 | 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 3c 73 74 72 6f 6e 67 3e 49 | h4>........<p>.........<strong>I |
| d65a0 | 6d 70 6f 72 74 61 6e 74 21 3c 2f 73 74 72 6f 6e 67 3e 20 57 68 65 6e 20 74 72 61 6e 73 6c 61 74 | mportant!</strong>.When.translat |
| d65c0 | 69 6e 67 20 43 20 63 6f 64 65 20 77 69 74 68 20 3c 6b 62 64 3e 7a 69 67 20 74 72 61 6e 73 6c 61 | ing.C.code.with.<kbd>zig.transla |
| d65e0 | 74 65 2d 63 3c 2f 6b 62 64 3e 2c 0a 20 20 20 20 20 20 20 20 79 6f 75 20 3c 73 74 72 6f 6e 67 3e | te-c</kbd>,.........you.<strong> |
| d6600 | 6d 75 73 74 3c 2f 73 74 72 6f 6e 67 3e 20 75 73 65 20 74 68 65 20 73 61 6d 65 20 3c 6b 62 64 3e | must</strong>.use.the.same.<kbd> |
| d6620 | 2d 74 61 72 67 65 74 3c 2f 6b 62 64 3e 20 74 72 69 70 6c 65 20 74 68 61 74 20 79 6f 75 20 77 69 | -target</kbd>.triple.that.you.wi |
| d6640 | 6c 6c 20 75 73 65 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 0a 20 20 20 20 20 20 20 20 74 68 | ll.use.when.compiling.........th |
| d6660 | 65 20 74 72 61 6e 73 6c 61 74 65 64 20 63 6f 64 65 2e 20 49 6e 20 61 64 64 69 74 69 6f 6e 2c 20 | e.translated.code..In.addition,. |
| d6680 | 79 6f 75 20 3c 73 74 72 6f 6e 67 3e 6d 75 73 74 3c 2f 73 74 72 6f 6e 67 3e 20 65 6e 73 75 72 65 | you.<strong>must</strong>.ensure |
| d66a0 | 20 74 68 61 74 20 74 68 65 20 3c 6b 62 64 3e 2d 63 66 6c 61 67 73 3c 2f 6b 62 64 3e 20 75 73 65 | .that.the.<kbd>-cflags</kbd>.use |
| d66c0 | 64 2c 0a 20 20 20 20 20 20 20 20 69 66 20 61 6e 79 2c 20 6d 61 74 63 68 20 74 68 65 20 63 66 6c | d,.........if.any,.match.the.cfl |
| d66e0 | 61 67 73 20 75 73 65 64 20 62 79 20 63 6f 64 65 20 6f 6e 20 74 68 65 20 74 61 72 67 65 74 20 73 | ags.used.by.code.on.the.target.s |
| d6700 | 79 73 74 65 6d 2e 20 55 73 69 6e 67 20 74 68 65 20 69 6e 63 6f 72 72 65 63 74 20 3c 6b 62 64 3e | ystem..Using.the.incorrect.<kbd> |
| d6720 | 2d 74 61 72 67 65 74 3c 2f 6b 62 64 3e 0a 20 20 20 20 20 20 20 20 6f 72 20 3c 6b 62 64 3e 2d 63 | -target</kbd>.........or.<kbd>-c |
| d6740 | 66 6c 61 67 73 3c 2f 6b 62 64 3e 20 63 6f 75 6c 64 20 72 65 73 75 6c 74 20 69 6e 20 63 6c 61 6e | flags</kbd>.could.result.in.clan |
| d6760 | 67 20 6f 72 20 5a 69 67 20 70 61 72 73 65 20 66 61 69 6c 75 72 65 73 2c 20 6f 72 20 73 75 62 74 | g.or.Zig.parse.failures,.or.subt |
| d6780 | 6c 65 20 41 42 49 20 69 6e 63 6f 6d 70 61 74 69 62 69 6c 69 74 69 65 73 0a 20 20 20 20 20 20 20 | le.ABI.incompatibilities........ |
| d67a0 | 20 77 68 65 6e 20 6c 69 6e 6b 69 6e 67 20 77 69 74 68 20 43 20 63 6f 64 65 2e 0a 20 20 20 20 20 | .when.linking.with.C.code....... |
| d67c0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | .</p>.......<figure><figcaption. |
| d67e0 | 63 6c 61 73 73 3d 22 63 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | class="c-cap"><cite.class="file" |
| d6800 | 3e 76 61 72 79 74 61 72 67 65 74 2e 68 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e | >varytarget.h</cite></figcaption |
| d6820 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 6c 6f 6e 67 20 46 4f 4f 20 3d 20 5f 5f 4c 4f 4e 47 5f 4d 41 | ><pre><code>long.FOO.=.__LONG_MA |
| d6840 | 58 5f 5f 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 | X__;</code></pre></figure>...... |
| d6860 | 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c | .<figure><figcaption.class="shel |
| d6880 | 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 | l-cap">Shell</figcaption><pre><s |
| d68a0 | 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 72 61 6e 73 6c 61 74 65 2d 63 20 2d 74 61 72 67 | amp>$.<kbd>zig.translate-c.-targ |
| d68c0 | 65 74 20 74 68 75 6d 62 2d 66 72 65 65 73 74 61 6e 64 69 6e 67 2d 67 6e 75 65 61 62 69 68 66 20 | et.thumb-freestanding-gnueabihf. |
| d68e0 | 76 61 72 79 74 61 72 67 65 74 2e 68 7c 67 72 65 70 20 46 4f 4f 3c 2f 6b 62 64 3e 0a 70 75 62 20 | varytarget.h|grep.FOO</kbd>.pub. |
| d6900 | 65 78 70 6f 72 74 20 76 61 72 20 46 4f 4f 3a 20 63 5f 6c 6f 6e 67 20 3d 20 32 31 34 37 34 38 33 | export.var.FOO:.c_long.=.2147483 |
| d6920 | 36 34 37 3b 0a 24 20 3c 6b 62 64 3e 7a 69 67 20 74 72 61 6e 73 6c 61 74 65 2d 63 20 2d 74 61 72 | 647;.$.<kbd>zig.translate-c.-tar |
| d6940 | 67 65 74 20 78 38 36 5f 36 34 2d 6d 61 63 6f 73 2d 67 6e 75 20 76 61 72 79 74 61 72 67 65 74 2e | get.x86_64-macos-gnu.varytarget. |
| d6960 | 68 7c 67 72 65 70 20 46 4f 4f 3c 2f 6b 62 64 3e 0a 70 75 62 20 65 78 70 6f 72 74 20 76 61 72 20 | h|grep.FOO</kbd>.pub.export.var. |
| d6980 | 46 4f 4f 3a 20 63 5f 6c 6f 6e 67 20 3d 20 39 32 32 33 33 37 32 30 33 36 38 35 34 37 37 35 38 30 | FOO:.c_long.=.922337203685477580 |
| d69a0 | 37 3b 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 | 7;.</samp></pre></figure>....... |
| d69c0 | 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 63 2d 63 61 70 | <figure><figcaption.class="c-cap |
| d69e0 | 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 76 61 72 79 63 66 6c 61 67 73 2e | "><cite.class="file">varycflags. |
| d6a00 | 68 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e | h</cite></figcaption><pre><code> |
| d6a20 | 65 6e 75 6d 20 46 4f 4f 20 7b 20 42 41 52 20 7d 3b 0a 69 6e 74 20 64 6f 5f 73 6f 6d 65 74 68 69 | enum.FOO.{.BAR.};.int.do_somethi |
| d6a40 | 6e 67 28 65 6e 75 6d 20 46 4f 4f 20 66 6f 6f 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f | ng(enum.FOO.foo);</code></pre></ |
| d6a60 | 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | figure>.......<figure><figcaptio |
| d6a80 | 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 | n.class="shell-cap">Shell</figca |
| d6aa0 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 72 61 6e | ption><pre><samp>$.<kbd>zig.tran |
| d6ac0 | 73 6c 61 74 65 2d 63 20 76 61 72 79 63 66 6c 61 67 73 2e 68 7c 67 72 65 70 20 2d 42 31 20 64 6f | slate-c.varycflags.h|grep.-B1.do |
| d6ae0 | 5f 73 6f 6d 65 74 68 69 6e 67 3c 2f 6b 62 64 3e 0a 70 75 62 20 63 6f 6e 73 74 20 65 6e 75 6d 5f | _something</kbd>.pub.const.enum_ |
| d6b00 | 46 4f 4f 20 3d 20 63 5f 75 69 6e 74 3b 0a 70 75 62 20 65 78 74 65 72 6e 20 66 6e 20 64 6f 5f 73 | FOO.=.c_uint;.pub.extern.fn.do_s |
| d6b20 | 6f 6d 65 74 68 69 6e 67 28 66 6f 6f 3a 20 65 6e 75 6d 5f 46 4f 4f 29 20 63 5f 69 6e 74 3b 0a 24 | omething(foo:.enum_FOO).c_int;.$ |
| d6b40 | 20 3c 6b 62 64 3e 7a 69 67 20 74 72 61 6e 73 6c 61 74 65 2d 63 20 2d 63 66 6c 61 67 73 20 2d 66 | .<kbd>zig.translate-c.-cflags.-f |
| d6b60 | 73 68 6f 72 74 2d 65 6e 75 6d 73 20 2d 2d 20 76 61 72 79 63 66 6c 61 67 73 2e 68 7c 67 72 65 70 | short-enums.--.varycflags.h|grep |
| d6b80 | 20 2d 42 31 20 64 6f 5f 73 6f 6d 65 74 68 69 6e 67 3c 2f 6b 62 64 3e 0a 70 75 62 20 63 6f 6e 73 | .-B1.do_something</kbd>.pub.cons |
| d6ba0 | 74 20 65 6e 75 6d 5f 46 4f 4f 20 3d 20 75 38 3b 0a 70 75 62 20 65 78 74 65 72 6e 20 66 6e 20 64 | t.enum_FOO.=.u8;.pub.extern.fn.d |
| d6bc0 | 6f 5f 73 6f 6d 65 74 68 69 6e 67 28 66 6f 6f 3a 20 65 6e 75 6d 5f 46 4f 4f 29 20 63 5f 69 6e 74 | o_something(foo:.enum_FOO).c_int |
| d6be0 | 3b 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 0a | ;.</samp></pre></figure>........ |
| d6c00 | 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 63 49 6d 70 6f 72 74 2d 76 73 2d 74 72 61 6e 73 6c 61 | ......<h4.id="cImport-vs-transla |
| d6c20 | 74 65 2d 63 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 49 6d 70 6f 72 74 2d 76 73 2d 74 | te-c"><a.href="#toc-cImport-vs-t |
| d6c40 | 72 61 6e 73 6c 61 74 65 2d 63 22 3e 40 63 49 6d 70 6f 72 74 20 76 73 20 74 72 61 6e 73 6c 61 74 | ranslate-c">@cImport.vs.translat |
| d6c60 | 65 2d 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 63 49 | e-c</a>.<a.class="hdr".href="#cI |
| d6c80 | 6d 70 6f 72 74 2d 76 73 2d 74 72 61 6e 73 6c 61 74 65 2d 63 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 | mport-vs-translate-c">..</a></h4 |
| d6ca0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >........<p><code><span.class="t |
| d6cc0 | 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 63 6f 64 | ok-builtin">@cImport</span></cod |
| d6ce0 | 65 3e 20 61 6e 64 20 3c 6b 62 64 3e 7a 69 67 20 74 72 61 6e 73 6c 61 74 65 2d 63 3c 2f 6b 62 64 | e>.and.<kbd>zig.translate-c</kbd |
| d6d00 | 3e 20 75 73 65 20 74 68 65 20 73 61 6d 65 20 75 6e 64 65 72 6c 79 69 6e 67 0a 20 20 20 20 20 20 | >.use.the.same.underlying....... |
| d6d20 | 43 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 2c 20 73 6f 20 | C.translation.functionality,.so. |
| d6d40 | 6f 6e 20 61 20 74 65 63 68 6e 69 63 61 6c 20 6c 65 76 65 6c 20 74 68 65 79 20 61 72 65 20 65 71 | on.a.technical.level.they.are.eq |
| d6d60 | 75 69 76 61 6c 65 6e 74 2e 20 49 6e 20 70 72 61 63 74 69 63 65 2c 0a 20 20 20 20 20 20 3c 63 6f | uivalent..In.practice,.......<co |
| d6d80 | 64 65 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 | de><span.class="tok-builtin">@cI |
| d6da0 | 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 75 73 65 66 75 6c 20 61 73 | mport</span></code>.is.useful.as |
| d6dc0 | 20 61 20 77 61 79 20 74 6f 20 71 75 69 63 6b 6c 79 20 61 6e 64 20 65 61 73 69 6c 79 20 61 63 63 | .a.way.to.quickly.and.easily.acc |
| d6de0 | 65 73 73 20 6e 75 6d 65 72 69 63 20 63 6f 6e 73 74 61 6e 74 73 2c 20 74 79 70 65 64 65 66 73 2c | ess.numeric.constants,.typedefs, |
| d6e00 | 0a 20 20 20 20 20 20 61 6e 64 20 72 65 63 6f 72 64 20 74 79 70 65 73 20 77 69 74 68 6f 75 74 20 | .......and.record.types.without. |
| d6e20 | 6e 65 65 64 69 6e 67 20 61 6e 79 20 65 78 74 72 61 20 73 65 74 75 70 2e 20 49 66 20 79 6f 75 20 | needing.any.extra.setup..If.you. |
| d6e40 | 6e 65 65 64 20 74 6f 20 70 61 73 73 20 3c 61 20 68 72 65 66 3d 22 23 55 73 69 6e 67 2d 2d 74 61 | need.to.pass.<a.href="#Using--ta |
| d6e60 | 72 67 65 74 2d 61 6e 64 2d 2d 63 66 6c 61 67 73 22 3e 63 66 6c 61 67 73 3c 2f 61 3e 0a 20 20 20 | rget-and--cflags">cflags</a>.... |
| d6e80 | 20 20 20 74 6f 20 63 6c 61 6e 67 2c 20 6f 72 20 69 66 20 79 6f 75 20 77 6f 75 6c 64 20 6c 69 6b | ...to.clang,.or.if.you.would.lik |
| d6ea0 | 65 20 74 6f 20 65 64 69 74 20 74 68 65 20 74 72 61 6e 73 6c 61 74 65 64 20 63 6f 64 65 2c 20 69 | e.to.edit.the.translated.code,.i |
| d6ec0 | 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 75 73 65 0a 20 20 20 20 20 20 3c 6b | t.is.recommended.to.use.......<k |
| d6ee0 | 62 64 3e 7a 69 67 20 74 72 61 6e 73 6c 61 74 65 2d 63 3c 2f 6b 62 64 3e 20 61 6e 64 20 73 61 76 | bd>zig.translate-c</kbd>.and.sav |
| d6f00 | 65 20 74 68 65 20 72 65 73 75 6c 74 73 20 74 6f 20 61 20 66 69 6c 65 2e 20 43 6f 6d 6d 6f 6e 20 | e.the.results.to.a.file..Common. |
| d6f20 | 72 65 61 73 6f 6e 73 20 66 6f 72 20 65 64 69 74 69 6e 67 0a 20 20 20 20 20 20 74 68 65 20 67 65 | reasons.for.editing.......the.ge |
| d6f40 | 6e 65 72 61 74 65 64 20 63 6f 64 65 20 69 6e 63 6c 75 64 65 3a 20 63 68 61 6e 67 69 6e 67 20 3c | nerated.code.include:.changing.< |
| d6f60 | 63 6f 64 65 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 74 79 70 | code><span.class="tok-kw">anytyp |
| d6f80 | 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 70 61 72 61 6d 65 74 65 72 73 20 69 6e 20 66 75 | e</span></code>.parameters.in.fu |
| d6fa0 | 6e 63 74 69 6f 6e 2d 6c 69 6b 65 20 6d 61 63 72 6f 73 20 74 6f 20 6d 6f 72 65 0a 20 20 20 20 20 | nction-like.macros.to.more...... |
| d6fc0 | 20 73 70 65 63 69 66 69 63 20 74 79 70 65 73 3b 20 63 68 61 6e 67 69 6e 67 20 3c 63 6f 64 65 3e | .specific.types;.changing.<code> |
| d6fe0 | 5b 2a 63 5d 54 3c 2f 63 6f 64 65 3e 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 3c 63 6f 64 65 3e 5b | [*c]T</code>.pointers.to.<code>[ |
| d7000 | 2a 5d 54 3c 2f 63 6f 64 65 3e 20 6f 72 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 2a 54 3c 2f 63 6f | *]T</code>.or.......<code>*T</co |
| d7020 | 64 65 3e 20 70 6f 69 6e 74 65 72 73 20 66 6f 72 20 69 6d 70 72 6f 76 65 64 20 74 79 70 65 20 73 | de>.pointers.for.improved.type.s |
| d7040 | 61 66 65 74 79 3b 20 61 6e 64 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 73 65 74 52 75 | afety;.and.......<a.href="#setRu |
| d7060 | 6e 74 69 6d 65 53 61 66 65 74 79 22 3e 65 6e 61 62 6c 69 6e 67 20 6f 72 20 64 69 73 61 62 6c 69 | ntimeSafety">enabling.or.disabli |
| d7080 | 6e 67 20 72 75 6e 74 69 6d 65 20 73 61 66 65 74 79 3c 2f 61 3e 20 77 69 74 68 69 6e 20 73 70 65 | ng.runtime.safety</a>.within.spe |
| d70a0 | 63 69 66 69 63 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 20 20 | cific.functions........</p>..... |
| d70c0 | 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 3c 75 6c 3e 0a 3c 6c | .........<p>See.also:</p><ul>.<l |
| d70e0 | 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 2f 61 3e | i><a.href="#Targets">Targets</a> |
| d7100 | 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 43 2d 54 79 70 65 2d 50 72 69 6d 69 | </li>.<li><a.href="#C-Type-Primi |
| d7120 | 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 61 3e 3c 2f 6c 69 | tives">C.Type.Primitives</a></li |
| d7140 | 3e 0a 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 6e 74 65 | >.<li><a.href="#Pointers">Pointe |
| d7160 | 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 43 2d 50 6f 69 6e | rs</a></li>.<li><a.href="#C-Poin |
| d7180 | 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 3c 61 | ters">C.Pointers</a></li>.<li><a |
| d71a0 | 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 2d 46 69 6c | .href="#Import-from-C-Header-Fil |
| d71c0 | 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 3c 2f 61 3e | e">Import.from.C.Header.File</a> |
| d71e0 | 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 22 3e 40 63 | </li>.<li><a.href="#cInclude">@c |
| d7200 | 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 3d 22 23 63 | Include</a></li>.<li><a.href="#c |
| d7220 | 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 6c 69 3e 3c 61 | Import">@cImport</a></li>.<li><a |
| d7240 | 20 68 72 65 66 3d 22 23 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 22 3e 40 73 65 74 52 75 | .href="#setRuntimeSafety">@setRu |
| d7260 | 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 | ntimeSafety</a></li>.</ul>...... |
| d7280 | 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 2d 54 72 61 6e 73 6c 61 74 69 6f 6e 2d 43 | .........<h3.id="C-Translation-C |
| d72a0 | 61 63 68 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 2d 54 72 61 6e 73 6c 61 74 | aching"><a.href="#toc-C-Translat |
| d72c0 | 69 6f 6e 2d 43 61 63 68 69 6e 67 22 3e 43 20 54 72 61 6e 73 6c 61 74 69 6f 6e 20 43 61 63 68 69 | ion-Caching">C.Translation.Cachi |
| d72e0 | 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 2d 54 | ng</a>.<a.class="hdr".href="#C-T |
| d7300 | 72 61 6e 73 6c 61 74 69 6f 6e 2d 43 61 63 68 69 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | ranslation-Caching">..</a></h3>. |
| d7320 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 68 65 20 43 20 74 72 61 6e 73 6c 61 | .......<p>.........The.C.transla |
| d7340 | 74 69 6f 6e 20 66 65 61 74 75 72 65 20 28 77 68 65 74 68 65 72 20 75 73 65 64 20 76 69 61 20 3c | tion.feature.(whether.used.via.< |
| d7360 | 6b 62 64 3e 7a 69 67 20 74 72 61 6e 73 6c 61 74 65 2d 63 3c 2f 6b 62 64 3e 20 6f 72 0a 20 20 20 | kbd>zig.translate-c</kbd>.or.... |
| d7380 | 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | .....<code><span.class="tok-buil |
| d73a0 | 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 29 20 69 6e 74 | tin">@cImport</span></code>).int |
| d73c0 | 65 67 72 61 74 65 73 20 77 69 74 68 20 74 68 65 20 5a 69 67 20 63 61 63 68 69 6e 67 20 73 79 73 | egrates.with.the.Zig.caching.sys |
| d73e0 | 74 65 6d 2e 20 53 75 62 73 65 71 75 65 6e 74 20 72 75 6e 73 20 77 69 74 68 0a 20 20 20 20 20 20 | tem..Subsequent.runs.with....... |
| d7400 | 20 20 74 68 65 20 73 61 6d 65 20 73 6f 75 72 63 65 20 66 69 6c 65 2c 20 74 61 72 67 65 74 2c 20 | ..the.same.source.file,.target,. |
| d7420 | 61 6e 64 20 63 66 6c 61 67 73 20 77 69 6c 6c 20 75 73 65 20 74 68 65 20 63 61 63 68 65 20 69 6e | and.cflags.will.use.the.cache.in |
| d7440 | 73 74 65 61 64 20 6f 66 20 72 65 70 65 61 74 65 64 6c 79 20 74 72 61 6e 73 6c 61 74 69 6e 67 0a | stead.of.repeatedly.translating. |
| d7460 | 20 20 20 20 20 20 20 20 74 68 65 20 73 61 6d 65 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 | ........the.same.code........</p |
| d7480 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 6f 20 73 65 65 20 77 68 65 72 65 | >.......<p>.........To.see.where |
| d74a0 | 20 74 68 65 20 63 61 63 68 65 64 20 66 69 6c 65 73 20 61 72 65 20 73 74 6f 72 65 64 20 77 68 65 | .the.cached.files.are.stored.whe |
| d74c0 | 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 63 6f 64 65 20 74 68 61 74 20 75 73 65 73 20 3c 63 6f 64 65 | n.compiling.code.that.uses.<code |
| d74e0 | 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 70 | ><span.class="tok-builtin">@cImp |
| d7500 | 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 75 73 65 20 74 | ort</span></code>,.........use.t |
| d7520 | 68 65 20 3c 6b 62 64 3e 2d 2d 76 65 72 62 6f 73 65 2d 63 69 6d 70 6f 72 74 3c 2f 6b 62 64 3e 20 | he.<kbd>--verbose-cimport</kbd>. |
| d7540 | 66 6c 61 67 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | flag:.......</p>.......<figure>< |
| d7560 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 | figcaption.class="zig-cap"><cite |
| d7580 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 76 65 72 62 6f 73 65 5f 63 69 6d 70 6f 72 74 5f 66 6c | .class="file">verbose_cimport_fl |
| d75a0 | 61 67 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c | ag.zig</cite></figcaption><pre>< |
| d75c0 | 63 6f 64 65 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 | code><span.class="tok-kw">const< |
| d75e0 | 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 |
| d7600 | 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 70 61 6e | tin">@cImport</span>({.....<span |
| d7620 | 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 73 | .class="tok-builtin">@cDefine</s |
| d7640 | 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">" |
| d7660 | 3b 5f 4e 4f 5f 43 52 54 5f 53 54 44 49 4f 5f 49 4e 4c 49 4e 45 26 71 75 6f 74 3b 3c 2f 73 70 61 | ;_NO_CRT_STDIO_INLINE"</spa |
| d7680 | 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">" |
| d76a0 | 31 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 | 1"</span>);.....<span.class |
| d76c0 | 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 73 70 61 6e 3e 28 | ="tok-builtin">@cInclude</span>( |
| d76e0 | 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 69 | <span.class="tok-str">"stdi |
| d7700 | 6f 2e 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 | o.h"</span>);.});.<span.cla |
| d7720 | 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 |
| d7740 | 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 |
| d7760 | 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 63 | s="tok-fn">main</span>().<span.c |
| d7780 | 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>.{... |
| d77a0 | 20 20 5f 20 3d 20 63 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | .._.=.c;.}</code></pre></figure> |
| d77c0 | 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | <figure><figcaption.class="shell |
| d77e0 | 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 | -cap">Shell</figcaption><pre><sa |
| d7800 | 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 76 65 72 62 6f 73 65 5f | mp>$.<kbd>zig.build-exe.verbose_ |
| d7820 | 63 69 6d 70 6f 72 74 5f 66 6c 61 67 2e 7a 69 67 20 2d 6c 63 20 2d 2d 76 65 72 62 6f 73 65 2d 63 | cimport_flag.zig.-lc.--verbose-c |
| d7840 | 69 6d 70 6f 72 74 3c 2f 6b 62 64 3e 0a 69 6e 66 6f 28 63 6f 6d 70 69 6c 61 74 69 6f 6e 29 3a 20 | import</kbd>.info(compilation):. |
| d7860 | 43 20 69 6d 70 6f 72 74 20 73 6f 75 72 63 65 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f | C.import.source:./home/andy/dev/ |
| d7880 | 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 62 33 63 62 63 34 33 30 63 39 37 65 32 33 31 | zig/.zig-cache/o/b3cbc430c97e231 |
| d78a0 | 32 35 35 35 63 33 39 33 62 31 31 36 62 36 61 36 65 2f 63 69 6d 70 6f 72 74 2e 68 0a 69 6e 66 6f | 2555c393b116b6a6e/cimport.h.info |
| d78c0 | 28 63 6f 6d 70 69 6c 61 74 69 6f 6e 29 3a 20 43 20 69 6d 70 6f 72 74 20 2e 64 20 66 69 6c 65 3a | (compilation):.C.import..d.file: |
| d78e0 | 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f | ./home/andy/dev/zig/.zig-cache/o |
| d7900 | 2f 62 33 63 62 63 34 33 30 63 39 37 65 32 33 31 32 35 35 35 63 33 39 33 62 31 31 36 62 36 61 36 | /b3cbc430c97e2312555c393b116b6a6 |
| d7920 | 65 2f 63 69 6d 70 6f 72 74 2e 68 2e 64 0a 24 20 3c 6b 62 64 3e 2e 2f 76 65 72 62 6f 73 65 5f 63 | e/cimport.h.d.$.<kbd>./verbose_c |
| d7940 | 69 6d 70 6f 72 74 5f 66 6c 61 67 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c | import_flag</kbd>.</samp></pre>< |
| d7960 | 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 | /figure>........<p>.........<cod |
| d7980 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 69 6d 70 6f 72 74 2e 68 3c 2f 63 6f 64 65 3e 20 | e.class="file">cimport.h</code>. |
| d79a0 | 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 66 69 6c 65 20 74 6f 20 74 72 61 6e 73 6c 61 74 65 20 28 | contains.the.file.to.translate.( |
| d79c0 | 63 6f 6e 73 74 72 75 63 74 65 64 20 66 72 6f 6d 20 63 61 6c 6c 73 20 74 6f 0a 20 20 20 20 20 20 | constructed.from.calls.to....... |
| d79e0 | 20 20 3c 63 6f 64 65 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 | ..<code><span.class="tok-builtin |
| d7a00 | 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 | ">@cInclude</span></code>,.<code |
| d7a20 | 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 44 65 66 | ><span.class="tok-builtin">@cDef |
| d7a40 | 69 6e 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 3e 3c 73 70 | ine</span></code>,.and.<code><sp |
| d7a60 | 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 66 3c 2f | an.class="tok-builtin">@cUndef</ |
| d7a80 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 2c 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 | span></code>),.........<code.cla |
| d7aa0 | 73 73 3d 22 66 69 6c 65 22 3e 63 69 6d 70 6f 72 74 2e 68 2e 64 3c 2f 63 6f 64 65 3e 20 69 73 20 | ss="file">cimport.h.d</code>.is. |
| d7ac0 | 74 68 65 20 6c 69 73 74 20 6f 66 20 66 69 6c 65 20 64 65 70 65 6e 64 65 6e 63 69 65 73 2c 20 61 | the.list.of.file.dependencies,.a |
| d7ae0 | 6e 64 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 69 | nd.........<code.class="file">ci |
| d7b00 | 6d 70 6f 72 74 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 74 72 | mport.zig</code>.contains.the.tr |
| d7b20 | 61 6e 73 6c 61 74 65 64 20 6f 75 74 70 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | anslated.output........</p>..... |
| d7b40 | 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 |
| d7b60 | 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"> |
| d7b80 | 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 |
| d7ba0 | 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 43 2d 54 72 61 6e 73 6c 61 74 69 6f 6e 2d 43 | i>.<li><a.href="#C-Translation-C |
| d7bc0 | 4c 49 22 3e 43 20 54 72 61 6e 73 6c 61 74 69 6f 6e 20 43 4c 49 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | LI">C.Translation.CLI</a></li>.< |
| d7be0 | 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 |
| d7c00 | 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 6d 70 6f 72 74 22 | </a></li>.<li><a.href="#cImport" |
| d7c20 | 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 | >@cImport</a></li>.</ul>........ |
| d7c40 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 72 61 6e 73 6c 61 74 69 6f 6e 2d 66 61 69 6c 75 | .......<h3.id="Translation-failu |
| d7c60 | 72 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 72 61 6e 73 6c 61 74 69 6f 6e 2d 66 | res"><a.href="#toc-Translation-f |
| d7c80 | 61 69 6c 75 72 65 73 22 3e 54 72 61 6e 73 6c 61 74 69 6f 6e 20 66 61 69 6c 75 72 65 73 3c 2f 61 | ailures">Translation.failures</a |
| d7ca0 | 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 72 61 6e 73 6c 61 74 | >.<a.class="hdr".href="#Translat |
| d7cc0 | 69 6f 6e 2d 66 61 69 6c 75 72 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | ion-failures">..</a></h3>....... |
| d7ce0 | 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 53 6f 6d 65 20 43 20 63 6f 6e 73 74 72 75 63 74 73 20 63 | .<p>.........Some.C.constructs.c |
| d7d00 | 61 6e 6e 6f 74 20 62 65 20 74 72 61 6e 73 6c 61 74 65 64 20 74 6f 20 5a 69 67 20 2d 20 66 6f 72 | annot.be.translated.to.Zig.-.for |
| d7d20 | 20 65 78 61 6d 70 6c 65 2c 20 3c 65 6d 3e 67 6f 74 6f 3c 2f 65 6d 3e 2c 0a 20 20 20 20 20 20 20 | .example,.<em>goto</em>,........ |
| d7d40 | 20 73 74 72 75 63 74 73 20 77 69 74 68 20 62 69 74 66 69 65 6c 64 73 2c 20 61 6e 64 20 74 6f 6b | .structs.with.bitfields,.and.tok |
| d7d60 | 65 6e 2d 70 61 73 74 69 6e 67 20 6d 61 63 72 6f 73 2e 20 5a 69 67 20 65 6d 70 6c 6f 79 73 20 3c | en-pasting.macros..Zig.employs.< |
| d7d80 | 65 6d 3e 64 65 6d 6f 74 69 6f 6e 3c 2f 65 6d 3e 20 74 6f 20 61 6c 6c 6f 77 20 74 72 61 6e 73 6c | em>demotion</em>.to.allow.transl |
| d7da0 | 61 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 74 6f 20 63 6f 6e 74 69 6e 75 65 20 69 6e 20 74 68 65 | ation.........to.continue.in.the |
| d7dc0 | 20 66 61 63 65 20 6f 66 20 6e 6f 6e 2d 74 72 61 6e 73 6c 61 74 61 62 6c 65 20 65 6e 74 69 74 69 | .face.of.non-translatable.entiti |
| d7de0 | 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 20 | es........</p>.......<p>........ |
| d7e00 | 20 44 65 6d 6f 74 69 6f 6e 20 63 6f 6d 65 73 20 69 6e 20 74 68 72 65 65 20 76 61 72 69 65 74 69 | .Demotion.comes.in.three.varieti |
| d7e20 | 65 73 20 2d 20 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 | es.-.<a.href="#opaque">opaque</a |
| d7e40 | 3e 2c 20 3c 65 6d 3e 65 78 74 65 72 6e 3c 2f 65 6d 3e 2c 20 61 6e 64 0a 20 20 20 20 20 20 20 20 | >,.<em>extern</em>,.and......... |
| d7e60 | 3c 63 6f 64 65 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 | <code><span.class="tok-builtin"> |
| d7e80 | 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 0a 20 20 | @compileError</span></code>..... |
| d7ea0 | 20 20 20 20 20 20 43 20 73 74 72 75 63 74 73 20 61 6e 64 20 75 6e 69 6f 6e 73 20 74 68 61 74 20 | ......C.structs.and.unions.that. |
| d7ec0 | 63 61 6e 6e 6f 74 20 62 65 20 74 72 61 6e 73 6c 61 74 65 64 20 63 6f 72 72 65 63 74 6c 79 20 77 | cannot.be.translated.correctly.w |
| d7ee0 | 69 6c 6c 20 62 65 20 74 72 61 6e 73 6c 61 74 65 64 20 61 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | ill.be.translated.as.<code><span |
| d7f00 | 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 7b 7d 3c | .class="tok-kw">opaque</span>{}< |
| d7f20 | 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 46 75 6e 63 74 69 6f 6e 73 20 74 68 61 74 20 63 | /code>..........Functions.that.c |
| d7f40 | 6f 6e 74 61 69 6e 20 6f 70 61 71 75 65 20 74 79 70 65 73 20 6f 72 20 63 6f 64 65 20 63 6f 6e 73 | ontain.opaque.types.or.code.cons |
| d7f60 | 74 72 75 63 74 73 20 74 68 61 74 20 63 61 6e 6e 6f 74 20 62 65 20 74 72 61 6e 73 6c 61 74 65 64 | tructs.that.cannot.be.translated |
| d7f80 | 20 77 69 6c 6c 20 62 65 20 64 65 6d 6f 74 65 64 0a 20 20 20 20 20 20 20 20 74 6f 20 3c 63 6f 64 | .will.be.demoted.........to.<cod |
| d7fa0 | 65 3e 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 3c 2f 73 | e><span.class="tok-kw">extern</s |
| d7fc0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2e 0a 0a 20 20 20 20 20 | pan></code>.declarations........ |
| d7fe0 | 20 20 20 54 68 75 73 2c 20 6e 6f 6e 2d 74 72 61 6e 73 6c 61 74 61 62 6c 65 20 74 79 70 65 73 20 | ...Thus,.non-translatable.types. |
| d8000 | 63 61 6e 20 73 74 69 6c 6c 20 62 65 20 75 73 65 64 20 61 73 20 70 6f 69 6e 74 65 72 73 2c 20 61 | can.still.be.used.as.pointers,.a |
| d8020 | 6e 64 20 6e 6f 6e 2d 74 72 61 6e 73 6c 61 74 61 62 6c 65 20 66 75 6e 63 74 69 6f 6e 73 0a 20 20 | nd.non-translatable.functions... |
| d8040 | 20 20 20 20 20 20 63 61 6e 20 62 65 20 63 61 6c 6c 65 64 20 73 6f 20 6c 6f 6e 67 20 61 73 20 74 | ......can.be.called.so.long.as.t |
| d8060 | 68 65 20 6c 69 6e 6b 65 72 20 69 73 20 61 77 61 72 65 20 6f 66 20 74 68 65 20 63 6f 6d 70 69 6c | he.linker.is.aware.of.the.compil |
| d8080 | 65 64 20 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 | ed.function........</p>.......<p |
| d80a0 | 3e 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >.........<code><span.class="tok |
| d80c0 | 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 3c 2f | -builtin">@compileError</span></ |
| d80e0 | 63 6f 64 65 3e 20 69 73 20 75 73 65 64 20 77 68 65 6e 20 74 6f 70 2d 6c 65 76 65 6c 20 64 65 66 | code>.is.used.when.top-level.def |
| d8100 | 69 6e 69 74 69 6f 6e 73 20 28 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 73 2c 0a 20 20 20 20 | initions.(global.variables,..... |
| d8120 | 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 74 6f 74 79 70 65 73 2c 20 6d 61 63 72 6f 73 29 | ....function.prototypes,.macros) |
| d8140 | 20 63 61 6e 6e 6f 74 20 62 65 20 74 72 61 6e 73 6c 61 74 65 64 20 6f 72 20 64 65 6d 6f 74 65 64 | .cannot.be.translated.or.demoted |
| d8160 | 2e 20 53 69 6e 63 65 20 5a 69 67 20 75 73 65 73 20 6c 61 7a 79 20 61 6e 61 6c 79 73 69 73 20 66 | ..Since.Zig.uses.lazy.analysis.f |
| d8180 | 6f 72 0a 20 20 20 20 20 20 20 20 74 6f 70 2d 6c 65 76 65 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e | or.........top-level.declaration |
| d81a0 | 73 2c 20 75 6e 74 72 61 6e 73 6c 61 74 61 62 6c 65 20 65 6e 74 69 74 69 65 73 20 77 69 6c 6c 20 | s,.untranslatable.entities.will. |
| d81c0 | 6e 6f 74 20 63 61 75 73 65 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 6e 20 79 6f 75 | not.cause.a.compile.error.in.you |
| d81e0 | 72 20 63 6f 64 65 20 75 6e 6c 65 73 73 0a 20 20 20 20 20 20 20 20 79 6f 75 20 61 63 74 75 61 6c | r.code.unless.........you.actual |
| d8200 | 6c 79 20 75 73 65 20 74 68 65 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | ly.use.them........</p>.......<p |
| d8220 | 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=" |
| d8240 | 23 6f 70 61 71 75 65 22 3e 6f 70 61 71 75 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | #opaque">opaque</a></li>.<li><a. |
| d8260 | 68 72 65 66 3d 22 23 65 78 74 65 72 6e 22 3e 65 78 74 65 72 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | href="#extern">extern</a></li>.< |
| d8280 | 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 |
| d82a0 | 69 6c 65 45 72 72 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a | ileError</a></li>.</ul>......... |
| d82c0 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 2d 4d 61 63 72 6f 73 22 3e 3c 61 20 68 72 65 66 3d | ......<h3.id="C-Macros"><a.href= |
| d82e0 | 22 23 74 6f 63 2d 43 2d 4d 61 63 72 6f 73 22 3e 43 20 4d 61 63 72 6f 73 3c 2f 61 3e 20 3c 61 20 | "#toc-C-Macros">C.Macros</a>.<a. |
| d8300 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 2d 4d 61 63 72 6f 73 22 3e c2 a7 3c | class="hdr".href="#C-Macros">..< |
| d8320 | 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 20 20 43 20 54 72 | /a></h3>........<p>.........C.Tr |
| d8340 | 61 6e 73 6c 61 74 69 6f 6e 20 6d 61 6b 65 73 20 61 20 62 65 73 74 2d 65 66 66 6f 72 74 20 61 74 | anslation.makes.a.best-effort.at |
| d8360 | 74 65 6d 70 74 20 74 6f 20 74 72 61 6e 73 6c 61 74 65 20 66 75 6e 63 74 69 6f 6e 2d 6c 69 6b 65 | tempt.to.translate.function-like |
| d8380 | 20 6d 61 63 72 6f 73 20 69 6e 74 6f 20 65 71 75 69 76 61 6c 65 6e 74 0a 20 20 20 20 20 20 20 20 | .macros.into.equivalent......... |
| d83a0 | 5a 69 67 20 66 75 6e 63 74 69 6f 6e 73 2e 20 53 69 6e 63 65 20 43 20 6d 61 63 72 6f 73 20 6f 70 | Zig.functions..Since.C.macros.op |
| d83c0 | 65 72 61 74 65 20 61 74 20 74 68 65 20 6c 65 76 65 6c 20 6f 66 20 6c 65 78 69 63 61 6c 20 74 6f | erate.at.the.level.of.lexical.to |
| d83e0 | 6b 65 6e 73 2c 20 6e 6f 74 20 61 6c 6c 20 43 20 6d 61 63 72 6f 73 0a 20 20 20 20 20 20 20 20 63 | kens,.not.all.C.macros.........c |
| d8400 | 61 6e 20 62 65 20 74 72 61 6e 73 6c 61 74 65 64 20 74 6f 20 5a 69 67 2e 20 4d 61 63 72 6f 73 20 | an.be.translated.to.Zig..Macros. |
| d8420 | 74 68 61 74 20 63 61 6e 6e 6f 74 20 62 65 20 74 72 61 6e 73 6c 61 74 65 64 20 77 69 6c 6c 20 62 | that.cannot.be.translated.will.b |
| d8440 | 65 20 64 65 6d 6f 74 65 64 20 74 6f 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | e.demoted.to.........<code><span |
| d8460 | 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 45 72 72 | .class="tok-builtin">@compileErr |
| d8480 | 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 4e 6f 74 65 20 74 68 61 74 20 43 20 63 6f | or</span></code>..Note.that.C.co |
| d84a0 | 64 65 20 77 68 69 63 68 20 3c 65 6d 3e 75 73 65 73 3c 2f 65 6d 3e 20 6d 61 63 72 6f 73 20 77 69 | de.which.<em>uses</em>.macros.wi |
| d84c0 | 6c 6c 20 62 65 0a 20 20 20 20 20 20 20 20 74 72 61 6e 73 6c 61 74 65 64 20 77 69 74 68 6f 75 74 | ll.be.........translated.without |
| d84e0 | 20 61 6e 79 20 61 64 64 69 74 69 6f 6e 61 6c 20 69 73 73 75 65 73 20 28 73 69 6e 63 65 20 5a 69 | .any.additional.issues.(since.Zi |
| d8500 | 67 20 6f 70 65 72 61 74 65 73 20 6f 6e 20 74 68 65 20 70 72 65 2d 70 72 6f 63 65 73 73 65 64 20 | g.operates.on.the.pre-processed. |
| d8520 | 73 6f 75 72 63 65 0a 20 20 20 20 20 20 20 20 77 69 74 68 20 6d 61 63 72 6f 73 20 65 78 70 61 6e | source.........with.macros.expan |
| d8540 | 64 65 64 29 2e 20 49 74 20 69 73 20 6d 65 72 65 6c 79 20 74 68 65 20 6d 61 63 72 6f 73 20 74 68 | ded)..It.is.merely.the.macros.th |
| d8560 | 65 6d 73 65 6c 76 65 73 20 77 68 69 63 68 20 6d 61 79 20 6e 6f 74 20 62 65 20 74 72 61 6e 73 6c | emselves.which.may.not.be.transl |
| d8580 | 61 74 61 62 6c 65 20 74 6f 0a 20 20 20 20 20 20 20 20 5a 69 67 2e 0a 20 20 20 20 20 20 3c 2f 70 | atable.to.........Zig........</p |
| d85a0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 43 6f 6e 73 69 64 65 72 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e | >.......<p>Consider.the.followin |
| d85c0 | 67 20 65 78 61 6d 70 6c 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 | g.example:</p>.......<figure><fi |
| d85e0 | 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 63 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 | gcaption.class="c-cap"><cite.cla |
| d8600 | 73 73 3d 22 66 69 6c 65 22 3e 6d 61 63 72 6f 2e 63 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | ss="file">macro.c</cite></figcap |
| d8620 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 23 64 65 66 69 6e 65 20 4d 41 4b 45 4c 4f 43 41 | tion><pre><code>#define.MAKELOCA |
| d8640 | 4c 28 4e 41 4d 45 2c 20 49 4e 49 54 29 20 69 6e 74 20 4e 41 4d 45 20 3d 20 49 4e 49 54 0a 69 6e | L(NAME,.INIT).int.NAME.=.INIT.in |
| d8660 | 74 20 66 6f 6f 28 76 6f 69 64 29 20 7b 0a 20 20 20 4d 41 4b 45 4c 4f 43 41 4c 28 61 2c 20 31 29 | t.foo(void).{....MAKELOCAL(a,.1) |
| d8680 | 3b 0a 20 20 20 4d 41 4b 45 4c 4f 43 41 4c 28 62 2c 20 32 29 3b 0a 20 20 20 72 65 74 75 72 6e 20 | ;....MAKELOCAL(b,.2);....return. |
| d86a0 | 61 20 2b 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 | a.+.b;.}</code></pre></figure>.. |
| d86c0 | 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 | .....<figure><figcaption.class=" |
| d86e0 | 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 | shell-cap">Shell</figcaption><pr |
| d8700 | 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 72 61 6e 73 6c 61 74 65 2d 63 20 6d | e><samp>$.<kbd>zig.translate-c.m |
| d8720 | 61 63 72 6f 2e 63 20 26 67 74 3b 20 6d 61 63 72 6f 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 | acro.c.>.macro.zig</kbd>.</sa |
| d8740 | 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 | mp></pre></figure>.......<figure |
| d8760 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 | ><figcaption.class="zig-cap"><ci |
| d8780 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6d 61 63 72 6f 2e 7a 69 67 3c 2f 63 69 74 65 3e | te.class="file">macro.zig</cite> |
| d87a0 | 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </figcaption><pre><code><span.cl |
| d87c0 | 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 |
| d87e0 | 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 6e | ass="tok-kw">export</span>.<span |
| d8800 | 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. |
| d8820 | 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 |
| d8840 | 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 61 6e 3e 20 | n.class="tok-type">c_int</span>. |
| d8860 | 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</ |
| d8880 | 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"> |
| d88a0 | 63 5f 69 6e 74 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 | c_int</span>.=.<span.class="tok- |
| d88c0 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 61 | number">1</span>;....._.=.&a |
| d88e0 | 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</ |
| d8900 | 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"> |
| d8920 | 63 5f 69 6e 74 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 | c_int</span>.=.<span.class="tok- |
| d8940 | 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 62 | number">2</span>;....._.=.&b |
| d8960 | 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 |
| d8980 | 6e 3c 2f 73 70 61 6e 3e 20 61 20 2b 20 62 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n</span>.a.+.b;.}.<span.class="t |
| d89a0 | 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 |
| d89c0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4d 41 4b 45 4c 4f 43 41 4c 20 3d 20 | ok-kw">const</span>.MAKELOCAL.=. |
| d89e0 | 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 6f 6d 70 69 | <span.class="tok-builtin">@compi |
| d8a00 | 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 3d 22 74 6f 6b 2d | leError</span>(<span.class="tok- |
| d8a20 | 73 74 72 22 3e 26 71 75 6f 74 3b 75 6e 61 62 6c 65 20 74 6f 20 74 72 61 6e 73 6c 61 74 65 20 43 | str">"unable.to.translate.C |
| d8a40 | 20 65 78 70 72 3a 20 75 6e 65 78 70 65 63 74 65 64 20 74 6f 6b 65 6e 20 2e 45 71 75 61 6c 26 71 | .expr:.unexpected.token..Equal&q |
| d8a60 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | uot;</span>);.<span.class="tok-c |
| d8a80 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6d 61 63 72 6f 2e 63 3a 31 3a 39 3c 2f 73 70 61 6e 3e 3c 2f 63 | omment">//.macro.c:1:9</span></c |
| d8aa0 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 4e 6f | ode></pre></figure>........<p>No |
| d8ac0 | 74 65 20 74 68 61 74 20 3c 63 6f 64 65 3e 66 6f 6f 3c 2f 63 6f 64 65 3e 20 77 61 73 20 74 72 61 | te.that.<code>foo</code>.was.tra |
| d8ae0 | 6e 73 6c 61 74 65 64 20 63 6f 72 72 65 63 74 6c 79 20 64 65 73 70 69 74 65 20 75 73 69 6e 67 20 | nslated.correctly.despite.using. |
| d8b00 | 61 20 6e 6f 6e 2d 74 72 61 6e 73 6c 61 74 61 62 6c 65 0a 20 20 20 20 20 20 20 20 6d 61 63 72 6f | a.non-translatable.........macro |
| d8b20 | 2e 20 3c 63 6f 64 65 3e 4d 41 4b 45 4c 4f 43 41 4c 3c 2f 63 6f 64 65 3e 20 77 61 73 20 64 65 6d | ..<code>MAKELOCAL</code>.was.dem |
| d8b40 | 6f 74 65 64 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | oted.to.<code><span.class="tok-b |
| d8b60 | 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 3c 2f 63 6f | uiltin">@compileError</span></co |
| d8b80 | 64 65 3e 20 73 69 6e 63 65 0a 20 20 20 20 20 20 20 20 69 74 20 63 61 6e 6e 6f 74 20 62 65 20 65 | de>.since.........it.cannot.be.e |
| d8ba0 | 78 70 72 65 73 73 65 64 20 61 73 20 61 20 5a 69 67 20 66 75 6e 63 74 69 6f 6e 3b 20 74 68 69 73 | xpressed.as.a.Zig.function;.this |
| d8bc0 | 20 73 69 6d 70 6c 79 20 6d 65 61 6e 73 20 74 68 61 74 20 79 6f 75 20 63 61 6e 6e 6f 74 20 64 69 | .simply.means.that.you.cannot.di |
| d8be0 | 72 65 63 74 6c 79 20 75 73 65 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 4d 41 4b 45 4c 4f 43 | rectly.use.........<code>MAKELOC |
| d8c00 | 41 4c 3c 2f 63 6f 64 65 3e 20 66 72 6f 6d 20 5a 69 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | AL</code>.from.Zig........</p>.. |
| d8c20 | 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 |
| d8c40 | 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 69 6c 65 45 72 | .href="#compileError">@compileEr |
| d8c60 | 72 6f 72 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 | ror</a></li>.</ul>.............. |
| d8c80 | 20 20 3c 68 33 20 69 64 3d 22 43 2d 50 6f 69 6e 74 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 | ..<h3.id="C-Pointers"><a.href="# |
| d8ca0 | 74 6f 63 2d 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 3e 20 3c | toc-C-Pointers">C.Pointers</a>.< |
| d8cc0 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 2d 50 6f 69 6e 74 65 72 73 22 | a.class="hdr".href="#C-Pointers" |
| d8ce0 | 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 54 68 | >..</a></h3>........<p>.......Th |
| d8d00 | 69 73 20 74 79 70 65 20 69 73 20 74 6f 20 62 65 20 61 76 6f 69 64 65 64 20 77 68 65 6e 65 76 65 | is.type.is.to.be.avoided.wheneve |
| d8d20 | 72 20 70 6f 73 73 69 62 6c 65 2e 20 54 68 65 20 6f 6e 6c 79 20 76 61 6c 69 64 20 72 65 61 73 6f | r.possible..The.only.valid.reaso |
| d8d40 | 6e 20 66 6f 72 20 75 73 69 6e 67 20 61 20 43 20 70 6f 69 6e 74 65 72 20 69 73 20 69 6e 0a 20 20 | n.for.using.a.C.pointer.is.in... |
| d8d60 | 20 20 20 20 61 75 74 6f 2d 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 20 66 72 6f 6d 20 74 72 61 | ....auto-generated.code.from.tra |
| d8d80 | 6e 73 6c 61 74 69 6e 67 20 43 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | nslating.C.code........</p>..... |
| d8da0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 69 6d 70 6f 72 74 69 6e 67 20 43 20 68 65 61 | ..<p>.......When.importing.C.hea |
| d8dc0 | 64 65 72 20 66 69 6c 65 73 2c 20 69 74 20 69 73 20 61 6d 62 69 67 75 6f 75 73 20 77 68 65 74 68 | der.files,.it.is.ambiguous.wheth |
| d8de0 | 65 72 20 70 6f 69 6e 74 65 72 73 20 73 68 6f 75 6c 64 20 62 65 20 74 72 61 6e 73 6c 61 74 65 64 | er.pointers.should.be.translated |
| d8e00 | 20 61 73 0a 20 20 20 20 20 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 73 20 28 | .as.......single-item.pointers.( |
| d8e20 | 3c 63 6f 64 65 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 | <code>*T</code>).or.many-item.po |
| d8e40 | 69 6e 74 65 72 73 20 28 3c 63 6f 64 65 3e 5b 2a 5d 54 3c 2f 63 6f 64 65 3e 29 2e 0a 20 20 20 20 | inters.(<code>[*]T</code>)...... |
| d8e60 | 20 20 43 20 70 6f 69 6e 74 65 72 73 20 61 72 65 20 61 20 63 6f 6d 70 72 6f 6d 69 73 65 20 73 6f | ..C.pointers.are.a.compromise.so |
| d8e80 | 20 74 68 61 74 20 5a 69 67 20 63 6f 64 65 20 63 61 6e 20 75 74 69 6c 69 7a 65 20 74 72 61 6e 73 | .that.Zig.code.can.utilize.trans |
| d8ea0 | 6c 61 74 65 64 20 68 65 61 64 65 72 20 66 69 6c 65 73 20 64 69 72 65 63 74 6c 79 2e 0a 20 20 20 | lated.header.files.directly..... |
| d8ec0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 5b 2a 63 5d 54 3c 2f 63 6f | ...</p>.......<p><code>[*c]T</co |
| d8ee0 | 64 65 3e 20 2d 20 43 20 70 6f 69 6e 74 65 72 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a | de>.-.C.pointer.</p>.......<ul>. |
| d8f00 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 61 6c 6c 20 74 68 65 20 73 79 6e | ........<li>Supports.all.the.syn |
| d8f20 | 74 61 78 20 6f 66 20 74 68 65 20 6f 74 68 65 72 20 74 77 6f 20 70 6f 69 6e 74 65 72 20 74 79 70 | tax.of.the.other.two.pointer.typ |
| d8f40 | 65 73 20 28 3c 63 6f 64 65 3e 2a 54 3c 2f 63 6f 64 65 3e 29 20 61 6e 64 20 28 3c 63 6f 64 65 3e | es.(<code>*T</code>).and.(<code> |
| d8f60 | 5b 2a 5d 54 3c 2f 63 6f 64 65 3e 29 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 | [*]T</code>).</li>.........<li>C |
| d8f80 | 6f 65 72 63 65 73 20 74 6f 20 6f 74 68 65 72 20 70 6f 69 6e 74 65 72 20 74 79 70 65 73 2c 20 61 | oerces.to.other.pointer.types,.a |
| d8fa0 | 73 20 77 65 6c 6c 20 61 73 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 | s.well.as.<a.href="#Optional-Poi |
| d8fc0 | 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 3e 2e 0a 20 20 | nters">Optional.Pointers</a>.... |
| d8fe0 | 20 20 20 20 20 20 20 20 20 20 57 68 65 6e 20 61 20 43 20 70 6f 69 6e 74 65 72 20 69 73 20 63 6f | ..........When.a.C.pointer.is.co |
| d9000 | 65 72 63 65 64 20 74 6f 20 61 20 6e 6f 6e 2d 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 2c | erced.to.a.non-optional.pointer, |
| d9020 | 20 73 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 | .safety-checked.............<a.h |
| d9040 | 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 | ref="#Illegal-Behavior">Illegal. |
| d9060 | 42 65 68 61 76 69 6f 72 3c 2f 61 3e 20 6f 63 63 75 72 73 20 69 66 20 74 68 65 20 61 64 64 72 65 | Behavior</a>.occurs.if.the.addre |
| d9080 | 73 73 20 69 73 20 30 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 | ss.is.0..........</li>.........< |
| d90a0 | 6c 69 3e 41 6c 6c 6f 77 73 20 61 64 64 72 65 73 73 20 30 2e 20 4f 6e 20 6e 6f 6e 2d 66 72 65 65 | li>Allows.address.0..On.non-free |
| d90c0 | 73 74 61 6e 64 69 6e 67 20 74 61 72 67 65 74 73 2c 20 64 65 72 65 66 65 72 65 6e 63 69 6e 67 20 | standing.targets,.dereferencing. |
| d90e0 | 61 64 64 72 65 73 73 20 30 20 69 73 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 0a 20 20 20 20 | address.0.is.safety-checked..... |
| d9100 | 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 | ........<a.href="#Illegal-Behavi |
| d9120 | 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 20 4f 70 74 69 6f 6e | or">Illegal.Behavior</a>..Option |
| d9140 | 61 6c 20 43 20 70 6f 69 6e 74 65 72 73 20 69 6e 74 72 6f 64 75 63 65 20 61 6e 6f 74 68 65 72 20 | al.C.pointers.introduce.another. |
| d9160 | 62 69 74 20 74 6f 20 6b 65 65 70 20 74 72 61 63 6b 20 6f 66 0a 20 20 20 20 20 20 20 20 20 20 20 | bit.to.keep.track.of............ |
| d9180 | 20 6e 75 6c 6c 2c 20 6a 75 73 74 20 6c 69 6b 65 20 3c 63 6f 64 65 3e 3f 3c 73 70 61 6e 20 63 6c | .null,.just.like.<code>?<span.cl |
| d91a0 | 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 6f 64 | ass="tok-type">usize</span></cod |
| d91c0 | 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 6f 6e | e>..Note.that.creating.an.option |
| d91e0 | 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 6e 65 | al.C.pointer.............is.unne |
| d9200 | 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 3c 61 | cessary.as.one.can.use.normal.<a |
| d9220 | 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 69 6f | .href="#Optional-Pointers">Optio |
| d9240 | 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 3e 0a | nal.Pointers</a>..........</li>. |
| d9260 | 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 23 54 | ........<li>Supports.<a.href="#T |
| d9280 | 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 3e 20 | ype-Coercion">Type.Coercion</a>. |
| d92a0 | 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 20 20 | to.and.from.integers.</li>...... |
| d92c0 | 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 68 20 | ...<li>Supports.comparison.with. |
| d92e0 | 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 73 20 | integers.</li>.........<li>Does. |
| d9300 | 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 74 74 | not.support.Zig-only.pointer.att |
| d9320 | 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 20 6e | ributes.such.as.alignment..Use.n |
| d9340 | 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 74 65 | ormal.<a.href="#Pointers">Pointe |
| d9360 | 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 20 20 | rs</a>.........please!</li>..... |
| d9380 | 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 74 65 | ..</ul>.......<p>When.a.C.pointe |
| d93a0 | 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 63 74 | r.is.pointing.to.a.single.struct |
| d93c0 | 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 68 65 | .(not.an.array),.dereference.the |
| d93e0 | 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 68 65 | .C.pointer.to.........access.the |
| d9400 | 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 64 61 74 61 2e | .struct's.fields.or.member.data. |
| d9420 | 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 20 20 20 20 20 | .That.syntax.looks.like......... |
| d9440 | 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 3e 70 74 72 5f | this:.</p>.........<p><code>ptr_ |
| d9460 | 74 6f 5f 73 74 72 75 63 74 2e 2a 2e 73 74 72 75 63 74 5f 6d 65 6d 62 65 72 3c 2f 63 6f 64 65 3e | to_struct.*.struct_member</code> |
| d9480 | 3c 2f 70 3e 0a 20 20 20 20 20 20 20 20 3c 70 3e 54 68 69 73 20 69 73 20 63 6f 6d 70 61 72 61 62 | </p>.........<p>This.is.comparab |
| d94a0 | 6c 65 20 74 6f 20 64 6f 69 6e 67 20 3c 63 6f 64 65 3e 2d 26 67 74 3b 3c 2f 63 6f 64 65 3e 20 69 | le.to.doing.<code>-></code>.i |
| d94c0 | 6e 20 43 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 | n.C.</p>.........<p>.When.a.C.po |
| d94e0 | 69 6e 74 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 | inter.is.pointing.to.an.array.of |
| d9500 | 20 73 74 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 | .structs,.the.syntax.reverts.to. |
| d9520 | 74 68 69 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 70 74 72 5f 74 | this:</p>.........<p><code>ptr_t |
| d9540 | 6f 5f 73 74 72 75 63 74 5f 61 72 72 61 79 5b 69 6e 64 65 78 5d 2e 73 74 72 75 63 74 5f 6d 65 6d | o_struct_array[index].struct_mem |
| d9560 | 62 65 72 3c 2f 63 6f 64 65 3e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 | ber</code></p>...............<h3 |
| d9580 | 20 69 64 3d 22 43 2d 56 61 72 69 61 64 69 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 3c 61 20 68 72 | .id="C-Variadic-Functions"><a.hr |
| d95a0 | 65 66 3d 22 23 74 6f 63 2d 43 2d 56 61 72 69 61 64 69 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 43 | ef="#toc-C-Variadic-Functions">C |
| d95c0 | 20 56 61 72 69 61 64 69 63 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | .Variadic.Functions</a>.<a.class |
| d95e0 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 2d 56 61 72 69 61 64 69 63 2d 46 75 6e 63 74 69 6f | ="hdr".href="#C-Variadic-Functio |
| d9600 | 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 5a 69 67 20 73 75 | ns">..</a></h3>........<p>Zig.su |
| d9620 | 70 70 6f 72 74 73 20 65 78 74 65 72 6e 20 76 61 72 69 61 64 69 63 20 66 75 6e 63 74 69 6f 6e 73 | pports.extern.variadic.functions |
| d9640 | 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | .</p>.......<figure><figcaption. |
| d9660 | 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c | class="zig-cap"><cite.class="fil |
| d9680 | 65 22 3e 74 65 73 74 5f 76 61 72 69 61 64 69 63 5f 66 75 6e 63 74 69 6f 6e 2e 7a 69 67 3c 2f 63 | e">test_variadic_function.zig</c |
| d96a0 | 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 | ite></figcaption><pre><code><spa |
| d96c0 | 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 |
| d96e0 | 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 |
| d9700 | 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 |
| d9720 | 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 |
| d9740 | 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 65 | n.class="tok-kw">const</span>.te |
| d9760 | 73 74 69 6e 67 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | sting.=.std.testing;..<span.clas |
| d9780 | 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 |
| d97a0 | 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 |
| d97c0 | 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 6f 74 3b 3c 2f 73 70 | lass="tok-str">"c"</sp |
| d97e0 | 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 |
| d9800 | 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 2f | n>.<span.class="tok-fn">printf</ |
| d9820 | 73 70 61 6e 3e 28 66 6f 72 6d 61 74 3a 20 5b 2a 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>(format:.[*:<span.class="to |
| d9840 | 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 73 3d 22 | k-number">0</span>]<span.class=" |
| d9860 | 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 73 73 | tok-kw">const</span>.<span.class |
| d9880 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 2e 2e 2e 29 20 3c 73 70 61 | ="tok-type">u8</span>,....).<spa |
| d98a0 | 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 61 6e 3e 3b | n.class="tok-type">c_int</span>; |
| d98c0 | 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 |
| d98e0 | 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 |
| d9900 | 61 72 69 61 64 69 63 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 | ariadic.function"</span>.{. |
| d9920 | 20 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 |
| d9940 | 61 6e 3e 20 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 28 70 72 69 6e 74 66 28 3c 73 70 61 6e 20 | an>.testing.expect(printf(<span. |
| d9960 | 63 6c 61 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 | class="tok-str">"Hello,.wor |
| d9980 | 6c 64 21 5c 6e 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 | ld!\n"</span>).==.<span.cla |
| d99a0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | ss="tok-number">14</span>);..... |
| d99c0 | 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>. |
| d99e0 | 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | testing.expect(<span.class="tok- |
| d9a00 | 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 70 61 6e 20 | builtin">@typeInfo</span>(<span. |
| d9a20 | 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 |
| d9a40 | 6e 3e 28 70 72 69 6e 74 66 29 29 2e 40 26 71 75 6f 74 3b 66 6e 26 71 75 6f 74 3b 2e 69 73 5f 76 | n>(printf)).@"fn".is_v |
| d9a60 | 61 72 5f 61 72 67 73 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | ar_args);.}</code></pre></figure |
| d9a80 | 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c | ><figure><figcaption.class="shel |
| d9aa0 | 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 | l-cap">Shell</figcaption><pre><s |
| d9ac0 | 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 76 61 72 69 61 64 69 | amp>$.<kbd>zig.test.test_variadi |
| d9ae0 | 63 5f 66 75 6e 63 74 69 6f 6e 2e 7a 69 67 20 2d 6c 63 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 | c_function.zig.-lc</kbd>.1/1.tes |
| d9b00 | 74 5f 76 61 72 69 61 64 69 63 5f 66 75 6e 63 74 69 6f 6e 2e 74 65 73 74 2e 76 61 72 69 61 64 69 | t_variadic_function.test.variadi |
| d9b20 | 63 20 66 75 6e 63 74 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 | c.function...OK.All.1.tests.pass |
| d9b40 | 65 64 2e 0a 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c | ed..Hello,.world!.</samp></pre>< |
| d9b60 | 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 56 61 72 69 | /figure>........<p>.........Vari |
| d9b80 | 61 64 69 63 20 66 75 6e 63 74 69 6f 6e 73 20 63 61 6e 20 62 65 20 69 6d 70 6c 65 6d 65 6e 74 65 | adic.functions.can.be.implemente |
| d9ba0 | 64 20 75 73 69 6e 67 20 3c 61 20 68 72 65 66 3d 22 23 63 56 61 53 74 61 72 74 22 3e 40 63 56 61 | d.using.<a.href="#cVaStart">@cVa |
| d9bc0 | 53 74 61 72 74 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 63 56 61 45 6e 64 22 3e 40 63 56 | Start</a>,.<a.href="#cVaEnd">@cV |
| d9be0 | 61 45 6e 64 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 63 56 61 41 72 67 22 3e 40 63 56 61 | aEnd</a>,.<a.href="#cVaArg">@cVa |
| d9c00 | 41 72 67 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 63 56 61 43 6f 70 79 22 3e 40 | Arg</a>.and.<a.href="#cVaCopy">@ |
| d9c20 | 63 56 61 43 6f 70 79 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 | cVaCopy</a>........</p>.......<f |
| d9c40 | 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 | igure><figcaption.class="zig-cap |
| d9c60 | 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 64 65 66 69 6e 69 | "><cite.class="file">test_defini |
| d9c80 | 6e 67 5f 76 61 72 69 61 64 69 63 5f 66 75 6e 63 74 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c | ng_variadic_function.zig</cite>< |
| d9ca0 | 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | /figcaption><pre><code><span.cla |
| d9cc0 | 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.=.< |
| d9ce0 | 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 |
| d9d00 | 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 |
| d9d20 | 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 |
| d9d40 | 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 65 73 74 69 6e 67 | ss="tok-kw">const</span>.testing |
| d9d60 | 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .=.std.testing;.<span.class="tok |
| d9d80 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 20 3d 20 3c 73 70 61 | -kw">const</span>.builtin.=.<spa |
| d9da0 | 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 |
| d9dc0 | 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">" |
| d9de0 | 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 | ;builtin"</span>);..<span.c |
| d9e00 | 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 |
| d9e20 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 3c 2f 73 70 61 6e 3e 28 63 6f 75 6e 74 3a 20 3c | ass="tok-fn">add</span>(count:.< |
| d9e40 | 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 61 | span.class="tok-type">c_int</spa |
| d9e60 | 6e 3e 2c 20 2e 2e 2e 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 | n>,....).<span.class="tok-kw">ca |
| d9e80 | 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 22 74 | llconv</span>(.C).<span.class="t |
| d9ea0 | 6f 6b 2d 74 79 70 65 22 3e 63 5f 69 6e 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | ok-type">c_int</span>.{.....<spa |
| d9ec0 | 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 70 20 3d | n.class="tok-kw">var</span>.ap.= |
| d9ee0 | 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 56 61 53 | .<span.class="tok-builtin">@cVaS |
| d9f00 | 74 61 72 74 3c 2f 73 70 61 6e 3e 28 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | tart</span>();.....<span.class=" |
| d9f20 | 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-kw">defer</span>.<span.class |
| d9f40 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 56 61 45 6e 64 3c 2f 73 70 61 6e 3e 28 26 61 | ="tok-builtin">@cVaEnd</span>(&a |
| d9f60 | 6d 70 3b 61 70 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 | mp;ap);.....<span.class="tok-kw" |
| d9f80 | 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- |
| d9fa0 | 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 |
| d9fc0 | 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 |
| d9fe0 | 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: |
| da000 | 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 74 3c 2f 73 | .<span.class="tok-type">c_int</s |
| da020 | 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"> |
| da040 | 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 |
| da060 | 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 63 6f 75 6e 74 29 20 3a | w">while</span>.(i.<.count).: |
| da080 | 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 62 65 72 22 3e | .(i.+=.<span.class="tok-number"> |
| da0a0 | 31 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 3c 73 70 61 6e | 1</span>).{.........sum.+=.<span |
| da0c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 56 61 41 72 67 3c 2f 73 70 | .class="tok-builtin">@cVaArg</sp |
| da0e0 | 61 6e 3e 28 26 61 6d 70 3b 61 70 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | an>(&ap,.<span.class="tok-ty |
| da100 | 70 65 22 3e 63 5f 69 6e 74 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 | pe">c_int</span>);.....}.....<sp |
| da120 | 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>. |
| da140 | 73 75 6d 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 | sum;.}..<span.class="tok-kw">tes |
| da160 | 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">& |
| da180 | 71 75 6f 74 3b 64 65 66 69 6e 69 6e 67 20 61 20 76 61 72 69 61 64 69 63 20 66 75 6e 63 74 69 6f | quot;defining.a.variadic.functio |
| da1a0 | 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 20 63 6c 61 73 73 | n"</span>.{.....<span.class |
| da1c0 | 3d 22 74 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 63 70 75 | ="tok-kw">if</span>.(builtin.cpu |
| da1e0 | 2e 61 72 63 68 20 3d 3d 20 2e 61 61 72 63 68 36 34 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .arch.==..aarch64.<span.class="t |
| da200 | 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 2e 6f 73 2e 74 61 67 | ok-kw">and</span>.builtin.os.tag |
| da220 | 20 21 3d 20 2e 6d 61 63 6f 73 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | .!=..macos).{.........<span.clas |
| da240 | 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 67 69 74 68 75 | s="tok-comment">//.https://githu |
| da260 | 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 34 30 39 36 3c 2f | b.com/ziglang/zig/issues/14096</ |
| da280 | 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 6b | span>.........<span.class="tok-k |
| da2a0 | 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 |
| da2c0 | 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;. |
| da2e0 | 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 69 | ....}.....<span.class="tok-kw">i |
| da300 | 66 3c 2f 73 70 61 6e 3e 20 28 62 75 69 6c 74 69 6e 2e 63 70 75 2e 61 72 63 68 20 3d 3d 20 2e 78 | f</span>.(builtin.cpu.arch.==..x |
| da320 | 38 36 5f 36 34 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 | 86_64.<span.class="tok-kw">and</ |
| da340 | 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 2e 6f 73 2e 74 61 67 20 3d 3d 20 2e 77 69 6e 64 6f 77 73 | span>.builtin.os.tag.==..windows |
| da360 | 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 63 6f 6d | ).{.........<span.class="tok-com |
| da380 | 6d 65 6e 74 22 3e 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 | ment">//.https://github.com/zigl |
| da3a0 | 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 31 36 39 36 31 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | ang/zig/issues/16961</span>..... |
| da3c0 | 20 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< |
| da3e0 | 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 |
| da400 | 72 3c 2f 73 70 61 6e 3e 2e 53 6b 69 70 5a 69 67 54 65 73 74 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 | r</span>.SkipZigTest;.....}..... |
| da420 | 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> |
| da440 | 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 45 71 75 61 6c 28 3c 73 70 61 6e 20 63 | .std.testing.expectEqual(<span.c |
| da460 | 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 3c 73 | lass="tok-builtin">@as</span>(<s |
| da480 | 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 61 6e | pan.class="tok-type">c_int</span |
| da4a0 | 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 3c 2f 73 | >,.<span.class="tok-number">0</s |
| da4c0 | 70 61 6e 3e 29 2c 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 62 | pan>),.add(<span.class="tok-numb |
| da4e0 | 65 72 22 3e 30 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 | er">0</span>));.....<span.class= |
| da500 | 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 2e | "tok-kw">try</span>.std.testing. |
| da520 | 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 74 6f 6b 2d 62 75 69 | expectEqual(<span.class="tok-bui |
| da540 | 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 |
| da560 | 6b 2d 74 79 70 65 22 3e 63 5f 69 6e 74 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | k-type">c_int</span>,.<span.clas |
| da580 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 2c 20 61 64 64 28 3c 73 | s="tok-number">1</span>),.add(<s |
| da5a0 | 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 2c | pan.class="tok-number">1</span>, |
| da5c0 | 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 3c 2f | .<span.class="tok-builtin">@as</ |
| da5e0 | 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 63 5f 69 | span>(<span.class="tok-type">c_i |
| da600 | 6e 74 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 | nt</span>,.<span.class="tok-numb |
| da620 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | er">1</span>)));.....<span.class |
| da640 | 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 |
| da660 | 2e 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 74 6f 6b 2d 62 75 | .expectEqual(<span.class="tok-bu |
| da680 | 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 |
| da6a0 | 6f 6b 2d 74 79 70 65 22 3e 63 5f 69 6e 74 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | ok-type">c_int</span>,.<span.cla |
| da6c0 | 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 2c 20 61 64 64 28 3c | ss="tok-number">3</span>),.add(< |
| da6e0 | 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> |
| da700 | 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 61 73 3c | ,.<span.class="tok-builtin">@as< |
| da720 | 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 63 5f | /span>(<span.class="tok-type">c_ |
| da740 | 69 6e 74 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 | int</span>,.<span.class="tok-num |
| da760 | 62 65 72 22 3e 31 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 | ber">1</span>),.<span.class="tok |
| da780 | 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 |
| da7a0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 69 6e 74 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ="tok-type">c_int</span>,.<span. |
| da7c0 | 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 29 29 3b 0a | class="tok-number">2</span>)));. |
| da7e0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c | }</code></pre></figure><figure>< |
| da800 | 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 | figcaption.class="shell-cap">She |
| da820 | 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 | ll</figcaption><pre><samp>$.<kbd |
| da840 | 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 64 65 66 69 6e 69 6e 67 5f 76 61 72 69 61 64 69 63 | >zig.test.test_defining_variadic |
| da860 | 5f 66 75 6e 63 74 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 64 65 66 | _function.zig</kbd>.1/1.test_def |
| da880 | 69 6e 69 6e 67 5f 76 61 72 69 61 64 69 63 5f 66 75 6e 63 74 69 6f 6e 2e 74 65 73 74 2e 64 65 66 | ining_variadic_function.test.def |
| da8a0 | 69 6e 69 6e 67 20 61 20 76 61 72 69 61 64 69 63 20 66 75 6e 63 74 69 6f 6e 2e 2e 2e 4f 4b 0a 41 | ining.a.variadic.function...OK.A |
| da8c0 | 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e | ll.1.tests.passed..</samp></pre> |
| da8e0 | 3c 2f 66 69 67 75 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 | </figure>...............<h3.id=" |
| da900 | 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 61 72 79 22 3e 3c 61 20 68 72 65 66 3d 22 | Exporting-a-C-Library"><a.href=" |
| da920 | 23 74 6f 63 2d 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 61 72 79 22 3e 45 78 70 6f | #toc-Exporting-a-C-Library">Expo |
| da940 | 72 74 69 6e 67 20 61 20 43 20 4c 69 62 72 61 72 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | rting.a.C.Library</a>.<a.class=" |
| da960 | 68 64 72 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 | hdr".href="#Exporting-a-C-Librar |
| da980 | 79 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 | y">..</a></h3>........<p>....... |
| da9a0 | 4f 6e 65 20 6f 66 20 74 68 65 20 70 72 69 6d 61 72 79 20 75 73 65 20 63 61 73 65 73 20 66 6f 72 | One.of.the.primary.use.cases.for |
| da9c0 | 20 5a 69 67 20 69 73 20 65 78 70 6f 72 74 69 6e 67 20 61 20 6c 69 62 72 61 72 79 20 77 69 74 68 | .Zig.is.exporting.a.library.with |
| da9e0 | 20 74 68 65 20 43 20 41 42 49 20 66 6f 72 20 6f 74 68 65 72 20 70 72 6f 67 72 61 6d 6d 69 6e 67 | .the.C.ABI.for.other.programming |
| daa00 | 20 6c 61 6e 67 75 61 67 65 73 0a 20 20 20 20 20 20 74 6f 20 63 61 6c 6c 20 69 6e 74 6f 2e 20 54 | .languages.......to.call.into..T |
| daa20 | 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 | he.<code><span.class="tok-kw">ex |
| daa40 | 70 6f 72 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 6e 20 66 72 | port</span></code>.keyword.in.fr |
| daa60 | 6f 6e 74 20 6f 66 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 | ont.of.functions,.variables,.and |
| daa80 | 20 74 79 70 65 73 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 | .types.causes.them.to.......be.p |
| daaa0 | 61 72 74 20 6f 66 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 | art.of.the.library.API:.......</ |
| daac0 | 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | p>.......<figure><figcaption.cla |
| daae0 | 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | ss="zig-cap"><cite.class="file"> |
| dab00 | 6d 61 74 68 74 65 73 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | mathtest.zig</cite></figcaption> |
| dab20 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | <pre><code><span.class="tok-kw"> |
| dab40 | 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 6b 2d 6b | export</span>.<span.class="tok-k |
| dab60 | 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 |
| dab80 | 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 6b | ">add</span>(a:.<span.class="tok |
| daba0 | 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 73 | -type">i32</span>,.b:.<span.clas |
| dabc0 | 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 |
| dabe0 | 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>.{.... |
| dac00 | 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 |
| dac20 | 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 2f 66 69 67 75 72 | an>.a.+.b;.}</code></pre></figur |
| dac40 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 6f 20 6d 61 6b 65 20 61 20 73 74 61 74 69 63 20 6c 69 | e>........<p>To.make.a.static.li |
| dac60 | 62 72 61 72 79 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | brary:</p>.......<figure><figcap |
| dac80 | 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 | tion.class="shell-cap">Shell</fi |
| daca0 | 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 | gcaption><pre><samp>$.<kbd>zig.b |
| dacc0 | 75 69 6c 64 2d 6c 69 62 20 6d 61 74 68 74 65 73 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 | uild-lib.mathtest.zig</kbd>.</sa |
| dace0 | 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 54 6f 20 6d | mp></pre></figure>.......<p>To.m |
| dad00 | 61 6b 65 20 61 20 73 68 61 72 65 64 20 6c 69 62 72 61 72 79 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 | ake.a.shared.library:</p>....... |
| dad20 | 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | <figure><figcaption.class="shell |
| dad40 | 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 | -cap">Shell</figcaption><pre><sa |
| dad60 | 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 6c 69 62 20 6d 61 74 68 74 65 73 74 | mp>$.<kbd>zig.build-lib.mathtest |
| dad80 | 2e 7a 69 67 20 2d 64 79 6e 61 6d 69 63 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 | .zig.-dynamic</kbd>.</samp></pre |
| dada0 | 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 48 65 72 65 20 69 73 20 61 6e 20 65 | ></figure>.......<p>Here.is.an.e |
| dadc0 | 78 61 6d 70 6c 65 20 77 69 74 68 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 42 75 | xample.with.the.<a.href="#Zig-Bu |
| dade0 | 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> |
| dae00 | 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | :</p>.......<figure><figcaption. |
| dae20 | 63 6c 61 73 73 3d 22 63 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | class="c-cap"><cite.class="file" |
| dae40 | 3e 74 65 73 74 2e 63 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | >test.c</cite></figcaption><pre> |
| dae60 | 3c 63 6f 64 65 3e 2f 2f 20 54 68 69 73 20 68 65 61 64 65 72 20 69 73 20 67 65 6e 65 72 61 74 65 | <code>//.This.header.is.generate |
| dae80 | 64 20 62 79 20 7a 69 67 20 66 72 6f 6d 20 6d 61 74 68 74 65 73 74 2e 7a 69 67 0a 23 69 6e 63 6c | d.by.zig.from.mathtest.zig.#incl |
| daea0 | 75 64 65 20 26 71 75 6f 74 3b 6d 61 74 68 74 65 73 74 2e 68 26 71 75 6f 74 3b 0a 23 69 6e 63 6c | ude."mathtest.h".#incl |
| daec0 | 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 |
| daee0 | 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 6e 74 33 32 | t.argc,.char.**argv).{.....int32 |
| daf00 | 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 20 20 20 70 | _t.result.=.add(42,.1337);.....p |
| daf20 | 72 69 6e 74 66 28 26 71 75 6f 74 3b 25 64 5c 6e 26 71 75 6f 74 3b 2c 20 72 65 73 75 6c 74 29 3b | rintf("%d\n",.result); |
| daf40 | 0a 20 20 20 20 72 65 74 75 72 6e 20 30 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 | .....return.0;.}</code></pre></f |
| daf60 | 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e | igure>.......<figure><figcaption |
| daf80 | 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 | .class="zig-cap"><cite.class="fi |
| dafa0 | 6c 65 22 3e 62 75 69 6c 64 5f 63 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | le">build_c.zig</cite></figcapti |
| dafc0 | 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | on><pre><code><span.class="tok-k |
| dafe0 | 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 |
| db000 | 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>(< |
| db020 | 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 |
| db040 | 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- |
| db060 | 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- |
| db080 | 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 |
| db0a0 | 6e 22 3e 62 75 69 6c 64 3c 2f 73 70 61 6e 3e 28 62 3a 20 2a 73 74 64 2e 42 75 69 6c 64 29 20 3c | n">build</span>(b:.*std.Build).< |
| db0c0 | 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 |
| db0e0 | 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 |
| db100 | 73 74 3c 2f 73 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 | st</span>.lib.=.b.addSharedLibra |
| db120 | 72 79 28 2e 7b 0a 20 20 20 20 20 20 20 20 2e 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ry(.{..........name.=.<span.clas |
| db140 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 61 74 68 74 65 73 74 26 71 75 6f 74 3b | s="tok-str">"mathtest" |
| db160 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 72 6f 6f 74 5f 73 6f 75 72 63 65 5f 66 69 | </span>,..........root_source_fi |
| db180 | 6c 65 20 3d 20 62 2e 70 61 74 68 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | le.=.b.path(<span.class="tok-str |
| db1a0 | 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 2f 73 70 61 6e | ">"mathtest.zig"</span |
| db1c0 | 3e 29 2c 0a 20 20 20 20 20 20 20 20 2e 76 65 72 73 69 6f 6e 20 3d 20 2e 7b 20 2e 6d 61 6a 6f 72 | >),..........version.=..{..major |
| db1e0 | 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 |
| db200 | 70 61 6e 3e 2c 20 2e 6d 69 6e 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>,..minor.=.<span.class="tok- |
| db220 | 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 20 2e 70 61 74 63 68 20 3d 20 3c 73 70 61 6e | number">0</span>,..patch.=.<span |
| db240 | 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 20 7d 2c 0a | .class="tok-number">0</span>.},. |
| db260 | 20 20 20 20 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 | ....});.....<span.class="tok-kw" |
| db280 | 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 |
| db2a0 | 62 6c 65 28 2e 7b 0a 20 20 20 20 20 20 20 20 2e 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | ble(.{..........name.=.<span.cla |
| db2c0 | 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 73 | ss="tok-str">"test"</s |
| db2e0 | 70 61 6e 3e 2c 0a 20 20 20 20 7d 29 3b 0a 20 20 20 20 65 78 65 2e 61 64 64 43 53 6f 75 72 63 65 | pan>,.....});.....exe.addCSource |
| db300 | 46 69 6c 65 28 2e 7b 20 2e 66 69 6c 65 20 3d 20 62 2e 70 61 74 68 28 3c 73 70 61 6e 20 63 6c 61 | File(.{..file.=.b.path(<span.cla |
| db320 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 74 2e 63 26 71 75 6f 74 3b 3c | ss="tok-str">"test.c"< |
| db340 | 2f 73 70 61 6e 3e 29 2c 20 2e 66 6c 61 67 73 20 3d 20 26 61 6d 70 3b 2e 7b 3c 73 70 61 6e 20 63 | /span>),..flags.=.&.{<span.c |
| db360 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2d 73 74 64 3d 63 39 39 26 71 75 | lass="tok-str">"-std=c99&qu |
| db380 | 6f 74 3b 3c 2f 73 70 61 6e 3e 7d 20 7d 29 3b 0a 20 20 20 20 65 78 65 2e 6c 69 6e 6b 4c 69 62 72 | ot;</span>}.});.....exe.linkLibr |
| db3a0 | 61 72 79 28 6c 69 62 29 3b 0a 20 20 20 20 65 78 65 2e 6c 69 6e 6b 53 79 73 74 65 6d 4c 69 62 72 | ary(lib);.....exe.linkSystemLibr |
| db3c0 | 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 75 6f 74 3b | ary(<span.class="tok-str">" |
| db3e0 | 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 62 2e 64 65 66 61 75 6c 74 5f | c"</span>);......b.default_ |
| db400 | 73 74 65 70 2e 64 65 70 65 6e 64 4f 6e 28 26 61 6d 70 3b 65 78 65 2e 73 74 65 70 29 3b 0a 0a 20 | step.dependOn(&exe.step);... |
| db420 | 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 |
| db440 | 70 61 6e 3e 20 72 75 6e 5f 63 6d 64 20 3d 20 65 78 65 2e 72 75 6e 28 29 3b 0a 0a 20 20 20 20 3c | pan>.run_cmd.=.exe.run();......< |
| db460 | 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> |
| db480 | 20 74 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 | .test_step.=.b.step(<span.class= |
| db4a0 | 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 73 70 61 6e | "tok-str">"test"</span |
| db4c0 | 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 54 | >,.<span.class="tok-str">"T |
| db4e0 | 65 73 74 20 74 68 65 20 70 72 6f 67 72 61 6d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | est.the.program"</span>);.. |
| db500 | 20 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 72 75 6e 5f 63 | ...test_step.dependOn(&run_c |
| db520 | 6d 64 2e 73 74 65 70 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | md.step);.}</code></pre></figure |
| db540 | 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | >........<figure><figcaption.cla |
| db560 | 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e | ss="shell-cap">Shell</figcaption |
| db580 | 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 20 74 65 73 | ><pre><samp>$.<kbd>zig.build.tes |
| db5a0 | 74 3c 2f 6b 62 64 3e 0a 31 33 37 39 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | t</kbd>.1379.</samp></pre></figu |
| db5c0 | 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 0a 3c | re>.......<p>See.also:</p><ul>.< |
| db5e0 | 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 61 3e 3c | li><a.href="#export">export</a>< |
| db600 | 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 69 64 3d | /li>.</ul>...............<h3.id= |
| db620 | 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 3d 22 23 | "Mixing-Object-Files"><a.href="# |
| db640 | 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 6e 67 20 | toc-Mixing-Object-Files">Mixing. |
| db660 | 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 72 22 20 | Object.Files</a>.<a.class="hdr". |
| db680 | 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 a7 3c 2f | href="#Mixing-Object-Files">..</ |
| db6a0 | 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 59 6f 75 20 63 61 6e | a></h3>........<p>.......You.can |
| db6c0 | 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 79 20 6f | .mix.Zig.object.files.with.any.o |
| db6e0 | 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 74 20 74 | ther.object.files.that.respect.t |
| db700 | 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 0a 20 20 | he.C.ABI..Example:.......</p>... |
| db720 | 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a | ....<figure><figcaption.class="z |
| db740 | 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 62 61 73 65 36 | ig-cap"><cite.class="file">base6 |
| db760 | 34 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 | 4.zig</cite></figcaption><pre><c |
| db780 | 6f 64 65 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 | ode><span.class="tok-kw">const</ |
| db7a0 | 73 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 | span>.base64.=.<span.class="tok- |
| db7c0 | 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 |
| db7e0 | 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 |
| db800 | 70 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 | pan>).base64;..<span.class="tok- |
| db820 | 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 73 3d 22 74 | kw">export</span>.<span.class="t |
| db840 | 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 |
| db860 | 6b 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 | k-fn">decode_base_64</span>(.... |
| db880 | 20 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 | .dest_ptr:.[*]<span.class="tok-t |
| db8a0 | 79 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 | ype">u8</span>,.....dest_len:.<s |
| db8c0 | 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 |
| db8e0 | 3e 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 | >,.....source_ptr:.[*]<span.clas |
| db900 | 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 |
| db920 | 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 73 6f | ass="tok-type">u8</span>,.....so |
| db940 | 75 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 | urce_len:.<span.class="tok-type" |
| db960 | 3e 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 | >usize</span>,.).<span.class="to |
| db980 | 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 3c 73 70 61 6e | k-type">usize</span>.{.....<span |
| db9a0 | 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 72 63 | .class="tok-kw">const</span>.src |
| db9c0 | 20 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 | .=.source_ptr[<span.class="tok-n |
| db9e0 | 75 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 | umber">0</span>..source_len];... |
| dba00 | 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 |
| dba20 | 61 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 | an>.dest.=.dest_ptr[<span.class= |
| dba40 | 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 73 74 5f 6c 65 6e 5d | "tok-number">0</span>..dest_len] |
| dba60 | 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 74 | ;.....<span.class="tok-kw">const |
| dba80 | 3c 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 | </span>.base64_decoder.=.base64. |
| dbaa0 | 73 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 | standard.Decoder;.....<span.clas |
| dbac0 | 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 65 63 6f 64 65 64 5f | s="tok-kw">const</span>.decoded_ |
| dbae0 | 73 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 | size.=.base64_decoder.calcSizeFo |
| dbb00 | 72 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 | rSlice(src).<span.class="tok-kw" |
| dbb20 | 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 |
| dbb40 | 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 62 61 73 65 36 | w">unreachable</span>;.....base6 |
| dbb60 | 34 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 | 4_decoder.decode(dest[<span.clas |
| dbb80 | 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 64 65 63 6f 64 65 64 | s="tok-number">0</span>..decoded |
| dbba0 | 5f 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 | _size],.src).<span.class="tok-kw |
| dbbc0 | 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- |
| dbbe0 | 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 3c 73 70 61 | kw">unreachable</span>;.....<spa |
| dbc00 | 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 64 | n.class="tok-kw">return</span>.d |
| dbc20 | 65 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 3c 2f 66 69 67 | ecoded_size;.}</code></pre></fig |
| dbc40 | 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | ure>........<figure><figcaption. |
| dbc60 | 63 6c 61 73 73 3d 22 63 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | class="c-cap"><cite.class="file" |
| dbc80 | 3e 74 65 73 74 2e 63 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | >test.c</cite></figcaption><pre> |
| dbca0 | 3c 63 6f 64 65 3e 2f 2f 20 54 68 69 73 20 68 65 61 64 65 72 20 69 73 20 67 65 6e 65 72 61 74 65 | <code>//.This.header.is.generate |
| dbcc0 | 64 20 62 79 20 7a 69 67 20 66 72 6f 6d 20 62 61 73 65 36 34 2e 7a 69 67 0a 23 69 6e 63 6c 75 64 | d.by.zig.from.base64.zig.#includ |
| dbce0 | 65 20 26 71 75 6f 74 3b 62 61 73 65 36 34 2e 68 26 71 75 6f 74 3b 0a 0a 23 69 6e 63 6c 75 64 65 | e."base64.h"..#include |
| dbd00 | 20 26 6c 74 3b 73 74 72 69 6e 67 2e 68 26 67 74 3b 0a 23 69 6e 63 6c 75 64 65 20 26 6c 74 3b 73 | .<string.h>.#include.<s |
| dbd20 | 74 64 69 6f 2e 68 26 67 74 3b 0a 0a 69 6e 74 20 6d 61 69 6e 28 69 6e 74 20 61 72 67 63 2c 20 63 | tdio.h>..int.main(int.argc,.c |
| dbd40 | 68 61 72 20 2a 2a 61 72 67 76 29 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 65 6e | har.**argv).{.....const.char.*en |
| dbd60 | 63 6f 64 65 64 20 3d 20 26 71 75 6f 74 3b 59 57 78 73 49 48 6c 76 64 58 49 67 59 6d 46 7a 5a 53 | coded.=."YWxsIHlvdXIgYmFzZS |
| dbd80 | 42 68 63 6d 55 67 59 6d 56 73 62 32 35 6e 49 48 52 76 49 48 56 7a 26 71 75 6f 74 3b 3b 0a 20 20 | BhcmUgYmVsb25nIHRvIHVz";... |
| dbda0 | 20 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 | ..char.buf[200];......size_t.len |
| dbdc0 | 20 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 | .=.decode_base_64(buf,.200,.enco |
| dbde0 | 64 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 | ded,.strlen(encoded));.....buf[l |
| dbe00 | 65 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 | en].=.0;.....puts(buf);......ret |
| dbe20 | 75 72 6e 20 30 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 | urn.0;.}</code></pre></figure>.. |
| dbe40 | 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 | .....<figure><figcaption.class=" |
| dbe60 | 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 62 75 69 6c | zig-cap"><cite.class="file">buil |
| dbe80 | 64 5f 6f 62 6a 65 63 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | d_object.zig</cite></figcaption> |
| dbea0 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | <pre><code><span.class="tok-kw"> |
| dbec0 | 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=" |
| dbee0 | 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 |
| dbf00 | 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" |
| dbf20 | 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 77 22 | ;</span>);..<span.class="tok-kw" |
| dbf40 | 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" |
| dbf60 | 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"> |
| dbf80 | 62 75 69 6c 64 3c 2f 73 70 61 6e 3e 28 62 3a 20 2a 73 74 64 2e 42 75 69 6c 64 29 20 3c 73 70 61 | build</span>(b:.*std.Build).<spa |
| dbfa0 | 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>.{ |
| dbfc0 | 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< |
| dbfe0 | 2f 73 70 61 6e 3e 20 6f 62 6a 20 3d 20 62 2e 61 64 64 4f 62 6a 65 63 74 28 2e 7b 0a 20 20 20 20 | /span>.obj.=.b.addObject(.{..... |
| dc000 | 20 20 20 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 | .....name.=.<span.class="tok-str |
| dc020 | 22 3e 26 71 75 6f 74 3b 62 61 73 65 36 34 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 | ">"base64"</span>,.... |
| dc040 | 20 20 20 20 20 2e 72 6f 6f 74 5f 73 6f 75 72 63 65 5f 66 69 6c 65 20 3d 20 62 2e 70 61 74 68 28 | ......root_source_file.=.b.path( |
| dc060 | 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 61 73 65 | <span.class="tok-str">"base |
| dc080 | 36 34 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 7d 29 3b 0a 0a 20 | 64.zig"</span>),.....});... |
| dc0a0 | 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 |
| dc0c0 | 70 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 2e 7b 0a 20 20 | pan>.exe.=.b.addExecutable(.{... |
| dc0e0 | 20 20 20 20 20 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 | .......name.=.<span.class="tok-s |
| dc100 | 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 0a 20 20 20 | tr">"test"</span>,.... |
| dc120 | 20 7d 29 3b 0a 20 20 20 20 65 78 65 2e 61 64 64 43 53 6f 75 72 63 65 46 69 6c 65 28 2e 7b 20 2e | .});.....exe.addCSourceFile(.{.. |
| dc140 | 66 69 6c 65 20 3d 20 62 2e 70 61 74 68 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | file.=.b.path(<span.class="tok-s |
| dc160 | 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 74 2e 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2c 20 | tr">"test.c"</span>),. |
| dc180 | 2e 66 6c 61 67 73 20 3d 20 26 61 6d 70 3b 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .flags.=.&.{<span.class="tok |
| dc1a0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2d 73 74 64 3d 63 39 39 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | -str">"-std=c99"</span |
| dc1c0 | 3e 7d 20 7d 29 3b 0a 20 20 20 20 65 78 65 2e 61 64 64 4f 62 6a 65 63 74 28 6f 62 6a 29 3b 0a 20 | >}.});.....exe.addObject(obj);.. |
| dc1e0 | 20 20 20 65 78 65 2e 6c 69 6e 6b 53 79 73 74 65 6d 4c 69 62 72 61 72 79 28 3c 73 70 61 6e 20 63 | ...exe.linkSystemLibrary(<span.c |
| dc200 | 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 6f 74 3b 3c 2f 73 70 | lass="tok-str">"c"</sp |
| dc220 | 61 6e 3e 29 3b 0a 20 20 20 20 62 2e 69 6e 73 74 61 6c 6c 41 72 74 69 66 61 63 74 28 65 78 65 29 | an>);.....b.installArtifact(exe) |
| dc240 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 | ;.}</code></pre></figure>....... |
| dc260 | 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c | .<figure><figcaption.class="shel |
| dc280 | 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 | l-cap">Shell</figcaption><pre><s |
| dc2a0 | 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 | amp>$.<kbd>zig.build</kbd>.$.<kb |
| dc2c0 | 64 3e 2e 2f 7a 69 67 2d 6f 75 74 2f 62 69 6e 2f 74 65 73 74 3c 2f 6b 62 64 3e 0a 61 6c 6c 20 79 | d>./zig-out/bin/test</kbd>.all.y |
| dc2e0 | 6f 75 72 20 62 61 73 65 20 61 72 65 20 62 65 6c 6f 6e 67 20 74 6f 20 75 73 0a 3c 2f 73 61 6d 70 | our.base.are.belong.to.us.</samp |
| dc300 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c | ></pre></figure>.......<p>See.al |
| dc320 | 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 54 61 72 67 65 74 | so:</p><ul>.<li><a.href="#Target |
| dc340 | 73 22 3e 54 61 72 67 65 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | s">Targets</a></li>.<li><a.href= |
| dc360 | 22 23 5a 69 67 2d 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 | "#Zig-Build-System">Zig.Build.Sy |
| dc380 | 73 74 65 6d 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 | stem</a></li>.</ul>............. |
| dc3a0 | 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 57 65 62 41 73 73 65 6d 62 6c 79 22 3e 3c 61 | .........<h2.id="WebAssembly"><a |
| dc3c0 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 57 65 62 41 73 73 65 6d 62 6c 79 22 3e 57 65 62 41 73 73 65 | .href="#toc-WebAssembly">WebAsse |
| dc3e0 | 6d 62 6c 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 23 57 | mbly</a>.<a.class="hdr".href="#W |
| dc400 | 65 62 41 73 73 65 6d 62 6c 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | ebAssembly">..</a></h2>........< |
| dc420 | 70 3e 5a 69 67 20 73 75 70 70 6f 72 74 73 20 62 75 69 6c 64 69 6e 67 20 66 6f 72 20 57 65 62 41 | p>Zig.supports.building.for.WebA |
| dc440 | 73 73 65 6d 62 6c 79 20 6f 75 74 20 6f 66 20 74 68 65 20 62 6f 78 2e 3c 2f 70 3e 0a 20 20 20 20 | ssembly.out.of.the.box.</p>..... |
| dc460 | 20 20 3c 68 33 20 69 64 3d 22 46 72 65 65 73 74 61 6e 64 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d | ..<h3.id="Freestanding"><a.href= |
| dc480 | 22 23 74 6f 63 2d 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 | "#toc-Freestanding">Freestanding |
| dc4a0 | 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 46 72 65 65 73 | </a>.<a.class="hdr".href="#Frees |
| dc4c0 | 74 61 6e 64 69 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 46 | tanding">..</a></h3>........<p>F |
| dc4e0 | 6f 72 20 68 6f 73 74 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 73 20 6c 69 6b 65 20 74 68 65 20 77 65 | or.host.environments.like.the.we |
| dc500 | 62 20 62 72 6f 77 73 65 72 20 61 6e 64 20 6e 6f 64 65 6a 73 2c 20 62 75 69 6c 64 20 61 73 20 61 | b.browser.and.nodejs,.build.as.a |
| dc520 | 6e 20 65 78 65 63 75 74 61 62 6c 65 20 75 73 69 6e 67 20 74 68 65 20 66 72 65 65 73 74 61 6e 64 | n.executable.using.the.freestand |
| dc540 | 69 6e 67 0a 20 20 20 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 | ing.......OS.target..Here's.an.e |
| dc560 | 78 61 6d 70 6c 65 20 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 | xample.of.running.Zig.code.compi |
| dc580 | 6c 65 64 20 74 6f 20 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 | led.to.WebAssembly.with.nodejs.< |
| dc5a0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c | /p>.......<figure><figcaption.cl |
| dc5c0 | 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ass="zig-cap"><cite.class="file" |
| dc5e0 | 3e 6d 61 74 68 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 | >math.zig</cite></figcaption><pr |
| dc600 | 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 | e><code><span.class="tok-kw">ext |
| dc620 | 65 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 | ern</span>.<span.class="tok-kw"> |
| dc640 | 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 70 | fn</span>.<span.class="tok-fn">p |
| dc660 | 72 69 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 74 79 70 | rint</span>(<span.class="tok-typ |
| dc680 | 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- |
| dc6a0 | 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | type">void</span>;..<span.class= |
| dc6c0 | 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 61 | "tok-kw">export</span>.<span.cla |
| dc6e0 | 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 |
| dc700 | 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 3c 73 70 61 6e 20 63 | s="tok-fn">add</span>(a:.<span.c |
| dc720 | 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 62 3a 20 3c | lass="tok-type">i32</span>,.b:.< |
| dc740 | 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> |
| dc760 | 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 |
| dc780 | 70 61 6e 3e 20 7b 0a 20 20 20 20 70 72 69 6e 74 28 61 20 2b 20 62 29 3b 0a 7d 3c 2f 63 6f 64 65 | pan>.{.....print(a.+.b);.}</code |
| dc7a0 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | ></pre></figure><figure><figcapt |
| dc7c0 | 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 | ion.class="shell-cap">Shell</fig |
| dc7e0 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 | caption><pre><samp>$.<kbd>zig.bu |
| dc800 | 69 6c 64 2d 65 78 65 20 6d 61 74 68 2e 7a 69 67 20 2d 74 61 72 67 65 74 20 77 61 73 6d 33 32 2d | ild-exe.math.zig.-target.wasm32- |
| dc820 | 66 72 65 65 73 74 61 6e 64 69 6e 67 20 2d 66 6e 6f 2d 65 6e 74 72 79 20 2d 2d 65 78 70 6f 72 74 | freestanding.-fno-entry.--export |
| dc840 | 3d 61 64 64 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | =add</kbd>.</samp></pre></figure |
| dc860 | 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 | >........<figure><figcaption.cla |
| dc880 | 73 73 3d 22 6a 61 76 61 73 63 72 69 70 74 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d | ss="javascript-cap"><cite.class= |
| dc8a0 | 22 66 69 6c 65 22 3e 74 65 73 74 2e 6a 73 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | "file">test.js</cite></figcaptio |
| dc8c0 | 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 63 6f 6e 73 74 20 66 73 20 3d 20 72 65 71 75 69 72 65 28 | n><pre><code>const.fs.=.require( |
| dc8e0 | 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 65 61 64 46 69 6c | 'fs');.const.source.=.fs.readFil |
| dc900 | 65 53 79 6e 63 28 26 71 75 6f 74 3b 2e 2f 6d 61 74 68 2e 77 61 73 6d 26 71 75 6f 74 3b 29 3b 0a | eSync("./math.wasm");. |
| dc920 | 63 6f 6e 73 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 | const.typedArray.=.new.Uint8Arra |
| dc940 | 79 28 73 6f 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 | y(source);..WebAssembly.instanti |
| dc960 | 61 74 65 28 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 | ate(typedArray,.{...env:.{.....p |
| dc980 | 72 69 6e 74 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 | rint:.(result).=>.{.console.l |
| dc9a0 | 6f 67 28 60 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 | og(`The.result.is.${result}`);.} |
| dc9c0 | 0a 20 20 7d 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 | ...}}).then(result.=>.{...con |
| dc9e0 | 73 74 20 61 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 | st.add.=.result.instance.exports |
| dca00 | 2e 61 64 64 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 | .add;...add(1,.2);.});</code></p |
| dca20 | 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | re></figure>.......<figure><figc |
| dca40 | 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f | aption.class="shell-cap">Shell</ |
| dca60 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 6e 6f 64 | figcaption><pre><samp>$.<kbd>nod |
| dca80 | 65 20 74 65 73 74 2e 6a 73 3c 2f 6b 62 64 3e 0a 54 68 65 20 72 65 73 75 6c 74 20 69 73 20 33 0a | e.test.js</kbd>.The.result.is.3. |
| dcaa0 | 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 | </samp></pre></figure>.......... |
| dcac0 | 20 20 20 20 3c 68 33 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 | ....<h3.id="WASI"><a.href="#toc- |
| dcae0 | 57 41 53 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 | WASI">WASI</a>.<a.class="hdr".hr |
| dcb00 | 65 66 3d 22 23 57 41 53 49 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 | ef="#WASI">..</a></h3>........<p |
| dcb20 | 3e 5a 69 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 | >Zig's.support.for.WebAssembly.S |
| dcb40 | 79 73 74 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 | ystem.Interface.(WASI).is.under. |
| dcb60 | 61 63 74 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 | active.development........Exampl |
| dcb80 | 65 20 6f 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 | e.of.using.the.standard.library. |
| dcba0 | 61 6e 64 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 | and.reading.command.line.argumen |
| dcbc0 | 74 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | ts:</p>.......<figure><figcaptio |
| dcbe0 | 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 | n.class="zig-cap"><cite.class="f |
| dcc00 | 69 6c 65 22 3e 77 61 73 69 5f 61 72 67 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | ile">wasi_args.zig</cite></figca |
| dcc20 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ption><pre><code><span.class="to |
| dcc40 | 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 |
| dcc60 | 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 |
| dcc80 | 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 |
| dcca0 | 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 |
| dccc0 | 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 |
| dcce0 | 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 |
| dcd00 | 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 |
| dcd20 | 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 |
| dcd40 | 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 67 65 | pan.class="tok-kw">var</span>.ge |
| dcd60 | 6e 65 72 61 6c 5f 70 75 72 70 6f 73 65 5f 61 6c 6c 6f 63 61 74 6f 72 3a 20 73 74 64 2e 68 65 61 | neral_purpose_allocator:.std.hea |
| dcd80 | 70 2e 47 65 6e 65 72 61 6c 50 75 72 70 6f 73 65 41 6c 6c 6f 63 61 74 6f 72 28 2e 7b 7d 29 20 3d | p.GeneralPurposeAllocator(.{}).= |
| dcda0 | 20 2e 69 6e 69 74 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 | ..init;.....<span.class="tok-kw" |
| dcdc0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 67 70 61 20 3d 20 67 65 6e 65 72 61 6c 5f 70 75 72 70 | >const</span>.gpa.=.general_purp |
| dcde0 | 6f 73 65 5f 61 6c 6c 6f 63 61 74 6f 72 2e 61 6c 6c 6f 63 61 74 6f 72 28 29 3b 0a 20 20 20 20 3c | ose_allocator.allocator();.....< |
| dce00 | 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> |
| dce20 | 20 61 72 67 73 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 | .args.=.<span.class="tok-kw">try |
| dce40 | 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 70 72 6f 63 65 73 73 2e 61 72 67 73 41 6c 6c 6f 63 28 67 70 | </span>.std.process.argsAlloc(gp |
| dce60 | 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 6b 77 22 3e 64 65 66 | a);.....<span.class="tok-kw">def |
| dce80 | 65 72 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 70 72 6f 63 65 73 73 2e 61 72 67 73 46 72 65 65 28 67 | er</span>.std.process.argsFree(g |
| dcea0 | 70 61 2c 20 61 72 67 73 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pa,.args);......<span.class="tok |
| dcec0 | 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 61 72 67 73 2c 20 3c 73 70 61 6e 20 63 6c 61 | -kw">for</span>.(args,.<span.cla |
| dcee0 | 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 29 20 7c 61 72 67 | ss="tok-number">0</span>..).|arg |
| dcf00 | 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(< |
| dcf20 | 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">"{}:.{ |
| dcf40 | 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 72 67 20 7d 29 3b | s}\n"</span>,..{.i,.arg.}); |
| dcf60 | 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 | .....}.}</code></pre></figure><f |
| dcf80 | 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 | igure><figcaption.class="shell-c |
| dcfa0 | 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 | ap">Shell</figcaption><pre><samp |
| dcfc0 | 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 77 61 73 69 5f 61 72 67 73 2e | >$.<kbd>zig.build-exe.wasi_args. |
| dcfe0 | 7a 69 67 20 2d 74 61 72 67 65 74 20 77 61 73 6d 33 32 2d 77 61 73 69 3c 2f 6b 62 64 3e 0a 3c 2f | zig.-target.wasm32-wasi</kbd>.</ |
| dd000 | 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 | samp></pre></figure>........<fig |
| dd020 | 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 | ure><figcaption.class="shell-cap |
| dd040 | 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 | ">Shell</figcaption><pre><samp>$ |
| dd060 | 20 3c 6b 62 64 3e 77 61 73 6d 74 69 6d 65 20 77 61 73 69 5f 61 72 67 73 2e 77 61 73 6d 20 31 32 | .<kbd>wasmtime.wasi_args.wasm.12 |
| dd080 | 33 20 68 65 6c 6c 6f 3c 2f 6b 62 64 3e 0a 30 3a 20 77 61 73 69 5f 61 72 67 73 2e 77 61 73 6d 0a | 3.hello</kbd>.0:.wasi_args.wasm. |
| dd0a0 | 31 3a 20 31 32 33 0a 32 3a 20 68 65 6c 6c 6f 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 | 1:.123.2:.hello.</samp></pre></f |
| dd0c0 | 69 67 75 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 74 69 | igure>.......<p>A.more.interesti |
| dd0e0 | 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 20 74 | ng.example.would.be.extracting.t |
| dd100 | 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 75 6e | he.list.of.preopens.from.the.run |
| dd120 | 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 74 65 | time........This.is.now.supporte |
| dd140 | 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 3c 63 | d.in.the.standard.library.via.<c |
| dd160 | 6f 64 65 3e 73 74 64 2e 66 73 2e 77 61 73 69 2e 50 72 65 6f 70 65 6e 73 3c 2f 63 6f 64 65 3e 3a | ode>std.fs.wasi.Preopens</code>: |
| dd180 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 | </p>.......<figure><figcaption.c |
| dd1a0 | 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 | lass="zig-cap"><cite.class="file |
| dd1c0 | 22 3e 77 61 73 69 5f 70 72 65 6f 70 65 6e 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 | ">wasi_preopens.zig</cite></figc |
| dd1e0 | 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | aption><pre><code><span.class="t |
| dd200 | 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. |
| dd220 | 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 |
| dd240 | 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 |
| dd260 | 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 |
| dd280 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 73 20 3d 20 73 74 64 2e 66 73 3b | ok-kw">const</span>.fs.=.std.fs; |
| dd2a0 | 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 |
| dd2c0 | 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> |
| dd2e0 | 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 |
| dd300 | 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 |
| dd320 | 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 |
| dd340 | 77 22 3e 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 | w">var</span>.general_purpose_al |
| dd360 | 6c 6f 63 61 74 6f 72 3a 20 73 74 64 2e 68 65 61 70 2e 47 65 6e 65 72 61 6c 50 75 72 70 6f 73 65 | locator:.std.heap.GeneralPurpose |
| dd380 | 41 6c 6c 6f 63 61 74 6f 72 28 2e 7b 7d 29 20 3d 20 2e 69 6e 69 74 3b 0a 20 20 20 20 3c 73 70 61 | Allocator(.{}).=..init;.....<spa |
| dd3a0 | 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 67 70 | n.class="tok-kw">const</span>.gp |
| dd3c0 | 61 20 3d 20 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 | a.=.general_purpose_allocator.al |
| dd3e0 | 6c 6f 63 61 74 6f 72 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 | locator();......<span.class="tok |
| dd400 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 72 65 6e 61 5f 69 6e 73 74 61 6e 63 65 20 3d | -kw">var</span>.arena_instance.= |
| dd420 | 20 73 74 64 2e 68 65 61 70 2e 41 72 65 6e 61 41 6c 6c 6f 63 61 74 6f 72 2e 69 6e 69 74 28 67 70 | .std.heap.ArenaAllocator.init(gp |
| dd440 | 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 6b 77 22 3e 64 65 66 | a);.....<span.class="tok-kw">def |
| dd460 | 65 72 3c 2f 73 70 61 6e 3e 20 61 72 65 6e 61 5f 69 6e 73 74 61 6e 63 65 2e 64 65 69 6e 69 74 28 | er</span>.arena_instance.deinit( |
| dd480 | 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 6e 73 | );.....<span.class="tok-kw">cons |
| dd4a0 | 74 3c 2f 73 70 61 6e 3e 20 61 72 65 6e 61 20 3d 20 61 72 65 6e 61 5f 69 6e 73 74 61 6e 63 65 2e | t</span>.arena.=.arena_instance. |
| dd4c0 | 61 6c 6c 6f 63 61 74 6f 72 28 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | allocator();......<span.class="t |
| dd4e0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 65 6f 70 65 6e 73 20 3d 20 3c | ok-kw">const</span>.preopens.=.< |
| dd500 | 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 |
| dd520 | 73 2e 77 61 73 69 2e 70 72 65 6f 70 65 6e 73 41 6c 6c 6f 63 28 61 72 65 6e 61 29 3b 0a 0a 20 20 | s.wasi.preopensAlloc(arena);.... |
| dd540 | 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 |
| dd560 | 3e 20 28 70 72 65 6f 70 65 6e 73 2e 6e 61 6d 65 73 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >.(preopens.names,.<span.class=" |
| dd580 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 29 20 7c 70 72 65 6f 70 65 6e | tok-number">0</span>..).|preopen |
| dd5a0 | 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(< |
| dd5c0 | 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">"{}:.{ |
| dd5e0 | 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 70 72 65 6f 70 65 6e | s}\n"</span>,..{.i,.preopen |
| dd600 | 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 2f 66 69 67 75 72 | .});.....}.}</code></pre></figur |
| dd620 | 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 65 | e><figure><figcaption.class="she |
| dd640 | 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c | ll-cap">Shell</figcaption><pre>< |
| dd660 | 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 77 61 73 69 5f 70 | samp>$.<kbd>zig.build-exe.wasi_p |
| dd680 | 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 69 3c | reopens.zig.-target.wasm32-wasi< |
| dd6a0 | 2f 6b 62 64 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 | /kbd>.</samp></pre></figure>.... |
| dd6c0 | 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 | ....<figure><figcaption.class="s |
| dd6e0 | 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | hell-cap">Shell</figcaption><pre |
| dd700 | 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 77 61 73 6d 74 69 6d 65 20 2d 2d 64 69 72 3d 2e 20 77 | ><samp>$.<kbd>wasmtime.--dir=..w |
| dd720 | 61 73 69 5f 70 72 65 6f 70 65 6e 73 2e 77 61 73 6d 3c 2f 6b 62 64 3e 0a 30 3a 20 73 74 64 69 6e | asi_preopens.wasm</kbd>.0:.stdin |
| dd740 | 0a 31 3a 20 73 74 64 6f 75 74 0a 32 3a 20 73 74 64 65 72 72 0a 33 3a 20 2e 0a 3c 2f 73 61 6d 70 | .1:.stdout.2:.stderr.3:...</samp |
| dd760 | 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 | ></pre></figure>................ |
| dd780 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 54 61 72 67 65 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 | .....<h2.id="Targets"><a.href="# |
| dd7a0 | 74 6f 63 2d 54 61 72 67 65 74 73 22 3e 54 61 72 67 65 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | toc-Targets">Targets</a>.<a.clas |
| dd7c0 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 61 72 67 65 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f | s="hdr".href="#Targets">..</a></ |
| dd7e0 | 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 73 74 72 6f 6e 67 3e 54 61 72 | h2>........<p>.......<strong>Tar |
| dd800 | 67 65 74 3c 2f 73 74 72 6f 6e 67 3e 20 72 65 66 65 72 73 20 74 6f 20 74 68 65 20 63 6f 6d 70 75 | get</strong>.refers.to.the.compu |
| dd820 | 74 65 72 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 75 73 65 64 20 74 6f 20 72 75 6e 20 61 6e 20 | ter.that.will.be.used.to.run.an. |
| dd840 | 65 78 65 63 75 74 61 62 6c 65 2e 0a 20 20 20 20 20 20 49 74 20 69 73 20 63 6f 6d 70 6f 73 65 64 | executable........It.is.composed |
| dd860 | 20 6f 66 20 74 68 65 20 43 50 55 20 61 72 63 68 69 74 65 63 74 75 72 65 2c 20 74 68 65 20 73 65 | .of.the.CPU.architecture,.the.se |
| dd880 | 74 20 6f 66 20 65 6e 61 62 6c 65 64 20 43 50 55 20 66 65 61 74 75 72 65 73 2c 20 6f 70 65 72 61 | t.of.enabled.CPU.features,.opera |
| dd8a0 | 74 69 6e 67 20 73 79 73 74 65 6d 2c 0a 20 20 20 20 20 20 6d 69 6e 69 6d 75 6d 20 61 6e 64 20 6d | ting.system,.......minimum.and.m |
| dd8c0 | 61 78 69 6d 75 6d 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 20 76 65 72 73 69 6f 6e 2c | aximum.operating.system.version, |
| dd8e0 | 20 41 42 49 2c 20 61 6e 64 20 41 42 49 20 76 65 72 73 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 | .ABI,.and.ABI.version........</p |
| dd900 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 69 73 20 61 20 67 65 6e 65 72 | >.......<p>.......Zig.is.a.gener |
| dd920 | 61 6c 2d 70 75 72 70 6f 73 65 20 70 72 6f 67 72 61 6d 6d 69 6e 67 20 6c 61 6e 67 75 61 67 65 20 | al-purpose.programming.language. |
| dd940 | 77 68 69 63 68 20 6d 65 61 6e 73 20 74 68 61 74 20 69 74 20 69 73 20 64 65 73 69 67 6e 65 64 20 | which.means.that.it.is.designed. |
| dd960 | 74 6f 0a 20 20 20 20 20 20 67 65 6e 65 72 61 74 65 20 6f 70 74 69 6d 61 6c 20 63 6f 64 65 20 66 | to.......generate.optimal.code.f |
| dd980 | 6f 72 20 61 20 6c 61 72 67 65 20 73 65 74 20 6f 66 20 74 61 72 67 65 74 73 2e 20 54 68 65 20 63 | or.a.large.set.of.targets..The.c |
| dd9a0 | 6f 6d 6d 61 6e 64 20 3c 63 6f 64 65 3e 7a 69 67 20 74 61 72 67 65 74 73 3c 2f 63 6f 64 65 3e 0a | ommand.<code>zig.targets</code>. |
| dd9c0 | 20 20 20 20 20 20 70 72 6f 76 69 64 65 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 | ......provides.information.about |
| dd9e0 | 20 61 6c 6c 20 6f 66 20 74 68 65 20 74 61 72 67 65 74 73 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 | .all.of.the.targets.the.compiler |
| dda00 | 20 69 73 20 61 77 61 72 65 20 6f 66 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 57 68 65 6e 20 | .is.aware.of.</p>.......<p>When. |
| dda20 | 6e 6f 20 74 61 72 67 65 74 20 6f 70 74 69 6f 6e 20 69 73 20 70 72 6f 76 69 64 65 64 20 74 6f 20 | no.target.option.is.provided.to. |
| dda40 | 74 68 65 20 63 6f 6d 70 69 6c 65 72 2c 20 74 68 65 20 64 65 66 61 75 6c 74 20 63 68 6f 69 63 65 | the.compiler,.the.default.choice |
| dda60 | 0a 20 20 20 20 20 20 69 73 20 74 6f 20 74 61 72 67 65 74 20 74 68 65 20 3c 73 74 72 6f 6e 67 3e | .......is.to.target.the.<strong> |
| dda80 | 68 6f 73 74 20 63 6f 6d 70 75 74 65 72 3c 2f 73 74 72 6f 6e 67 3e 2c 20 6d 65 61 6e 69 6e 67 20 | host.computer</strong>,.meaning. |
| ddaa0 | 74 68 61 74 20 74 68 65 0a 20 20 20 20 20 20 72 65 73 75 6c 74 69 6e 67 20 65 78 65 63 75 74 61 | that.the.......resulting.executa |
| ddac0 | 62 6c 65 20 77 69 6c 6c 20 62 65 20 3c 65 6d 3e 75 6e 73 75 69 74 61 62 6c 65 20 66 6f 72 20 63 | ble.will.be.<em>unsuitable.for.c |
| ddae0 | 6f 70 79 69 6e 67 20 74 6f 20 61 20 64 69 66 66 65 72 65 6e 74 0a 20 20 20 20 20 20 63 6f 6d 70 | opying.to.a.different.......comp |
| ddb00 | 75 74 65 72 3c 2f 65 6d 3e 2e 20 49 6e 20 6f 72 64 65 72 20 74 6f 20 63 6f 70 79 20 61 6e 20 65 | uter</em>..In.order.to.copy.an.e |
| ddb20 | 78 65 63 75 74 61 62 6c 65 20 74 6f 20 61 6e 6f 74 68 65 72 20 63 6f 6d 70 75 74 65 72 2c 20 74 | xecutable.to.another.computer,.t |
| ddb40 | 68 65 20 63 6f 6d 70 69 6c 65 72 0a 20 20 20 20 20 20 6e 65 65 64 73 20 74 6f 20 6b 6e 6f 77 20 | he.compiler.......needs.to.know. |
| ddb60 | 61 62 6f 75 74 20 74 68 65 20 74 61 72 67 65 74 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 76 69 | about.the.target.requirements.vi |
| ddb80 | 61 20 74 68 65 20 3c 63 6f 64 65 3e 2d 74 61 72 67 65 74 3c 2f 63 6f 64 65 3e 20 6f 70 74 69 6f | a.the.<code>-target</code>.optio |
| ddba0 | 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 54 68 | n........</p>.......<p>.......Th |
| ddbc0 | 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 63 6f 64 65 3e 3c 73 | e.Zig.Standard.Library.(<code><s |
| ddbe0 | 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< |
| ddc00 | 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 |
| ddc20 | 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 29 20 68 61 73 | ot;std"</span>)</code>).has |
| ddc40 | 0a 20 20 20 20 20 20 63 72 6f 73 73 2d 70 6c 61 74 66 6f 72 6d 20 61 62 73 74 72 61 63 74 69 6f | .......cross-platform.abstractio |
| ddc60 | 6e 73 2c 20 6d 61 6b 69 6e 67 20 74 68 65 20 73 61 6d 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 | ns,.making.the.same.source.code. |
| ddc80 | 76 69 61 62 6c 65 20 6f 6e 20 6d 61 6e 79 20 74 61 72 67 65 74 73 2e 0a 20 20 20 20 20 20 53 6f | viable.on.many.targets........So |
| ddca0 | 6d 65 20 63 6f 64 65 20 69 73 20 6d 6f 72 65 20 70 6f 72 74 61 62 6c 65 20 74 68 61 6e 20 6f 74 | me.code.is.more.portable.than.ot |
| ddcc0 | 68 65 72 20 63 6f 64 65 2e 20 49 6e 20 67 65 6e 65 72 61 6c 2c 20 5a 69 67 20 63 6f 64 65 20 69 | her.code..In.general,.Zig.code.i |
| ddce0 | 73 20 65 78 74 72 65 6d 65 6c 79 0a 20 20 20 20 20 20 70 6f 72 74 61 62 6c 65 20 63 6f 6d 70 61 | s.extremely.......portable.compa |
| ddd00 | 72 65 64 20 74 6f 20 6f 74 68 65 72 20 70 72 6f 67 72 61 6d 6d 69 6e 67 20 6c 61 6e 67 75 61 67 | red.to.other.programming.languag |
| ddd20 | 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 45 | es........</p>.......<p>.......E |
| ddd40 | 61 63 68 20 70 6c 61 74 66 6f 72 6d 20 72 65 71 75 69 72 65 73 20 69 74 73 20 6f 77 6e 20 69 6d | ach.platform.requires.its.own.im |
| ddd60 | 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 20 74 6f 20 6d 61 6b 65 20 5a 69 67 27 73 0a 20 20 20 20 | plementations.to.make.Zig's..... |
| ddd80 | 20 20 63 72 6f 73 73 2d 70 6c 61 74 66 6f 72 6d 20 61 62 73 74 72 61 63 74 69 6f 6e 73 20 77 6f | ..cross-platform.abstractions.wo |
| ddda0 | 72 6b 2e 20 54 68 65 73 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 20 61 72 65 20 61 74 | rk..These.implementations.are.at |
| dddc0 | 20 76 61 72 69 6f 75 73 0a 20 20 20 20 20 20 64 65 67 72 65 65 73 20 6f 66 20 63 6f 6d 70 6c 65 | .various.......degrees.of.comple |
| ddde0 | 74 69 6f 6e 2e 20 45 61 63 68 20 74 61 67 67 65 64 20 72 65 6c 65 61 73 65 20 6f 66 20 74 68 65 | tion..Each.tagged.release.of.the |
| dde00 | 20 63 6f 6d 70 69 6c 65 72 20 63 6f 6d 65 73 20 77 69 74 68 0a 20 20 20 20 20 20 72 65 6c 65 61 | .compiler.comes.with.......relea |
| dde20 | 73 65 20 6e 6f 74 65 73 20 74 68 61 74 20 70 72 6f 76 69 64 65 20 74 68 65 20 66 75 6c 6c 20 73 | se.notes.that.provide.the.full.s |
| dde40 | 75 70 70 6f 72 74 20 74 61 62 6c 65 20 66 6f 72 20 65 61 63 68 20 74 61 72 67 65 74 2e 0a 20 20 | upport.table.for.each.target.... |
| dde60 | 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 53 74 | ....</p>..............<h2.id="St |
| dde80 | 79 6c 65 2d 47 75 69 64 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 74 79 6c 65 2d 47 | yle-Guide"><a.href="#toc-Style-G |
| ddea0 | 75 69 64 65 22 3e 53 74 79 6c 65 20 47 75 69 64 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | uide">Style.Guide</a>.<a.class=" |
| ddec0 | 68 64 72 22 20 68 72 65 66 3d 22 23 53 74 79 6c 65 2d 47 75 69 64 65 22 3e c2 a7 3c 2f 61 3e 3c | hdr".href="#Style-Guide">..</a>< |
| ddee0 | 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 54 68 65 73 65 20 63 6f 64 69 6e 67 20 63 6f 6e | /h2>........<p>.These.coding.con |
| ddf00 | 76 65 6e 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 65 6e 66 6f 72 63 65 64 20 62 79 20 74 68 65 | ventions.are.not.enforced.by.the |
| ddf20 | 20 63 6f 6d 70 69 6c 65 72 2c 20 62 75 74 20 74 68 65 79 20 61 72 65 20 73 68 69 70 70 65 64 20 | .compiler,.but.they.are.shipped. |
| ddf40 | 69 6e 0a 74 68 69 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 61 6c 6f 6e 67 20 77 69 74 68 | in.this.documentation.along.with |
| ddf60 | 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 70 72 6f 76 69 64 | .the.compiler.in.order.to.provid |
| ddf80 | 65 20 61 20 70 6f 69 6e 74 20 6f 66 0a 72 65 66 65 72 65 6e 63 65 2c 20 73 68 6f 75 6c 64 20 61 | e.a.point.of.reference,.should.a |
| ddfa0 | 6e 79 6f 6e 65 20 77 69 73 68 20 74 6f 20 70 6f 69 6e 74 20 74 6f 20 61 6e 20 61 75 74 68 6f 72 | nyone.wish.to.point.to.an.author |
| ddfc0 | 69 74 79 20 6f 6e 20 61 67 72 65 65 64 20 75 70 6f 6e 20 5a 69 67 0a 63 6f 64 69 6e 67 20 73 74 | ity.on.agreed.upon.Zig.coding.st |
| ddfe0 | 79 6c 65 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 41 76 | yle........</p>.......<h3.id="Av |
| de000 | 6f 69 64 2d 52 65 64 75 6e 64 61 6e 63 79 2d 69 6e 2d 4e 61 6d 65 73 22 3e 3c 61 20 68 72 65 66 | oid-Redundancy-in-Names"><a.href |
| de020 | 3d 22 23 74 6f 63 2d 41 76 6f 69 64 2d 52 65 64 75 6e 64 61 6e 63 79 2d 69 6e 2d 4e 61 6d 65 73 | ="#toc-Avoid-Redundancy-in-Names |
| de040 | 22 3e 41 76 6f 69 64 20 52 65 64 75 6e 64 61 6e 63 79 20 69 6e 20 4e 61 6d 65 73 3c 2f 61 3e 20 | ">Avoid.Redundancy.in.Names</a>. |
| de060 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 76 6f 69 64 2d 52 65 64 75 | <a.class="hdr".href="#Avoid-Redu |
| de080 | 6e 64 61 6e 63 79 2d 69 6e 2d 4e 61 6d 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | ndancy-in-Names">..</a></h3>.... |
| de0a0 | 20 20 20 20 3c 70 3e 41 76 6f 69 64 20 74 68 65 73 65 20 77 6f 72 64 73 20 69 6e 20 74 79 70 65 | ....<p>Avoid.these.words.in.type |
| de0c0 | 20 6e 61 6d 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 20 3c | .names:</p>.......<ul>.........< |
| de0e0 | 6c 69 3e 56 61 6c 75 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 44 61 74 61 3c 2f | li>Value</li>.........<li>Data</ |
| de100 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6e 74 65 78 74 3c 2f 6c 69 3e 0a 20 20 20 | li>.........<li>Context</li>.... |
| de120 | 20 20 20 20 20 3c 6c 69 3e 4d 61 6e 61 67 65 72 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c | .....<li>Manager</li>.........<l |
| de140 | 69 3e 75 74 69 6c 73 2c 20 6d 69 73 63 2c 20 6f 72 20 73 6f 6d 65 62 6f 64 79 27 73 20 69 6e 69 | i>utils,.misc,.or.somebody's.ini |
| de160 | 74 69 61 6c 73 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 | tials</li>.......</ul>.......<p> |
| de180 | 45 76 65 72 79 74 68 69 6e 67 20 69 73 20 61 20 76 61 6c 75 65 2c 20 61 6c 6c 20 74 79 70 65 73 | Everything.is.a.value,.all.types |
| de1a0 | 20 61 72 65 20 64 61 74 61 2c 20 65 76 65 72 79 74 68 69 6e 67 20 69 73 20 63 6f 6e 74 65 78 74 | .are.data,.everything.is.context |
| de1c0 | 2c 20 61 6c 6c 20 6c 6f 67 69 63 20 6d 61 6e 61 67 65 73 20 73 74 61 74 65 2e 0a 20 20 20 20 20 | ,.all.logic.manages.state....... |
| de1e0 | 20 4e 6f 74 68 69 6e 67 20 69 73 20 63 6f 6d 6d 75 6e 69 63 61 74 65 64 20 62 79 20 75 73 69 6e | .Nothing.is.communicated.by.usin |
| de200 | 67 20 61 20 77 6f 72 64 20 74 68 61 74 20 61 70 70 6c 69 65 73 20 74 6f 20 61 6c 6c 20 74 79 70 | g.a.word.that.applies.to.all.typ |
| de220 | 65 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 65 6d 70 74 61 74 69 6f 6e 20 74 6f 20 75 | es.</p>.......<p>Temptation.to.u |
| de240 | 73 65 20 22 75 74 69 6c 69 74 69 65 73 22 2c 20 22 6d 69 73 63 65 6c 6c 61 6e 65 6f 75 73 22 2c | se."utilities",."miscellaneous", |
| de260 | 20 6f 72 20 73 6f 6d 65 62 6f 64 79 27 73 20 69 6e 69 74 69 61 6c 73 0a 20 20 20 20 20 20 69 73 | .or.somebody's.initials.......is |
| de280 | 20 61 20 66 61 69 6c 75 72 65 20 74 6f 20 63 61 74 65 67 6f 72 69 7a 65 2c 20 6f 72 20 6d 6f 72 | .a.failure.to.categorize,.or.mor |
| de2a0 | 65 20 63 6f 6d 6d 6f 6e 6c 79 2c 20 6f 76 65 72 63 61 74 65 67 6f 72 69 7a 61 74 69 6f 6e 2e 20 | e.commonly,.overcategorization.. |
| de2c0 | 53 75 63 68 0a 20 20 20 20 20 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 63 61 6e 20 6c 69 76 65 | Such.......declarations.can.live |
| de2e0 | 20 61 74 20 74 68 65 20 72 6f 6f 74 20 6f 66 20 61 20 6d 6f 64 75 6c 65 20 74 68 61 74 20 6e 65 | .at.the.root.of.a.module.that.ne |
| de300 | 65 64 73 20 74 68 65 6d 20 77 69 74 68 20 6e 6f 0a 20 20 20 20 20 20 6e 61 6d 65 73 70 61 63 65 | eds.them.with.no.......namespace |
| de320 | 20 6e 65 65 64 65 64 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 | .needed.</p>...............<h3.i |
| de340 | 64 3d 22 41 76 6f 69 64 2d 52 65 64 75 6e 64 61 6e 74 2d 4e 61 6d 65 73 2d 69 6e 2d 46 75 6c 6c | d="Avoid-Redundant-Names-in-Full |
| de360 | 79 2d 51 75 61 6c 69 66 69 65 64 2d 4e 61 6d 65 73 70 61 63 65 73 22 3e 3c 61 20 68 72 65 66 3d | y-Qualified-Namespaces"><a.href= |
| de380 | 22 23 74 6f 63 2d 41 76 6f 69 64 2d 52 65 64 75 6e 64 61 6e 74 2d 4e 61 6d 65 73 2d 69 6e 2d 46 | "#toc-Avoid-Redundant-Names-in-F |
| de3a0 | 75 6c 6c 79 2d 51 75 61 6c 69 66 69 65 64 2d 4e 61 6d 65 73 70 61 63 65 73 22 3e 41 76 6f 69 64 | ully-Qualified-Namespaces">Avoid |
| de3c0 | 20 52 65 64 75 6e 64 61 6e 74 20 4e 61 6d 65 73 20 69 6e 20 46 75 6c 6c 79 2d 51 75 61 6c 69 66 | .Redundant.Names.in.Fully-Qualif |
| de3e0 | 69 65 64 20 4e 61 6d 65 73 70 61 63 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | ied.Namespaces</a>.<a.class="hdr |
| de400 | 22 20 68 72 65 66 3d 22 23 41 76 6f 69 64 2d 52 65 64 75 6e 64 61 6e 74 2d 4e 61 6d 65 73 2d 69 | ".href="#Avoid-Redundant-Names-i |
| de420 | 6e 2d 46 75 6c 6c 79 2d 51 75 61 6c 69 66 69 65 64 2d 4e 61 6d 65 73 70 61 63 65 73 22 3e c2 a7 | n-Fully-Qualified-Namespaces">.. |
| de440 | 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 45 76 65 72 79 20 64 65 63 6c 61 72 | </a></h3>........<p>Every.declar |
| de460 | 61 74 69 6f 6e 20 69 73 20 61 73 73 69 67 6e 65 64 20 61 20 3c 73 74 72 6f 6e 67 3e 66 75 6c 6c | ation.is.assigned.a.<strong>full |
| de480 | 79 20 71 75 61 6c 69 66 69 65 64 0a 20 20 20 20 20 20 6e 61 6d 65 73 70 61 63 65 3c 2f 73 74 72 | y.qualified.......namespace</str |
| de4a0 | 6f 6e 67 3e 20 62 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 2c 20 63 72 65 61 74 69 6e 67 20 61 | ong>.by.the.compiler,.creating.a |
| de4c0 | 20 74 72 65 65 20 73 74 72 75 63 74 75 72 65 2e 20 43 68 6f 6f 73 65 20 6e 61 6d 65 73 20 62 61 | .tree.structure..Choose.names.ba |
| de4e0 | 73 65 64 0a 20 20 20 20 20 20 6f 6e 20 74 68 65 20 66 75 6c 6c 79 2d 71 75 61 6c 69 66 69 65 64 | sed.......on.the.fully-qualified |
| de500 | 20 6e 61 6d 65 73 70 61 63 65 2c 20 61 6e 64 20 61 76 6f 69 64 20 72 65 64 75 6e 64 61 6e 74 20 | .namespace,.and.avoid.redundant. |
| de520 | 6e 61 6d 65 20 73 65 67 6d 65 6e 74 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 | name.segments.</p>.......<figure |
| de540 | 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 | ><figcaption.class="zig-cap"><ci |
| de560 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 72 65 64 75 6e 64 61 6e 74 5f 66 71 6e 2e 7a 69 | te.class="file">redundant_fqn.zi |
| de580 | 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e | g</cite></figcaption><pre><code> |
| de5a0 | 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 |
| de5c0 | 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 |
| de5e0 | 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 |
| de600 | 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>);. |
| de620 | 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> |
| de640 | 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 |
| de660 | 6e 3e 20 6a 73 6f 6e 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 | n>.json.=.<span.class="tok-kw">s |
| de680 | 74 72 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 | truct</span>.{.....<span.class=" |
| de6a0 | 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=" |
| de6c0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4a 73 6f 6e 56 61 6c 75 65 20 3d | tok-kw">const</span>.JsonValue.= |
| de6e0 | 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 |
| de700 | 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 73 70 | n>(<span.class="tok-kw">enum</sp |
| de720 | 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 6e 75 6d 62 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 | an>).{.........number:.<span.cla |
| de740 | 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 20 20 | ss="tok-type">f64</span>,....... |
| de760 | 20 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 | ..boolean:.<span.class="tok-type |
| de780 | 22 3e 62 6f 6f 6c 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 | ">bool</span>,.........<span.cla |
| de7a0 | 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 70 61 6e 3e 0a 20 | ss="tok-comment">//....</span>.. |
| de7c0 | 20 20 20 7d 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 3e 70 | ...};.};..<span.class="tok-kw">p |
| de7e0 | 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 66 | ub</span>.<span.class="tok-kw">f |
| de800 | 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 61 | n</span>.<span.class="tok-fn">ma |
| de820 | 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 70 | in</span>().<span.class="tok-typ |
| de840 | 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 | e">void</span>.{.....std.debug.p |
| de860 | 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">" |
| de880 | 3b 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 20 63 6c 61 | ;{s}\n"</span>,..{<span.cla |
| de8a0 | 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 6e | ss="tok-builtin">@typeName</span |
| de8c0 | 3e 28 6a 73 6f 6e 2e 4a 73 6f 6e 56 61 6c 75 65 29 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | >(json.JsonValue)});.}</code></p |
| de8e0 | 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | re></figure><figure><figcaption. |
| de900 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 2d 63 61 70 22 3e 53 68 65 6c 6c 3c 2f 66 69 67 63 61 70 74 | class="shell-cap">Shell</figcapt |
| de920 | 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d | ion><pre><samp>$.<kbd>zig.build- |
| de940 | 65 78 65 20 72 65 64 75 6e 64 61 6e 74 5f 66 71 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b | exe.redundant_fqn.zig</kbd>.$.<k |
| de960 | 62 64 3e 2e 2f 72 65 64 75 6e 64 61 6e 74 5f 66 71 6e 3c 2f 6b 62 64 3e 0a 72 65 64 75 6e 64 61 | bd>./redundant_fqn</kbd>.redunda |
| de980 | 6e 74 5f 66 71 6e 2e 6a 73 6f 6e 2e 4a 73 6f 6e 56 61 6c 75 65 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 | nt_fqn.json.JsonValue.</samp></p |
| de9a0 | 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 6e 20 74 68 69 73 20 65 | re></figure>........<p>In.this.e |
| de9c0 | 78 61 6d 70 6c 65 2c 20 22 6a 73 6f 6e 22 20 69 73 20 72 65 70 65 61 74 65 64 20 69 6e 20 74 68 | xample,."json".is.repeated.in.th |
| de9e0 | 65 20 66 75 6c 6c 79 2d 71 75 61 6c 69 66 69 65 64 20 6e 61 6d 65 73 70 61 63 65 2e 20 54 68 65 | e.fully-qualified.namespace..The |
| dea00 | 20 73 6f 6c 75 74 69 6f 6e 0a 20 20 20 20 20 20 69 73 20 74 6f 20 64 65 6c 65 74 65 20 3c 63 6f | .solution.......is.to.delete.<co |
| dea20 | 64 65 3e 4a 73 6f 6e 3c 2f 63 6f 64 65 3e 20 66 72 6f 6d 20 3c 63 6f 64 65 3e 4a 73 6f 6e 56 61 | de>Json</code>.from.<code>JsonVa |
| dea40 | 6c 75 65 3c 2f 63 6f 64 65 3e 2e 20 49 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 20 77 65 20 68 | lue</code>..In.this.example.we.h |
| dea60 | 61 76 65 0a 20 20 20 20 20 20 61 6e 20 65 6d 70 74 79 20 73 74 72 75 63 74 20 6e 61 6d 65 64 20 | ave.......an.empty.struct.named. |
| dea80 | 3c 63 6f 64 65 3e 6a 73 6f 6e 3c 2f 63 6f 64 65 3e 20 62 75 74 20 72 65 6d 65 6d 62 65 72 20 74 | <code>json</code>.but.remember.t |
| deaa0 | 68 61 74 20 66 69 6c 65 73 20 61 6c 73 6f 20 61 63 74 0a 20 20 20 20 20 20 61 73 20 70 61 72 74 | hat.files.also.act.......as.part |
| deac0 | 20 6f 66 20 74 68 65 20 66 75 6c 6c 79 2d 71 75 61 6c 69 66 69 65 64 20 6e 61 6d 65 73 70 61 63 | .of.the.fully-qualified.namespac |
| deae0 | 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 69 73 20 65 78 61 6d 70 6c 65 20 69 73 20 | e.</p>.......<p>This.example.is. |
| deb00 | 61 6e 20 65 78 63 65 70 74 69 6f 6e 20 74 6f 20 74 68 65 20 72 75 6c 65 20 73 70 65 63 69 66 69 | an.exception.to.the.rule.specifi |
| deb20 | 65 64 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 41 76 6f 69 64 2d 52 65 64 75 6e 64 61 6e 63 79 | ed.in.<a.href="#Avoid-Redundancy |
| deb40 | 2d 69 6e 2d 4e 61 6d 65 73 22 3e 41 76 6f 69 64 20 52 65 64 75 6e 64 61 6e 63 79 20 69 6e 20 4e | -in-Names">Avoid.Redundancy.in.N |
| deb60 | 61 6d 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 54 68 65 20 6d 65 61 6e 69 6e 67 20 6f 66 20 74 | ames</a>........The.meaning.of.t |
| deb80 | 68 65 20 74 79 70 65 20 68 61 73 20 62 65 65 6e 20 72 65 64 75 63 65 64 20 74 6f 20 69 74 73 20 | he.type.has.been.reduced.to.its. |
| deba0 | 63 6f 72 65 3a 20 69 74 20 69 73 20 61 20 6a 73 6f 6e 20 76 61 6c 75 65 2e 20 54 68 65 20 6e 61 | core:.it.is.a.json.value..The.na |
| debc0 | 6d 65 0a 20 20 20 20 20 20 63 61 6e 6e 6f 74 20 62 65 20 61 6e 79 20 6d 6f 72 65 20 73 70 65 63 | me.......cannot.be.any.more.spec |
| debe0 | 69 66 69 63 20 77 69 74 68 6f 75 74 20 62 65 69 6e 67 20 69 6e 63 6f 72 72 65 63 74 2e 3c 2f 70 | ific.without.being.incorrect.</p |
| dec00 | 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 57 68 69 74 65 73 70 61 | >...............<h3.id="Whitespa |
| dec20 | 63 65 22 3e 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 | ce"><a.href="#toc-Whitespace">Wh |
| dec40 | 69 74 65 73 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 | itespace</a>.<a.class="hdr".href |
| dec60 | 3d 22 23 57 68 69 74 65 73 70 61 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 | ="#Whitespace">..</a></h3>...... |
| dec80 | 20 20 3c 75 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 | ..<ul>.........<li>...........4. |
| deca0 | 73 70 61 63 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 | space.indentation.........</li>. |
| decc0 | 20 20 20 20 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 | ........<li>...........Open.brac |
| dece0 | 65 73 20 6f 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 | es.on.same.line,.unless.you.need |
| ded00 | 20 74 6f 20 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 | .to.wrap..........</li>......... |
| ded20 | 3c 6c 69 3e 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 | <li>If.a.list.of.things.is.longe |
| ded40 | 72 20 74 68 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 | r.than.2,.put.each.item.on.its.o |
| ded60 | 77 6e 20 6c 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 | wn.line.and...........exercise.t |
| ded80 | 68 65 20 61 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 | he.ability.to.put.an.extra.comma |
| deda0 | 20 61 74 20 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 | .at.the.end..........</li>...... |
| dedc0 | 20 20 20 3c 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 | ...<li>...........Line.length:.a |
| dede0 | 69 6d 20 66 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 | im.for.100;.use.common.sense.... |
| dee00 | 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 20 | ......</li>.......</ul>......... |
| dee20 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 4e 61 6d 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | .....<h3.id="Names"><a.href="#to |
| dee40 | 63 2d 4e 61 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 | c-Names">Names</a>.<a.class="hdr |
| dee60 | 22 20 68 72 65 66 3d 22 23 4e 61 6d 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 | ".href="#Names">..</a></h3>..... |
| dee80 | 20 20 20 3c 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 | ...<p>.......Roughly.speaking:.< |
| deea0 | 63 6f 64 65 3e 63 61 6d 65 6c 43 61 73 65 46 75 6e 63 74 69 6f 6e 4e 61 6d 65 3c 2f 63 6f 64 65 | code>camelCaseFunctionName</code |
| deec0 | 3e 2c 20 3c 63 6f 64 65 3e 54 69 74 6c 65 43 61 73 65 54 79 70 65 4e 61 6d 65 3c 2f 63 6f 64 65 | >,.<code>TitleCaseTypeName</code |
| deee0 | 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 6e 61 6b 65 5f 63 61 73 | >,...............<code>snake_cas |
| def00 | 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 |
| def20 | 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>... |
| def40 | 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 3e | ......<li>.............If.<code> |
| def60 | 78 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | x</code>.is.a.<code><span.class= |
| def80 | 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 3e 0a 20 20 | "tok-type">type</span></code>... |
| defa0 | 20 20 20 20 20 20 20 20 20 20 74 68 65 6e 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 73 68 | ..........then.<code>x</code>.sh |
| defc0 | 6f 75 6c 64 20 62 65 20 3c 63 6f 64 65 3e 54 69 74 6c 65 43 61 73 65 3c 2f 63 6f 64 65 3e 2c 20 | ould.be.<code>TitleCase</code>,. |
| defe0 | 75 6e 6c 65 73 73 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 73 20 61 20 3c 63 6f 64 65 | unless.it.............is.a.<code |
| df000 | 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 73 70 | ><span.class="tok-kw">struct</sp |
| df020 | 61 6e 3e 3c 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 | an></code>.with.0.fields.and.is. |
| df040 | 6e 65 76 65 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 | never.meant.to.be.instantiated,. |
| df060 | 20 20 20 20 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 | ............in.which.case.it.is. |
| df080 | 63 6f 6e 73 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 | considered.to.be.a."namespace".a |
| df0a0 | 6e 64 20 75 73 65 73 20 3c 63 6f 64 65 3e 73 6e 61 6b 65 5f 63 61 73 65 3c 2f 63 6f 64 65 3e 2e | nd.uses.<code>snake_case</code>. |
| df0c0 | 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 20 | .........</li>.........<li>..... |
| df0e0 | 20 20 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 63 61 6c | ........If.<code>x</code>.is.cal |
| df100 | 6c 61 62 6c 65 2c 20 61 6e 64 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 27 73 20 72 65 74 75 | lable,.and.<code>x</code>'s.retu |
| df120 | 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 3e 3c 73 70 | rn.type.is.............<code><sp |
| df140 | 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 3c | an.class="tok-type">type</span>< |
| df160 | 2f 63 6f 64 65 3e 2c 20 74 68 65 6e 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 73 68 6f 75 | /code>,.then.<code>x</code>.shou |
| df180 | 6c 64 20 62 65 20 3c 63 6f 64 65 3e 54 69 74 6c 65 43 61 73 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 | ld.be.<code>TitleCase</code>.... |
| df1a0 | 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 20 20 20 20 | ......</li>.........<li>........ |
| df1c0 | 20 20 20 20 20 49 66 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 6f 74 68 65 72 77 | .....If.<code>x</code>.is.otherw |
| df1e0 | 69 73 65 20 63 61 6c 6c 61 62 6c 65 2c 20 74 68 65 6e 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 | ise.callable,.then.<code>x</code |
| df200 | 3e 20 73 68 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 3e 63 61 | >.should.............be.<code>ca |
| df220 | 6d 65 6c 43 61 73 65 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 | melCase</code>..........</li>... |
| df240 | 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 4f 74 68 65 72 77 69 73 65 | ......<li>.............Otherwise |
| df260 | 2c 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 73 68 6f 75 6c 64 20 62 65 20 3c 63 6f 64 65 | ,.<code>x</code>.should.be.<code |
| df280 | 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 |
| df2a0 | 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 |
| df2c0 | 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 |
| df2e0 | 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 |
| df300 | 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 |
| df320 | 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 |
| df340 | 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 |
| df360 | 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 |
| df380 | 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 |
| df3a0 | 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. |
| df3c0 | 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 |
| df3e0 | 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: |
| df400 | 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 |
| df420 | 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 |
| df440 | 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 |
| df460 | 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 |
| df480 | 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 |
| df4a0 | 73 3d 22 66 69 6c 65 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 | s="file">TitleCase</code>..Other |
| df4c0 | 77 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 | wise,.......it.should.use.<code. |
| df4e0 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 6e 61 6b 65 5f 63 61 73 65 3c 2f 63 6f 64 65 3e 2e 20 | class="file">snake_case</code>.. |
| df500 | 44 69 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 | Directory.names.should.be....... |
| df520 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 6e 61 6b 65 5f 63 61 73 65 3c 2f 63 | <code.class="file">snake_case</c |
| df540 | 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 20 | ode>........</p>.......<p>...... |
| df560 | 20 54 68 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 | .These.are.general.rules.of.thum |
| df580 | 62 3b 20 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 | b;.if.it.makes.sense.to.do.somet |
| df5a0 | 68 69 6e 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 | hing.different,.......do.what.ma |
| df5c0 | 6b 65 73 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 | kes.sense..For.example,.if.there |
| df5e0 | 20 69 73 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 | .is.an.established.convention.su |
| df600 | 63 68 20 61 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 45 4e 4f 45 4e 54 3c 2f 63 6f 64 65 3e 2c | ch.as.......<code>ENOENT</code>, |
| df620 | 20 66 6f 6c 6c 6f 77 20 74 68 65 20 65 73 74 61 62 6c 69 73 68 65 64 20 63 6f 6e 76 65 6e 74 69 | .follow.the.established.conventi |
| df640 | 6f 6e 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 33 20 | on........</p>..............<h3. |
| df660 | 69 64 3d 22 45 78 61 6d 70 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 78 61 6d | id="Examples"><a.href="#toc-Exam |
| df680 | 70 6c 65 73 22 3e 45 78 61 6d 70 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | ples">Examples</a>.<a.class="hdr |
| df6a0 | 22 20 68 72 65 66 3d 22 23 45 78 61 6d 70 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a | ".href="#Examples">..</a></h3>.. |
| df6c0 | 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d | ......<figure><figcaption.class= |
| df6e0 | 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 74 79 | "zig-cap"><cite.class="file">sty |
| df700 | 6c 65 5f 65 78 61 6d 70 6c 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | le_example.zig</cite></figcaptio |
| df720 | 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n><pre><code><span.class="tok-kw |
| df740 | 22 3e 63 6f 6e 73 74 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 | ">const</span>.namespace_name.=. |
| df760 | 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 |
| df780 | 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">& |
| df7a0 | 71 75 6f 74 3b 64 69 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 | quot;dir_name/file_name.zig" |
| df7c0 | 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"> |
| df7e0 | 63 6f 6e 73 74 3c 2f 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 | const</span>.TypeName.=.<span.cl |
| df800 | 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> |
| df820 | 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 72 | (<span.class="tok-str">"dir |
| df840 | 5f 6e 61 6d 65 2f 54 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 | _name/TypeName.zig"</span>) |
| df860 | 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 3c 2f 73 70 61 6e | ;.<span.class="tok-kw">var</span |
| df880 | 3e 20 67 6c 6f 62 61 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 | >.global_var:.<span.class="tok-t |
| df8a0 | 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 |
| df8c0 | 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 6e | ok-null">undefined</span>;.<span |
| df8e0 | 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 63 6f 6e | .class="tok-kw">const</span>.con |
| df900 | 73 74 5f 6e 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 6d 62 65 | st_name.=.<span.class="tok-numbe |
| df920 | 72 22 3e 34 32 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 | r">42</span>;.<span.class="tok-k |
| df940 | 77 22 3e 63 6f 6e 73 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 | w">const</span>.primitive_type_a |
| df960 | 6c 69 61 73 20 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 66 33 | lias.=.<span.class="tok-type">f3 |
| df980 | 32 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 | 2</span>;.<span.class="tok-kw">c |
| df9a0 | 6f 6e 73 74 3c 2f 73 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 | onst</span>.string_alias.=.[]<sp |
| df9c0 | 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 3b 0a 0a | an.class="tok-type">u8</span>;.. |
| df9e0 | 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 |
| dfa00 | 3e 20 53 74 72 75 63 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 | >.StructName.=.<span.class="tok- |
| dfa20 | 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 65 6c 64 3a 20 3c | kw">struct</span>.{.....field:.< |
| dfa40 | 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> |
| dfa60 | 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 63 6f 6e 73 74 3c | ,.};.<span.class="tok-kw">const< |
| dfa80 | 2f 73 70 61 6e 3e 20 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 | /span>.StructAlias.=.StructName; |
| dfaa0 | 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> |
| dfac0 | 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 74 69 6f 6e 4e 61 | .<span.class="tok-fn">functionNa |
| dfae0 | 6d 65 3c 2f 73 70 61 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 | me</span>(param_name:.TypeName). |
| dfb00 | 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 |
| dfb20 | 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 |
| dfb40 | 72 3c 2f 73 70 61 6e 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 | r</span>.functionPointer.=.funct |
| dfb60 | 69 6f 6e 4e 61 6d 65 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 | ionName;.....functionPointer();. |
| dfb80 | 20 20 20 20 66 75 6e 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 | ....functionPointer.=.otherFunct |
| dfba0 | 69 6f 6e 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 7d 0a 3c 73 | ion;.....functionPointer();.}.<s |
| dfbc0 | 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>. |
| dfbe0 | 66 75 6e 63 74 69 6f 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 | functionAlias.=.functionName;..< |
| dfc00 | 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 |
| dfc20 | 70 61 6e 20 63 6c 61 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 | pan.class="tok-fn">ListTemplateF |
| dfc40 | 75 6e 63 74 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 | unction</span>(<span.class="tok- |
| dfc60 | 6b 77 22 3e 63 6f 6d 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 | kw">comptime</span>.ChildType:.< |
| dfc80 | 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 |
| dfca0 | 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 |
| dfcc0 | 3c 2f 73 70 61 6e 3e 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 | </span>.fixed_size:.<span.class= |
| dfce0 | 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 20 63 | "tok-type">usize</span>).<span.c |
| dfd00 | 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 0a 20 20 | lass="tok-type">type</span>.{... |
| dfd20 | 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 |
| dfd40 | 70 61 6e 3e 20 4c 69 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 | pan>.List(ChildType,.fixed_size) |
| dfd60 | 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 |
| dfd80 | 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 53 68 6f 72 74 4c 69 | an>.<span.class="tok-fn">ShortLi |
| dfda0 | 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 6b 77 22 3e 63 | st</span>(<span.class="tok-kw">c |
| dfdc0 | 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 74 | omptime</span>.T:.<span.class="t |
| dfde0 | 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 61 73 | ok-type">type</span>,.<span.clas |
| dfe00 | 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 6e 3a 20 3c 73 | s="tok-kw">comptime</span>.n:.<s |
| dfe20 | 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 |
| dfe40 | 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 2f | >).<span.class="tok-type">type</ |
| dfe60 | 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" |
| dfe80 | 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- |
| dfea0 | 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 66 69 65 6c | kw">struct</span>.{.........fiel |
| dfec0 | 64 5f 6e 61 6d 65 3a 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 | d_name:.[n]T,.........<span.clas |
| dfee0 | 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 |
| dff00 | 3d 22 74 6f 6b 2d 66 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 | ="tok-fn">methodName</span>().<s |
| dff20 | 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> |
| dff40 | 20 7b 7d 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 63 | .{}.....};.}..<span.class="tok-c |
| dff60 | 6f 6d 6d 65 6e 74 22 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 | omment">//.The.word.XML.loses.it |
| dff80 | 73 20 63 61 73 69 6e 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 | s.casing.when.used.in.Zig.identi |
| dffa0 | 66 69 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 | fiers.</span>.<span.class="tok-k |
| dffc0 | 77 22 3e 63 6f 6e 73 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 | w">const</span>.xml_document.=.. |
| dffe0 | 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 26 6c 74 3b 3f | ...<span.class="tok-str">\\<? |
| e0000 | 78 6d 6c 20 76 65 72 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 | xml.version="1.0".enco |
| e0020 | 64 69 6e 67 3d 26 71 75 6f 74 3b 55 54 46 2d 38 26 71 75 6f 74 3b 3f 26 67 74 3b 3c 2f 73 70 61 | ding="UTF-8"?></spa |
| e0040 | 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 26 | n>.....<span.class="tok-str">\\& |
| e0060 | 6c 74 3b 64 6f 63 75 6d 65 6e 74 26 67 74 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | lt;document></span>.....<span |
| e0080 | 20 63 6c 61 73 73 3d 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 | .class="tok-str">\\</document |
| e00a0 | 26 67 74 3b 3c 2f 73 70 61 6e 3e 0a 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ></span>.;.<span.class="tok-k |
| e00c0 | 77 22 3e 63 6f 6e 73 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 | w">const</span>.XmlParser.=.<spa |
| e00e0 | 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 7b | n.class="tok-kw">struct</span>.{ |
| e0100 | 0a 20 20 20 20 66 69 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 | .....field:.<span.class="tok-typ |
| e0120 | 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 6c 61 73 73 3d 22 | e">i32</span>,.};..<span.class=" |
| e0140 | 74 6f 6b 2d 63 6f 6d 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 | tok-comment">//.The.initials.BE. |
| e0160 | 28 42 69 67 20 45 6e 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 | (Big.Endian).are.just.another.wo |
| e0180 | 72 64 20 69 6e 20 5a 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 | rd.in.Zig.identifier.names.</spa |
| e01a0 | 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 70 61 6e | n>.<span.class="tok-kw">fn</span |
| e01c0 | 3e 20 3c 73 70 61 6e 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 | >.<span.class="tok-fn">readU32Be |
| e01e0 | 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" |
| e0200 | 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | >u32</span>.{}</code></pre></fig |
| e0220 | 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 65 65 20 74 68 65 20 3c 61 20 | ure>.......<p>.......See.the.<a. |
| e0240 | 68 72 65 66 3d 22 23 5a 69 67 2d 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 22 3e 5a 69 67 | href="#Zig-Standard-Library">Zig |
| e0260 | 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 3c 2f 61 3e 20 66 6f 72 20 6d 6f 72 65 20 65 | .Standard.Library</a>.for.more.e |
| e0280 | 78 61 6d 70 6c 65 73 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 | xamples........</p>............. |
| e02a0 | 20 3c 68 33 20 69 64 3d 22 44 6f 63 2d 43 6f 6d 6d 65 6e 74 2d 47 75 69 64 61 6e 63 65 22 3e 3c | .<h3.id="Doc-Comment-Guidance">< |
| e02c0 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 6f 63 2d 43 6f 6d 6d 65 6e 74 2d 47 75 69 64 61 6e 63 | a.href="#toc-Doc-Comment-Guidanc |
| e02e0 | 65 22 3e 44 6f 63 20 43 6f 6d 6d 65 6e 74 20 47 75 69 64 61 6e 63 65 3c 2f 61 3e 20 3c 61 20 63 | e">Doc.Comment.Guidance</a>.<a.c |
| e0300 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 6f 63 2d 43 6f 6d 6d 65 6e 74 2d 47 75 | lass="hdr".href="#Doc-Comment-Gu |
| e0320 | 69 64 61 6e 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 75 6c 3e 0a | idance">..</a></h3>........<ul>. |
| e0340 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 4f 6d 69 74 20 61 6e 79 20 69 6e 66 6f 72 6d 61 74 69 6f 6e | ........<li>Omit.any.information |
| e0360 | 20 74 68 61 74 20 69 73 20 72 65 64 75 6e 64 61 6e 74 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 | .that.is.redundant.based.on.the. |
| e0380 | 6e 61 6d 65 20 6f 66 20 74 68 65 20 74 68 69 6e 67 20 62 65 69 6e 67 20 64 6f 63 75 6d 65 6e 74 | name.of.the.thing.being.document |
| e03a0 | 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 44 75 70 6c 69 63 61 74 69 6e 67 | ed.</li>.........<li>Duplicating |
| e03c0 | 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 74 6f 20 6d 75 6c 74 69 70 6c 65 20 73 69 6d 69 6c | .information.onto.multiple.simil |
| e03e0 | 61 72 20 66 75 6e 63 74 69 6f 6e 73 20 69 73 20 65 6e 63 6f 75 72 61 67 65 64 20 62 65 63 61 75 | ar.functions.is.encouraged.becau |
| e0400 | 73 65 20 69 74 20 68 65 6c 70 73 20 49 44 45 73 20 61 6e 64 20 6f 74 68 65 72 20 74 6f 6f 6c 73 | se.it.helps.IDEs.and.other.tools |
| e0420 | 20 70 72 6f 76 69 64 65 20 62 65 74 74 65 72 20 68 65 6c 70 20 74 65 78 74 2e 3c 2f 6c 69 3e 0a | .provide.better.help.text.</li>. |
| e0440 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 55 73 65 20 74 68 65 20 77 6f 72 64 20 3c 73 74 72 6f 6e 67 | ........<li>Use.the.word.<strong |
| e0460 | 3e 61 73 73 75 6d 65 3c 2f 73 74 72 6f 6e 67 3e 20 74 6f 20 69 6e 64 69 63 61 74 65 20 69 6e 76 | >assume</strong>.to.indicate.inv |
| e0480 | 61 72 69 61 6e 74 73 20 74 68 61 74 20 63 61 75 73 65 20 3c 65 6d 3e 75 6e 63 68 65 63 6b 65 64 | ariants.that.cause.<em>unchecked |
| e04a0 | 3c 2f 65 6d 3e 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 | </em>.<a.href="#Illegal-Behavior |
| e04c0 | 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 20 77 68 65 6e 20 76 69 6f 6c | ">Illegal.Behavior</a>.when.viol |
| e04e0 | 61 74 65 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 | ated.</li>.........<li>Use.the.w |
| e0500 | 6f 72 64 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 | ord.<strong>assert</strong>.to.i |
| e0520 | 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 65 | ndicate.invariants.that.cause.<e |
| e0540 | 6d 3e 73 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 | m>safety-checked</em>.<a.href="# |
| e0560 | 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 | Illegal-Behavior">Illegal.Behavi |
| e0580 | 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 20 | or</a>.when.violated.</li>...... |
| e05a0 | 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 32 20 69 | .</ul>.....................<h2.i |
| e05c0 | 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 6f | d="Source-Encoding"><a.href="#to |
| e05e0 | 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 69 | c-Source-Encoding">Source.Encodi |
| e0600 | 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 75 | ng</a>.<a.class="hdr".href="#Sou |
| e0620 | 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | rce-Encoding">..</a></h2>....... |
| e0640 | 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 69 | .<p>Zig.source.code.is.encoded.i |
| e0660 | 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 73 | n.UTF-8..An.invalid.UTF-8.byte.s |
| e0680 | 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 72 | equence.results.in.a.compile.err |
| e06a0 | 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 20 | or.</p>.......<p>Throughout.all. |
| e06c0 | 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 6f | zig.source.code.(including.in.co |
| e06e0 | 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 65 | mments),.some.code.points.are.ne |
| e0700 | 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 20 | ver.allowed:</p>.......<ul>..... |
| e0720 | 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 73 | ....<li>Ascii.control.characters |
| e0740 | 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 64 | ,.except.for.U+000a.(LF),.U+000d |
| e0760 | 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 2d | .(CR),.and.U+0009.(HT):.U+0000.- |
| e0780 | 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 65 | .U+0008,.U+000b.-.U+000c,.U+000e |
| e07a0 | 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 20 | .-.U+0001f,.U+007f.</li>........ |
| e07c0 | 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 69 | .<li>Non-Ascii.Unicode.line.endi |
| e07e0 | 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 20 | ngs:.U+0085.(NEL),.U+2028.(LS),. |
| e0800 | 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 20 | U+2029.(PS).</li>.......</ul>... |
| e0820 | 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 30 | ....<p>.......LF.(byte.value.0x0 |
| e0840 | 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 3e 3c 73 70 61 | a,.code.point.U+000a,.<code><spa |
| e0860 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5c 6e 27 3c 2f 73 70 61 6e 3e 3c 2f 63 | n.class="tok-str">'\n'</span></c |
| e0880 | 6f 64 65 3e 29 20 69 73 20 74 68 65 20 6c 69 6e 65 20 74 65 72 6d 69 6e 61 74 6f 72 20 69 6e 20 | ode>).is.the.line.terminator.in. |
| e08a0 | 5a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 54 68 69 73 20 62 79 74 65 | Zig.source.code........This.byte |
| e08c0 | 20 76 61 6c 75 65 20 74 65 72 6d 69 6e 61 74 65 73 20 65 76 65 72 79 20 6c 69 6e 65 20 6f 66 20 | .value.terminates.every.line.of. |
| e08e0 | 7a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 65 20 65 78 63 65 70 74 20 74 68 65 20 6c 61 73 74 20 | zig.source.code.except.the.last. |
| e0900 | 6c 69 6e 65 20 6f 66 20 74 68 65 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 49 74 20 69 73 20 72 65 | line.of.the.file........It.is.re |
| e0920 | 63 6f 6d 6d 65 6e 64 65 64 20 74 68 61 74 20 6e 6f 6e 2d 65 6d 70 74 79 20 73 6f 75 72 63 65 20 | commended.that.non-empty.source. |
| e0940 | 66 69 6c 65 73 20 65 6e 64 20 77 69 74 68 20 61 6e 20 65 6d 70 74 79 20 6c 69 6e 65 2c 20 77 68 | files.end.with.an.empty.line,.wh |
| e0960 | 69 63 68 20 6d 65 61 6e 73 20 74 68 65 20 6c 61 73 74 20 62 79 74 65 20 77 6f 75 6c 64 20 62 65 | ich.means.the.last.byte.would.be |
| e0980 | 20 30 78 30 61 20 28 4c 46 29 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | .0x0a.(LF)........</p>.......<p> |
| e09a0 | 0a 20 20 20 20 20 20 45 61 63 68 20 4c 46 20 6d 61 79 20 62 65 20 69 6d 6d 65 64 69 61 74 65 6c | .......Each.LF.may.be.immediatel |
| e09c0 | 79 20 70 72 65 63 65 64 65 64 20 62 79 20 61 20 73 69 6e 67 6c 65 20 43 52 20 28 62 79 74 65 20 | y.preceded.by.a.single.CR.(byte. |
| e09e0 | 76 61 6c 75 65 20 30 78 30 64 2c 20 63 6f 64 65 20 70 6f 69 6e 74 20 55 2b 30 30 30 64 2c 20 3c | value.0x0d,.code.point.U+000d,.< |
| e0a00 | 63 6f 64 65 3e 3c 73 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 | code><span.class="tok-str">'\r'< |
| e0a20 | 2f 73 70 61 6e 3e 3c 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 | /span></code>).......to.form.a.W |
| e0a40 | 69 6e 64 6f 77 73 20 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 | indows.style.line.ending,.but.th |
| e0a60 | 69 73 20 69 73 20 64 69 73 63 6f 75 72 61 67 65 64 2e 20 4e 6f 74 65 20 74 68 61 74 20 69 6e 20 | is.is.discouraged..Note.that.in. |
| e0a80 | 6d 75 6c 74 69 6c 69 6e 65 20 73 74 72 69 6e 67 73 2c 20 43 52 4c 46 20 73 65 71 75 65 6e 63 65 | multiline.strings,.CRLF.sequence |
| e0aa0 | 73 20 77 69 6c 6c 0a 20 20 20 20 20 20 62 65 20 65 6e 63 6f 64 65 64 20 61 73 20 4c 46 20 77 68 | s.will.......be.encoded.as.LF.wh |
| e0ac0 | 65 6e 20 63 6f 6d 70 69 6c 65 64 20 69 6e 74 6f 20 61 20 7a 69 67 20 70 72 6f 67 72 61 6d 2e 0a | en.compiled.into.a.zig.program.. |
| e0ae0 | 20 20 20 20 20 20 41 20 43 52 20 69 6e 20 61 6e 79 20 6f 74 68 65 72 20 63 6f 6e 74 65 78 74 20 | ......A.CR.in.any.other.context. |
| e0b00 | 69 73 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | is.not.allowed........</p>...... |
| e0b20 | 20 3c 70 3e 0a 20 20 20 20 20 20 48 54 20 68 61 72 64 20 74 61 62 73 20 28 62 79 74 65 20 76 61 | .<p>.......HT.hard.tabs.(byte.va |
| e0b40 | 6c 75 65 20 30 78 30 39 2c 20 63 6f 64 65 20 70 6f 69 6e 74 20 55 2b 30 30 30 39 2c 20 3c 63 6f | lue.0x09,.code.point.U+0009,.<co |
| e0b60 | 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5c 74 27 3c 2f 73 | de><span.class="tok-str">'\t'</s |
| e0b80 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 20 61 72 65 20 69 6e 74 65 72 63 68 61 6e 67 65 61 62 6c 65 | pan></code>).are.interchangeable |
| e0ba0 | 20 77 69 74 68 0a 20 20 20 20 20 20 53 50 20 73 70 61 63 65 73 20 28 62 79 74 65 20 76 61 6c 75 | .with.......SP.spaces.(byte.valu |
| e0bc0 | 65 20 30 78 32 30 2c 20 63 6f 64 65 20 70 6f 69 6e 74 20 55 2b 30 30 32 30 2c 20 3c 63 6f 64 65 | e.0x20,.code.point.U+0020,.<code |
| e0be0 | 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 73 70 61 6e | ><span.class="tok-str">'.'</span |
| e0c00 | 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 6f 72 2c 0a | ></code>).as.a.token.separator,. |
| e0c20 | 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 73 20 64 69 | ......but.use.of.hard.tabs.is.di |
| e0c40 | 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 6d 6d 61 72 | scouraged..See.<a.href="#Grammar |
| e0c60 | 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 20 20 20 20 | ">Grammar</a>........</p>....... |
| e0c80 | 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 | <p>.......For.compatibility.with |
| e0ca0 | 20 6f 74 68 65 72 20 74 6f 6f 6c 73 2c 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 69 67 6e 6f 72 | .other.tools,.the.compiler.ignor |
| e0cc0 | 65 73 20 61 20 55 54 46 2d 38 2d 65 6e 63 6f 64 65 64 20 62 79 74 65 20 6f 72 64 65 72 20 6d 61 | es.a.UTF-8-encoded.byte.order.ma |
| e0ce0 | 72 6b 20 28 55 2b 46 45 46 46 29 0a 20 20 20 20 20 20 69 66 20 69 74 20 69 73 20 74 68 65 20 66 | rk.(U+FEFF).......if.it.is.the.f |
| e0d00 | 69 72 73 74 20 55 6e 69 63 6f 64 65 20 63 6f 64 65 20 70 6f 69 6e 74 20 69 6e 20 74 68 65 20 73 | irst.Unicode.code.point.in.the.s |
| e0d20 | 6f 75 72 63 65 20 74 65 78 74 2e 20 41 20 62 79 74 65 20 6f 72 64 65 72 20 6d 61 72 6b 20 69 73 | ource.text..A.byte.order.mark.is |
| e0d40 | 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 20 61 6e 79 77 68 65 72 65 20 65 6c 73 65 20 69 6e 20 74 68 | .not.allowed.anywhere.else.in.th |
| e0d60 | 65 20 73 6f 75 72 63 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 | e.source........</p>.......<p>.. |
| e0d80 | 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 72 75 6e 6e 69 6e 67 20 3c 6b 62 64 3e 7a 69 67 20 | .....Note.that.running.<kbd>zig. |
| e0da0 | 66 6d 74 3c 2f 6b 62 64 3e 20 6f 6e 20 61 20 73 6f 75 72 63 65 20 66 69 6c 65 20 77 69 6c 6c 20 | fmt</kbd>.on.a.source.file.will. |
| e0dc0 | 69 6d 70 6c 65 6d 65 6e 74 20 61 6c 6c 20 72 65 63 6f 6d 6d 65 6e 64 61 74 69 6f 6e 73 20 6d 65 | implement.all.recommendations.me |
| e0de0 | 6e 74 69 6f 6e 65 64 20 68 65 72 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | ntioned.here........</p>.......< |
| e0e00 | 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 61 20 74 6f 6f 6c 20 72 65 61 64 69 6e | p>.......Note.that.a.tool.readin |
| e0e20 | 67 20 5a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 65 20 63 61 6e 20 6d 61 6b 65 20 61 73 73 75 6d | g.Zig.source.code.can.make.assum |
| e0e40 | 70 74 69 6f 6e 73 20 69 66 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 69 73 20 61 73 73 | ptions.if.the.source.code.is.ass |
| e0e60 | 75 6d 65 64 20 74 6f 20 62 65 20 63 6f 72 72 65 63 74 20 5a 69 67 20 63 6f 64 65 2e 0a 20 20 20 | umed.to.be.correct.Zig.code..... |
| e0e80 | 20 20 20 46 6f 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 6e 67 | ...For.example,.when.identifying |
| e0ea0 | 20 74 68 65 20 65 6e 64 73 20 6f 66 20 6c 69 6e 65 73 2c 20 61 20 74 6f 6f 6c 20 63 61 6e 20 75 | .the.ends.of.lines,.a.tool.can.u |
| e0ec0 | 73 65 20 61 20 6e 61 69 76 65 20 73 65 61 72 63 68 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 3e | se.a.naive.search.such.as.<code> |
| e0ee0 | 2f 5c 6e 2f 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 6f 72 20 61 6e 20 3c 61 20 68 72 65 66 | /\n/</code>,.......or.an.<a.href |
| e0f00 | 3d 22 68 74 74 70 73 3a 2f 2f 6d 73 64 6e 2e 6d 69 63 72 6f 73 6f 66 74 2e 63 6f 6d 2f 65 6e 2d | ="https://msdn.microsoft.com/en- |
| e0f20 | 75 73 2f 6c 69 62 72 61 72 79 2f 64 64 34 30 39 37 39 37 2e 61 73 70 78 22 3e 61 64 76 61 6e 63 | us/library/dd409797.aspx">advanc |
| e0f40 | 65 64 3c 2f 61 3e 0a 20 20 20 20 20 20 73 65 61 72 63 68 20 73 75 63 68 20 61 73 20 3c 63 6f 64 | ed</a>.......search.such.as.<cod |
| e0f60 | 65 3e 2f 5c 72 5c 6e 3f 7c 5b 5c 6e 5c 75 30 30 38 35 5c 75 32 30 32 38 5c 75 32 30 32 39 5d 2f | e>/\r\n?|[\n\u0085\u2028\u2029]/ |
| e0f80 | 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 69 6e 20 65 69 74 68 65 72 20 63 61 73 65 20 6c 69 6e 65 | </code>,.and.in.either.case.line |
| e0fa0 | 20 65 6e 64 69 6e 67 73 20 77 69 6c 6c 20 62 65 20 63 6f 72 72 65 63 74 6c 79 20 69 64 65 6e 74 | .endings.will.be.correctly.ident |
| e0fc0 | 69 66 69 65 64 2e 0a 20 20 20 20 20 20 46 6f 72 20 61 6e 6f 74 68 65 72 20 65 78 61 6d 70 6c 65 | ified........For.another.example |
| e0fe0 | 2c 20 77 68 65 6e 20 69 64 65 6e 74 69 66 79 69 6e 67 20 74 68 65 20 77 68 69 74 65 73 70 61 63 | ,.when.identifying.the.whitespac |
| e1000 | 65 20 62 65 66 6f 72 65 20 74 68 65 20 66 69 72 73 74 20 74 6f 6b 65 6e 20 6f 6e 20 61 20 6c 69 | e.before.the.first.token.on.a.li |
| e1020 | 6e 65 2c 0a 20 20 20 20 20 20 61 20 74 6f 6f 6c 20 63 61 6e 20 65 69 74 68 65 72 20 75 73 65 20 | ne,.......a.tool.can.either.use. |
| e1040 | 61 20 6e 61 69 76 65 20 73 65 61 72 63 68 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 3e 2f 5b 20 | a.naive.search.such.as.<code>/[. |
| e1060 | 5c 74 5d 2f 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 6f 72 20 61 6e 20 3c 61 20 68 72 65 66 | \t]/</code>,.......or.an.<a.href |
| e1080 | 3d 22 68 74 74 70 73 3a 2f 2f 74 63 33 39 2e 65 73 2f 65 63 6d 61 32 36 32 2f 23 73 65 63 2d 63 | ="https://tc39.es/ecma262/#sec-c |
| e10a0 | 68 61 72 61 63 74 65 72 63 6c 61 73 73 65 73 63 61 70 65 22 3e 61 64 76 61 6e 63 65 64 3c 2f 61 | haracterclassescape">advanced</a |
| e10c0 | 3e 20 73 65 61 72 63 68 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 3e 2f 5c 73 2f 3c 2f 63 6f 64 | >.search.such.as.<code>/\s/</cod |
| e10e0 | 65 3e 2c 0a 20 20 20 20 20 20 61 6e 64 20 69 6e 20 65 69 74 68 65 72 20 63 61 73 65 20 77 68 69 | e>,.......and.in.either.case.whi |
| e1100 | 74 65 73 70 61 63 65 20 77 69 6c 6c 20 62 65 20 63 6f 72 72 65 63 74 6c 79 20 69 64 65 6e 74 69 | tespace.will.be.correctly.identi |
| e1120 | 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 20 20 20 20 20 3c | fied........</p>...............< |
| e1140 | 68 32 20 69 64 3d 22 4b 65 79 77 6f 72 64 2d 52 65 66 65 72 65 6e 63 65 22 3e 3c 61 20 68 72 65 | h2.id="Keyword-Reference"><a.hre |
| e1160 | 66 3d 22 23 74 6f 63 2d 4b 65 79 77 6f 72 64 2d 52 65 66 65 72 65 6e 63 65 22 3e 4b 65 79 77 6f | f="#toc-Keyword-Reference">Keywo |
| e1180 | 72 64 20 52 65 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 | rd.Reference</a>.<a.class="hdr". |
| e11a0 | 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 c2 a7 3c 2f 61 3e | href="#Keyword-Reference">..</a> |
| e11c0 | 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 77 | </h2>........<div.class="table-w |
| e11e0 | 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 3c | rapper">.......<table>.........< |
| e1200 | 74 68 65 61 64 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 | thead>.........<tr>...........<t |
| e1220 | 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 4b 65 79 77 6f 72 64 3c 2f 74 68 3e 0a 20 20 20 20 20 | h.scope="col">Keyword</th>...... |
| e1240 | 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 44 65 73 63 72 69 70 74 69 6f 6e | .....<th.scope="col">Description |
| e1260 | 3c 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 2f 74 68 | </th>.........</tr>.........</th |
| e1280 | 65 61 64 3e 0a 20 20 20 20 20 20 20 20 3c 74 62 6f 64 79 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 | ead>.........<tbody>.........<tr |
| e12a0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 | >...........<th.scope="row">.... |
| e12c0 | 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .........<pre><code><span.class= |
| e12e0 | 22 74 6f 6b 2d 6b 77 22 3e 61 64 64 72 73 70 61 63 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | "tok-kw">addrspace</span></code> |
| e1300 | 3c 2f 70 72 65 3e 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 | </pre>...........</th>.......... |
| e1320 | 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 3e 3c 73 70 61 | .<td>.............The.<code><spa |
| e1340 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 64 64 72 73 70 61 63 65 3c 2f 73 70 61 6e | n.class="tok-kw">addrspace</span |
| e1360 | 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 20 20 3c 75 | ></code>.keyword..............<u |
| e1380 | 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 64 20 64 6f | l>...............<li>TODO.add.do |
| e13a0 | 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 61 64 64 72 73 70 61 63 65 3c 2f 6c 69 3e 0a 20 | cumentation.for.addrspace</li>.. |
| e13c0 | 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> |
| e13e0 | 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>..... |
| e1400 | 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 | ......<th.scope="row">.......... |
| e1420 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ...<pre><code><span.class="tok-k |
| e1440 | 77 22 3e 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 | w">align</span></code></pre>.... |
| e1460 | 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 64 3e 0a 20 20 20 20 | .......</th>...........<td>..... |
| e1480 | 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ........<code><span.class="tok-k |
| e14a0 | 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 | w">align</span></code>.can.be.us |
| e14c0 | 65 64 20 74 6f 20 73 70 65 63 69 66 79 20 74 68 65 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 66 20 61 | ed.to.specify.the.alignment.of.a |
| e14e0 | 20 70 6f 69 6e 74 65 72 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 74 20 63 61 6e 20 61 6c 73 | .pointer..............It.can.als |
| e1500 | 6f 20 62 65 20 75 73 65 64 20 61 66 74 65 72 20 61 20 76 61 72 69 61 62 6c 65 20 6f 72 20 66 75 | o.be.used.after.a.variable.or.fu |
| e1520 | 6e 63 74 69 6f 6e 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 74 6f 20 73 70 65 63 69 66 79 20 74 68 | nction.declaration.to.specify.th |
| e1540 | 65 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 66 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 74 68 61 74 20 | e.alignment.of.pointers.to.that. |
| e1560 | 76 61 72 69 61 62 6c 65 20 6f 72 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 | variable.or.function............ |
| e1580 | 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 |
| e15a0 | 6f 20 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 6d 65 6e 74 | o.<a.href="#Alignment">Alignment |
| e15c0 | 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>..... |
| e15e0 | 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>....... |
| e1600 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 | ..<tr>...........<th.scope="row" |
| e1620 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | >.............<pre><code><span.c |
| e1640 | 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></ |
| e1660 | 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 68 3e 0a 20 20 20 20 | code></pre>...........</th>..... |
| e1680 | 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 70 6f 69 6e 74 | ......<td>.............The.point |
| e16a0 | 65 72 20 61 74 74 72 69 62 75 74 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | er.attribute.<code><span.class=" |
| e16c0 | 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 63 6f 64 65 3e 20 | tok-kw">allowzero</span></code>. |
| e16e0 | 61 6c 6c 6f 77 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 68 61 76 65 20 61 64 64 72 65 73 73 | allows.a.pointer.to.have.address |
| e1700 | 20 7a 65 72 6f 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 | .zero..............<ul>......... |
| e1720 | 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 61 6c 6c | ......<li>See.also.<a.href="#all |
| e1740 | 6f 77 7a 65 72 6f 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | owzero">allowzero</a></li>...... |
| e1760 | 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>.... |
| e1780 | 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>......... |
| e17a0 | 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | ..<th.scope="row">.............< |
| e17c0 | 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 | pre><code><span.class="tok-kw">a |
| e17e0 | 6e 64 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 | nd</span></code></pre>.......... |
| e1800 | 20 3c 2f 74 68 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 | .</th>...........<td>........... |
| e1820 | 20 20 54 68 65 20 62 6f 6f 6c 65 61 6e 20 6f 70 65 72 61 74 6f 72 20 3c 63 6f 64 65 3e 3c 73 70 | ..The.boolean.operator.<code><sp |
| e1840 | 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 6f | an.class="tok-kw">and</span></co |
| e1860 | 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 20 | de>..............<ul>........... |
| e1880 | 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 61 | ....<li>See.also.<a.href="#Opera |
| e18a0 | 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 20 | tors">Operators</a></li>........ |
| e18c0 | 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>...... |
| e18e0 | 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>........... |
| e1900 | 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 | <th.scope="row">.............<pr |
| e1920 | 65 3e 3c 63 6f 64 65 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 | e><code><span.class="tok-kw">any |
| e1940 | 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 20 | frame</span></code></pre>....... |
| e1960 | 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 | ....</th>...........<td>........ |
| e1980 | 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .....<code><span.class="tok-kw"> |
| e19a0 | 61 6e 79 66 72 61 6d 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 | anyframe</span></code>.can.be.us |
| e19c0 | 65 64 20 61 73 20 61 20 74 79 70 65 20 66 6f 72 20 76 61 72 69 61 62 6c 65 73 20 77 68 69 63 68 | ed.as.a.type.for.variables.which |
| e19e0 | 20 68 6f 6c 64 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 66 75 6e 63 74 69 6f 6e 20 66 72 61 6d 65 | .hold.pointers.to.function.frame |
| e1a00 | 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 20 20 20 20 | s..............<ul>............. |
| e1a20 | 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 |
| e1a40 | 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 |
| e1a60 | 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>...........< |
| e1a80 | 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>. |
| e1aa0 | 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 | ..........<th.scope="row">...... |
| e1ac0 | 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .......<pre><code><span.class="t |
| e1ae0 | 6f 6b 2d 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 | ok-kw">anytype</span></code></pr |
| e1b00 | 65 3e 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 64 | e>...........</th>...........<td |
| e1b20 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 46 75 6e 63 74 69 6f 6e 20 70 61 72 61 6d 65 74 65 72 | >.............Function.parameter |
| e1b40 | 73 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 3e 3c 73 70 | s.can.be.declared.with.<code><sp |
| e1b60 | 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> |
| e1b80 | 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.... |
| e1ba0 | 20 20 20 20 20 20 20 20 20 20 54 68 65 20 74 79 70 65 20 77 69 6c 6c 20 62 65 20 69 6e 66 65 72 | ..........The.type.will.be.infer |
| e1bc0 | 72 65 64 20 77 68 65 72 65 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 63 61 6c 6c 65 64 | red.where.the.function.is.called |
| e1be0 | 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>.............. |
| e1c00 | 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 6e | .<li>See.also.<a.href="#Function |
| e1c20 | 2d 50 61 72 61 6d 65 74 65 72 2d 54 79 70 65 2d 49 6e 66 65 72 65 6e 63 65 22 3e 46 75 6e 63 74 | -Parameter-Type-Inference">Funct |
| e1c40 | 69 6f 6e 20 50 61 72 61 6d 65 74 65 72 20 54 79 70 65 20 49 6e 66 65 72 65 6e 63 65 3c 2f 61 3e | ion.Parameter.Type.Inference</a> |
| e1c60 | 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>......... |
| e1c80 | 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 74 | ..</td>.........</tr>.........<t |
| e1ca0 | 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 | r>...........<th.scope="row">... |
| e1cc0 | 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | ..........<pre><code><span.class |
| e1ce0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 6d 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ="tok-kw">asm</span></code></pre |
| e1d00 | 3e 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 64 3e | >...........</th>...........<td> |
| e1d20 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .............<code><span.class=" |
| e1d40 | 74 6f 6b 2d 6b 77 22 3e 61 73 6d 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 65 67 69 6e 73 | tok-kw">asm</span></code>.begins |
| e1d60 | 20 61 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 2e 20 | .an.inline.assembly.expression.. |
| e1d80 | 54 68 69 73 20 61 6c 6c 6f 77 73 20 66 6f 72 20 64 69 72 65 63 74 6c 79 20 63 6f 6e 74 72 6f 6c | This.allows.for.directly.control |
| e1da0 | 6c 69 6e 67 20 74 68 65 20 6d 61 63 68 69 6e 65 20 63 6f 64 65 20 67 65 6e 65 72 61 74 65 64 20 | ling.the.machine.code.generated. |
| e1dc0 | 6f 6e 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | on.compilation..............<ul> |
| e1de0 | 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 |
| e1e00 | 72 65 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 3c 2f 6c 69 | ref="#Assembly">Assembly</a></li |
| e1e20 | 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>...........</ |
| e1e40 | 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>.. |
| e1e60 | 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 | .........<th.scope="row">....... |
| e1e80 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ......<pre><code><span.class="to |
| e1ea0 | 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 3c 2f 70 72 65 3e 0a | k-kw">async</span></code></pre>. |
| e1ec0 | 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 64 3e 0a 20 | ..........</th>...........<td>.. |
| e1ee0 | 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ...........<code><span.class="to |
| e1f00 | 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 65 | k-kw">async</span></code>.can.be |
| e1f20 | 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 20 | .used.before.a.function.call.to. |
| e1f40 | 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 20 | get.a.pointer.to.the.function's. |
| e1f60 | 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 20 | frame.when.it.suspends.......... |
| e1f80 | 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 |
| e1fa0 | 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 41 | lso.<a.href="#Async-Functions">A |
| e1fc0 | 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 20 | sync.Functions</a></li>......... |
| e1fe0 | 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 20 | ....</ul>...........</td>....... |
| e2000 | 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>...........< |
| e2020 | 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 | th.scope="row">.............<pre |
| e2040 | 3e 3c 63 6f 64 65 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 | ><code><span.class="tok-kw">awai |
| e2060 | 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 20 | t</span></code></pre>........... |
| e2080 | 3c 2f 74 68 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 | </th>...........<td>............ |
| e20a0 | 20 3c 63 6f 64 65 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 | .<code><span.class="tok-kw">awai |
| e20c0 | 74 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 20 73 | t</span></code>.can.be.used.to.s |
| e20e0 | 75 73 70 65 6e 64 20 74 68 65 20 63 75 72 72 65 6e 74 20 66 75 6e 63 74 69 6f 6e 20 75 6e 74 69 | uspend.the.current.function.unti |
| e2100 | 6c 20 74 68 65 20 66 72 61 6d 65 20 70 72 6f 76 69 64 65 64 20 61 66 74 65 72 20 74 68 65 20 3c | l.the.frame.provided.after.the.< |
| e2120 | 63 6f 64 65 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 3c | code><span.class="tok-kw">await< |
| e2140 | 2f 73 70 61 6e 3e 3c 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 | /span></code>.completes......... |
| e2160 | 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .....<code><span.class="tok-kw"> |
| e2180 | 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 74 68 65 20 76 | await</span></code>.copies.the.v |
| e21a0 | 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 65 74 20 66 75 | alue.returned.from.the.target.fu |
| e21c0 | 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 72 2e 0a 20 20 | nction's.frame.to.the.caller.... |
| e21e0 | 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 69 | ..........<ul>...............<li |
| e2200 | 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 75 6e 63 74 69 | >See.also.<a.href="#Async-Functi |
| e2220 | 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 69 3e 0a 20 20 | ons">Async.Functions</a></li>... |
| e2240 | 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>. |
| e2260 | 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>...... |
| e2280 | 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 | .....<th.scope="row">........... |
| e22a0 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ..<pre><code><span.class="tok-kw |
| e22c0 | 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 0a 20 20 20 20 | ">break</span></code></pre>..... |
| e22e0 | 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 | ......</th>...........<td>...... |
| e2300 | 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .......<code><span.class="tok-kw |
| e2320 | 22 3e 62 72 65 61 6b 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 | ">break</span></code>.can.be.use |
| e2340 | 64 20 77 69 74 68 20 61 20 62 6c 6f 63 6b 20 6c 61 62 65 6c 20 74 6f 20 72 65 74 75 72 6e 20 61 | d.with.a.block.label.to.return.a |
| e2360 | 20 76 61 6c 75 65 20 66 72 6f 6d 20 74 68 65 20 62 6c 6f 63 6b 2e 0a 20 20 20 20 20 20 20 20 20 | .value.from.the.block........... |
| e2380 | 20 20 20 49 74 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 75 73 65 64 20 74 6f 20 65 78 69 74 20 61 | ...It.can.also.be.used.to.exit.a |
| e23a0 | 20 6c 6f 6f 70 20 62 65 66 6f 72 65 20 69 74 65 72 61 74 69 6f 6e 20 63 6f 6d 70 6c 65 74 65 73 | .loop.before.iteration.completes |
| e23c0 | 20 6e 61 74 75 72 61 6c 6c 79 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | .naturally..............<ul>.... |
| e23e0 | 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 3d | ...........<li>See.also.<a.href= |
| e2400 | 22 23 42 6c 6f 63 6b 73 22 3e 42 6c 6f 63 6b 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 | "#Blocks">Blocks</a>,.<a.href="# |
| e2420 | 77 68 69 6c 65 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 | while">while</a>,.<a.href="#for" |
| e2440 | 3e 66 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 2f 75 6c 3e 0a | >for</a></li>.............</ul>. |
| e2460 | 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>... |
| e2480 | 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 | ......<tr>...........<th.scope=" |
| e24a0 | 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 | row">.............<pre><code><sp |
| e24c0 | 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 70 61 6e | an.class="tok-kw">callconv</span |
| e24e0 | 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 68 3e 0a 20 | ></code></pre>...........</th>.. |
| e2500 | 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 3e | .........<td>.............<code> |
| e2520 | 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 |
| e2540 | 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 73 70 65 63 69 | pan></code>.can.be.used.to.speci |
| e2560 | 66 79 20 74 68 65 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 69 6e 20 61 20 66 | fy.the.calling.convention.in.a.f |
| e2580 | 75 6e 63 74 69 6f 6e 20 74 79 70 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | unction.type..............<ul>.. |
| e25a0 | 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 |
| e25c0 | 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 3c 2f 6c 69 | f="#Functions">Functions</a></li |
| e25e0 | 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>...........</ |
| e2600 | 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>.. |
| e2620 | 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 | .........<th.scope="row">....... |
| e2640 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ......<pre><code><span.class="to |
| e2660 | 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 3c 2f 70 72 65 3e 0a | k-kw">catch</span></code></pre>. |
| e2680 | 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 64 3e 0a 20 | ..........</th>...........<td>.. |
| e26a0 | 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ...........<code><span.class="to |
| e26c0 | 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 62 65 | k-kw">catch</span></code>.can.be |
| e26e0 | 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 20 | .used.to.evaluate.an.expression. |
| e2700 | 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 6c | if.the.expression.before.it.eval |
| e2720 | 75 61 74 65 73 20 74 6f 20 61 6e 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 | uates.to.an.error..............T |
| e2740 | 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 61 66 74 65 72 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 | he.expression.after.the.<code><s |
| e2760 | 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>< |
| e2780 | 2f 63 6f 64 65 3e 20 63 61 6e 20 6f 70 74 69 6f 6e 61 6c 6c 79 20 63 61 70 74 75 72 65 20 74 68 | /code>.can.optionally.capture.th |
| e27a0 | 65 20 65 72 72 6f 72 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 | e.error.value..............<ul>. |
| e27c0 | 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 72 | ..............<li>See.also.<a.hr |
| e27e0 | 65 66 3d 22 23 63 61 74 63 68 22 3e 63 61 74 63 68 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 | ef="#catch">catch</a>,.<a.href=" |
| e2800 | 23 4f 70 65 72 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 | #Operators">Operators</a></li>.. |
| e2820 | 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> |
| e2840 | 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>..... |
| e2860 | 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 | ......<th.scope="row">.......... |
| e2880 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ...<pre><code><span.class="tok-k |
| e28a0 | 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 3c 2f 70 72 65 3e 0a | w">comptime</span></code></pre>. |
| e28c0 | 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 64 3e 0a 20 | ..........</th>...........<td>.. |
| e28e0 | 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ...........<code><span.class="to |
| e2900 | 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 66 | k-kw">comptime</span></code>.bef |
| e2920 | 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 6f | ore.a.declaration.can.be.used.to |
| e2940 | 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 72 | .label.variables.or.function.par |
| e2960 | 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 65 | ameters.as.known.at.compile.time |
| e2980 | 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 65 | ..............It.can.also.be.use |
| e29a0 | 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 20 | d.to.guarantee.an.expression.is. |
| e29c0 | 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 20 | run.at.compile.time............. |
| e29e0 | 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 6f | .<ul>...............<li>See.also |
| e2a00 | 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 61 | .<a.href="#comptime">comptime</a |
| e2a20 | 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 20 | ></li>.............</ul>........ |
| e2a40 | 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>.........< |
| e2a60 | 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 | tr>...........<th.scope="row">.. |
| e2a80 | 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | ...........<pre><code><span.clas |
| e2aa0 | 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 2f | s="tok-kw">const</span></code></ |
| e2ac0 | 70 72 65 3e 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 | pre>...........</th>...........< |
| e2ae0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | td>.............<code><span.clas |
| e2b00 | 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 20 64 | s="tok-kw">const</span></code>.d |
| e2b20 | 65 63 6c 61 72 65 73 20 61 20 76 61 72 69 61 62 6c 65 20 74 68 61 74 20 63 61 6e 20 6e 6f 74 20 | eclares.a.variable.that.can.not. |
| e2b40 | 62 65 20 6d 6f 64 69 66 69 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 55 73 65 64 20 61 73 | be.modified..............Used.as |
| e2b60 | 20 61 20 70 6f 69 6e 74 65 72 20 61 74 74 72 69 62 75 74 65 2c 20 69 74 20 64 65 6e 6f 74 65 73 | .a.pointer.attribute,.it.denotes |
| e2b80 | 20 74 68 65 20 76 61 6c 75 65 20 72 65 66 65 72 65 6e 63 65 64 20 62 79 20 74 68 65 20 70 6f 69 | .the.value.referenced.by.the.poi |
| e2ba0 | 6e 74 65 72 20 63 61 6e 6e 6f 74 20 62 65 20 6d 6f 64 69 66 69 65 64 2e 0a 20 20 20 20 20 20 20 | nter.cannot.be.modified......... |
| e2bc0 | 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. |
| e2be0 | 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 69 61 62 | also.<a.href="#Variables">Variab |
| e2c00 | 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 3e 0a 20 | les</a></li>.............</ul>.. |
| e2c20 | 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>.... |
| e2c40 | 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 | .....<tr>...........<th.scope="r |
| e2c60 | 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 | ow">.............<pre><code><spa |
| e2c80 | 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 73 70 61 6e 3e | n.class="tok-kw">continue</span> |
| e2ca0 | 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 68 3e 0a 20 20 | </code></pre>...........</th>... |
| e2cc0 | 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 3e 3c | ........<td>.............<code>< |
| e2ce0 | 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 73 70 | span.class="tok-kw">continue</sp |
| e2d00 | 61 6e 3e 3c 2f 63 6f 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 | an></code>.can.be.used.in.a.loop |
| e2d20 | 20 74 6f 20 6a 75 6d 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 | .to.jump.back.to.the.beginning.o |
| e2d40 | 66 20 74 68 65 20 6c 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 | f.the.loop..............<ul>.... |
| e2d60 | 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 3d | ...........<li>See.also.<a.href= |
| e2d80 | 22 23 77 68 69 6c 65 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 | "#while">while</a>,.<a.href="#fo |
| e2da0 | 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 20 20 3c 2f 75 6c | r">for</a></li>.............</ul |
| e2dc0 | 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>. |
| e2de0 | 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 20 73 63 6f 70 65 | ........<tr>...........<th.scope |
| e2e00 | 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | ="row">.............<pre><code>< |
| e2e20 | 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 61 6e 3e | span.class="tok-kw">defer</span> |
| e2e40 | 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 68 3e 0a 20 20 | </code></pre>...........</th>... |
| e2e60 | 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 3e 3c | ........<td>.............<code>< |
| e2e80 | 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 61 6e 3e | span.class="tok-kw">defer</span> |
| e2ea0 | 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 72 65 73 73 69 | </code>.will.execute.an.expressi |
| e2ec0 | 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 20 74 68 65 20 | on.when.control.flow.leaves.the. |
| e2ee0 | 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 3c 75 6c 3e 0a | current.block..............<ul>. |
| e2f00 | 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 72 | ..............<li>See.also.<a.hr |
| e2f20 | 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 20 20 20 20 20 | ef="#defer">defer</a></li>...... |
| e2f40 | 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>.... |
| e2f60 | 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>......... |
| e2f80 | 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | ..<th.scope="row">.............< |
| e2fa0 | 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | pre><code><span.class="tok-kw">e |
| e2fc0 | 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 20 20 20 20 20 | lse</span></code></pre>......... |
| e2fe0 | 20 20 3c 2f 74 68 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 | ..</th>...........<td>.......... |
| e3000 | 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c | ...<code><span.class="tok-kw">el |
| e3020 | 73 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 20 | se</span></code>.can.be.used.to. |
| e3040 | 70 72 6f 76 69 64 65 20 61 6e 20 61 6c 74 65 72 6e 61 74 65 20 62 72 61 6e 63 68 20 66 6f 72 20 | provide.an.alternate.branch.for. |
| e3060 | 3c 63 6f 64 65 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 | <code><span.class="tok-kw">if</s |
| e3080 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan></code>,.<code><span.class=" |
| e30a0 | 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 2c 0a 20 20 | tok-kw">switch</span></code>,... |
| e30c0 | 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ..........<code><span.class="tok |
| e30e0 | 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 3c 63 | -kw">while</span></code>,.and.<c |
| e3100 | 6f 64 65 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 70 | ode><span.class="tok-kw">for</sp |
| e3120 | 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 20 | an></code>.expressions.......... |
| e3140 | 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 73 | ....<ul>...............<li>If.us |
| e3160 | 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 65 | ed.after.an.if.expression,.the.e |
| e3180 | 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 74 | lse.branch.will.be.executed.if.t |
| e31a0 | 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 6c | he.test.value.returns.false,.nul |
| e31c0 | 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 20 | l,.or.an.error.</li>............ |
| e31e0 | 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 65 | ...<li>If.used.within.a.switch.e |
| e3200 | 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 20 | xpression,.the.else.branch.will. |
| e3220 | 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 61 | be.executed.if.the.test.value.ma |
| e3240 | 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 20 | tches.no.other.cases.</li>...... |
| e3260 | 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 6f | .........<li>If.used.after.a.loo |
| e3280 | 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 69 | p.expression,.the.else.branch.wi |
| e32a0 | 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 73 | ll.be.executed.if.the.loop.finis |
| e32c0 | 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 20 | hes.without.breaking.</li>...... |
| e32e0 | 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="# |
| e3300 | 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 77 | if">if</a>,.<a.href="#switch">sw |
| e3320 | 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 65 | itch</a>,.<a.href="#while">while |
| e3340 | 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 69 | </a>,.<a.href="#for">for</a></li |
| e3360 | 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>...........</ |
| e3380 | 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>.. |
| e33a0 | 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 | .........<th.scope="row">....... |
| e33c0 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ......<pre><code><span.class="to |
| e33e0 | 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 20 | k-kw">enum</span></code></pre>.. |
| e3400 | 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 64 3e 0a 20 20 | .........</th>...........<td>... |
| e3420 | 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ..........<code><span.class="tok |
| e3440 | 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 66 69 6e 65 73 20 | -kw">enum</span></code>.defines. |
| e3460 | 61 6e 20 65 6e 75 6d 20 74 79 70 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | an.enum.type..............<ul>.. |
| e3480 | 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 |
| e34a0 | 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | f="#enum">enum</a></li>......... |
| e34c0 | 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 20 | ....</ul>...........</td>....... |
| e34e0 | 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>...........< |
| e3500 | 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 | th.scope="row">.............<pre |
| e3520 | 3e 3c 63 6f 64 65 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 | ><code><span.class="tok-kw">errd |
| e3540 | 65 66 65 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 | efer</span></code></pre>........ |
| e3560 | 20 20 20 3c 2f 74 68 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 | ...</th>...........<td>......... |
| e3580 | 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | ....<code><span.class="tok-kw">e |
| e35a0 | 72 72 64 65 66 65 72 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 | rrdefer</span></code>.will.execu |
| e35c0 | 74 65 20 61 6e 20 65 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 | te.an.expression.when.control.fl |
| e35e0 | 6f 77 20 6c 65 61 76 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 | ow.leaves.the.current.block.if.t |
| e3600 | 68 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f 72 2c 20 74 68 | he.function.returns.an.error,.th |
| e3620 | 65 20 65 72 72 64 65 66 65 72 20 65 78 70 72 65 73 73 69 6f 6e 20 63 61 6e 20 63 61 70 74 75 72 | e.errdefer.expression.can.captur |
| e3640 | 65 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 20 20 20 | e.the.unwrapped.value........... |
| e3660 | 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 |
| e3680 | 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< |
| e36a0 | 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>...... |
| e36c0 | 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>........ |
| e36e0 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e | .<tr>...........<th.scope="row"> |
| e3700 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | .............<pre><code><span.cl |
| e3720 | 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> |
| e3740 | 3c 2f 70 72 65 3e 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 | </pre>...........</th>.......... |
| e3760 | 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | .<td>.............<code><span.cl |
| e3780 | 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> |
| e37a0 | 20 64 65 66 69 6e 65 73 20 61 6e 20 65 72 72 6f 72 20 74 79 70 65 2e 0a 20 20 20 20 20 20 20 20 | .defines.an.error.type.......... |
| e37c0 | 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 |
| e37e0 | 6c 73 6f 20 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 | lso.<a.href="#Errors">Errors</a> |
| e3800 | 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>......... |
| e3820 | 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 74 | ..</td>.........</tr>.........<t |
| e3840 | 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 | r>...........<th.scope="row">... |
| e3860 | 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | ..........<pre><code><span.class |
| e3880 | 3d 22 74 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 3c 2f | ="tok-kw">export</span></code></ |
| e38a0 | 70 72 65 3e 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 | pre>...........</th>...........< |
| e38c0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | td>.............<code><span.clas |
| e38e0 | 73 3d 22 74 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 | s="tok-kw">export</span></code>. |
| e3900 | 6d 61 6b 65 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 6f 72 20 76 61 72 69 61 62 6c 65 20 65 78 74 | makes.a.function.or.variable.ext |
| e3920 | 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 61 74 65 64 | ernally.visible.in.the.generated |
| e3940 | 20 6f 62 6a 65 63 74 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 78 70 6f 72 74 | .object.file..............Export |
| e3960 | 65 64 20 66 75 6e 63 74 69 6f 6e 73 20 64 65 66 61 75 6c 74 20 74 6f 20 74 68 65 20 43 20 63 61 | ed.functions.default.to.the.C.ca |
| e3980 | 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 | lling.convention..............<u |
| e39a0 | 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 |
| e39c0 | 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> |
| e39e0 | 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>......... |
| e3a00 | 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 74 | ..</td>.........</tr>.........<t |
| e3a20 | 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 | r>...........<th.scope="row">... |
| e3a40 | 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | ..........<pre><code><span.class |
| e3a60 | 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 3c 2f | ="tok-kw">extern</span></code></ |
| e3a80 | 70 72 65 3e 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 | pre>...........</th>...........< |
| e3aa0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | td>.............<code><span.clas |
| e3ac0 | 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 65 3e 20 | s="tok-kw">extern</span></code>. |
| e3ae0 | 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 63 74 69 6f | can.be.used.to.declare.a.functio |
| e3b00 | 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 65 73 6f 6c | n.or.variable.that.will.be.resol |
| e3b20 | 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 6e 67 20 73 | ved.at.link.time,.when.linking.s |
| e3b40 | 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 72 75 6e 74 | tatically.............or.at.runt |
| e3b60 | 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 79 2e 0a 20 | ime,.when.linking.dynamically... |
| e3b80 | 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 |
| e3ba0 | 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 6e 73 22 3e | i>See.also.<a.href="#Functions"> |
| e3bc0 | 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 20 3c | Functions</a></li>.............< |
| e3be0 | 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 |
| e3c00 | 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 68 20 73 63 | r>.........<tr>...........<th.sc |
| e3c20 | 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | ope="row">.............<pre><cod |
| e3c40 | 65 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 | e><span.class="tok-kw">fn</span> |
| e3c60 | 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 68 3e 0a 20 20 | </code></pre>...........</th>... |
| e3c80 | 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 3e 3c | ........<td>.............<code>< |
| e3ca0 | 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 3c 2f 63 | span.class="tok-kw">fn</span></c |
| e3cc0 | 6f 64 65 3e 20 64 65 63 6c 61 72 65 73 20 61 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 | ode>.declares.a.function........ |
| e3ce0 | 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 65 | ......<ul>...............<li>See |
| e3d00 | 20 61 6c 73 6f 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 63 74 | .also.<a.href="#Functions">Funct |
| e3d20 | 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 3e 0a | ions</a></li>.............</ul>. |
| e3d40 | 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>... |
| e3d60 | 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 | ......<tr>...........<th.scope=" |
| e3d80 | 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 | row">.............<pre><code><sp |
| e3da0 | 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 3c 2f 63 6f | an.class="tok-kw">for</span></co |
| e3dc0 | 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 | de></pre>...........</th>....... |
| e3de0 | 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 3e 3c 73 70 | ....<td>.............A.<code><sp |
| e3e00 | 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 3c 2f 63 6f | an.class="tok-kw">for</span></co |
| e3e20 | 64 65 3e 20 65 78 70 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 | de>.expression.can.be.used.to.it |
| e3e40 | 65 72 61 74 65 20 6f 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 | erate.over.the.elements.of.a.sli |
| e3e60 | 63 65 2c 20 61 72 72 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 | ce,.array,.or.tuple............. |
| e3e80 | 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 6f | .<ul>...............<li>See.also |
| e3ea0 | 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 20 20 | .<a.href="#for">for</a></li>.... |
| e3ec0 | 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 20 | .........</ul>...........</td>.. |
| e3ee0 | 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>....... |
| e3f00 | 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ....<th.scope="row">............ |
| e3f20 | 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .<pre><code><span.class="tok-kw" |
| e3f40 | 3e 69 66 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 | >if</span></code></pre>......... |
| e3f60 | 20 20 3c 2f 74 68 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 | ..</th>...........<td>.......... |
| e3f80 | 20 20 20 41 6e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ...An.<code><span.class="tok-kw" |
| e3fa0 | 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 20 63 61 6e | >if</span></code>.expression.can |
| e3fc0 | 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 6f 70 74 69 6f | .test.boolean.expressions,.optio |
| e3fe0 | 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 2e 0a 20 20 20 | nal.values,.or.error.unions..... |
| e4000 | 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 73 20 6f 72 20 | .........For.optional.values.or. |
| e4020 | 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 73 69 6f 6e 20 | error.unions,.the.if.expression. |
| e4040 | 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 61 6c 75 65 2e | can.capture.the.unwrapped.value. |
| e4060 | 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>............... |
| e4080 | 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 69 66 3c 2f 61 | <li>See.also.<a.href="#if">if</a |
| e40a0 | 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 20 | ></li>.............</ul>........ |
| e40c0 | 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>.........< |
| e40e0 | 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 | tr>...........<th.scope="row">.. |
| e4100 | 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | ...........<pre><code><span.clas |
| e4120 | 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 3c | s="tok-kw">inline</span></code>< |
| e4140 | 2f 70 72 65 3e 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 | /pre>...........</th>........... |
| e4160 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | <td>.............<code><span.cla |
| e4180 | 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> |
| e41a0 | 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 6c 61 62 65 6c 20 61 20 6c 6f 6f 70 20 65 78 70 | .can.be.used.to.label.a.loop.exp |
| e41c0 | 72 65 73 73 69 6f 6e 20 73 75 63 68 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 6e 72 | ression.such.that.it.will.be.unr |
| e41e0 | 6f 6c 6c 65 64 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 | olled.at.compile.time........... |
| e4200 | 20 20 20 49 74 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 75 73 65 64 20 74 6f 20 66 6f 72 63 65 20 | ...It.can.also.be.used.to.force. |
| e4220 | 61 20 66 75 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 | a.function.to.be.inlined.at.all. |
| e4240 | 63 61 6c 6c 20 73 69 74 65 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | call.sites..............<ul>.... |
| e4260 | 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 3d | ...........<li>See.also.<a.href= |
| e4280 | 22 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 | "#inline-while">inline.while</a> |
| e42a0 | 2c 20 3c 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 | ,.<a.href="#inline-for">inline.f |
| e42c0 | 6f 72 3c 2f 61 3e 2c 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 | or</a>,.<a.href="#Functions">Fun |
| e42e0 | 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 |
| e4300 | 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>. |
| e4320 | 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 20 73 63 6f 70 65 | ........<tr>...........<th.scope |
| e4340 | 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | ="row">.............<pre><code>< |
| e4360 | 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 3c | span.class="tok-kw">linksection< |
| e4380 | 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>...........</ |
| e43a0 | 74 68 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 54 | th>...........<td>.............T |
| e43c0 | 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6c 69 | he.<code><span.class="tok-kw">li |
| e43e0 | 6e 6b 73 65 63 74 69 6f 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 | nksection</span></code>.keyword. |
| e4400 | 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 73 70 65 63 69 66 79 20 77 68 61 74 20 73 65 63 74 | can.be.used.to.specify.what.sect |
| e4420 | 69 6f 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 6f 72 20 67 6c 6f 62 61 6c 20 76 61 72 69 61 | ion.the.function.or.global.varia |
| e4440 | 62 6c 65 20 77 69 6c 6c 20 62 65 20 70 75 74 20 69 6e 74 6f 20 28 65 2e 67 2e 20 3c 63 6f 64 65 | ble.will.be.put.into.(e.g..<code |
| e4460 | 3e 2e 74 65 78 74 3c 2f 63 6f 64 65 3e 29 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a | >.text</code>)............</td>. |
| e4480 | 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>...... |
| e44a0 | 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 | .....<th.scope="row">........... |
| e44c0 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ..<pre><code><span.class="tok-kw |
| e44e0 | 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 0a 20 20 | ">noalias</span></code></pre>... |
| e4500 | 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 64 3e 0a 20 20 20 | ........</th>...........<td>.... |
| e4520 | 20 20 20 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .........The.<code><span.class=" |
| e4540 | 74 6f 6b 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 20 6b 65 | tok-kw">noalias</span></code>.ke |
| e4560 | 79 77 6f 72 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 | yword..............<ul>......... |
| e4580 | 20 20 20 20 20 20 3c 6c 69 3e 54 4f 44 4f 20 61 64 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e | ......<li>TODO.add.documentation |
| e45a0 | 20 66 6f 72 20 6e 6f 61 6c 69 61 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f | .for.noalias</li>.............</ |
| e45c0 | 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 |
| e45e0 | 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 20 73 63 6f | >.........<tr>...........<th.sco |
| e4600 | 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | pe="row">.............<pre><code |
| e4620 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6e 6f 69 6e 6c 69 6e 65 3c 2f | ><span.class="tok-kw">noinline</ |
| e4640 | 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 |
| e4660 | 68 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 63 | h>...........<td>.............<c |
| e4680 | 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6e 6f 69 6e 6c 69 6e | ode><span.class="tok-kw">noinlin |
| e46a0 | 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 69 73 61 6c 6c 6f 77 73 20 66 75 6e 63 74 69 | e</span></code>.disallows.functi |
| e46c0 | 6f 6e 20 74 6f 20 62 65 20 69 6e 6c 69 6e 65 64 20 69 6e 20 61 6c 6c 20 63 61 6c 6c 20 73 69 74 | on.to.be.inlined.in.all.call.sit |
| e46e0 | 65 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 20 20 20 | es..............<ul>............ |
| e4700 | 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 63 74 69 | ...<li>See.also.<a.href="#Functi |
| e4720 | 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>......... |
| e4740 | 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 20 | ....</ul>...........</td>....... |
| e4760 | 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>...........< |
| e4780 | 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 | th.scope="row">.............<pre |
| e47a0 | 3e 3c 63 6f 64 65 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 | ><code><span.class="tok-kw">nosu |
| e47c0 | 73 70 65 6e 64 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 | spend</span></code></pre>....... |
| e47e0 | 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 | ....</th>...........<td>........ |
| e4800 | 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .....The.<code><span.class="tok- |
| e4820 | 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 20 6b 65 79 77 | kw">nosuspend</span></code>.keyw |
| e4840 | 6f 72 64 20 63 61 6e 20 62 65 20 75 73 65 64 20 69 6e 20 66 72 6f 6e 74 20 6f 66 20 61 20 62 6c | ord.can.be.used.in.front.of.a.bl |
| e4860 | 6f 63 6b 2c 20 73 74 61 74 65 6d 65 6e 74 20 6f 72 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 74 6f | ock,.statement.or.expression,.to |
| e4880 | 20 6d 61 72 6b 20 61 20 73 63 6f 70 65 20 77 68 65 72 65 20 6e 6f 20 73 75 73 70 65 6e 73 69 6f | .mark.a.scope.where.no.suspensio |
| e48a0 | 6e 20 70 6f 69 6e 74 73 20 61 72 65 20 72 65 61 63 68 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 | n.points.are.reached............ |
| e48c0 | 20 20 49 6e 20 70 61 72 74 69 63 75 6c 61 72 2c 20 69 6e 73 69 64 65 20 61 20 3c 63 6f 64 65 3e | ..In.particular,.inside.a.<code> |
| e48e0 | 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 2f | <span.class="tok-kw">nosuspend</ |
| e4900 | 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 20 | span></code>.scope:............. |
| e4920 | 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 65 | <ul>...............<li>Using.the |
| e4940 | 20 3c 63 6f 64 65 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 | .<code><span.class="tok-kw">susp |
| e4960 | 65 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 72 65 73 75 6c 74 | end</span></code>.keyword.result |
| e4980 | 73 20 69 6e 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 | s.in.a.compile.error.</li>...... |
| e49a0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 55 73 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | .........<li>Using.<code><span.c |
| e49c0 | 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 2f 63 6f 64 65 | lass="tok-kw">await</span></code |
| e49e0 | 3e 20 6f 6e 20 61 20 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 | >.on.a.function.frame.which.hasn |
| e4a00 | 27 74 20 63 6f 6d 70 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 | 't.completed.yet.results.in.safe |
| e4a20 | 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 | ty-checked.<a.href="#Illegal-Beh |
| e4a40 | 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 3c 2f 6c 69 | avior">Illegal.Behavior</a>.</li |
| e4a60 | 3e 0a 20 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 | >...............<li>Calling.an.a |
| e4a80 | 73 79 6e 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 | sync.function.may.result.in.safe |
| e4aa0 | 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 | ty-checked.<a.href="#Illegal-Beh |
| e4ac0 | 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2c 20 62 65 63 | avior">Illegal.Behavior</a>,.bec |
| e4ae0 | 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 77 | ause.it's.equivalent.to.<code>aw |
| e4b00 | 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 3e | ait.async.some_async_fn()</code> |
| e4b20 | 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 3e 3c 73 70 61 6e 20 | ,.which.contains.an.<code><span. |
| e4b40 | 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 2f 63 6f 64 | class="tok-kw">await</span></cod |
| e4b60 | 65 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 20 20 20 | e>.</li>.............</ul>...... |
| e4b80 | 20 20 20 20 20 20 20 43 6f 64 65 20 69 6e 73 69 64 65 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | .......Code.inside.a.<code><span |
| e4ba0 | 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 2f 73 70 61 6e 3e | .class="tok-kw">nosuspend</span> |
| e4bc0 | 3c 2f 63 6f 64 65 3e 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 | </code>.scope.does.not.cause.the |
| e4be0 | 20 65 6e 63 6c 6f 73 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 | .enclosing.function.to.become.an |
| e4c00 | 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 61 73 79 6e | .<a.href="#Async-Functions">asyn |
| e4c20 | 63 20 66 75 6e 63 74 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 | c.function</a>..............<ul> |
| e4c40 | 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 |
| e4c60 | 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 |
| e4c80 | 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 |
| e4ca0 | 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>. |
| e4cc0 | 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 20 73 63 6f 70 65 | ........<tr>...........<th.scope |
| e4ce0 | 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | ="row">.............<pre><code>< |
| e4d00 | 73 70 61 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 | span.class="tok-kw">opaque</span |
| e4d20 | 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 68 3e 0a 20 | ></code></pre>...........</th>.. |
| e4d40 | 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 3e | .........<td>.............<code> |
| e4d60 | 3c 73 70 61 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 | <span.class="tok-kw">opaque</spa |
| e4d80 | 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 66 69 6e 65 73 20 61 6e 20 6f 70 61 71 75 65 20 74 79 70 65 | n></code>.defines.an.opaque.type |
| e4da0 | 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>.............. |
| e4dc0 | 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 6f 70 61 71 75 65 22 3e | .<li>See.also.<a.href="#opaque"> |
| e4de0 | 6f 70 61 71 75 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 | opaque</a></li>.............</ul |
| e4e00 | 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>. |
| e4e20 | 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 20 73 63 6f 70 65 | ........<tr>...........<th.scope |
| e4e40 | 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c | ="row">.............<pre><code>< |
| e4e60 | 73 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 3c 2f 63 | span.class="tok-kw">or</span></c |
| e4e80 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 | ode></pre>...........</th>...... |
| e4ea0 | 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 61 | .....<td>.............The.boolea |
| e4ec0 | 6e 20 6f 70 65 72 61 74 6f 72 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n.operator.<code><span.class="to |
| e4ee0 | 6b 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 | k-kw">or</span></code>.......... |
| e4f00 | 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 |
| e4f20 | 6c 73 6f 20 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 | lso.<a.href="#Operators">Operato |
| e4f40 | 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>... |
| e4f60 | 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>..... |
| e4f80 | 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f | ....<tr>...........<th.scope="ro |
| e4fa0 | 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e | w">.............<pre><code><span |
| e4fc0 | 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 3c 2f 63 | .class="tok-kw">orelse</span></c |
| e4fe0 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 | ode></pre>...........</th>...... |
| e5000 | 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 3e 3c 73 70 61 | .....<td>.............<code><spa |
| e5020 | 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 3c 2f | n.class="tok-kw">orelse</span></ |
| e5040 | 63 6f 64 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 | code>.can.be.used.to.evaluate.an |
| e5060 | 20 65 78 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 | .expression.if.the.expression.be |
| e5080 | 66 6f 72 65 20 69 74 20 65 76 61 6c 75 61 74 65 73 20 74 6f 20 6e 75 6c 6c 2e 0a 20 20 20 20 20 | fore.it.evaluates.to.null....... |
| e50a0 | 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 |
| e50c0 | 65 20 61 6c 73 6f 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 | e.also.<a.href="#Optionals">Opti |
| e50e0 | 6f 6e 61 6c 73 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 3e | onals</a>,.<a.href="#Operators"> |
| e5100 | 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 3c | Operators</a></li>.............< |
| e5120 | 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 |
| e5140 | 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 68 20 73 63 | r>.........<tr>...........<th.sc |
| e5160 | 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | ope="row">.............<pre><cod |
| e5180 | 65 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 6b 65 64 3c 2f 73 | e><span.class="tok-kw">packed</s |
| e51a0 | 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 68 | pan></code></pre>...........</th |
| e51c0 | 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 54 68 65 | >...........<td>.............The |
| e51e0 | 20 3c 63 6f 64 65 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 6b | .<code><span.class="tok-kw">pack |
| e5200 | 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 20 | ed</span></code>.keyword.before. |
| e5220 | 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 20 | a.struct.definition.changes.the. |
| e5240 | 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 20 | struct's.in-memory.layout....... |
| e5260 | 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 3e 3c 73 | ......to.the.guaranteed.<code><s |
| e5280 | 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 2f 73 70 61 6e 3e | pan.class="tok-kw">packed</span> |
| e52a0 | 3c 2f 63 6f 64 65 3e 20 6c 61 79 6f 75 74 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | </code>.layout..............<ul> |
| e52c0 | 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 |
| e52e0 | 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 74 72 75 | ref="#packed-struct">packed.stru |
| e5300 | 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 20 | ct</a></li>.............</ul>... |
| e5320 | 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>..... |
| e5340 | 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f | ....<tr>...........<th.scope="ro |
| e5360 | 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e | w">.............<pre><code><span |
| e5380 | 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 64 65 | .class="tok-kw">pub</span></code |
| e53a0 | 3e 3c 2f 70 72 65 3e 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 | ></pre>...........</th>......... |
| e53c0 | 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 3e 3c 73 70 | ..<td>.............The.<code><sp |
| e53e0 | 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 |
| e5400 | 64 65 3e 20 69 6e 20 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 | de>.in.front.of.a.top.level.decl |
| e5420 | 61 72 61 74 69 6f 6e 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 | aration.makes.the.declaration.av |
| e5440 | 61 69 6c 61 62 6c 65 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 | ailable.............to.reference |
| e5460 | 20 66 72 6f 6d 20 61 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 | .from.a.different.file.than.the. |
| e5480 | 6f 6e 65 20 69 74 20 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 | one.it.is.declared.in........... |
| e54a0 | 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 |
| e54c0 | 73 6f 20 3c 61 20 68 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 | so.<a.href="#import">import</a>< |
| e54e0 | 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>.......... |
| e5500 | 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 |
| e5520 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 | >...........<th.scope="row">.... |
| e5540 | 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .........<pre><code><span.class= |
| e5560 | 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 65 3e 3c 2f 70 | "tok-kw">resume</span></code></p |
| e5580 | 72 65 3e 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 | re>...........</th>...........<t |
| e55a0 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | d>.............<code><span.class |
| e55c0 | 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 65 3e 20 77 | ="tok-kw">resume</span></code>.w |
| e55e0 | 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 20 66 75 6e 63 | ill.continue.execution.of.a.func |
| e5600 | 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 74 68 65 20 66 | tion.frame.after.the.point.the.f |
| e5620 | 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 20 20 20 20 20 | unction.was.suspended........... |
| e5640 | 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 |
| e5660 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 | >...........<th.scope="row">.... |
| e5680 | 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .........<pre><code><span.class= |
| e56a0 | 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 70 | "tok-kw">return</span></code></p |
| e56c0 | 72 65 3e 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 | re>...........</th>...........<t |
| e56e0 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | d>.............<code><span.class |
| e5700 | 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 3e 20 65 | ="tok-kw">return</span></code>.e |
| e5720 | 78 69 74 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 61 20 76 61 6c 75 65 2e 0a 20 20 | xits.a.function.with.a.value.... |
| e5740 | 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 69 | ..........<ul>...............<li |
| e5760 | 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 6e 73 22 3e 46 | >See.also.<a.href="#Functions">F |
| e5780 | 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 20 3c 2f | unctions</a></li>.............</ |
| e57a0 | 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 |
| e57c0 | 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 20 73 63 6f | >.........<tr>...........<th.sco |
| e57e0 | 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | pe="row">.............<pre><code |
| e5800 | 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 73 70 | ><span.class="tok-kw">struct</sp |
| e5820 | 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 68 3e | an></code></pre>...........</th> |
| e5840 | 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 |
| e5860 | 65 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 73 | e><span.class="tok-kw">struct</s |
| e5880 | 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 20 | pan></code>.defines.a.struct.... |
| e58a0 | 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 69 | ..........<ul>...............<li |
| e58c0 | 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 75 | >See.also.<a.href="#struct">stru |
| e58e0 | 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 20 | ct</a></li>.............</ul>... |
| e5900 | 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>..... |
| e5920 | 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f | ....<tr>...........<th.scope="ro |
| e5940 | 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e | w">.............<pre><code><span |
| e5960 | 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></ |
| e5980 | 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 68 3e 0a 20 20 20 20 | code></pre>...........</th>..... |
| e59a0 | 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 3e 3c 73 70 | ......<td>.............<code><sp |
| e59c0 | 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 3e | an.class="tok-kw">suspend</span> |
| e59e0 | 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 63 61 75 73 65 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 | </code>.will.cause.control.flow. |
| e5a00 | 74 6f 20 72 65 74 75 72 6e 20 74 6f 20 74 68 65 20 63 61 6c 6c 20 73 69 74 65 20 6f 72 20 72 65 | to.return.to.the.call.site.or.re |
| e5a20 | 73 75 6d 65 72 20 6f 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 | sumer.of.the.function........... |
| e5a40 | 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 | ...<code><span.class="tok-kw">su |
| e5a60 | 73 70 65 6e 64 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 | spend</span></code>.can.also.be. |
| e5a80 | 75 73 65 64 20 62 65 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 | used.before.a.block.within.a.fun |
| e5aa0 | 63 74 69 6f 6e 2c 0a 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 | ction,.............to.allow.the. |
| e5ac0 | 66 75 6e 63 74 69 6f 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 | function.access.to.its.frame.bef |
| e5ae0 | 6f 72 65 20 63 6f 6e 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 | ore.control.flow.returns.to.the. |
| e5b00 | 63 61 6c 6c 20 73 69 74 65 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 | call.site............</td>...... |
| e5b20 | 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>........... |
| e5b40 | 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 | <th.scope="row">.............<pr |
| e5b60 | 65 3e 3c 63 6f 64 65 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 | e><code><span.class="tok-kw">swi |
| e5b80 | 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 20 20 20 20 20 | tch</span></code></pre>......... |
| e5ba0 | 20 20 3c 2f 74 68 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 | ..</th>...........<td>.......... |
| e5bc0 | 20 20 20 41 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ...A.<code><span.class="tok-kw"> |
| e5be0 | 73 77 69 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 | switch</span></code>.expression. |
| e5c00 | 63 61 6e 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 | can.be.used.to.test.values.of.a. |
| e5c20 | 63 6f 6d 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 3e 3c | common.type..............<code>< |
| e5c40 | 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 |
| e5c60 | 3e 3c 2f 63 6f 64 65 3e 20 63 61 73 65 73 20 63 61 6e 20 63 61 70 74 75 72 65 20 66 69 65 6c 64 | ></code>.cases.can.capture.field |
| e5c80 | 20 76 61 6c 75 65 73 20 6f 66 20 61 20 3c 61 20 68 72 65 66 3d 22 23 54 61 67 67 65 64 2d 75 6e | .values.of.a.<a.href="#Tagged-un |
| e5ca0 | 69 6f 6e 22 3e 54 61 67 67 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 | ion">Tagged.union</a>........... |
| e5cc0 | 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 |
| e5ce0 | 73 6f 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 3c | so.<a.href="#switch">switch</a>< |
| e5d00 | 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>.......... |
| e5d20 | 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 |
| e5d40 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 | >...........<th.scope="row">.... |
| e5d60 | 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .........<pre><code><span.class= |
| e5d80 | 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | "tok-kw">test</span></code></pre |
| e5da0 | 3e 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 64 3e | >...........</th>...........<td> |
| e5dc0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | .............The.<code><span.cla |
| e5de0 | 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 6f 64 65 3e 20 6b | ss="tok-kw">test</span></code>.k |
| e5e00 | 65 79 77 6f 72 64 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 64 65 6e 6f 74 65 20 61 20 74 | eyword.can.be.used.to.denote.a.t |
| e5e20 | 6f 70 2d 6c 65 76 65 6c 20 62 6c 6f 63 6b 20 6f 66 20 63 6f 64 65 0a 20 20 20 20 20 20 20 20 20 | op-level.block.of.code.......... |
| e5e40 | 20 20 20 75 73 65 64 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 62 65 68 61 76 69 6f 72 20 6d 65 | ...used.to.make.sure.behavior.me |
| e5e60 | 65 74 73 20 65 78 70 65 63 74 61 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 | ets.expectations..............<u |
| e5e80 | 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 |
| e5ea0 | 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 61 3e 3c 2f | .href="#Zig-Test">Zig.Test</a></ |
| e5ec0 | 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>........... |
| e5ee0 | 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 3e | </td>.........</tr>.........<tr> |
| e5f00 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 | ...........<th.scope="row">..... |
| e5f20 | 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ........<pre><code><span.class=" |
| e5f40 | 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 3e 3c 2f 63 6f 64 65 | tok-kw">threadlocal</span></code |
| e5f60 | 3e 3c 2f 70 72 65 3e 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 | ></pre>...........</th>......... |
| e5f80 | 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ..<td>.............<code><span.c |
| e5fa0 | 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 3e | lass="tok-kw">threadlocal</span> |
| e5fc0 | 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 61 | </code>.can.be.used.to.specify.a |
| e5fe0 | 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 20 | .variable.as.thread-local....... |
| e6000 | 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 |
| e6020 | 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 61 | e.also.<a.href="#Thread-Local-Va |
| e6040 | 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 3c | riables">Thread.Local.Variables< |
| e6060 | 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>...... |
| e6080 | 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>........ |
| e60a0 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e | .<tr>...........<th.scope="row"> |
| e60c0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | .............<pre><code><span.cl |
| e60e0 | 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 3c 2f | ass="tok-kw">try</span></code></ |
| e6100 | 70 72 65 3e 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 | pre>...........</th>...........< |
| e6120 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | td>.............<code><span.clas |
| e6140 | 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 76 61 | s="tok-kw">try</span></code>.eva |
| e6160 | 6c 75 61 74 65 73 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 65 78 70 72 65 73 73 69 6f 6e | luates.an.error.union.expression |
| e6180 | 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 69 74 20 69 73 20 61 6e 20 65 72 72 6f 72 2c | ..............If.it.is.an.error, |
| e61a0 | 20 69 74 20 72 65 74 75 72 6e 73 20 66 72 6f 6d 20 74 68 65 20 63 75 72 72 65 6e 74 20 66 75 6e | .it.returns.from.the.current.fun |
| e61c0 | 63 74 69 6f 6e 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 | ction.with.the.same.error....... |
| e61e0 | 20 20 20 20 20 20 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 | .......Otherwise,.the.expression |
| e6200 | 20 72 65 73 75 6c 74 73 20 69 6e 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 76 61 6c 75 65 2e | .results.in.the.unwrapped.value. |
| e6220 | 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>............... |
| e6240 | 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 74 72 79 22 3e 74 72 79 3c | <li>See.also.<a.href="#try">try< |
| e6260 | 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>...... |
| e6280 | 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>........ |
| e62a0 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e | .<tr>...........<th.scope="row"> |
| e62c0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | .............<pre><code><span.cl |
| e62e0 | 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 6f 64 65 3e | ass="tok-kw">union</span></code> |
| e6300 | 3c 2f 70 72 65 3e 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 | </pre>...........</th>.......... |
| e6320 | 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | .<td>.............<code><span.cl |
| e6340 | 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 6f 64 65 3e | ass="tok-kw">union</span></code> |
| e6360 | 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 20 20 3c 75 | .defines.a.union..............<u |
| e6380 | 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 |
| e63a0 | 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 3e 0a 20 20 | .href="#union">union</a></li>... |
| e63c0 | 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>. |
| e63e0 | 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>...... |
| e6400 | 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 | .....<th.scope="row">........... |
| e6420 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ..<pre><code><span.class="tok-kw |
| e6440 | 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 2f 70 72 65 | ">unreachable</span></code></pre |
| e6460 | 3e 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 64 3e | >...........</th>...........<td> |
| e6480 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .............<code><span.class=" |
| e64a0 | 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 |
| e64c0 | 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 61 73 73 65 72 74 20 74 68 61 74 20 63 6f 6e | >.can.be.used.to.assert.that.con |
| e64e0 | 74 72 6f 6c 20 66 6c 6f 77 20 77 69 6c 6c 20 6e 65 76 65 72 20 68 61 70 70 65 6e 20 75 70 6f 6e | trol.flow.will.never.happen.upon |
| e6500 | 20 61 20 70 61 72 74 69 63 75 6c 61 72 20 6c 6f 63 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 | .a.particular.location.......... |
| e6520 | 20 20 20 20 44 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 62 75 69 6c 64 20 6d 6f 64 65 2c | ....Depending.on.the.build.mode, |
| e6540 | 20 3c 63 6f 64 65 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 | .<code><span.class="tok-kw">unre |
| e6560 | 61 63 68 61 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 | achable</span></code>.may.emit.a |
| e6580 | 20 70 61 6e 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 | .panic..............<ul>........ |
| e65a0 | 20 20 20 20 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 | .......<li>Emits.a.panic.in.<cod |
| e65c0 | 65 3e 44 65 62 75 67 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 52 65 6c 65 61 73 65 | e>Debug</code>.and.<code>Release |
| e65e0 | 53 61 66 65 3c 2f 63 6f 64 65 3e 20 6d 6f 64 65 2c 20 6f 72 20 77 68 65 6e 20 75 73 69 6e 67 20 | Safe</code>.mode,.or.when.using. |
| e6600 | 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 3c 2f 6b 62 64 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | <kbd>zig.test</kbd>.</li>....... |
| e6620 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 44 6f 65 73 20 6e 6f 74 20 65 6d 69 74 20 61 20 70 61 6e 69 | ........<li>Does.not.emit.a.pani |
| e6640 | 63 20 69 6e 20 3c 63 6f 64 65 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 63 6f 64 65 3e 20 61 6e | c.in.<code>ReleaseFast</code>.an |
| e6660 | 64 20 3c 63 6f 64 65 3e 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 63 6f 64 65 3e 20 6d 6f 64 65 | d.<code>ReleaseSmall</code>.mode |
| e6680 | 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 61 6c 73 | .</li>...............<li>See.als |
| e66a0 | 6f 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 72 65 61 63 68 61 62 6c 65 22 3e 75 6e 72 65 61 63 68 | o.<a.href="#unreachable">unreach |
| e66c0 | 61 62 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 2f 75 6c 3e 0a | able</a></li>.............</ul>. |
| e66e0 | 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>... |
| e6700 | 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 | ......<tr>...........<th.scope=" |
| e6720 | 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 | row">.............<pre><code><sp |
| e6740 | 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 70 61 63 65 | an.class="tok-kw">usingnamespace |
| e6760 | 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>...........< |
| e6780 | 2f 74 68 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 | /th>...........<td>............. |
| e67a0 | 3c 63 6f 64 65 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 | <code><span.class="tok-kw">using |
| e67c0 | 6e 61 6d 65 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 | namespace</span></code>.is.a.top |
| e67e0 | 2d 6c 65 76 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 | -level.declaration.that.imports. |
| e6800 | 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 6e 73 20 6f 66 20 74 | all.the.public.declarations.of.t |
| e6820 | 68 65 20 6f 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 | he.operand,.............which.mu |
| e6840 | 73 74 20 62 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 | st.be.a.struct,.union,.or.enum,. |
| e6860 | 69 6e 74 6f 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 | into.the.current.scope.......... |
| e6880 | 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 |
| e68a0 | 6c 73 6f 20 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 | lso.<a.href="#usingnamespace">us |
| e68c0 | 69 6e 67 6e 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 | ingnamespace</a></li>........... |
| e68e0 | 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>......... |
| e6900 | 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 68 | </tr>.........<tr>...........<th |
| e6920 | 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c | .scope="row">.............<pre>< |
| e6940 | 63 6f 64 65 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 | code><span.class="tok-kw">var</s |
| e6960 | 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 68 | pan></code></pre>...........</th |
| e6980 | 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 63 6f | >...........<td>.............<co |
| e69a0 | 64 65 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 | de><span.class="tok-kw">var</spa |
| e69c0 | 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 74 68 | n></code>.declares.a.variable.th |
| e69e0 | 61 74 20 6d 61 79 20 62 65 20 6d 6f 64 69 66 69 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | at.may.be.modified.............. |
| e6a00 | 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. |
| e6a20 | 3c 61 20 68 72 65 66 3d 22 23 56 61 72 69 61 62 6c 65 73 22 3e 56 61 72 69 61 62 6c 65 73 3c 2f | <a.href="#Variables">Variables</ |
| e6a40 | 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>....... |
| e6a60 | 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>......... |
| e6a80 | 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a | <tr>...........<th.scope="row">. |
| e6aa0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | ............<pre><code><span.cla |
| e6ac0 | 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 |
| e6ae0 | 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 | e></pre>...........</th>........ |
| e6b00 | 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 3e 3c 73 70 61 6e 20 | ...<td>.............<code><span. |
| e6b20 | 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 3c 2f | class="tok-kw">volatile</span></ |
| e6b40 | 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 64 65 6e 6f 74 65 20 6c 6f 61 64 | code>.can.be.used.to.denote.load |
| e6b60 | 73 20 6f 72 20 73 74 6f 72 65 73 20 6f 66 20 61 20 70 6f 69 6e 74 65 72 20 68 61 76 65 20 73 69 | s.or.stores.of.a.pointer.have.si |
| e6b80 | 64 65 20 65 66 66 65 63 74 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 74 20 63 61 6e 20 61 | de.effects..............It.can.a |
| e6ba0 | 6c 73 6f 20 6d 6f 64 69 66 79 20 61 6e 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 20 65 78 | lso.modify.an.inline.assembly.ex |
| e6bc0 | 70 72 65 73 73 69 6f 6e 20 74 6f 20 64 65 6e 6f 74 65 20 69 74 20 68 61 73 20 73 69 64 65 20 65 | pression.to.denote.it.has.side.e |
| e6be0 | 66 66 65 63 74 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 | ffects..............<ul>........ |
| e6c00 | 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 76 6f | .......<li>See.also.<a.href="#vo |
| e6c20 | 6c 61 74 69 6c 65 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 | latile">volatile</a>,.<a.href="# |
| e6c40 | 41 73 73 65 6d 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 | Assembly">Assembly</a></li>..... |
| e6c60 | 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>... |
| e6c80 | 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>........ |
| e6ca0 | 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ...<th.scope="row">............. |
| e6cc0 | 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | <pre><code><span.class="tok-kw"> |
| e6ce0 | 77 68 69 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 20 | while</span></code></pre>....... |
| e6d00 | 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 | ....</th>...........<td>........ |
| e6d20 | 20 20 20 20 20 41 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .....A.<code><span.class="tok-kw |
| e6d40 | 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 |
| e6d60 | 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. |
| e6d80 | 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 |
| e6da0 | 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. |
| e6dc0 | 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 |
| e6de0 | 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. |
| e6e00 | 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.......... |
| e6e20 | 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 |
| e6e40 | 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></ |
| e6e60 | 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>........... |
| e6e80 | 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 2f 74 62 | </td>.........</tr>.........</tb |
| e6ea0 | 6f 64 79 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 | ody>.......</table>.......</div> |
| e6ec0 | 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 41 70 70 65 6e 64 69 78 22 | ...............<h2.id="Appendix" |
| e6ee0 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 70 70 65 6e 64 69 78 22 3e 41 70 70 65 6e 64 69 | ><a.href="#toc-Appendix">Appendi |
| e6f00 | 78 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 70 70 65 | x</a>.<a.class="hdr".href="#Appe |
| e6f20 | 6e 64 69 78 22 3e 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 | ndix">..</a></h2>........<h3.id= |
| e6f40 | 22 43 6f 6e 74 61 69 6e 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6f 6e 74 61 | "Containers"><a.href="#toc-Conta |
| e6f60 | 69 6e 65 72 73 22 3e 43 6f 6e 74 61 69 6e 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | iners">Containers</a>.<a.class=" |
| e6f80 | 68 64 72 22 20 68 72 65 66 3d 22 23 43 6f 6e 74 61 69 6e 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f | hdr".href="#Containers">..</a></ |
| e6fa0 | 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 3c 65 6d 3e 63 6f 6e 74 61 | h3>........<p>.......A.<em>conta |
| e6fc0 | 69 6e 65 72 3c 2f 65 6d 3e 20 69 6e 20 5a 69 67 20 69 73 20 61 6e 79 20 73 79 6e 74 61 63 74 69 | iner</em>.in.Zig.is.any.syntacti |
| e6fe0 | 63 61 6c 20 63 6f 6e 73 74 72 75 63 74 20 74 68 61 74 20 61 63 74 73 20 61 73 20 61 20 6e 61 6d | cal.construct.that.acts.as.a.nam |
| e7000 | 65 73 70 61 63 65 20 74 6f 20 68 6f 6c 64 20 3c 61 20 68 72 65 66 3d 22 23 43 6f 6e 74 61 69 6e | espace.to.hold.<a.href="#Contain |
| e7020 | 65 72 2d 4c 65 76 65 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 76 61 72 69 61 62 6c 65 3c 2f 61 3e | er-Level-Variables">variable</a> |
| e7040 | 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 73 22 3e 66 75 6e 63 74 69 | .and.<a.href="#Functions">functi |
| e7060 | 6f 6e 3c 2f 61 3e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 43 6f 6e 74 61 | on</a>.declarations........Conta |
| e7080 | 69 6e 65 72 73 20 61 72 65 20 61 6c 73 6f 20 74 79 70 65 20 64 65 66 69 6e 69 74 69 6f 6e 73 20 | iners.are.also.type.definitions. |
| e70a0 | 77 68 69 63 68 20 63 61 6e 20 62 65 20 69 6e 73 74 61 6e 74 69 61 74 65 64 2e 0a 20 20 20 20 20 | which.can.be.instantiated....... |
| e70c0 | 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 53 74 72 75 63 74 73 3c 2f 61 3e 2c 20 | .<a.href="#struct">Structs</a>,. |
| e70e0 | 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 2c 20 3c 61 20 68 72 | <a.href="#enum">enums</a>,.<a.hr |
| e7100 | 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d | ef="#union">unions</a>,.<a.href= |
| e7120 | 22 23 6f 70 61 71 75 65 22 3e 6f 70 61 71 75 65 73 3c 2f 61 3e 2c 20 61 6e 64 20 65 76 65 6e 20 | "#opaque">opaques</a>,.and.even. |
| e7140 | 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 73 20 74 68 65 6d 73 65 6c 76 65 73 20 61 72 65 20 | Zig.source.files.themselves.are. |
| e7160 | 63 6f 6e 74 61 69 6e 65 72 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | containers........</p>.......<p> |
| e7180 | 0a 20 20 20 20 20 20 41 6c 74 68 6f 75 67 68 20 63 6f 6e 74 61 69 6e 65 72 73 20 28 65 78 63 65 | .......Although.containers.(exce |
| e71a0 | 70 74 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 73 29 20 75 73 65 20 63 75 72 6c 79 20 62 | pt.Zig.source.files).use.curly.b |
| e71c0 | 72 61 63 65 73 20 74 6f 20 73 75 72 72 6f 75 6e 64 20 74 68 65 69 72 20 64 65 66 69 6e 69 74 69 | races.to.surround.their.definiti |
| e71e0 | 6f 6e 2c 20 74 68 65 79 20 73 68 6f 75 6c 64 20 6e 6f 74 20 62 65 20 63 6f 6e 66 75 73 65 64 20 | on,.they.should.not.be.confused. |
| e7200 | 77 69 74 68 20 3c 61 20 68 72 65 66 3d 22 23 42 6c 6f 63 6b 73 22 3e 62 6c 6f 63 6b 73 3c 2f 61 | with.<a.href="#Blocks">blocks</a |
| e7220 | 3e 20 6f 72 20 66 75 6e 63 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 43 6f 6e 74 61 69 6e 65 72 73 | >.or.functions........Containers |
| e7240 | 20 64 6f 20 6e 6f 74 20 63 6f 6e 74 61 69 6e 20 73 74 61 74 65 6d 65 6e 74 73 2e 0a 20 20 20 20 | .do.not.contain.statements...... |
| e7260 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 47 72 61 | ..</p>...............<h3.id="Gra |
| e7280 | 6d 6d 61 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 47 72 61 6d 6d 61 72 22 3e 47 72 61 | mmar"><a.href="#toc-Grammar">Gra |
| e72a0 | 6d 6d 61 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 47 | mmar</a>.<a.class="hdr".href="#G |
| e72c0 | 72 61 6d 6d 61 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 | rammar">..</a></h3>........<figu |
| e72e0 | 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 70 65 67 2d 63 61 70 22 3e 3c | re><figcaption.class="peg-cap">< |
| e7300 | 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 67 72 61 6d 6d 61 72 2e 79 3c 2f 63 69 74 | cite.class="file">grammar.y</cit |
| e7320 | 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 52 6f 6f 74 20 26 | e></figcaption><pre><code>Root.& |
| e7340 | 6c 74 3b 2d 20 73 6b 69 70 20 63 6f 6e 74 61 69 6e 65 72 5f 64 6f 63 5f 63 6f 6d 6d 65 6e 74 3f | lt;-.skip.container_doc_comment? |
| e7360 | 20 43 6f 6e 74 61 69 6e 65 72 4d 65 6d 62 65 72 73 20 65 6f 66 0a 0a 23 20 2a 2a 2a 20 54 6f 70 | .ContainerMembers.eof..#.***.Top |
| e7380 | 20 6c 65 76 65 6c 20 2a 2a 2a 0a 43 6f 6e 74 61 69 6e 65 72 4d 65 6d 62 65 72 73 20 26 6c 74 3b | .level.***.ContainerMembers.< |
| e73a0 | 2d 20 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 61 72 61 74 69 6f 6e 2a 20 28 43 6f 6e 74 61 69 6e | -.ContainerDeclaration*.(Contain |
| e73c0 | 65 72 46 69 65 6c 64 20 43 4f 4d 4d 41 29 2a 20 28 43 6f 6e 74 61 69 6e 65 72 46 69 65 6c 64 20 | erField.COMMA)*.(ContainerField. |
| e73e0 | 2f 20 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 61 72 61 74 69 6f 6e 2a 29 0a 0a 43 6f 6e 74 61 69 | /.ContainerDeclaration*)..Contai |
| e7400 | 6e 65 72 44 65 63 6c 61 72 61 74 69 6f 6e 20 26 6c 74 3b 2d 20 54 65 73 74 44 65 63 6c 20 2f 20 | nerDeclaration.<-.TestDecl./. |
| e7420 | 43 6f 6d 70 74 69 6d 65 44 65 63 6c 20 2f 20 64 6f 63 5f 63 6f 6d 6d 65 6e 74 3f 20 4b 45 59 57 | ComptimeDecl./.doc_comment?.KEYW |
| e7440 | 4f 52 44 5f 70 75 62 3f 20 44 65 63 6c 0a 0a 54 65 73 74 44 65 63 6c 20 26 6c 74 3b 2d 20 4b 45 | ORD_pub?.Decl..TestDecl.<-.KE |
| e7460 | 59 57 4f 52 44 5f 74 65 73 74 20 28 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 4e 47 4c 45 20 | YWORD_test.(STRINGLITERALSINGLE. |
| e7480 | 2f 20 49 44 45 4e 54 49 46 49 45 52 29 3f 20 42 6c 6f 63 6b 0a 0a 43 6f 6d 70 74 69 6d 65 44 65 | /.IDENTIFIER)?.Block..ComptimeDe |
| e74a0 | 63 6c 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 6d 65 20 42 6c 6f 63 6b 0a | cl.<-.KEYWORD_comptime.Block. |
| e74c0 | 0a 44 65 63 6c 0a 20 20 20 20 26 6c 74 3b 2d 20 28 4b 45 59 57 4f 52 44 5f 65 78 70 6f 72 74 20 | .Decl.....<-.(KEYWORD_export. |
| e74e0 | 2f 20 4b 45 59 57 4f 52 44 5f 65 78 74 65 72 6e 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 | /.KEYWORD_extern.STRINGLITERALSI |
| e7500 | 4e 47 4c 45 3f 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 52 44 | NGLE?./.KEYWORD_inline./.KEYWORD |
| e7520 | 5f 6e 6f 69 6e 6c 69 6e 65 29 3f 20 46 6e 50 72 6f 74 6f 20 28 53 45 4d 49 43 4f 4c 4f 4e 20 2f | _noinline)?.FnProto.(SEMICOLON./ |
| e7540 | 20 42 6c 6f 63 6b 29 0a 20 20 20 20 20 2f 20 28 4b 45 59 57 4f 52 44 5f 65 78 70 6f 72 74 20 2f | .Block)....../.(KEYWORD_export./ |
| e7560 | 20 4b 45 59 57 4f 52 44 5f 65 78 74 65 72 6e 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 4e | .KEYWORD_extern.STRINGLITERALSIN |
| e7580 | 47 4c 45 3f 29 3f 20 4b 45 59 57 4f 52 44 5f 74 68 72 65 61 64 6c 6f 63 61 6c 3f 20 47 6c 6f 62 | GLE?)?.KEYWORD_threadlocal?.Glob |
| e75a0 | 61 6c 56 61 72 44 65 63 6c 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 75 73 69 6e 67 6e 61 | alVarDecl....../.KEYWORD_usingna |
| e75c0 | 6d 65 73 70 61 63 65 20 45 78 70 72 20 53 45 4d 49 43 4f 4c 4f 4e 0a 0a 46 6e 50 72 6f 74 6f 20 | mespace.Expr.SEMICOLON..FnProto. |
| e75e0 | 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 66 6e 20 49 44 45 4e 54 49 46 49 45 52 3f 20 4c 50 41 | <-.KEYWORD_fn.IDENTIFIER?.LPA |
| e7600 | 52 45 4e 20 50 61 72 61 6d 44 65 63 6c 4c 69 73 74 20 52 50 41 52 45 4e 20 42 79 74 65 41 6c 69 | REN.ParamDeclList.RPAREN.ByteAli |
| e7620 | 67 6e 3f 20 41 64 64 72 53 70 61 63 65 3f 20 4c 69 6e 6b 53 65 63 74 69 6f 6e 3f 20 43 61 6c 6c | gn?.AddrSpace?.LinkSection?.Call |
| e7640 | 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 45 78 70 72 0a | Conv?.EXCLAMATIONMARK?.TypeExpr. |
| e7660 | 0a 56 61 72 44 65 63 6c 50 72 6f 74 6f 20 26 6c 74 3b 2d 20 28 4b 45 59 57 4f 52 44 5f 63 6f 6e | .VarDeclProto.<-.(KEYWORD_con |
| e7680 | 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 |
| e76a0 | 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 41 64 64 72 53 70 | LON.TypeExpr)?.ByteAlign?.AddrSp |
| e76c0 | 61 63 65 3f 20 4c 69 6e 6b 53 65 63 74 69 6f 6e 3f 0a 0a 47 6c 6f 62 61 6c 56 61 72 44 65 63 6c | ace?.LinkSection?..GlobalVarDecl |
| e76e0 | 20 26 6c 74 3b 2d 20 56 61 72 44 65 63 6c 50 72 6f 74 6f 20 28 45 51 55 41 4c 20 45 78 70 72 29 | .<-.VarDeclProto.(EQUAL.Expr) |
| e7700 | 3f 20 53 45 4d 49 43 4f 4c 4f 4e 0a 0a 43 6f 6e 74 61 69 6e 65 72 46 69 65 6c 64 20 26 6c 74 3b | ?.SEMICOLON..ContainerField.< |
| e7720 | 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 65 3f | -.doc_comment?.KEYWORD_comptime? |
| e7740 | 20 21 4b 45 59 57 4f 52 44 5f 66 6e 20 28 49 44 45 4e 54 49 46 49 45 52 20 43 4f 4c 4f 4e 29 3f | .!KEYWORD_fn.(IDENTIFIER.COLON)? |
| e7760 | 20 54 79 70 65 45 78 70 72 20 42 79 74 65 41 6c 69 67 6e 3f 20 28 45 51 55 41 4c 20 45 78 70 72 | .TypeExpr.ByteAlign?.(EQUAL.Expr |
| e7780 | 29 3f 0a 0a 23 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 | )?..#.***.Block.Level.***.Statem |
| e77a0 | 65 6e 74 0a 20 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 20 43 | ent.....<-.KEYWORD_comptime.C |
| e77c0 | 6f 6d 70 74 69 6d 65 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 | omptimeStatement....../.KEYWORD_ |
| e77e0 | 6e 6f 73 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 | nosuspend.BlockExprStatement.... |
| e7800 | 20 20 2f 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 | ../.KEYWORD_suspend.BlockExprSta |
| e7820 | 74 65 6d 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 | tement....../.KEYWORD_defer.Bloc |
| e7840 | 6b 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 65 72 | kExprStatement....../.KEYWORD_er |
| e7860 | 72 64 65 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 | rdefer.Payload?.BlockExprStateme |
| e7880 | 6e 74 0a 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 | nt....../.IfStatement....../.Lab |
| e78a0 | 65 6c 65 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 | eledStatement....../.SwitchExpr. |
| e78c0 | 20 20 20 20 20 2f 20 56 61 72 44 65 63 6c 45 78 70 72 53 74 61 74 65 6d 65 6e 74 0a 0a 43 6f 6d | ...../.VarDeclExprStatement..Com |
| e78e0 | 70 74 69 6d 65 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 26 6c 74 3b 2d 20 42 6c 6f 63 6b 45 78 | ptimeStatement.....<-.BlockEx |
| e7900 | 70 72 0a 20 20 20 20 20 2f 20 56 61 72 44 65 63 6c 45 78 70 72 53 74 61 74 65 6d 65 6e 74 0a 0a | pr....../.VarDeclExprStatement.. |
| e7920 | 49 66 53 74 61 74 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 | IfStatement.....<-.IfPrefix.B |
| e7940 | 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 79 6c 6f 61 64 3f | lockExpr.(.KEYWORD_else.Payload? |
| e7960 | 20 53 74 61 74 65 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 | .Statement.)?....../.IfPrefix.As |
| e7980 | 73 69 67 6e 45 78 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 | signExpr.(.SEMICOLON./.KEYWORD_e |
| e79a0 | 6c 73 65 20 50 61 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 | lse.Payload?.Statement.)..Labele |
| e79c0 | 64 53 74 61 74 65 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 | dStatement.<-.BlockLabel?.(Bl |
| e79e0 | 6f 63 6b 20 2f 20 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 | ock./.LoopStatement)..LoopStatem |
| e7a00 | 65 6e 74 20 26 6c 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 | ent.<-.KEYWORD_inline?.(ForSt |
| e7a20 | 61 74 65 6d 65 6e 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 | atement./.WhileStatement)..ForSt |
| e7a40 | 61 74 65 6d 65 6e 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 | atement.....<-.ForPrefix.Bloc |
| e7a60 | 6b 45 78 70 72 20 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 | kExpr.(.KEYWORD_else.Statement.) |
| e7a80 | 3f 0a 20 20 20 20 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 | ?....../.ForPrefix.AssignExpr.(. |
| e7aa0 | 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 53 74 61 74 65 6d 65 | SEMICOLON./.KEYWORD_else.Stateme |
| e7ac0 | 6e 74 20 29 0a 0a 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 | nt.)..WhileStatement.....<-.W |
| e7ae0 | 68 69 6c 65 50 72 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 | hilePrefix.BlockExpr.(.KEYWORD_e |
| e7b00 | 6c 73 65 20 50 61 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 | lse.Payload?.Statement.)?....../ |
| e7b20 | 20 57 68 69 6c 65 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 | .WhilePrefix.AssignExpr.(.SEMICO |
| e7b40 | 4c 4f 4e 20 2f 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 | LON./.KEYWORD_else.Payload?.Stat |
| e7b60 | 65 6d 65 6e 74 20 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 | ement.)..BlockExprStatement..... |
| e7b80 | 26 6c 74 3b 2d 20 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 | <-.BlockExpr....../.AssignExp |
| e7ba0 | 72 20 53 45 4d 49 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 | r.SEMICOLON..BlockExpr.<-.Blo |
| e7bc0 | 63 6b 4c 61 62 65 6c 3f 20 42 6c 6f 63 6b 0a 0a 23 20 41 6e 20 65 78 70 72 65 73 73 69 6f 6e 2c | ckLabel?.Block..#.An.expression, |
| e7be0 | 20 61 73 73 69 67 6e 6d 65 6e 74 2c 20 6f 72 20 61 6e 79 20 64 65 73 74 72 75 63 74 75 72 65 2c | .assignment,.or.any.destructure, |
| e7c00 | 20 61 73 20 61 20 73 74 61 74 65 6d 65 6e 74 2e 0a 56 61 72 44 65 63 6c 45 78 70 72 53 74 61 74 | .as.a.statement..VarDeclExprStat |
| e7c20 | 65 6d 65 6e 74 0a 20 20 20 20 26 6c 74 3b 2d 20 56 61 72 44 65 63 6c 50 72 6f 74 6f 20 28 43 4f | ement.....<-.VarDeclProto.(CO |
| e7c40 | 4d 4d 41 20 28 56 61 72 44 65 63 6c 50 72 6f 74 6f 20 2f 20 45 78 70 72 29 29 2a 20 45 51 55 41 | MMA.(VarDeclProto./.Expr))*.EQUA |
| e7c60 | 4c 20 45 78 70 72 20 53 45 4d 49 43 4f 4c 4f 4e 0a 20 20 20 20 20 2f 20 45 78 70 72 20 28 41 73 | L.Expr.SEMICOLON....../.Expr.(As |
| e7c80 | 73 69 67 6e 4f 70 20 45 78 70 72 20 2f 20 28 43 4f 4d 4d 41 20 28 56 61 72 44 65 63 6c 50 72 6f | signOp.Expr./.(COMMA.(VarDeclPro |
| e7ca0 | 74 6f 20 2f 20 45 78 70 72 29 29 2b 20 45 51 55 41 4c 20 45 78 70 72 29 3f 20 53 45 4d 49 43 4f | to./.Expr))+.EQUAL.Expr)?.SEMICO |
| e7cc0 | 4c 4f 4e 0a 0a 23 20 2a 2a 2a 20 45 78 70 72 65 73 73 69 6f 6e 20 4c 65 76 65 6c 20 2a 2a 2a 0a | LON..#.***.Expression.Level.***. |
| e7ce0 | 0a 23 20 41 6e 20 61 73 73 69 67 6e 6d 65 6e 74 20 6f 72 20 61 20 64 65 73 74 72 75 63 74 75 72 | .#.An.assignment.or.a.destructur |
| e7d00 | 65 20 77 68 6f 73 65 20 4c 48 53 20 61 72 65 20 61 6c 6c 20 6c 76 61 6c 75 65 20 65 78 70 72 65 | e.whose.LHS.are.all.lvalue.expre |
| e7d20 | 73 73 69 6f 6e 73 2e 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 | ssions..AssignExpr.<-.Expr.(A |
| e7d40 | 73 73 69 67 6e 4f 70 20 45 78 70 72 20 2f 20 28 43 4f 4d 4d 41 20 45 78 70 72 29 2b 20 45 51 55 | ssignOp.Expr./.(COMMA.Expr)+.EQU |
| e7d60 | 41 4c 20 45 78 70 72 29 3f 0a 0a 53 69 6e 67 6c 65 41 73 73 69 67 6e 45 78 70 72 20 26 6c 74 3b | AL.Expr)?..SingleAssignExpr.< |
| e7d80 | 2d 20 45 78 70 72 20 28 41 73 73 69 67 6e 4f 70 20 45 78 70 72 29 3f 0a 0a 45 78 70 72 20 26 6c | -.Expr.(AssignOp.Expr)?..Expr.&l |
| e7da0 | 74 3b 2d 20 42 6f 6f 6c 4f 72 45 78 70 72 0a 0a 42 6f 6f 6c 4f 72 45 78 70 72 20 26 6c 74 3b 2d | t;-.BoolOrExpr..BoolOrExpr.<- |
| e7dc0 | 20 42 6f 6f 6c 41 6e 64 45 78 70 72 20 28 4b 45 59 57 4f 52 44 5f 6f 72 20 42 6f 6f 6c 41 6e 64 | .BoolAndExpr.(KEYWORD_or.BoolAnd |
| e7de0 | 45 78 70 72 29 2a 0a 0a 42 6f 6f 6c 41 6e 64 45 78 70 72 20 26 6c 74 3b 2d 20 43 6f 6d 70 61 72 | Expr)*..BoolAndExpr.<-.Compar |
| e7e00 | 65 45 78 70 72 20 28 4b 45 59 57 4f 52 44 5f 61 6e 64 20 43 6f 6d 70 61 72 65 45 78 70 72 29 2a | eExpr.(KEYWORD_and.CompareExpr)* |
| e7e20 | 0a 0a 43 6f 6d 70 61 72 65 45 78 70 72 20 26 6c 74 3b 2d 20 42 69 74 77 69 73 65 45 78 70 72 20 | ..CompareExpr.<-.BitwiseExpr. |
| e7e40 | 28 43 6f 6d 70 61 72 65 4f 70 20 42 69 74 77 69 73 65 45 78 70 72 29 3f 0a 0a 42 69 74 77 69 73 | (CompareOp.BitwiseExpr)?..Bitwis |
| e7e60 | 65 45 78 70 72 20 26 6c 74 3b 2d 20 42 69 74 53 68 69 66 74 45 78 70 72 20 28 42 69 74 77 69 73 | eExpr.<-.BitShiftExpr.(Bitwis |
| e7e80 | 65 4f 70 20 42 69 74 53 68 69 66 74 45 78 70 72 29 2a 0a 0a 42 69 74 53 68 69 66 74 45 78 70 72 | eOp.BitShiftExpr)*..BitShiftExpr |
| e7ea0 | 20 26 6c 74 3b 2d 20 41 64 64 69 74 69 6f 6e 45 78 70 72 20 28 42 69 74 53 68 69 66 74 4f 70 20 | .<-.AdditionExpr.(BitShiftOp. |
| e7ec0 | 41 64 64 69 74 69 6f 6e 45 78 70 72 29 2a 0a 0a 41 64 64 69 74 69 6f 6e 45 78 70 72 20 26 6c 74 | AdditionExpr)*..AdditionExpr.< |
| e7ee0 | 3b 2d 20 4d 75 6c 74 69 70 6c 79 45 78 70 72 20 28 41 64 64 69 74 69 6f 6e 4f 70 20 4d 75 6c 74 | ;-.MultiplyExpr.(AdditionOp.Mult |
| e7f00 | 69 70 6c 79 45 78 70 72 29 2a 0a 0a 4d 75 6c 74 69 70 6c 79 45 78 70 72 20 26 6c 74 3b 2d 20 50 | iplyExpr)*..MultiplyExpr.<-.P |
| e7f20 | 72 65 66 69 78 45 78 70 72 20 28 4d 75 6c 74 69 70 6c 79 4f 70 20 50 72 65 66 69 78 45 78 70 72 | refixExpr.(MultiplyOp.PrefixExpr |
| e7f40 | 29 2a 0a 0a 50 72 65 66 69 78 45 78 70 72 20 26 6c 74 3b 2d 20 50 72 65 66 69 78 4f 70 2a 20 50 | )*..PrefixExpr.<-.PrefixOp*.P |
| e7f60 | 72 69 6d 61 72 79 45 78 70 72 0a 0a 50 72 69 6d 61 72 79 45 78 70 72 0a 20 20 20 20 26 6c 74 3b | rimaryExpr..PrimaryExpr.....< |
| e7f80 | 2d 20 41 73 6d 45 78 70 72 0a 20 20 20 20 20 2f 20 49 66 45 78 70 72 0a 20 20 20 20 20 2f 20 4b | -.AsmExpr....../.IfExpr....../.K |
| e7fa0 | 45 59 57 4f 52 44 5f 62 72 65 61 6b 20 42 72 65 61 6b 4c 61 62 65 6c 3f 20 45 78 70 72 3f 0a 20 | EYWORD_break.BreakLabel?.Expr?.. |
| e7fc0 | 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 6d 65 20 45 78 70 72 0a 20 20 20 20 | ..../.KEYWORD_comptime.Expr..... |
| e7fe0 | 20 2f 20 4b 45 59 57 4f 52 44 5f 6e 6f 73 75 73 70 65 6e 64 20 45 78 70 72 0a 20 20 20 20 20 2f | ./.KEYWORD_nosuspend.Expr....../ |
| e8000 | 20 4b 45 59 57 4f 52 44 5f 63 6f 6e 74 69 6e 75 65 20 42 72 65 61 6b 4c 61 62 65 6c 3f 0a 20 20 | .KEYWORD_continue.BreakLabel?... |
| e8020 | 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 72 65 73 75 6d 65 20 45 78 70 72 0a 20 20 20 20 20 2f 20 | .../.KEYWORD_resume.Expr....../. |
| e8040 | 4b 45 59 57 4f 52 44 5f 72 65 74 75 72 6e 20 45 78 70 72 3f 0a 20 20 20 20 20 2f 20 42 6c 6f 63 | KEYWORD_return.Expr?....../.Bloc |
| e8060 | 6b 4c 61 62 65 6c 3f 20 4c 6f 6f 70 45 78 70 72 0a 20 20 20 20 20 2f 20 42 6c 6f 63 6b 0a 20 20 | kLabel?.LoopExpr....../.Block... |
| e8080 | 20 20 20 2f 20 43 75 72 6c 79 53 75 66 66 69 78 45 78 70 72 0a 0a 49 66 45 78 70 72 20 26 6c 74 | .../.CurlySuffixExpr..IfExpr.< |
| e80a0 | 3b 2d 20 49 66 50 72 65 66 69 78 20 45 78 70 72 20 28 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 50 | ;-.IfPrefix.Expr.(KEYWORD_else.P |
| e80c0 | 61 79 6c 6f 61 64 3f 20 45 78 70 72 29 3f 0a 0a 42 6c 6f 63 6b 20 26 6c 74 3b 2d 20 4c 42 52 41 | ayload?.Expr)?..Block.<-.LBRA |
| e80e0 | 43 45 20 53 74 61 74 65 6d 65 6e 74 2a 20 52 42 52 41 43 45 0a 0a 4c 6f 6f 70 45 78 70 72 20 26 | CE.Statement*.RBRACE..LoopExpr.& |
| e8100 | 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 69 6e 6c 69 6e 65 3f 20 28 46 6f 72 45 78 70 72 20 2f 20 | lt;-.KEYWORD_inline?.(ForExpr./. |
| e8120 | 57 68 69 6c 65 45 78 70 72 29 0a 0a 46 6f 72 45 78 70 72 20 26 6c 74 3b 2d 20 46 6f 72 50 72 65 | WhileExpr)..ForExpr.<-.ForPre |
| e8140 | 66 69 78 20 45 78 70 72 20 28 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 45 78 70 72 29 3f 0a 0a 57 | fix.Expr.(KEYWORD_else.Expr)?..W |
| e8160 | 68 69 6c 65 45 78 70 72 20 26 6c 74 3b 2d 20 57 68 69 6c 65 50 72 65 66 69 78 20 45 78 70 72 20 | hileExpr.<-.WhilePrefix.Expr. |
| e8180 | 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 29 3f 0a 0a 43 | (KEYWORD_else.Payload?.Expr)?..C |
| e81a0 | 75 72 6c 79 53 75 66 66 69 78 45 78 70 72 20 26 6c 74 3b 2d 20 54 79 70 65 45 78 70 72 20 49 6e | urlySuffixExpr.<-.TypeExpr.In |
| e81c0 | 69 74 4c 69 73 74 3f 0a 0a 49 6e 69 74 4c 69 73 74 0a 20 20 20 20 26 6c 74 3b 2d 20 4c 42 52 41 | itList?..InitList.....<-.LBRA |
| e81e0 | 43 45 20 46 69 65 6c 64 49 6e 69 74 20 28 43 4f 4d 4d 41 20 46 69 65 6c 64 49 6e 69 74 29 2a 20 | CE.FieldInit.(COMMA.FieldInit)*. |
| e8200 | 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 45 78 70 72 | COMMA?.RBRACE....../.LBRACE.Expr |
| e8220 | 20 28 43 4f 4d 4d 41 20 45 78 70 72 29 2a 20 43 4f 4d 4d 41 3f 20 52 42 52 41 43 45 0a 20 20 20 | .(COMMA.Expr)*.COMMA?.RBRACE.... |
| e8240 | 20 20 2f 20 4c 42 52 41 43 45 20 52 42 52 41 43 45 0a 0a 54 79 70 65 45 78 70 72 20 26 6c 74 3b | ../.LBRACE.RBRACE..TypeExpr.< |
| e8260 | 2d 20 50 72 65 66 69 78 54 79 70 65 4f 70 2a 20 45 72 72 6f 72 55 6e 69 6f 6e 45 78 70 72 0a 0a | -.PrefixTypeOp*.ErrorUnionExpr.. |
| e8280 | 45 72 72 6f 72 55 6e 69 6f 6e 45 78 70 72 20 26 6c 74 3b 2d 20 53 75 66 66 69 78 45 78 70 72 20 | ErrorUnionExpr.<-.SuffixExpr. |
| e82a0 | 28 45 58 43 4c 41 4d 41 54 49 4f 4e 4d 41 52 4b 20 54 79 70 65 45 78 70 72 29 3f 0a 0a 53 75 66 | (EXCLAMATIONMARK.TypeExpr)?..Suf |
| e82c0 | 66 69 78 45 78 70 72 0a 20 20 20 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 61 73 79 6e 63 20 | fixExpr.....<-.KEYWORD_async. |
| e82e0 | 50 72 69 6d 61 72 79 54 79 70 65 45 78 70 72 20 53 75 66 66 69 78 4f 70 2a 20 46 6e 43 61 6c 6c | PrimaryTypeExpr.SuffixOp*.FnCall |
| e8300 | 41 72 67 75 6d 65 6e 74 73 0a 20 20 20 20 20 2f 20 50 72 69 6d 61 72 79 54 79 70 65 45 78 70 72 | Arguments....../.PrimaryTypeExpr |
| e8320 | 20 28 53 75 66 66 69 78 4f 70 20 2f 20 46 6e 43 61 6c 6c 41 72 67 75 6d 65 6e 74 73 29 2a 0a 0a | .(SuffixOp./.FnCallArguments)*.. |
| e8340 | 50 72 69 6d 61 72 79 54 79 70 65 45 78 70 72 0a 20 20 20 20 26 6c 74 3b 2d 20 42 55 49 4c 54 49 | PrimaryTypeExpr.....<-.BUILTI |
| e8360 | 4e 49 44 45 4e 54 49 46 49 45 52 20 46 6e 43 61 6c 6c 41 72 67 75 6d 65 6e 74 73 0a 20 20 20 20 | NIDENTIFIER.FnCallArguments..... |
| e8380 | 20 2f 20 43 48 41 52 5f 4c 49 54 45 52 41 4c 0a 20 20 20 20 20 2f 20 43 6f 6e 74 61 69 6e 65 72 | ./.CHAR_LITERAL....../.Container |
| e83a0 | 44 65 63 6c 0a 20 20 20 20 20 2f 20 44 4f 54 20 49 44 45 4e 54 49 46 49 45 52 0a 20 20 20 20 20 | Decl....../.DOT.IDENTIFIER...... |
| e83c0 | 2f 20 44 4f 54 20 49 6e 69 74 4c 69 73 74 0a 20 20 20 20 20 2f 20 45 72 72 6f 72 53 65 74 44 65 | /.DOT.InitList....../.ErrorSetDe |
| e83e0 | 63 6c 0a 20 20 20 20 20 2f 20 46 4c 4f 41 54 0a 20 20 20 20 20 2f 20 46 6e 50 72 6f 74 6f 0a 20 | cl....../.FLOAT....../.FnProto.. |
| e8400 | 20 20 20 20 2f 20 47 72 6f 75 70 65 64 45 78 70 72 0a 20 20 20 20 20 2f 20 4c 61 62 65 6c 65 64 | ..../.GroupedExpr....../.Labeled |
| e8420 | 54 79 70 65 45 78 70 72 0a 20 20 20 20 20 2f 20 49 44 45 4e 54 49 46 49 45 52 0a 20 20 20 20 20 | TypeExpr....../.IDENTIFIER...... |
| e8440 | 2f 20 49 66 54 79 70 65 45 78 70 72 0a 20 20 20 20 20 2f 20 49 4e 54 45 47 45 52 0a 20 20 20 20 | /.IfTypeExpr....../.INTEGER..... |
| e8460 | 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 6d 65 20 54 79 70 65 45 78 70 72 0a 20 20 20 | ./.KEYWORD_comptime.TypeExpr.... |
| e8480 | 20 20 2f 20 4b 45 59 57 4f 52 44 5f 65 72 72 6f 72 20 44 4f 54 20 49 44 45 4e 54 49 46 49 45 52 | ../.KEYWORD_error.DOT.IDENTIFIER |
| e84a0 | 0a 20 20 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 | ....../.KEYWORD_anyframe....../. |
| e84c0 | 4b 45 59 57 4f 52 44 5f 75 6e 72 65 61 63 68 61 62 6c 65 0a 20 20 20 20 20 2f 20 53 54 52 49 4e | KEYWORD_unreachable....../.STRIN |
| e84e0 | 47 4c 49 54 45 52 41 4c 0a 20 20 20 20 20 2f 20 53 77 69 74 63 68 45 78 70 72 0a 0a 43 6f 6e 74 | GLITERAL....../.SwitchExpr..Cont |
| e8500 | 61 69 6e 65 72 44 65 63 6c 20 26 6c 74 3b 2d 20 28 4b 45 59 57 4f 52 44 5f 65 78 74 65 72 6e 20 | ainerDecl.<-.(KEYWORD_extern. |
| e8520 | 2f 20 4b 45 59 57 4f 52 44 5f 70 61 63 6b 65 64 29 3f 20 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c | /.KEYWORD_packed)?.ContainerDecl |
| e8540 | 41 75 74 6f 0a 0a 45 72 72 6f 72 53 65 74 44 65 63 6c 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 | Auto..ErrorSetDecl.<-.KEYWORD |
| e8560 | 5f 65 72 72 6f 72 20 4c 42 52 41 43 45 20 49 64 65 6e 74 69 66 69 65 72 4c 69 73 74 20 52 42 52 | _error.LBRACE.IdentifierList.RBR |
| e8580 | 41 43 45 0a 0a 47 72 6f 75 70 65 64 45 78 70 72 20 26 6c 74 3b 2d 20 4c 50 41 52 45 4e 20 45 78 | ACE..GroupedExpr.<-.LPAREN.Ex |
| e85a0 | 70 72 20 52 50 41 52 45 4e 0a 0a 49 66 54 79 70 65 45 78 70 72 20 26 6c 74 3b 2d 20 49 66 50 72 | pr.RPAREN..IfTypeExpr.<-.IfPr |
| e85c0 | 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 61 79 6c | efix.TypeExpr.(KEYWORD_else.Payl |
| e85e0 | 6f 61 64 3f 20 54 79 70 65 45 78 70 72 29 3f 0a 0a 4c 61 62 65 6c 65 64 54 79 70 65 45 78 70 72 | oad?.TypeExpr)?..LabeledTypeExpr |
| e8600 | 0a 20 20 20 20 26 6c 74 3b 2d 20 42 6c 6f 63 6b 4c 61 62 65 6c 20 42 6c 6f 63 6b 0a 20 20 20 20 | .....<-.BlockLabel.Block..... |
| e8620 | 20 2f 20 42 6c 6f 63 6b 4c 61 62 65 6c 3f 20 4c 6f 6f 70 54 79 70 65 45 78 70 72 0a 0a 4c 6f 6f | ./.BlockLabel?.LoopTypeExpr..Loo |
| e8640 | 70 54 79 70 65 45 78 70 72 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 69 6e 6c 69 6e 65 3f 20 | pTypeExpr.<-.KEYWORD_inline?. |
| e8660 | 28 46 6f 72 54 79 70 65 45 78 70 72 20 2f 20 57 68 69 6c 65 54 79 70 65 45 78 70 72 29 0a 0a 46 | (ForTypeExpr./.WhileTypeExpr)..F |
| e8680 | 6f 72 54 79 70 65 45 78 70 72 20 26 6c 74 3b 2d 20 46 6f 72 50 72 65 66 69 78 20 54 79 70 65 45 | orTypeExpr.<-.ForPrefix.TypeE |
| e86a0 | 78 70 72 20 28 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 54 79 70 65 45 78 70 72 29 3f 0a 0a 57 68 | xpr.(KEYWORD_else.TypeExpr)?..Wh |
| e86c0 | 69 6c 65 54 79 70 65 45 78 70 72 20 26 6c 74 3b 2d 20 57 68 69 6c 65 50 72 65 66 69 78 20 54 79 | ileTypeExpr.<-.WhilePrefix.Ty |
| e86e0 | 70 65 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 54 79 | peExpr.(KEYWORD_else.Payload?.Ty |
| e8700 | 70 65 45 78 70 72 29 3f 0a 0a 53 77 69 74 63 68 45 78 70 72 20 26 6c 74 3b 2d 20 4b 45 59 57 4f | peExpr)?..SwitchExpr.<-.KEYWO |
| e8720 | 52 44 5f 73 77 69 74 63 68 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 20 4c 42 52 | RD_switch.LPAREN.Expr.RPAREN.LBR |
| e8740 | 41 43 45 20 53 77 69 74 63 68 50 72 6f 6e 67 4c 69 73 74 20 52 42 52 41 43 45 0a 0a 23 20 2a 2a | ACE.SwitchProngList.RBRACE..#.** |
| e8760 | 2a 20 41 73 73 65 6d 62 6c 79 20 2a 2a 2a 0a 41 73 6d 45 78 70 72 20 26 6c 74 3b 2d 20 4b 45 59 | *.Assembly.***.AsmExpr.<-.KEY |
| e8780 | 57 4f 52 44 5f 61 73 6d 20 4b 45 59 57 4f 52 44 5f 76 6f 6c 61 74 69 6c 65 3f 20 4c 50 41 52 45 | WORD_asm.KEYWORD_volatile?.LPARE |
| e87a0 | 4e 20 45 78 70 72 20 41 73 6d 4f 75 74 70 75 74 3f 20 52 50 41 52 45 4e 0a 0a 41 73 6d 4f 75 74 | N.Expr.AsmOutput?.RPAREN..AsmOut |
| e87c0 | 70 75 74 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 41 73 6d 4f 75 74 70 75 74 4c 69 73 74 20 41 73 | put.<-.COLON.AsmOutputList.As |
| e87e0 | 6d 49 6e 70 75 74 3f 0a 0a 41 73 6d 4f 75 74 70 75 74 49 74 65 6d 20 26 6c 74 3b 2d 20 4c 42 52 | mInput?..AsmOutputItem.<-.LBR |
| e8800 | 41 43 4b 45 54 20 49 44 45 4e 54 49 46 49 45 52 20 52 42 52 41 43 4b 45 54 20 53 54 52 49 4e 47 | ACKET.IDENTIFIER.RBRACKET.STRING |
| e8820 | 4c 49 54 45 52 41 4c 20 4c 50 41 52 45 4e 20 28 4d 49 4e 55 53 52 41 52 52 4f 57 20 54 79 70 65 | LITERAL.LPAREN.(MINUSRARROW.Type |
| e8840 | 45 78 70 72 20 2f 20 49 44 45 4e 54 49 46 49 45 52 29 20 52 50 41 52 45 4e 0a 0a 41 73 6d 49 6e | Expr./.IDENTIFIER).RPAREN..AsmIn |
| e8860 | 70 75 74 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 41 73 6d 49 6e 70 75 74 4c 69 73 74 20 41 73 6d | put.<-.COLON.AsmInputList.Asm |
| e8880 | 43 6c 6f 62 62 65 72 73 3f 0a 0a 41 73 6d 49 6e 70 75 74 49 74 65 6d 20 26 6c 74 3b 2d 20 4c 42 | Clobbers?..AsmInputItem.<-.LB |
| e88a0 | 52 41 43 4b 45 54 20 49 44 45 4e 54 49 46 49 45 52 20 52 42 52 41 43 4b 45 54 20 53 54 52 49 4e | RACKET.IDENTIFIER.RBRACKET.STRIN |
| e88c0 | 47 4c 49 54 45 52 41 4c 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 0a 0a 41 73 6d | GLITERAL.LPAREN.Expr.RPAREN..Asm |
| e88e0 | 43 6c 6f 62 62 65 72 73 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 53 74 72 69 6e 67 4c 69 73 74 0a | Clobbers.<-.COLON.StringList. |
| e8900 | 0a 23 20 2a 2a 2a 20 48 65 6c 70 65 72 20 67 72 61 6d 6d 61 72 20 2a 2a 2a 0a 42 72 65 61 6b 4c | .#.***.Helper.grammar.***.BreakL |
| e8920 | 61 62 65 6c 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 49 44 45 4e 54 49 46 49 45 52 0a 0a 42 6c 6f | abel.<-.COLON.IDENTIFIER..Blo |
| e8940 | 63 6b 4c 61 62 65 6c 20 26 6c 74 3b 2d 20 49 44 45 4e 54 49 46 49 45 52 20 43 4f 4c 4f 4e 0a 0a | ckLabel.<-.IDENTIFIER.COLON.. |
| e8960 | 46 69 65 6c 64 49 6e 69 74 20 26 6c 74 3b 2d 20 44 4f 54 20 49 44 45 4e 54 49 46 49 45 52 20 45 | FieldInit.<-.DOT.IDENTIFIER.E |
| e8980 | 51 55 41 4c 20 45 78 70 72 0a 0a 57 68 69 6c 65 43 6f 6e 74 69 6e 75 65 45 78 70 72 20 26 6c 74 | QUAL.Expr..WhileContinueExpr.< |
| e89a0 | 3b 2d 20 43 4f 4c 4f 4e 20 4c 50 41 52 45 4e 20 41 73 73 69 67 6e 45 78 70 72 20 52 50 41 52 45 | ;-.COLON.LPAREN.AssignExpr.RPARE |
| e89c0 | 4e 0a 0a 4c 69 6e 6b 53 65 63 74 69 6f 6e 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 6c 69 6e | N..LinkSection.<-.KEYWORD_lin |
| e89e0 | 6b 73 65 63 74 69 6f 6e 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 0a 0a 41 64 64 | ksection.LPAREN.Expr.RPAREN..Add |
| e8a00 | 72 53 70 61 63 65 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 61 64 64 72 73 70 61 63 65 20 4c | rSpace.<-.KEYWORD_addrspace.L |
| e8a20 | 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 0a 0a 23 20 46 6e 20 73 70 65 63 69 66 69 63 | PAREN.Expr.RPAREN..#.Fn.specific |
| e8a40 | 0a 43 61 6c 6c 43 6f 6e 76 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 63 61 6c 6c 63 6f 6e 76 | .CallConv.<-.KEYWORD_callconv |
| e8a60 | 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 0a 0a 50 61 72 61 6d 44 65 63 6c 0a 20 | .LPAREN.Expr.RPAREN..ParamDecl.. |
| e8a80 | 20 20 20 26 6c 74 3b 2d 20 64 6f 63 5f 63 6f 6d 6d 65 6e 74 3f 20 28 4b 45 59 57 4f 52 44 5f 6e | ...<-.doc_comment?.(KEYWORD_n |
| e8aa0 | 6f 61 6c 69 61 73 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 6d 65 29 3f 20 28 49 44 45 | oalias./.KEYWORD_comptime)?.(IDE |
| e8ac0 | 4e 54 49 46 49 45 52 20 43 4f 4c 4f 4e 29 3f 20 50 61 72 61 6d 54 79 70 65 0a 20 20 20 20 20 2f | NTIFIER.COLON)?.ParamType....../ |
| e8ae0 | 20 44 4f 54 33 0a 0a 50 61 72 61 6d 54 79 70 65 0a 20 20 20 20 26 6c 74 3b 2d 20 4b 45 59 57 4f | .DOT3..ParamType.....<-.KEYWO |
| e8b00 | 52 44 5f 61 6e 79 74 79 70 65 0a 20 20 20 20 20 2f 20 54 79 70 65 45 78 70 72 0a 0a 23 20 43 6f | RD_anytype....../.TypeExpr..#.Co |
| e8b20 | 6e 74 72 6f 6c 20 66 6c 6f 77 20 70 72 65 66 69 78 65 73 0a 49 66 50 72 65 66 69 78 20 26 6c 74 | ntrol.flow.prefixes.IfPrefix.< |
| e8b40 | 3b 2d 20 4b 45 59 57 4f 52 44 5f 69 66 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e | ;-.KEYWORD_if.LPAREN.Expr.RPAREN |
| e8b60 | 20 50 74 72 50 61 79 6c 6f 61 64 3f 0a 0a 57 68 69 6c 65 50 72 65 66 69 78 20 26 6c 74 3b 2d 20 | .PtrPayload?..WhilePrefix.<-. |
| e8b80 | 4b 45 59 57 4f 52 44 5f 77 68 69 6c 65 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e | KEYWORD_while.LPAREN.Expr.RPAREN |
| e8ba0 | 20 50 74 72 50 61 79 6c 6f 61 64 3f 20 57 68 69 6c 65 43 6f 6e 74 69 6e 75 65 45 78 70 72 3f 0a | .PtrPayload?.WhileContinueExpr?. |
| e8bc0 | 0a 46 6f 72 50 72 65 66 69 78 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 66 6f 72 20 4c 50 41 | .ForPrefix.<-.KEYWORD_for.LPA |
| e8be0 | 52 45 4e 20 46 6f 72 41 72 67 75 6d 65 6e 74 73 4c 69 73 74 20 52 50 41 52 45 4e 20 50 74 72 4c | REN.ForArgumentsList.RPAREN.PtrL |
| e8c00 | 69 73 74 50 61 79 6c 6f 61 64 0a 0a 23 20 50 61 79 6c 6f 61 64 73 0a 50 61 79 6c 6f 61 64 20 26 | istPayload..#.Payloads.Payload.& |
| e8c20 | 6c 74 3b 2d 20 50 49 50 45 20 49 44 45 4e 54 49 46 49 45 52 20 50 49 50 45 0a 0a 50 74 72 50 61 | lt;-.PIPE.IDENTIFIER.PIPE..PtrPa |
| e8c40 | 79 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 | yload.<-.PIPE.ASTERISK?.IDENT |
| e8c60 | 49 46 49 45 52 20 50 49 50 45 0a 0a 50 74 72 49 6e 64 65 78 50 61 79 6c 6f 61 64 20 26 6c 74 3b | IFIER.PIPE..PtrIndexPayload.< |
| e8c80 | 2d 20 50 49 50 45 20 41 53 54 45 52 49 53 4b 3f 20 49 44 45 4e 54 49 46 49 45 52 20 28 43 4f 4d | -.PIPE.ASTERISK?.IDENTIFIER.(COM |
| e8ca0 | 4d 41 20 49 44 45 4e 54 49 46 49 45 52 29 3f 20 50 49 50 45 0a 0a 50 74 72 4c 69 73 74 50 61 79 | MA.IDENTIFIER)?.PIPE..PtrListPay |
| e8cc0 | 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 |
| e8ce0 | 46 49 45 52 20 28 43 4f 4d 4d 41 20 41 53 54 45 52 49 53 4b 3f 20 49 44 45 4e 54 49 46 49 45 52 | FIER.(COMMA.ASTERISK?.IDENTIFIER |
| e8d00 | 29 2a 20 43 4f 4d 4d 41 3f 20 50 49 50 45 0a 0a 23 20 53 77 69 74 63 68 20 73 70 65 63 69 66 69 | )*.COMMA?.PIPE..#.Switch.specifi |
| e8d20 | 63 0a 53 77 69 74 63 68 50 72 6f 6e 67 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 69 6e 6c 69 | c.SwitchProng.<-.KEYWORD_inli |
| e8d40 | 6e 65 3f 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 49 6e | ne?.SwitchCase.EQUALRARROW.PtrIn |
| e8d60 | 64 65 78 50 61 79 6c 6f 61 64 3f 20 53 69 6e 67 6c 65 41 73 73 69 67 6e 45 78 70 72 0a 0a 53 77 | dexPayload?.SingleAssignExpr..Sw |
| e8d80 | 69 74 63 68 43 61 73 65 0a 20 20 20 20 26 6c 74 3b 2d 20 53 77 69 74 63 68 49 74 65 6d 20 28 43 | itchCase.....<-.SwitchItem.(C |
| e8da0 | 4f 4d 4d 41 20 53 77 69 74 63 68 49 74 65 6d 29 2a 20 43 4f 4d 4d 41 3f 0a 20 20 20 20 20 2f 20 | OMMA.SwitchItem)*.COMMA?....../. |
| e8dc0 | 4b 45 59 57 4f 52 44 5f 65 6c 73 65 0a 0a 53 77 69 74 63 68 49 74 65 6d 20 26 6c 74 3b 2d 20 45 | KEYWORD_else..SwitchItem.<-.E |
| e8de0 | 78 70 72 20 28 44 4f 54 33 20 45 78 70 72 29 3f 0a 0a 23 20 46 6f 72 20 73 70 65 63 69 66 69 63 | xpr.(DOT3.Expr)?..#.For.specific |
| e8e00 | 0a 46 6f 72 41 72 67 75 6d 65 6e 74 73 4c 69 73 74 20 26 6c 74 3b 2d 20 46 6f 72 49 74 65 6d 20 | .ForArgumentsList.<-.ForItem. |
| e8e20 | 28 43 4f 4d 4d 41 20 46 6f 72 49 74 65 6d 29 2a 20 43 4f 4d 4d 41 3f 0a 0a 46 6f 72 49 74 65 6d | (COMMA.ForItem)*.COMMA?..ForItem |
| e8e40 | 20 26 6c 74 3b 2d 20 45 78 70 72 20 28 44 4f 54 32 20 45 78 70 72 3f 29 3f 0a 0a 23 20 4f 70 65 | .<-.Expr.(DOT2.Expr?)?..#.Ope |
| e8e60 | 72 61 74 6f 72 73 0a 41 73 73 69 67 6e 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 41 53 54 45 52 49 | rators.AssignOp.....<-.ASTERI |
| e8e80 | 53 4b 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 41 53 54 45 52 49 53 4b 50 49 50 45 45 51 55 41 4c | SKEQUAL....../.ASTERISKPIPEEQUAL |
| e8ea0 | 0a 20 20 20 20 20 2f 20 53 4c 41 53 48 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 50 45 52 43 45 4e | ....../.SLASHEQUAL....../.PERCEN |
| e8ec0 | 54 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 50 4c 55 53 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 50 | TEQUAL....../.PLUSEQUAL....../.P |
| e8ee0 | 4c 55 53 50 49 50 45 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 | LUSPIPEEQUAL....../.MINUSEQUAL.. |
| e8f00 | 20 20 20 20 2f 20 4d 49 4e 55 53 50 49 50 45 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 4c 41 52 52 | ..../.MINUSPIPEEQUAL....../.LARR |
| e8f20 | 4f 57 32 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 4c 41 52 52 4f 57 32 50 49 50 45 45 51 55 41 4c | OW2EQUAL....../.LARROW2PIPEEQUAL |
| e8f40 | 0a 20 20 20 20 20 2f 20 52 41 52 52 4f 57 32 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 41 4d 50 45 | ....../.RARROW2EQUAL....../.AMPE |
| e8f60 | 52 53 41 4e 44 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 43 41 52 45 54 45 51 55 41 4c 0a 20 20 20 | RSANDEQUAL....../.CARETEQUAL.... |
| e8f80 | 20 20 2f 20 50 49 50 45 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 41 53 54 45 52 49 53 4b 50 45 52 | ../.PIPEEQUAL....../.ASTERISKPER |
| e8fa0 | 43 45 4e 54 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 50 4c 55 53 50 45 52 43 45 4e 54 45 51 55 41 | CENTEQUAL....../.PLUSPERCENTEQUA |
| e8fc0 | 4c 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 50 45 52 43 45 4e 54 45 51 55 41 4c 0a 20 20 20 20 20 | L....../.MINUSPERCENTEQUAL...... |
| e8fe0 | 2f 20 45 51 55 41 4c 0a 0a 43 6f 6d 70 61 72 65 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 45 51 55 | /.EQUAL..CompareOp.....<-.EQU |
| e9000 | 41 4c 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 45 58 43 4c 41 4d 41 54 49 4f 4e 4d 41 52 4b 45 51 | ALEQUAL....../.EXCLAMATIONMARKEQ |
| e9020 | 55 41 4c 0a 20 20 20 20 20 2f 20 4c 41 52 52 4f 57 0a 20 20 20 20 20 2f 20 52 41 52 52 4f 57 0a | UAL....../.LARROW....../.RARROW. |
| e9040 | 20 20 20 20 20 2f 20 4c 41 52 52 4f 57 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 52 41 52 52 4f 57 | ...../.LARROWEQUAL....../.RARROW |
| e9060 | 45 51 55 41 4c 0a 0a 42 69 74 77 69 73 65 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 41 4d 50 45 52 | EQUAL..BitwiseOp.....<-.AMPER |
| e9080 | 53 41 4e 44 0a 20 20 20 20 20 2f 20 43 41 52 45 54 0a 20 20 20 20 20 2f 20 50 49 50 45 0a 20 20 | SAND....../.CARET....../.PIPE... |
| e90a0 | 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 6f 72 65 6c 73 65 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f | .../.KEYWORD_orelse....../.KEYWO |
| e90c0 | 52 44 5f 63 61 74 63 68 20 50 61 79 6c 6f 61 64 3f 0a 0a 42 69 74 53 68 69 66 74 4f 70 0a 20 20 | RD_catch.Payload?..BitShiftOp... |
| e90e0 | 20 20 26 6c 74 3b 2d 20 4c 41 52 52 4f 57 32 0a 20 20 20 20 20 2f 20 52 41 52 52 4f 57 32 0a 20 | ..<-.LARROW2....../.RARROW2.. |
| e9100 | 20 20 20 20 2f 20 4c 41 52 52 4f 57 32 50 49 50 45 0a 0a 41 64 64 69 74 69 6f 6e 4f 70 0a 20 20 | ..../.LARROW2PIPE..AdditionOp... |
| e9120 | 20 20 26 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 | ..<-.PLUS....../.MINUS....../ |
| e9140 | 20 50 4c 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 | .PLUS2....../.PLUSPERCENT....../ |
| e9160 | 20 4d 49 4e 55 53 50 45 52 43 45 4e 54 0a 20 20 20 20 20 2f 20 50 4c 55 53 50 49 50 45 0a 20 20 | .MINUSPERCENT....../.PLUSPIPE... |
| e9180 | 20 20 20 2f 20 4d 49 4e 55 53 50 49 50 45 0a 0a 4d 75 6c 74 69 70 6c 79 4f 70 0a 20 20 20 20 26 | .../.MINUSPIPE..MultiplyOp.....& |
| e91a0 | 6c 74 3b 2d 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 | lt;-.PIPE2....../.ASTERISK...... |
| e91c0 | 2f 20 53 4c 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 | /.SLASH....../.PERCENT....../.AS |
| e91e0 | 54 45 52 49 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 20 | TERISK2....../.ASTERISKPERCENT.. |
| e9200 | 20 20 20 20 2f 20 41 53 54 45 52 49 53 4b 50 49 50 45 0a 0a 50 72 65 66 69 78 4f 70 0a 20 20 20 | ..../.ASTERISKPIPE..PrefixOp.... |
| e9220 | 20 26 6c 74 3b 2d 20 45 58 43 4c 41 4d 41 54 49 4f 4e 4d 41 52 4b 0a 20 20 20 20 20 2f 20 4d 49 | .<-.EXCLAMATIONMARK....../.MI |
| e9240 | 4e 55 53 0a 20 20 20 20 20 2f 20 54 49 4c 44 45 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 50 45 52 | NUS....../.TILDE....../.MINUSPER |
| e9260 | 43 45 4e 54 0a 20 20 20 20 20 2f 20 41 4d 50 45 52 53 41 4e 44 0a 20 20 20 20 20 2f 20 4b 45 59 | CENT....../.AMPERSAND....../.KEY |
| e9280 | 57 4f 52 44 5f 74 72 79 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 61 77 61 69 74 0a 0a 50 | WORD_try....../.KEYWORD_await..P |
| e92a0 | 72 65 66 69 78 54 79 70 65 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 51 55 45 53 54 49 4f 4e 4d 41 | refixTypeOp.....<-.QUESTIONMA |
| e92c0 | 52 4b 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6e 79 66 72 61 6d 65 20 4d 49 4e 55 53 | RK....../.KEYWORD_anyframe.MINUS |
| e92e0 | 52 41 52 52 4f 57 0a 20 20 20 20 20 2f 20 53 6c 69 63 65 54 79 70 65 53 74 61 72 74 20 28 42 79 | RARROW....../.SliceTypeStart.(By |
| e9300 | 74 65 41 6c 69 67 6e 20 2f 20 41 64 64 72 53 70 61 63 65 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f | teAlign./.AddrSpace./.KEYWORD_co |
| e9320 | 6e 73 74 20 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 | nst./.KEYWORD_volatile./.KEYWORD |
| e9340 | 5f 61 6c 6c 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 | _allowzero)*....../.PtrTypeStart |
| e9360 | 20 28 41 64 64 72 53 70 61 63 65 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6c 69 67 6e 20 4c 50 41 52 | .(AddrSpace./.KEYWORD_align.LPAR |
| e9380 | 45 4e 20 45 78 70 72 20 28 43 4f 4c 4f 4e 20 45 78 70 72 20 43 4f 4c 4f 4e 20 45 78 70 72 29 3f | EN.Expr.(COLON.Expr.COLON.Expr)? |
| e93a0 | 20 52 50 41 52 45 4e 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6e 73 74 20 2f 20 4b 45 59 57 4f 52 | .RPAREN./.KEYWORD_const./.KEYWOR |
| e93c0 | 44 5f 76 6f 6c 61 74 69 6c 65 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6c 6c 6f 77 7a 65 72 6f 29 2a | D_volatile./.KEYWORD_allowzero)* |
| e93e0 | 0a 20 20 20 20 20 2f 20 41 72 72 61 79 54 79 70 65 53 74 61 72 74 0a 0a 53 75 66 66 69 78 4f 70 | ....../.ArrayTypeStart..SuffixOp |
| e9400 | 0a 20 20 20 20 26 6c 74 3b 2d 20 4c 42 52 41 43 4b 45 54 20 45 78 70 72 20 28 44 4f 54 32 20 28 | .....<-.LBRACKET.Expr.(DOT2.( |
| e9420 | 45 78 70 72 3f 20 28 43 4f 4c 4f 4e 20 45 78 70 72 29 3f 29 3f 29 3f 20 52 42 52 41 43 4b 45 54 | Expr?.(COLON.Expr)?)?)?.RBRACKET |
| e9440 | 0a 20 20 20 20 20 2f 20 44 4f 54 20 49 44 45 4e 54 49 46 49 45 52 0a 20 20 20 20 20 2f 20 44 4f | ....../.DOT.IDENTIFIER....../.DO |
| e9460 | 54 41 53 54 45 52 49 53 4b 0a 20 20 20 20 20 2f 20 44 4f 54 51 55 45 53 54 49 4f 4e 4d 41 52 4b | TASTERISK....../.DOTQUESTIONMARK |
| e9480 | 0a 0a 46 6e 43 61 6c 6c 41 72 67 75 6d 65 6e 74 73 20 26 6c 74 3b 2d 20 4c 50 41 52 45 4e 20 45 | ..FnCallArguments.<-.LPAREN.E |
| e94a0 | 78 70 72 4c 69 73 74 20 52 50 41 52 45 4e 0a 0a 23 20 50 74 72 20 73 70 65 63 69 66 69 63 0a 53 | xprList.RPAREN..#.Ptr.specific.S |
| e94c0 | 6c 69 63 65 54 79 70 65 53 74 61 72 74 20 26 6c 74 3b 2d 20 4c 42 52 41 43 4b 45 54 20 28 43 4f | liceTypeStart.<-.LBRACKET.(CO |
| e94e0 | 4c 4f 4e 20 45 78 70 72 29 3f 20 52 42 52 41 43 4b 45 54 0a 0a 50 74 72 54 79 70 65 53 74 61 72 | LON.Expr)?.RBRACKET..PtrTypeStar |
| e9500 | 74 0a 20 20 20 20 26 6c 74 3b 2d 20 41 53 54 45 52 49 53 4b 0a 20 20 20 20 20 2f 20 41 53 54 45 | t.....<-.ASTERISK....../.ASTE |
| e9520 | 52 49 53 4b 32 0a 20 20 20 20 20 2f 20 4c 42 52 41 43 4b 45 54 20 41 53 54 45 52 49 53 4b 20 28 | RISK2....../.LBRACKET.ASTERISK.( |
| e9540 | 4c 45 54 54 45 52 43 20 2f 20 43 4f 4c 4f 4e 20 45 78 70 72 29 3f 20 52 42 52 41 43 4b 45 54 0a | LETTERC./.COLON.Expr)?.RBRACKET. |
| e9560 | 0a 41 72 72 61 79 54 79 70 65 53 74 61 72 74 20 26 6c 74 3b 2d 20 4c 42 52 41 43 4b 45 54 20 45 | .ArrayTypeStart.<-.LBRACKET.E |
| e9580 | 78 70 72 20 28 43 4f 4c 4f 4e 20 45 78 70 72 29 3f 20 52 42 52 41 43 4b 45 54 0a 0a 23 20 43 6f | xpr.(COLON.Expr)?.RBRACKET..#.Co |
| e95a0 | 6e 74 61 69 6e 65 72 44 65 63 6c 20 73 70 65 63 69 66 69 63 0a 43 6f 6e 74 61 69 6e 65 72 44 65 | ntainerDecl.specific.ContainerDe |
| e95c0 | 63 6c 41 75 74 6f 20 26 6c 74 3b 2d 20 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 54 79 70 65 20 4c | clAuto.<-.ContainerDeclType.L |
| e95e0 | 42 52 41 43 45 20 63 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 | BRACE.container_doc_comment?.Con |
| e9600 | 74 61 69 6e 65 72 4d 65 6d 62 65 72 73 20 52 42 52 41 43 45 0a 0a 43 6f 6e 74 61 69 6e 65 72 44 | tainerMembers.RBRACE..ContainerD |
| e9620 | 65 63 6c 54 79 70 65 0a 20 20 20 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 73 74 72 75 63 74 | eclType.....<-.KEYWORD_struct |
| e9640 | 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 |
| e9660 | 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 |
| e9680 | 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 |
| e96a0 | 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 |
| e96c0 | 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). |
| e96e0 | 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. |
| e9700 | 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. |
| e9720 | 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.& |
| e9740 | 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 |
| e9760 | 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)? |
| e9780 | 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 |
| e97a0 | 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 |
| e97c0 | 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 |
| e97e0 | 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 |
| e9800 | 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 |
| e9820 | 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.<-.( |
| e9840 | 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 |
| e9860 | 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 |
| e9880 | 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 |
| e98a0 | 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?..#.* |
| e98c0 | 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.& |
| e98e0 | 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 |
| e9900 | 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 |
| e9920 | 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_.< |
| e9940 | 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_ |
| e9960 | 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 |
| e9980 | 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_* |
| e99a0 | 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 |
| e99c0 | 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.< |
| e99e0 | 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'. |
| e9a00 | 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 |
| e9a20 | 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.< |
| e9a40 | 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- |
| e9a60 | 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 |
| e9a80 | 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 |
| e9aa0 | 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.<-. |
| e9ac0 | 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 |
| e9ae0 | 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 |
| e9b00 | 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 |
| e9b20 | 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/ |
| e9b40 | 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 |
| e9b60 | 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/. |
| e9b80 | 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... |
| e9ba0 | 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.#. |
| e9bc0 | 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 |
| e9be0 | 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 |
| e9c00 | 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, |
| e9c20 | 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, |
| e9c40 | 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 |
| e9c60 | 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 |
| e9c80 | 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 |
| e9ca0 | 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]. |
| e9cc0 | 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]. |
| e9ce0 | 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]... |
| e9d00 | 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].#. |
| e9d20 | 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]..... |
| e9d40 | 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_ |
| e9d60 | 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.. |
| e9d80 | 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 |
| e9da0 | 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 |
| e9dc0 | 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.... |
| e9de0 | 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. |
| e9e00 | 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_ |
| e9e20 | 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. |
| e9e40 | 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_ |
| e9e60 | 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...... |
| e9e80 | 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_ |
| e9ea0 | 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 |
| e9ec0 | 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\ |
| e9ee0 | 30 31 33 2d 5c 30 34 36 5c 30 35 30 2d 5c 31 33 33 5c 31 33 35 2d 5c 31 37 37 5d 0a 0a 63 68 61 | 013-\046\050-\133\135-\177]..cha |
| e9f00 | 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 6f | r_escape.....<-."\\x&quo |
| e9f20 | 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 6f | t;.hex.hex....../."\\u{&quo |
| e9f40 | 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 75 | t;.hex+."}"....../.&qu |
| e9f60 | 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 5f | ot;\\".[nr\\t'"].char_ |
| e9f80 | 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 20 | char.....<-.mb_utf8_literal.. |
| e9fa0 | 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 63 | ..../.char_escape....../.ascii_c |
| e9fc0 | 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 5f | har_not_nl_slash_squote..string_ |
| e9fe0 | 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 20 | char.....<-.char_escape...... |
| ea000 | 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 63 | /.[^\\"\n]..container_doc_c |
| ea020 | 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 5d | omment.<-.('//!'.[^\n]*.[.\n] |
| ea040 | 2a 20 73 6b 69 70 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 | *.skip)+.doc_comment.<-.('/// |
| ea060 | 27 20 5b 5e 5c 6e 5d 2a 20 5b 20 5c 6e 5d 2a 20 73 6b 69 70 29 2b 0a 6c 69 6e 65 5f 63 6f 6d 6d | '.[^\n]*.[.\n]*.skip)+.line_comm |
| ea080 | 65 6e 74 20 26 6c 74 3b 2d 20 27 2f 2f 27 20 21 5b 21 2f 5d 5b 5e 5c 6e 5d 2a 20 2f 20 27 2f 2f | ent.<-.'//'.![!/][^\n]*./.'// |
| ea0a0 | 2f 2f 27 20 5b 5e 5c 6e 5d 2a 0a 6c 69 6e 65 5f 73 74 72 69 6e 67 20 26 6c 74 3b 2d 20 28 26 71 | //'.[^\n]*.line_string.<-.(&q |
| ea0c0 | 75 6f 74 3b 5c 5c 5c 5c 26 71 75 6f 74 3b 20 5b 5e 5c 6e 5d 2a 20 5b 20 5c 6e 5d 2a 29 2b 0a 73 | uot;\\\\".[^\n]*.[.\n]*)+.s |
| ea0e0 | 6b 69 70 20 26 6c 74 3b 2d 20 28 5b 20 5c 6e 5d 20 2f 20 6c 69 6e 65 5f 63 6f 6d 6d 65 6e 74 29 | kip.<-.([.\n]./.line_comment) |
| ea100 | 2a 0a 0a 43 48 41 52 5f 4c 49 54 45 52 41 4c 20 26 6c 74 3b 2d 20 26 71 75 6f 74 3b 27 26 71 75 | *..CHAR_LITERAL.<-."'&qu |
| ea120 | 6f 74 3b 20 63 68 61 72 5f 63 68 61 72 20 26 71 75 6f 74 3b 27 26 71 75 6f 74 3b 20 73 6b 69 70 | ot;.char_char."'".skip |
| ea140 | 0a 46 4c 4f 41 54 0a 20 20 20 20 26 6c 74 3b 2d 20 26 71 75 6f 74 3b 30 78 26 71 75 6f 74 3b 20 | .FLOAT.....<-."0x". |
| ea160 | 68 65 78 5f 69 6e 74 20 26 71 75 6f 74 3b 2e 26 71 75 6f 74 3b 20 68 65 78 5f 69 6e 74 20 28 5b | hex_int.".".hex_int.([ |
| ea180 | 70 50 5d 20 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 | pP].[-+]?.dec_int)?.skip....../. |
| ea1a0 | 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 20 64 65 63 5f 69 | .....dec_int.".".dec_i |
| ea1c0 | 6e 74 20 28 5b 65 45 5d 20 5b 2d 2b 5d 3f 20 64 65 63 5f 69 6e 74 29 3f 20 73 6b 69 70 0a 20 20 | nt.([eE].[-+]?.dec_int)?.skip... |
| ea1e0 | 20 20 20 2f 20 26 71 75 6f 74 3b 30 78 26 71 75 6f 74 3b 20 68 65 78 5f 69 6e 74 20 5b 70 50 5d | .../."0x".hex_int.[pP] |
| ea200 | 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 20 20 20 20 20 20 | .[-+]?.dec_int.skip....../...... |
| ea220 | 64 65 63 5f 69 6e 74 20 5b 65 45 5d 20 5b 2d 2b 5d 3f 20 64 65 63 5f 69 6e 74 20 73 6b 69 70 0a | dec_int.[eE].[-+]?.dec_int.skip. |
| ea240 | 49 4e 54 45 47 45 52 0a 20 20 20 20 26 6c 74 3b 2d 20 26 71 75 6f 74 3b 30 62 26 71 75 6f 74 3b | INTEGER.....<-."0b" |
| ea260 | 20 62 69 6e 5f 69 6e 74 20 73 6b 69 70 0a 20 20 20 20 20 2f 20 26 71 75 6f 74 3b 30 6f 26 71 75 | .bin_int.skip....../."0o&qu |
| ea280 | 6f 74 3b 20 6f 63 74 5f 69 6e 74 20 73 6b 69 70 0a 20 20 20 20 20 2f 20 26 71 75 6f 74 3b 30 78 | ot;.oct_int.skip....../."0x |
| ea2a0 | 26 71 75 6f 74 3b 20 68 65 78 5f 69 6e 74 20 73 6b 69 70 0a 20 20 20 20 20 2f 20 20 20 20 20 20 | ".hex_int.skip....../...... |
| ea2c0 | 64 65 63 5f 69 6e 74 20 20 20 73 6b 69 70 0a 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 4e 47 | dec_int...skip.STRINGLITERALSING |
| ea2e0 | 4c 45 20 26 6c 74 3b 2d 20 26 71 75 6f 74 3b 5c 26 71 75 6f 74 3b 26 71 75 6f 74 3b 20 73 74 72 | LE.<-."\"".str |
| ea300 | 69 6e 67 5f 63 68 61 72 2a 20 26 71 75 6f 74 3b 5c 26 71 75 6f 74 3b 26 71 75 6f 74 3b 20 73 6b | ing_char*."\"".sk |
| ea320 | 69 70 0a 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 0a 20 20 20 20 26 6c 74 3b 2d 20 53 54 52 49 4e | ip.STRINGLITERAL.....<-.STRIN |
| ea340 | 47 4c 49 54 45 52 41 4c 53 49 4e 47 4c 45 0a 20 20 20 20 20 2f 20 28 6c 69 6e 65 5f 73 74 72 69 | GLITERALSINGLE....../.(line_stri |
| ea360 | 6e 67 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 29 2b 0a 49 44 45 4e 54 49 | ng.................skip)+.IDENTI |
| ea380 | 46 49 45 52 0a 20 20 20 20 26 6c 74 3b 2d 20 21 6b 65 79 77 6f 72 64 20 5b 41 2d 5a 61 2d 7a 5f | FIER.....<-.!keyword.[A-Za-z_ |
| ea3a0 | 5d 20 5b 41 2d 5a 61 2d 7a 30 2d 39 5f 5d 2a 20 73 6b 69 70 0a 20 20 20 20 20 2f 20 26 71 75 6f | ].[A-Za-z0-9_]*.skip....../.&quo |
| ea3c0 | 74 3b 40 26 71 75 6f 74 3b 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 4e 47 4c 45 0a 42 55 | t;@".STRINGLITERALSINGLE.BU |
| ea3e0 | 49 4c 54 49 4e 49 44 45 4e 54 49 46 49 45 52 20 26 6c 74 3b 2d 20 26 71 75 6f 74 3b 40 26 71 75 | ILTINIDENTIFIER.<-."@&qu |
| ea400 | 6f 74 3b 5b 41 2d 5a 61 2d 7a 5f 5d 5b 41 2d 5a 61 2d 7a 30 2d 39 5f 5d 2a 20 73 6b 69 70 0a 0a | ot;[A-Za-z_][A-Za-z0-9_]*.skip.. |
| ea420 | 0a 41 4d 50 45 52 53 41 4e 44 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 61 6d | .AMPERSAND............<-.'&am |
| ea440 | 70 3b 27 20 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 41 4d 50 45 52 53 41 4e | p;'......![=]......skip.AMPERSAN |
| ea460 | 44 45 51 55 41 4c 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 61 6d 70 3b 3d 27 20 20 20 20 20 | DEQUAL.......<-.'&='..... |
| ea480 | 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 41 53 54 45 52 49 53 4b 20 20 20 20 20 20 20 20 20 | ..........skip.ASTERISK......... |
| ea4a0 | 20 20 20 20 26 6c 74 3b 2d 20 27 2a 27 20 20 20 20 20 20 21 5b 2a 25 3d 7c 5d 20 20 20 73 6b 69 | ....<-.'*'......![*%=|]...ski |
| ea4c0 | 70 0a 41 53 54 45 52 49 53 4b 32 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2a 2a | p.ASTERISK2............<-.'** |
| ea4e0 | 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 45 51 55 | '...............skip.ASTERISKEQU |
| ea500 | 41 4c 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2a 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 | AL........<-.'*='............ |
| ea520 | 20 20 20 73 6b 69 70 0a 41 53 54 45 52 49 53 4b 50 45 52 43 45 4e 54 20 20 20 20 20 20 26 6c 74 | ...skip.ASTERISKPERCENT......< |
| ea540 | 3b 2d 20 27 2a 25 27 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 41 53 54 45 52 | ;-.'*%'.....![=]......skip.ASTER |
| ea560 | 49 53 4b 50 45 52 43 45 4e 54 45 51 55 41 4c 20 26 6c 74 3b 2d 20 27 2a 25 3d 27 20 20 20 20 20 | ISKPERCENTEQUAL.<-.'*%='..... |
| ea580 | 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 41 53 54 45 52 49 53 4b 50 49 50 45 20 20 20 20 20 20 | .........skip.ASTERISKPIPE...... |
| ea5a0 | 20 20 20 26 6c 74 3b 2d 20 27 2a 7c 27 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 | ...<-.'*|'.....![=]......skip |
| ea5c0 | 0a 41 53 54 45 52 49 53 4b 50 49 50 45 45 51 55 41 4c 20 20 20 20 26 6c 74 3b 2d 20 27 2a 7c 3d | .ASTERISKPIPEEQUAL....<-.'*|= |
| ea5e0 | 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 20 20 20 | '..............skip.CARET....... |
| ea600 | 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 20 20 20 | .........<-.'^'......![=].... |
| ea620 | 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 6c 74 3b | ..skip.CARETEQUAL...........< |
| ea640 | 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 4f 4e 20 | -.'^='...............skip.COLON. |
| ea660 | 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 20 20 20 | ...............<-.':'........ |
| ea680 | 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 20 20 20 | ........skip.COMMA.............. |
| ea6a0 | 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 69 70 0a | ..<-.','................skip. |
| ea6c0 | 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 27 20 20 | DOT..................<-.'.'.. |
| ea6e0 | 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 20 20 20 | ....![*.?]....skip.DOT2......... |
| ea700 | 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 20 20 20 | ........<-.'..'.....![.]..... |
| ea720 | 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 74 3b 2d | .skip.DOT3.................<- |
| ea740 | 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 53 54 45 | .'...'..............skip.DOTASTE |
| ea760 | 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 20 20 20 | RISK..........<-.'.*'........ |
| ea780 | 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 20 20 20 | .......skip.DOTQUESTIONMARK..... |
| ea7a0 | 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 70 0a 45 | .<-.'.?'...............skip.E |
| ea7c0 | 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 20 20 20 | QUAL................<-.'='... |
| ea7e0 | 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 41 4c 20 | ...![>=].....skip.EQUALEQUAL. |
| ea800 | 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 20 20 20 | ..........<-.'=='............ |
| ea820 | 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 26 6c 74 | ...skip.EQUALRARROW..........< |
| ea840 | 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 0a 45 58 | ;-.'=>'...............skip.EX |
| ea860 | 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 20 20 20 | CLAMATIONMARK......<-.'!'.... |
| ea880 | 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 41 52 4b | ..![=]......skip.EXCLAMATIONMARK |
| ea8a0 | 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 20 20 73 | EQUAL.<-.'!='...............s |
| ea8c0 | 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 2d 20 27 | kip.LARROW...............<-.' |
| ea8e0 | 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 4c 41 52 | <'......![<=].....skip.LAR |
| ea900 | 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 26 6c 74 | ROW2..............<-.'<< |
| ea920 | 3b 27 20 20 20 20 20 21 5b 3d 7c 5d 20 20 20 20 20 73 6b 69 70 0a 4c 41 52 52 4f 57 32 45 51 55 | ;'.....![=|].....skip.LARROW2EQU |
| ea940 | 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 20 20 20 | AL.........<-.'<<='.... |
| ea960 | 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4c 41 52 52 4f 57 32 50 49 50 45 20 20 20 20 20 20 | ..........skip.LARROW2PIPE...... |
| ea980 | 20 20 20 20 26 6c 74 3b 2d 20 27 26 6c 74 3b 26 6c 74 3b 7c 27 20 20 20 20 21 5b 3d 5d 20 20 20 | ....<-.'<<|'....![=]... |
| ea9a0 | 20 20 20 73 6b 69 70 0a 4c 41 52 52 4f 57 32 50 49 50 45 45 51 55 41 4c 20 20 20 20 20 26 6c 74 | ...skip.LARROW2PIPEEQUAL.....< |
| ea9c0 | 3b 2d 20 27 26 6c 74 3b 26 6c 74 3b 7c 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 | ;-.'<<|='.............skip |
| ea9e0 | 0a 4c 41 52 52 4f 57 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 6c 74 | .LARROWEQUAL..........<-.'< |
| eaa00 | 3b 3d 27 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 45 20 20 20 | ;='...............skip.LBRACE... |
| eaa20 | 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 7b 27 20 20 20 20 20 20 20 20 20 20 20 | ............<-.'{'........... |
| eaa40 | 20 20 20 20 20 73 6b 69 70 0a 4c 42 52 41 43 4b 45 54 20 20 20 20 20 20 20 20 20 20 20 20 20 26 | .....skip.LBRACKET.............& |
| eaa60 | 6c 74 3b 2d 20 27 5b 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4c 50 41 | lt;-.'['................skip.LPA |
| eaa80 | 52 45 4e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 28 27 20 20 20 20 20 | REN...............<-.'('..... |
| eaaa0 | 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4d 49 4e 55 53 20 20 20 20 20 20 20 20 20 20 20 | ...........skip.MINUS........... |
| eaac0 | 20 20 20 20 20 26 6c 74 3b 2d 20 27 2d 27 20 20 20 20 20 20 21 5b 25 3d 26 67 74 3b 7c 5d 20 20 | .....<-.'-'......![%=>|].. |
| eaae0 | 20 73 6b 69 70 0a 4d 49 4e 55 53 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d | .skip.MINUSEQUAL...........<- |
| eab00 | 20 27 2d 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4d 49 4e 55 53 50 45 | .'-='...............skip.MINUSPE |
| eab20 | 52 43 45 4e 54 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2d 25 27 20 20 20 20 20 21 5b 3d | RCENT.........<-.'-%'.....![= |
| eab40 | 5d 20 20 20 20 20 20 73 6b 69 70 0a 4d 49 4e 55 53 50 45 52 43 45 4e 54 45 51 55 41 4c 20 20 20 | ]......skip.MINUSPERCENTEQUAL... |
| eab60 | 20 26 6c 74 3b 2d 20 27 2d 25 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4d | .<-.'-%='..............skip.M |
| eab80 | 49 4e 55 53 50 49 50 45 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2d 7c 27 20 20 | INUSPIPE............<-.'-|'.. |
| eaba0 | 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 4d 49 4e 55 53 50 49 50 45 45 51 55 41 4c | ...![=]......skip.MINUSPIPEEQUAL |
| eabc0 | 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2d 7c 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .......<-.'-|='.............. |
| eabe0 | 73 6b 69 70 0a 4d 49 4e 55 53 52 41 52 52 4f 57 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 | skip.MINUSRARROW..........<-. |
| eac00 | 27 2d 26 67 74 3b 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 50 45 52 43 45 | '->'...............skip.PERCE |
| eac20 | 4e 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 25 27 20 20 20 20 20 20 21 | NT..............<-.'%'......! |
| eac40 | 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 50 45 52 43 45 4e 54 45 51 55 41 4c 20 20 20 20 20 20 | [=]......skip.PERCENTEQUAL...... |
| eac60 | 20 20 20 26 6c 74 3b 2d 20 27 25 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 | ...<-.'%='...............skip |
| eac80 | 0a 50 49 50 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 7c 27 20 | .PIPE.................<-.'|'. |
| eaca0 | 20 20 20 20 20 21 5b 7c 3d 5d 20 20 20 20 20 73 6b 69 70 0a 50 49 50 45 32 20 20 20 20 20 20 20 | .....![|=].....skip.PIPE2....... |
| eacc0 | 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 7c 7c 27 20 20 20 20 20 20 20 20 20 20 20 20 20 | .........<-.'||'............. |
| eace0 | 20 20 73 6b 69 70 0a 50 49 50 45 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b | ..skip.PIPEEQUAL............< |
| ead00 | 2d 20 27 7c 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 50 4c 55 53 20 20 | -.'|='...............skip.PLUS.. |
| ead20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2b 27 20 20 20 20 20 20 21 5b | ...............<-.'+'......![ |
| ead40 | 25 2b 3d 7c 5d 20 20 20 73 6b 69 70 0a 50 4c 55 53 32 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | %+=|]...skip.PLUS2.............. |
| ead60 | 20 20 26 6c 74 3b 2d 20 27 2b 2b 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a | ..<-.'++'...............skip. |
| ead80 | 50 4c 55 53 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2b 3d 27 20 | PLUSEQUAL............<-.'+='. |
| eada0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 50 4c 55 53 50 45 52 43 45 4e 54 20 20 | ..............skip.PLUSPERCENT.. |
| eadc0 | 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2b 25 27 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 | ........<-.'+%'.....![=]..... |
| eade0 | 20 73 6b 69 70 0a 50 4c 55 53 50 45 52 43 45 4e 54 45 51 55 41 4c 20 20 20 20 20 26 6c 74 3b 2d | .skip.PLUSPERCENTEQUAL.....<- |
| eae00 | 20 27 2b 25 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 50 4c 55 53 50 49 50 | .'+%='..............skip.PLUSPIP |
| eae20 | 45 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2b 7c 27 20 20 20 20 20 21 5b 3d | E.............<-.'+|'.....![= |
| eae40 | 5d 20 20 20 20 20 20 73 6b 69 70 0a 50 4c 55 53 50 49 50 45 45 51 55 41 4c 20 20 20 20 20 20 20 | ]......skip.PLUSPIPEEQUAL....... |
| eae60 | 20 26 6c 74 3b 2d 20 27 2b 7c 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4c | .<-.'+|='..............skip.L |
| eae80 | 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 63 27 20 20 20 | ETTERC..............<-.'c'... |
| eaea0 | 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 41 52 4b 20 20 | .............skip.QUESTIONMARK.. |
| eaec0 | 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 20 20 20 20 20 | .......<-.'?'................ |
| eaee0 | 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 6c 74 3b 2d 20 | skip.RARROW...............<-. |
| eaf00 | 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 69 70 0a 52 41 | '>'......![>=].....skip.RA |
| eaf20 | 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 67 74 3b 26 67 | RROW2..............<-.'>&g |
| eaf40 | 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 4f 57 32 45 51 | t;'.....![=]......skip.RARROW2EQ |
| eaf60 | 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 3d 27 20 20 20 | UAL.........<-.'>>='... |
| eaf80 | 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 20 20 20 20 20 | ...........skip.RARROWEQUAL..... |
| eafa0 | 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 20 20 20 20 20 | .....<-.'>='.............. |
| eafc0 | 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 26 6c 74 3b 2d | .skip.RBRACE...............<- |
| eafe0 | 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 52 41 43 4b 45 | .'}'................skip.RBRACKE |
| eb000 | 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 20 20 20 20 20 | T.............<-.']'......... |
| eb020 | 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 20 20 20 20 20 | .......skip.RPAREN.............. |
| eb040 | 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 6b 69 70 0a 53 | .<-.')'................skip.S |
| eb060 | 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 3b 27 20 20 20 | EMICOLON............<-.';'... |
| eb080 | 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 20 20 20 20 20 | .............skip.SLASH......... |
| eb0a0 | 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 20 20 20 20 20 | .......<-.'/'......![=]...... |
| eb0c0 | 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 6c 74 3b 2d 20 | skip.SLASHEQUAL...........<-. |
| eb0e0 | 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 44 45 20 20 20 | '/='...............skip.TILDE... |
| eb100 | 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 20 20 20 20 20 | .............<-.'~'.......... |
| eb120 | 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 3b 2d 20 21 5b | ......skip..end_of_word.<-.![ |
| eb140 | 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 64 64 72 73 70 61 | a-zA-Z0-9_].skip.KEYWORD_addrspa |
| eb160 | 63 65 20 20 20 26 6c 74 3b 2d 20 27 61 64 64 72 73 70 61 63 65 27 20 20 20 65 6e 64 5f 6f 66 5f | ce...<-.'addrspace'...end_of_ |
| eb180 | 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 6c 69 67 6e 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 | word.KEYWORD_align.......<-.' |
| eb1a0 | 61 6c 69 67 6e 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 | align'.......end_of_word.KEYWORD |
| eb1c0 | 5f 61 6c 6c 6f 77 7a 65 72 6f 20 20 20 26 6c 74 3b 2d 20 27 61 6c 6c 6f 77 7a 65 72 6f 27 20 20 | _allowzero...<-.'allowzero'.. |
| eb1e0 | 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 6e 64 20 20 20 20 20 20 20 20 | .end_of_word.KEYWORD_and........ |
| eb200 | 20 26 6c 74 3b 2d 20 27 61 6e 64 27 20 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 | .<-.'and'.........end_of_word |
| eb220 | 0a 4b 45 59 57 4f 52 44 5f 61 6e 79 66 72 61 6d 65 20 20 20 20 26 6c 74 3b 2d 20 27 61 6e 79 66 | .KEYWORD_anyframe....<-.'anyf |
| eb240 | 72 61 6d 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 61 6e 79 | rame'....end_of_word.KEYWORD_any |
| eb260 | 74 79 70 65 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 6e 79 74 79 70 65 27 20 20 20 20 20 65 6e 64 | type.....<-.'anytype'.....end |
| eb280 | 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 73 6d 20 20 20 20 20 20 20 20 20 26 6c 74 | _of_word.KEYWORD_asm.........< |
| eb2a0 | 3b 2d 20 27 61 73 6d 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 | ;-.'asm'.........end_of_word.KEY |
| eb2c0 | 57 4f 52 44 5f 61 73 79 6e 63 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 73 79 6e 63 27 20 20 | WORD_async.......<-.'async'.. |
| eb2e0 | 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 77 61 69 74 20 20 | .....end_of_word.KEYWORD_await.. |
| eb300 | 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 77 61 69 74 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f | .....<-.'await'.......end_of_ |
| eb320 | 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 62 72 65 61 6b 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 | word.KEYWORD_break.......<-.' |
| eb340 | 62 72 65 61 6b 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 | break'.......end_of_word.KEYWORD |
| eb360 | 5f 63 61 6c 6c 63 6f 6e 76 20 20 20 20 26 6c 74 3b 2d 20 27 63 61 6c 6c 63 6f 6e 76 27 20 20 20 | _callconv....<-.'callconv'... |
| eb380 | 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 63 61 74 63 68 20 20 20 20 20 20 | .end_of_word.KEYWORD_catch...... |
| eb3a0 | 20 26 6c 74 3b 2d 20 27 63 61 74 63 68 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 | .<-.'catch'.......end_of_word |
| eb3c0 | 0a 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 6d 65 20 20 20 20 26 6c 74 3b 2d 20 27 63 6f 6d 70 | .KEYWORD_comptime....<-.'comp |
| eb3e0 | 74 69 6d 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 63 6f 6e | time'....end_of_word.KEYWORD_con |
| eb400 | 73 74 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 63 6f 6e 73 74 27 20 20 20 20 20 20 20 65 6e 64 | st.......<-.'const'.......end |
| eb420 | 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 63 6f 6e 74 69 6e 75 65 20 20 20 20 26 6c 74 | _of_word.KEYWORD_continue....< |
| eb440 | 3b 2d 20 27 63 6f 6e 74 69 6e 75 65 27 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 | ;-.'continue'....end_of_word.KEY |
| eb460 | 57 4f 52 44 5f 64 65 66 65 72 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 64 65 66 65 72 27 20 20 | WORD_defer.......<-.'defer'.. |
| eb480 | 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 6c 73 65 20 20 20 | .....end_of_word.KEYWORD_else... |
| eb4a0 | 20 20 20 20 20 26 6c 74 3b 2d 20 27 65 6c 73 65 27 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f | .....<-.'else'........end_of_ |
| eb4c0 | 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 65 6e 75 6d 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 | word.KEYWORD_enum........<-.' |
| eb4e0 | 65 6e 75 6d 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 | enum'........end_of_word.KEYWORD |
| eb500 | 5f 65 72 72 64 65 66 65 72 20 20 20 20 26 6c 74 3b 2d 20 27 65 72 72 64 65 66 65 72 27 20 20 20 | _errdefer....<-.'errdefer'... |
| eb520 | 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 65 72 72 6f 72 20 20 20 20 20 20 | .end_of_word.KEYWORD_error...... |
| eb540 | 20 26 6c 74 3b 2d 20 27 65 72 72 6f 72 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 | .<-.'error'.......end_of_word |
| eb560 | 0a 4b 45 59 57 4f 52 44 5f 65 78 70 6f 72 74 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 65 78 70 6f | .KEYWORD_export......<-.'expo |
| eb580 | 72 74 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 44 5f 65 78 74 | rt'......end_of_word.KEYWORD_ext |
| eb5a0 | 65 72 6e 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 65 78 74 65 72 6e 27 20 20 20 20 20 20 65 6e 64 | ern......<-.'extern'......end |
| eb5c0 | 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 20 20 26 6c 74 | _of_word.KEYWORD_fn..........< |
| eb5e0 | 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 64 0a 4b 45 59 | ;-.'fn'..........end_of_word.KEY |
| eb600 | 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 27 20 20 20 20 | WORD_for.........<-.'for'.... |
| eb620 | 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 20 20 20 20 20 | .....end_of_word.KEYWORD_if..... |
| eb640 | 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 64 5f 6f 66 5f | .....<-.'if'..........end_of_ |
| eb660 | 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 74 3b 2d 20 27 | word.KEYWORD_inline......<-.' |
| eb680 | 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 59 57 4f 52 44 | inline'......end_of_word.KEYWORD |
| eb6a0 | 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 27 20 20 20 20 | _noalias.....<-.'noalias'.... |
| eb6c0 | 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 65 6e 64 20 20 | .end_of_word.KEYWORD_nosuspend.. |
| eb6e0 | 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 5f 77 6f 72 64 | .<-.'nosuspend'...end_of_word |
| eb700 | 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 27 6e 6f 69 6e | .KEYWORD_noinline....<-.'noin |
| eb720 | 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 44 5f 6f 70 61 | line'....end_of_word.KEYWORD_opa |
| eb740 | 71 75 65 20 20 20 20 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 | que......<-.'opaque'......end |
| eb760 | 5f 6f 66 5f 77 6f 72 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 | _of_word.KEYWORD_or..........< |
| eb780 | 3b 2d 20 27 6f 72 27 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 | ;-.'or'..........end_of_word.KEY |
| eb7a0 | 57 4f 52 44 5f 6f 72 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 | WORD_orelse......<-.'orelse'. |
| eb7c0 | 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 70 61 63 6b 65 64 20 | .....end_of_word.KEYWORD_packed. |
| eb7e0 | 20 20 20 20 20 26 6c 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 | .....<-.'packed'......end_of_ |
| eb800 | 77 6f 72 64 0a 4b 45 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 | word.KEYWORD_pub.........<-.' |
| eb820 | 70 75 62 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 | pub'.........end_of_word.KEYWORD |
| eb840 | 5f 72 65 73 75 6d 65 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 | _resume......<-.'resume'..... |
| eb860 | 20 65 6e 64 5f 6f 66 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 | .end_of_word.KEYWORD_return..... |
| eb880 | 20 26 6c 74 3b 2d 20 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 | .<-.'return'......end_of_word |
| eb8a0 | 0a 4b 45 59 57 4f 52 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 | .KEYWORD_linksection.<-.'link |
| eb8c0 | 73 65 63 74 69 6f 6e 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 | section'.end_of_word.KEYWORD_str |
| eb8e0 | 75 63 74 20 20 20 20 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 | uct......<-.'struct'......end |
| eb900 | 5f 6f 66 5f 77 6f 72 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 | _of_word.KEYWORD_suspend.....< |
| eb920 | 3b 2d 20 27 73 75 73 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 | ;-.'suspend'.....end_of_word.KEY |
| eb940 | 57 4f 52 44 5f 73 77 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 | WORD_switch......<-.'switch'. |
| eb960 | 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 74 65 73 74 20 20 20 | .....end_of_word.KEYWORD_test... |
| eb980 | 20 20 20 20 20 26 6c 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 | .....<-.'test'........end_of_ |
| eb9a0 | 77 6f 72 64 0a 4b 45 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 | word.KEYWORD_threadlocal.<-.' |
| eb9c0 | 74 68 72 65 61 64 6c 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 | threadlocal'.end_of_word.KEYWORD |
| eb9e0 | 5f 74 72 79 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 74 72 79 27 20 20 20 20 20 20 20 20 | _try.........<-.'try'........ |
| eba00 | 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 20 | .end_of_word.KEYWORD_union...... |
| eba20 | 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 64 | .<-.'union'.......end_of_word |
| eba40 | 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 65 | .KEYWORD_unreachable.<-.'unre |
| eba60 | 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 69 | achable'.end_of_word.KEYWORD_usi |
| eba80 | 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 63 | ngnamespace.<-.'usingnamespac |
| ebaa0 | 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 20 | e'.end_of_word.KEYWORD_var...... |
| ebac0 | 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 6f | ...<-.'var'.........end_of_wo |
| ebae0 | 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 6f | rd.KEYWORD_volatile....<-.'vo |
| ebb00 | 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 77 | latile'....end_of_word.KEYWORD_w |
| ebb20 | 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 65 | hile.......<-.'while'.......e |
| ebb40 | 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 52 | nd_of_word..keyword.<-.KEYWOR |
| ebb60 | 44 5f 61 64 64 72 73 70 61 63 65 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6c 69 67 6e 20 2f 20 4b 45 | D_addrspace./.KEYWORD_align./.KE |
| ebb80 | 59 57 4f 52 44 5f 61 6c 6c 6f 77 7a 65 72 6f 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6e 64 0a 20 20 | YWORD_allowzero./.KEYWORD_and... |
| ebba0 | 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6e 79 66 72 61 6d 65 20 2f 20 4b 45 59 57 | ......./.KEYWORD_anyframe./.KEYW |
| ebbc0 | 4f 52 44 5f 61 6e 79 74 79 70 65 20 2f 20 4b 45 59 57 4f 52 44 5f 61 73 6d 20 2f 20 4b 45 59 57 | ORD_anytype./.KEYWORD_asm./.KEYW |
| ebbe0 | 4f 52 44 5f 61 73 79 6e 63 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 61 77 61 | ORD_async........../.KEYWORD_awa |
| ebc00 | 69 74 20 2f 20 4b 45 59 57 4f 52 44 5f 62 72 65 61 6b 20 2f 20 4b 45 59 57 4f 52 44 5f 63 61 6c | it./.KEYWORD_break./.KEYWORD_cal |
| ebc20 | 6c 63 6f 6e 76 20 2f 20 4b 45 59 57 4f 52 44 5f 63 61 74 63 68 0a 20 20 20 20 20 20 20 20 20 2f | lconv./.KEYWORD_catch........../ |
| ebc40 | 20 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 6d 65 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6e 73 | .KEYWORD_comptime./.KEYWORD_cons |
| ebc60 | 74 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6e 74 69 6e 75 65 20 2f 20 4b 45 59 57 4f 52 44 5f 64 | t./.KEYWORD_continue./.KEYWORD_d |
| ebc80 | 65 66 65 72 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 2f 20 4b | efer........../.KEYWORD_else./.K |
| ebca0 | 45 59 57 4f 52 44 5f 65 6e 75 6d 20 2f 20 4b 45 59 57 4f 52 44 5f 65 72 72 64 65 66 65 72 20 2f | EYWORD_enum./.KEYWORD_errdefer./ |
| ebcc0 | 20 4b 45 59 57 4f 52 44 5f 65 72 72 6f 72 20 2f 20 4b 45 59 57 4f 52 44 5f 65 78 70 6f 72 74 0a | .KEYWORD_error./.KEYWORD_export. |
| ebce0 | 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 65 78 74 65 72 6e 20 2f 20 4b 45 59 57 | ........./.KEYWORD_extern./.KEYW |
| ebd00 | 4f 52 44 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 | ORD_fn./.KEYWORD_for./.KEYWORD_i |
| ebd20 | 66 0a 20 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 | f........../.KEYWORD_inline./.KE |
| ebd40 | 59 57 4f 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 | YWORD_noalias./.KEYWORD_nosuspen |
| ebd60 | 64 20 2f 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 | d./.KEYWORD_noinline........../. |
| ebd80 | 4b 45 59 57 4f 52 44 5f 6f 70 61 71 75 65 20 2f 20 4b 45 59 57 4f 52 44 5f 6f 72 20 2f 20 4b 45 | KEYWORD_opaque./.KEYWORD_or./.KE |
| ebda0 | 59 57 4f 52 44 5f 6f 72 65 6c 73 65 20 2f 20 4b 45 59 57 4f 52 44 5f 70 61 63 6b 65 64 0a 20 20 | YWORD_orelse./.KEYWORD_packed... |
| ebdc0 | 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 70 75 62 20 2f 20 4b 45 59 57 4f 52 44 5f 72 | ......./.KEYWORD_pub./.KEYWORD_r |
| ebde0 | 65 73 75 6d 65 20 2f 20 4b 45 59 57 4f 52 44 5f 72 65 74 75 72 6e 20 2f 20 4b 45 59 57 4f 52 44 | esume./.KEYWORD_return./.KEYWORD |
| ebe00 | 5f 6c 69 6e 6b 73 65 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f | _linksection........../.KEYWORD_ |
| ebe20 | 73 74 72 75 63 74 20 2f 20 4b 45 59 57 4f 52 44 5f 73 75 73 70 65 6e 64 20 2f 20 4b 45 59 57 4f | struct./.KEYWORD_suspend./.KEYWO |
| ebe40 | 52 44 5f 73 77 69 74 63 68 20 2f 20 4b 45 59 57 4f 52 44 5f 74 65 73 74 0a 20 20 20 20 20 20 20 | RD_switch./.KEYWORD_test........ |
| ebe60 | 20 20 2f 20 4b 45 59 57 4f 52 44 5f 74 68 72 65 61 64 6c 6f 63 61 6c 20 2f 20 4b 45 59 57 4f 52 | ../.KEYWORD_threadlocal./.KEYWOR |
| ebe80 | 44 5f 74 72 79 20 2f 20 4b 45 59 57 4f 52 44 5f 75 6e 69 6f 6e 20 2f 20 4b 45 59 57 4f 52 44 5f | D_try./.KEYWORD_union./.KEYWORD_ |
| ebea0 | 75 6e 72 65 61 63 68 61 62 6c 65 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 75 | unreachable........../.KEYWORD_u |
| ebec0 | 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 20 2f 20 4b 45 59 57 4f 52 44 5f 76 61 72 20 2f 20 4b 45 | singnamespace./.KEYWORD_var./.KE |
| ebee0 | 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 77 68 69 6c 65 3c 2f | YWORD_volatile./.KEYWORD_while</ |
| ebf00 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 | code></pre></figure>............ |
| ebf20 | 20 20 3c 68 33 20 69 64 3d 22 5a 65 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 5a 65 6e | ..<h3.id="Zen"><a.href="#toc-Zen |
| ebf40 | 22 3e 5a 65 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 | ">Zen</a>.<a.class="hdr".href="# |
| ebf60 | 5a 65 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | Zen">..</a></h3>........<ul>.... |
| ebf80 | 20 20 20 20 20 3c 6c 69 3e 43 6f 6d 6d 75 6e 69 63 61 74 65 20 69 6e 74 65 6e 74 20 70 72 65 63 | .....<li>Communicate.intent.prec |
| ebfa0 | 69 73 65 6c 79 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 45 64 67 65 20 63 61 73 | isely.</li>.........<li>Edge.cas |
| ebfc0 | 65 73 20 6d 61 74 74 65 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 61 76 6f | es.matter.</li>.........<li>Favo |
| ebfe0 | 72 20 72 65 61 64 69 6e 67 20 63 6f 64 65 20 6f 76 65 72 20 77 72 69 74 69 6e 67 20 63 6f 64 65 | r.reading.code.over.writing.code |
| ec000 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4f 6e 6c 79 20 6f 6e 65 20 6f 62 76 69 | .</li>.........<li>Only.one.obvi |
| ec020 | 6f 75 73 20 77 61 79 20 74 6f 20 64 6f 20 74 68 69 6e 67 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | ous.way.to.do.things.</li>...... |
| ec040 | 20 20 20 3c 6c 69 3e 52 75 6e 74 69 6d 65 20 63 72 61 73 68 65 73 20 61 72 65 20 62 65 74 74 65 | ...<li>Runtime.crashes.are.bette |
| ec060 | 72 20 74 68 61 6e 20 62 75 67 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f | r.than.bugs.</li>.........<li>Co |
| ec080 | 6d 70 69 6c 65 20 65 72 72 6f 72 73 20 61 72 65 20 62 65 74 74 65 72 20 74 68 61 6e 20 72 75 6e | mpile.errors.are.better.than.run |
| ec0a0 | 74 69 6d 65 20 63 72 61 73 68 65 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 | time.crashes.</li>.........<li>I |
| ec0c0 | 6e 63 72 65 6d 65 6e 74 61 6c 20 69 6d 70 72 6f 76 65 6d 65 6e 74 73 2e 3c 2f 6c 69 3e 0a 20 20 | ncremental.improvements.</li>... |
| ec0e0 | 20 20 20 20 20 20 3c 6c 69 3e 41 76 6f 69 64 20 6c 6f 63 61 6c 20 6d 61 78 69 6d 75 6d 73 2e 3c | ......<li>Avoid.local.maximums.< |
| ec100 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 65 64 75 63 65 20 74 68 65 20 61 6d 6f 75 | /li>.........<li>Reduce.the.amou |
| ec120 | 6e 74 20 6f 6e 65 20 6d 75 73 74 20 72 65 6d 65 6d 62 65 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | nt.one.must.remember.</li>...... |
| ec140 | 20 20 20 3c 6c 69 3e 46 6f 63 75 73 20 6f 6e 20 63 6f 64 65 20 72 61 74 68 65 72 20 74 68 61 6e | ...<li>Focus.on.code.rather.than |
| ec160 | 20 73 74 79 6c 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 65 73 6f 75 72 63 | .style.</li>.........<li>Resourc |
| ec180 | 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 6d 61 79 20 66 61 69 6c 3b 20 72 65 73 6f 75 72 63 65 20 | e.allocation.may.fail;.resource. |
| ec1a0 | 64 65 61 6c 6c 6f 63 61 74 69 6f 6e 20 6d 75 73 74 20 73 75 63 63 65 65 64 2e 3c 2f 6c 69 3e 0a | deallocation.must.succeed.</li>. |
| ec1c0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 4d 65 6d 6f 72 79 20 69 73 20 61 20 72 65 73 6f 75 72 63 65 | ........<li>Memory.is.a.resource |
| ec1e0 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 6f 67 65 74 68 65 72 20 77 65 20 73 | .</li>.........<li>Together.we.s |
| ec200 | 65 72 76 65 20 74 68 65 20 75 73 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e | erve.the.users.</li>.......</ul> |
| ec220 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 2f 6d 61 69 6e 3e 3c 2f 64 69 | .....................</main></di |
| ec240 | 76 3e 0a 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 3c 2f 62 6f 64 79 3e 0a 3c 2f 68 74 6d 6c 3e 0a | v>.....</div>...</body>.</html>. |
| ec260 | 50 4b 01 02 14 00 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 | PK............!Roa.,............ |
| ec280 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6d 69 6d 65 74 79 70 65 50 4b 01 02 14 00 14 00 00 00 | ..............mimetypePK........ |
| ec2a0 | 00 00 00 00 21 52 6f 92 d0 0a fc 00 00 00 fc 00 00 00 16 00 00 00 00 00 00 00 00 00 00 00 00 00 | ....!Ro......................... |
| ec2c0 | 3a 00 00 00 4d 45 54 41 2d 49 4e 46 2f 63 6f 6e 74 61 69 6e 65 72 2e 78 6d 6c 50 4b 01 02 14 00 | :...META-INF/container.xmlPK.... |
| ec2e0 | 14 00 00 00 00 00 00 00 21 52 25 6f 09 dd a9 02 00 00 a9 02 00 00 11 00 00 00 00 00 00 00 00 00 | ........!R%o.................... |
| ec300 | 00 00 00 00 6a 01 00 00 4f 45 42 50 53 2f 63 6f 6e 74 65 6e 74 2e 6f 70 66 50 4b 01 02 14 00 14 | ....j...OEBPS/content.opfPK..... |
| ec320 | 00 00 00 00 00 00 00 21 52 84 12 97 eb 88 01 00 00 88 01 00 00 0f 00 00 00 00 00 00 00 00 00 00 | .......!R....................... |
| ec340 | 00 00 00 42 04 00 00 4f 45 42 50 53 2f 6e 61 76 2e 78 68 74 6d 6c 50 4b 01 02 14 00 14 00 00 00 | ...B...OEBPS/nav.xhtmlPK........ |
| ec360 | 00 00 00 00 21 52 78 77 5a ea 3a bc 0e 00 3a bc 0e 00 11 00 00 00 00 00 00 00 00 00 00 00 00 00 | ....!RxwZ.:...:................. |
| ec380 | f7 05 00 00 4f 45 42 50 53 2f 69 6e 64 65 78 2e 78 68 74 6d 6c 50 4b 05 06 00 00 00 00 05 00 05 | ....OEBPS/index.xhtmlPK......... |
| ec3a0 | 00 35 01 00 00 60 c2 0e 00 00 00 | .5...`..... |