| 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 47 31 08 3e a9 02 00 00 | ontainer>.PK..........!RG1.>.... |
| 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 33 2e 30 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.13.0</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 33 2e 30 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 | 13.0)</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 4e 29 b7 9a 88 01 00 00 88 01 00 00 0f 00 00 00 | >.PK..........!RN).............. |
| 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 | 33 2e 30 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 | 3.0)</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 | 33 2e 30 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 | 3.0)</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 99 97 b7 2b a6 36 0e 00 a6 36 0e 00 11 00 00 00 4f 45 42 50 53 2f 69 6e 64 65 78 | ...!R...+.6...6......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 30 2e 31 33 2e 30 20 7c | n/0.12.1/">0.12.1</a>.|.0.13.0.| |
| 27c0 | 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f | .<a.href="https://ziglang.org/do |
| 27e0 | 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 31 34 2e 31 2f 22 3e 30 2e 31 34 2e 31 3c 2f 61 3e 20 | cumentation/0.14.1/">0.14.1</a>. |
| 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 3c 2f 75 6c 3e 3c | ined</a></li>.............</ul>< |
| 2f00 | 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>......... |
| 2f20 | 3c 6c 69 3e 3c 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 | <li><a.id="toc-Zig-Test".href="# |
| 2f40 | 5a 69 67 2d 54 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 | Zig-Test">Zig.Test</a>.........< |
| 2f60 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 | ul>.............<li><a.id="toc-T |
| 2f80 | 65 73 74 2d 44 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 | est-Declarations".href="#Test-De |
| 2fa0 | 63 6c 61 72 61 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 | clarations">Test.Declarations</a |
| 2fc0 | 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>.............. |
| 2fe0 | 20 20 20 3c 6c 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 | ...<li><a.id="toc-Doctests".href |
| 3000 | 3d 22 23 44 6f 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 | ="#Doctests">Doctests</a></li>.. |
| 3020 | 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 20 20 20 20 | ...........</ul></li>........... |
| 3040 | 20 20 3c 6c 69 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 | ..<li><a.id="toc-Test-Failure".h |
| 3060 | 72 65 66 3d 22 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 | ref="#Test-Failure">Test.Failure |
| 3080 | 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= |
| 30a0 | 22 74 6f 63 2d 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 | "toc-Skip-Tests".href="#Skip-Tes |
| 30c0 | 74 73 22 3e 53 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 | ts">Skip.Tests</a></li>......... |
| 30e0 | 20 20 20 20 3c 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 | ....<li><a.id="toc-Report-Memory |
| 3100 | 2d 4c 65 61 6b 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 | -Leaks".href="#Report-Memory-Lea |
| 3120 | 6b 73 22 3e 52 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 | ks">Report.Memory.Leaks</a></li> |
| 3140 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 65 74 65 | .............<li><a.id="toc-Dete |
| 3160 | 63 74 69 6e 67 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 | cting-Test-Build".href="#Detecti |
| 3180 | 6e 67 2d 54 65 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 | ng-Test-Build">Detecting.Test.Bu |
| 31a0 | 69 6c 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ild</a></li>.............<li><a. |
| 31c0 | 69 64 3d 22 74 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 | id="toc-Test-Output-and-Logging" |
| 31e0 | 20 68 72 65 66 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 | .href="#Test-Output-and-Logging" |
| 3200 | 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 2f 61 3e 3c 2f 6c 69 | >Test.Output.and.Logging</a></li |
| 3220 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 68 65 | >.............<li><a.id="toc-The |
| 3240 | 2d 54 65 73 74 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 | -Testing-Namespace".href="#The-T |
| 3260 | 65 73 74 69 6e 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 | esting-Namespace">The.Testing.Na |
| 3280 | 6d 65 73 70 61 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | mespace</a></li>.............<li |
| 32a0 | 3e 3c 61 20 69 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 | ><a.id="toc-Test-Tool-Documentat |
| 32c0 | 69 6f 6e 22 20 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 | ion".href="#Test-Tool-Documentat |
| 32e0 | 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 6f 6e 3c 2f 61 3e | ion">Test.Tool.Documentation</a> |
| 3300 | 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>........ |
| 3320 | 20 3c 6c 69 3e 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 | .<li><a.id="toc-Variables".href= |
| 3340 | 22 23 56 61 72 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 | "#Variables">Variables</a>...... |
| 3360 | 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 |
| 3380 | 6f 63 2d 49 64 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 | oc-Identifiers".href="#Identifie |
| 33a0 | 72 73 22 3e 49 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 | rs">Identifiers</a></li>........ |
| 33c0 | 20 20 20 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 2d 4c 65 | .....<li><a.id="toc-Container-Le |
| 33e0 | 76 65 6c 2d 56 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 | vel-Variables".href="#Container- |
| 3400 | 4c 65 76 65 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6e 74 61 69 6e 65 72 20 4c 65 76 65 6c | Level-Variables">Container.Level |
| 3420 | 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 20 20 20 20 | .Variables</a></li>............. |
| 3440 | 3c 6c 69 3e 3c 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 | <li><a.id="toc-Static-Local-Vari |
| 3460 | 61 62 6c 65 73 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 | ables".href="#Static-Local-Varia |
| 3480 | 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 61 3e | bles">Static.Local.Variables</a> |
| 34a0 | 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 |
| 34c0 | 2d 54 68 72 65 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 | -Thread-Local-Variables".href="# |
| 34e0 | 54 68 72 65 61 64 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 54 68 72 65 61 64 20 4c | Thread-Local-Variables">Thread.L |
| 3500 | 6f 63 61 6c 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | ocal.Variables</a></li>......... |
| 3520 | 20 20 20 20 3c 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 | ....<li><a.id="toc-Local-Variabl |
| 3540 | 65 73 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 4c 6f 63 61 | es".href="#Local-Variables">Loca |
| 3560 | 6c 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 2f 75 | l.Variables</a></li>.........</u |
| 3580 | 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 49 | l></li>.........<li><a.id="toc-I |
| 35a0 | 6e 74 65 67 65 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 | ntegers".href="#Integers">Intege |
| 35c0 | 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 20 20 | rs</a>.........<ul>............. |
| 35e0 | 3c 6c 69 3e 3c 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 | <li><a.id="toc-Integer-Literals" |
| 3600 | 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 49 6e 74 65 67 65 | .href="#Integer-Literals">Intege |
| 3620 | 72 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 | r.Literals</a></li>............. |
| 3640 | 3c 6c 69 3e 3c 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 | <li><a.id="toc-Runtime-Integer-V |
| 3660 | 61 6c 75 65 73 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 | alues".href="#Runtime-Integer-Va |
| 3680 | 6c 75 65 73 22 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 | lues">Runtime.Integer.Values</a> |
| 36a0 | 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>........ |
| 36c0 | 20 3c 6c 69 3e 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 | .<li><a.id="toc-Floats".href="#F |
| 36e0 | 6c 6f 61 74 73 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 | loats">Floats</a>.........<ul>.. |
| 3700 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 6c 6f 61 74 2d | ...........<li><a.id="toc-Float- |
| 3720 | 4c 69 74 65 72 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 | Literals".href="#Float-Literals" |
| 3740 | 3e 46 6c 6f 61 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 | >Float.Literals</a></li>........ |
| 3760 | 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 69 6e 67 2d 50 6f 69 | .....<li><a.id="toc-Floating-Poi |
| 3780 | 6e 74 2d 4f 70 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 | nt-Operations".href="#Floating-P |
| 37a0 | 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 20 | oint-Operations">Floating.Point. |
| 37c0 | 4f 70 65 72 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 | Operations</a></li>.........</ul |
| 37e0 | 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 4f 70 | ></li>.........<li><a.id="toc-Op |
| 3800 | 65 72 61 74 6f 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 | erators".href="#Operators">Opera |
| 3820 | 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 20 20 20 | tors</a>.........<ul>........... |
| 3840 | 20 20 3c 6c 69 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 | ..<li><a.id="toc-Table-of-Operat |
| 3860 | 6f 72 73 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 | ors".href="#Table-of-Operators"> |
| 3880 | 54 61 62 6c 65 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 | Table.of.Operators</a></li>..... |
| 38a0 | 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 65 63 65 64 65 6e 63 | ........<li><a.id="toc-Precedenc |
| 38c0 | 65 22 20 68 72 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 | e".href="#Precedence">Precedence |
| 38e0 | 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>.... |
| 3900 | 20 20 20 20 20 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 | .....<li><a.id="toc-Arrays".href |
| 3920 | 3d 22 23 41 72 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 | ="#Arrays">Arrays</a>.........<u |
| 3940 | 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 4d 75 | l>.............<li><a.id="toc-Mu |
| 3960 | 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 2d 41 72 72 61 79 73 22 20 68 72 65 66 3d 22 23 4d 75 | ltidimensional-Arrays".href="#Mu |
| 3980 | 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 2d 41 72 72 61 79 73 22 3e 4d 75 6c 74 69 64 69 6d 65 | ltidimensional-Arrays">Multidime |
| 39a0 | 6e 73 69 6f 6e 61 6c 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | nsional.Arrays</a></li>......... |
| 39c0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d | ....<li><a.id="toc-Sentinel-Term |
| 39e0 | 69 6e 61 74 65 64 2d 41 72 72 61 79 73 22 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 | inated-Arrays".href="#Sentinel-T |
| 3a00 | 65 72 6d 69 6e 61 74 65 64 2d 41 72 72 61 79 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 | erminated-Arrays">Sentinel-Termi |
| 3a20 | 6e 61 74 65 64 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f | nated.Arrays</a></li>.........</ |
| 3a40 | 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- |
| 3a60 | 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 56 65 63 74 6f 72 73 | Vectors".href="#Vectors">Vectors |
| 3a80 | 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 |
| 3aa0 | 2d 50 6f 69 6e 74 65 72 73 22 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e | -Pointers".href="#Pointers">Poin |
| 3ac0 | 74 65 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 | ters</a>.........<ul>........... |
| 3ae0 | 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 22 20 68 72 65 66 3d | ..<li><a.id="toc-volatile".href= |
| 3b00 | 22 23 76 6f 6c 61 74 69 6c 65 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | "#volatile">volatile</a></li>... |
| 3b20 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 6c 69 67 6e 6d 65 | ..........<li><a.id="toc-Alignme |
| 3b40 | 6e 74 22 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 3c | nt".href="#Alignment">Alignment< |
| 3b60 | 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=" |
| 3b80 | 74 6f 63 2d 61 6c 6c 6f 77 7a 65 72 6f 22 20 68 72 65 66 3d 22 23 61 6c 6c 6f 77 7a 65 72 6f 22 | toc-allowzero".href="#allowzero" |
| 3ba0 | 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 20 20 20 20 20 20 20 | >allowzero</a></li>............. |
| 3bc0 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 | <li><a.id="toc-Sentinel-Terminat |
| 3be0 | 65 64 2d 50 6f 69 6e 74 65 72 73 22 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 | ed-Pointers".href="#Sentinel-Ter |
| 3c00 | 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 69 | minated-Pointers">Sentinel-Termi |
| 3c20 | 6e 61 74 65 64 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 | nated.Pointers</a></li>......... |
| 3c40 | 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 |
| 3c60 | 63 2d 53 6c 69 63 65 73 22 20 68 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e 53 6c 69 63 65 73 3c | c-Slices".href="#Slices">Slices< |
| 3c80 | 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 |
| 3ca0 | 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 64 2d | ><a.id="toc-Sentinel-Terminated- |
| 3cc0 | 53 6c 69 63 65 73 22 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 | Slices".href="#Sentinel-Terminat |
| 3ce0 | 65 64 2d 53 6c 69 63 65 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 53 | ed-Slices">Sentinel-Terminated.S |
| 3d00 | 6c 69 63 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 69 | lices</a></li>.........</ul></li |
| 3d20 | 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 73 74 72 75 63 74 22 | >.........<li><a.id="toc-struct" |
| 3d40 | 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 0a 20 20 20 20 20 | .href="#struct">struct</a>...... |
| 3d60 | 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 |
| 3d80 | 6f 63 2d 44 65 66 61 75 6c 74 2d 46 69 65 6c 64 2d 56 61 6c 75 65 73 22 20 68 72 65 66 3d 22 23 | oc-Default-Field-Values".href="# |
| 3da0 | 44 65 66 61 75 6c 74 2d 46 69 65 6c 64 2d 56 61 6c 75 65 73 22 3e 44 65 66 61 75 6c 74 20 46 69 | Default-Field-Values">Default.Fi |
| 3dc0 | 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 20 20 | eld.Values</a></li>............. |
| 3de0 | 3c 6c 69 3e 3c 61 20 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 | <li><a.id="toc-extern-struct".hr |
| 3e00 | 65 66 3d 22 23 65 78 74 65 72 6e 2d 73 74 72 75 63 74 22 3e 65 78 74 65 72 6e 20 73 74 72 75 63 | ef="#extern-struct">extern.struc |
| 3e20 | 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | t</a></li>.............<li><a.id |
| 3e40 | 3d 22 74 6f 63 2d 70 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 | ="toc-packed-struct".href="#pack |
| 3e60 | 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 3c 2f 6c 69 | ed-struct">packed.struct</a></li |
| 3e80 | 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 |
| 3ea0 | 75 63 74 2d 4e 61 6d 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 | uct-Naming".href="#Struct-Naming |
| 3ec0 | 22 3e 53 74 72 75 63 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 | ">Struct.Naming</a></li>........ |
| 3ee0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 6e 6f 6e 79 6d 6f 75 73 2d 53 74 | .....<li><a.id="toc-Anonymous-St |
| 3f00 | 72 75 63 74 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 | ruct-Literals".href="#Anonymous- |
| 3f20 | 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 72 75 63 | Struct-Literals">Anonymous.Struc |
| 3f40 | 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>............. |
| 3f60 | 3c 6c 69 3e 3c 61 20 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 | <li><a.id="toc-Tuples".href="#Tu |
| 3f80 | 70 6c 65 73 22 3e 54 75 70 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f | ples">Tuples</a></li>.........</ |
| 3fa0 | 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- |
| 3fc0 | 65 6e 75 6d 22 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 0a 20 20 20 20 | enum".href="#enum">enum</a>..... |
| 3fe0 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 | ....<ul>.............<li><a.id=" |
| 4000 | 74 6f 63 2d 65 78 74 65 72 6e 2d 65 6e 75 6d 22 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d 65 | toc-extern-enum".href="#extern-e |
| 4020 | 6e 75 6d 22 3e 65 78 74 65 72 6e 20 65 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | num">extern.enum</a></li>....... |
| 4040 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 | ......<li><a.id="toc-Enum-Litera |
| 4060 | 6c 73 22 20 68 72 65 66 3d 22 23 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 45 6e 75 6d 20 4c | ls".href="#Enum-Literals">Enum.L |
| 4080 | 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 3c 6c 69 | iterals</a></li>.............<li |
| 40a0 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 2d 65 6e 75 6d 22 | ><a.id="toc-Non-exhaustive-enum" |
| 40c0 | 20 68 72 65 66 3d 22 23 4e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 2d 65 6e 75 6d 22 3e 4e 6f 6e | .href="#Non-exhaustive-enum">Non |
| 40e0 | 2d 65 78 68 61 75 73 74 69 76 65 20 65 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | -exhaustive.enum</a></li>....... |
| 4100 | 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=" |
| 4120 | 74 6f 63 2d 75 6e 69 6f 6e 22 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f | toc-union".href="#union">union</ |
| 4140 | 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 3e | a>.........<ul>.............<li> |
| 4160 | 3c 61 20 69 64 3d 22 74 6f 63 2d 54 61 67 67 65 64 2d 75 6e 69 6f 6e 22 20 68 72 65 66 3d 22 23 | <a.id="toc-Tagged-union".href="# |
| 4180 | 54 61 67 67 65 64 2d 75 6e 69 6f 6e 22 3e 54 61 67 67 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f | Tagged-union">Tagged.union</a></ |
| 41a0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 | li>.............<li><a.id="toc-e |
| 41c0 | 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d 75 6e 69 6f 6e | xtern-union".href="#extern-union |
| 41e0 | 22 3e 65 78 74 65 72 6e 20 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | ">extern.union</a></li>......... |
| 4200 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 70 61 63 6b 65 64 2d 75 6e 69 6f 6e 22 | ....<li><a.id="toc-packed-union" |
| 4220 | 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 6e 69 | .href="#packed-union">packed.uni |
| 4240 | 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | on</a></li>.............<li><a.i |
| 4260 | 64 3d 22 74 6f 63 2d 41 6e 6f 6e 79 6d 6f 75 73 2d 55 6e 69 6f 6e 2d 4c 69 74 65 72 61 6c 73 22 | d="toc-Anonymous-Union-Literals" |
| 4280 | 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 65 72 61 6c 73 | .href="#Anonymous-Union-Literals |
| 42a0 | 22 3e 41 6e 6f 6e 79 6d 6f 75 73 20 55 6e 69 6f 6e 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 3c 2f | ">Anonymous.Union.Literals</a></ |
| 42c0 | 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>.........< |
| 42e0 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6f 70 61 71 75 65 22 20 68 72 65 66 3d 22 23 6f 70 61 | li><a.id="toc-opaque".href="#opa |
| 4300 | 71 75 65 22 3e 6f 70 61 71 75 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | que">opaque</a></li>.........<li |
| 4320 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 42 6c 6f 63 6b 73 22 20 68 72 65 66 3d 22 23 42 6c 6f 63 6b | ><a.id="toc-Blocks".href="#Block |
| 4340 | 73 22 3e 42 6c 6f 63 6b 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | s">Blocks</a>.........<ul>...... |
| 4360 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 68 61 64 6f 77 69 6e 67 22 | .......<li><a.id="toc-Shadowing" |
| 4380 | 20 68 72 65 66 3d 22 23 53 68 61 64 6f 77 69 6e 67 22 3e 53 68 61 64 6f 77 69 6e 67 3c 2f 61 3e | .href="#Shadowing">Shadowing</a> |
| 43a0 | 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 |
| 43c0 | 2d 45 6d 70 74 79 2d 42 6c 6f 63 6b 73 22 20 68 72 65 66 3d 22 23 45 6d 70 74 79 2d 42 6c 6f 63 | -Empty-Blocks".href="#Empty-Bloc |
| 43e0 | 6b 73 22 3e 45 6d 70 74 79 20 42 6c 6f 63 6b 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ks">Empty.Blocks</a></li>....... |
| 4400 | 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=" |
| 4420 | 74 6f 63 2d 73 77 69 74 63 68 22 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 69 74 63 | toc-switch".href="#switch">switc |
| 4440 | 68 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | h</a>.........<ul>.............< |
| 4460 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 78 68 61 75 73 74 69 76 65 2d 53 77 69 74 63 68 69 | li><a.id="toc-Exhaustive-Switchi |
| 4480 | 6e 67 22 20 68 72 65 66 3d 22 23 45 78 68 61 75 73 74 69 76 65 2d 53 77 69 74 63 68 69 6e 67 22 | ng".href="#Exhaustive-Switching" |
| 44a0 | 3e 45 78 68 61 75 73 74 69 76 65 20 53 77 69 74 63 68 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | >Exhaustive.Switching</a></li>.. |
| 44c0 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 77 69 74 63 68 | ...........<li><a.id="toc-Switch |
| 44e0 | 69 6e 67 2d 77 69 74 68 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 20 68 72 65 66 3d 22 23 53 | ing-with-Enum-Literals".href="#S |
| 4500 | 77 69 74 63 68 69 6e 67 2d 77 69 74 68 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 53 77 69 | witching-with-Enum-Literals">Swi |
| 4520 | 74 63 68 69 6e 67 20 77 69 74 68 20 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 3c 2f 6c | tching.with.Enum.Literals</a></l |
| 4540 | 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 |
| 4560 | 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 23 49 6e 6c 69 6e | line-Switch-Prongs".href="#Inlin |
| 4580 | 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 69 74 63 68 20 50 | e-Switch-Prongs">Inline.Switch.P |
| 45a0 | 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 6c 3e 3c 2f 6c 69 | rongs</a></li>.........</ul></li |
| 45c0 | 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 68 69 6c 65 22 20 | >.........<li><a.id="toc-while". |
| 45e0 | 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 20 20 20 20 20 20 | href="#while">while</a>......... |
| 4600 | 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- |
| 4620 | 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 6c 65 64 2d 77 68 | Labeled-while".href="#Labeled-wh |
| 4640 | 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 3e 0a 20 20 20 20 | ile">Labeled.while</a></li>..... |
| 4660 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 77 68 69 6c 65 2d 77 69 74 | ........<li><a.id="toc-while-wit |
| 4680 | 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 77 69 74 68 2d 4f | h-Optionals".href="#while-with-O |
| 46a0 | 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 6e 61 6c 73 3c 2f | ptionals">while.with.Optionals</ |
| 46c0 | 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 |
| 46e0 | 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 22 20 68 72 65 66 | oc-while-with-Error-Unions".href |
| 4700 | 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 22 3e 77 68 69 6c | ="#while-with-Error-Unions">whil |
| 4720 | 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 69 3e 0a 20 20 20 | e.with.Error.Unions</a></li>.... |
| 4740 | 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 6c 69 6e 65 2d 77 | .........<li><a.id="toc-inline-w |
| 4760 | 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 3e 69 6e 6c 69 6e | hile".href="#inline-while">inlin |
| 4780 | 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 2f 75 6c 3e 3c 2f | e.while</a></li>.........</ul></ |
| 47a0 | 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 66 6f 72 22 20 | li>.........<li><a.id="toc-for". |
| 47c0 | 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 20 20 3c 75 6c 3e | href="#for">for</a>.........<ul> |
| 47e0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4c 61 62 65 | .............<li><a.id="toc-Labe |
| 4800 | 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 72 22 3e 4c 61 62 | led-for".href="#Labeled-for">Lab |
| 4820 | 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 20 20 20 20 3c 6c | eled.for</a></li>.............<l |
| 4840 | 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 72 65 66 3d 22 23 | i><a.id="toc-inline-for".href="# |
| 4860 | 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 3e 0a | inline-for">inline.for</a></li>. |
| 4880 | 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>< |
| 48a0 | 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 66 3c 2f 61 3e 0a | a.id="toc-if".href="#if">if</a>. |
| 48c0 | 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. |
| 48e0 | 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 20 68 72 65 66 3d | id="toc-if-with-Optionals".href= |
| 4900 | 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 74 68 20 4f 70 74 | "#if-with-Optionals">if.with.Opt |
| 4920 | 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 75 6c 3e 3c 2f 6c | ionals</a></li>.........</ul></l |
| 4940 | 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 64 65 66 65 72 22 | i>.........<li><a.id="toc-defer" |
| 4960 | 20 68 72 65 66 3d 22 23 64 65 66 65 72 22 3e 64 65 66 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | .href="#defer">defer</a></li>... |
| 4980 | 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 63 68 61 62 6c 65 | ......<li><a.id="toc-unreachable |
| 49a0 | 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 61 63 68 61 62 6c | ".href="#unreachable">unreachabl |
| 49c0 | 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 20 20 20 20 20 3c | e</a>.........<ul>.............< |
| 49e0 | 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 3d 22 23 42 61 73 | li><a.id="toc-Basics".href="#Bas |
| 4a00 | 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 20 20 20 20 20 20 | ics">Basics</a></li>............ |
| 4a20 | 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 2d 54 69 6d 65 22 | .<li><a.id="toc-At-Compile-Time" |
| 4a40 | 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 74 20 43 6f 6d 70 | .href="#At-Compile-Time">At.Comp |
| 4a60 | 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 3c 2f 75 6c 3e 3c | ile-Time</a></li>.........</ul>< |
| 4a80 | 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 6e 6f 72 65 | /li>.........<li><a.id="toc-nore |
| 4aa0 | 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 65 74 75 72 6e 3c | turn".href="#noreturn">noreturn< |
| 4ac0 | 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- |
| 4ae0 | 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 73 22 3e 46 75 6e | Functions".href="#Functions">Fun |
| 4b00 | 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 20 20 20 20 20 20 | ctions</a>.........<ul>......... |
| 4b20 | 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 2d 76 61 6c 75 65 | ....<li><a.id="toc-Pass-by-value |
| 4b40 | 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 79 2d 76 61 6c 75 | -Parameters".href="#Pass-by-valu |
| 4b60 | 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 65 20 50 61 72 61 | e-Parameters">Pass-by-value.Para |
| 4b80 | 6d 65 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | meters</a></li>.............<li> |
| 4ba0 | 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 74 65 72 2d 54 79 | <a.id="toc-Function-Parameter-Ty |
| 4bc0 | 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 69 6f 6e 2d 50 61 | pe-Inference".href="#Function-Pa |
| 4be0 | 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 69 6f 6e | rameter-Type-Inference">Function |
| 4c00 | 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 3c 2f 6c | .Parameter.Type.Inference</a></l |
| 4c20 | 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 |
| 4c40 | 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 3e 69 6e 6c 69 6e | line-fn".href="#inline-fn">inlin |
| 4c60 | 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 3c 6c 69 3e 3c 61 | e.fn</a></li>.............<li><a |
| 4c80 | 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 6f 6e 22 20 68 72 | .id="toc-Function-Reflection".hr |
| 4ca0 | 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 46 75 6e 63 74 69 | ef="#Function-Reflection">Functi |
| 4cc0 | 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 20 20 20 20 20 3c | on.Reflection</a></li>.........< |
| 4ce0 | 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 |
| 4d00 | 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 72 6f 72 73 3c 2f | -Errors".href="#Errors">Errors</ |
| 4d20 | 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 3e | a>.........<ul>.............<li> |
| 4d40 | 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 20 68 72 65 66 3d | <a.id="toc-Error-Set-Type".href= |
| 4d60 | 22 23 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 53 65 74 20 54 79 70 65 | "#Error-Set-Type">Error.Set.Type |
| 4d80 | 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 20 | </a>.............<ul>........... |
| 4da0 | 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 6c 6f 62 61 6c 2d | ......<li><a.id="toc-The-Global- |
| 4dc0 | 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 61 6c 2d 45 72 72 | Error-Set".href="#The-Global-Err |
| 4de0 | 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 3e | or-Set">The.Global.Error.Set</a> |
| 4e00 | 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 20 20 20 | </li>.............</ul></li>.... |
| 4e20 | 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 72 6f 72 2d 55 6e | .........<li><a.id="toc-Error-Un |
| 4e40 | 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 6f 6e 2d 54 79 70 | ion-Type".href="#Error-Union-Typ |
| 4e60 | 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 20 20 20 20 20 20 | e">Error.Union.Type</a>......... |
| 4e80 | 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 61 20 | ....<ul>.................<li><a. |
| 4ea0 | 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 68 22 3e 63 61 74 | id="toc-catch".href="#catch">cat |
| 4ec0 | 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 20 20 3c 6c 69 3e | ch</a></li>.................<li> |
| 4ee0 | 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 22 3e 74 72 79 3c | <a.id="toc-try".href="#try">try< |
| 4f00 | 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. |
| 4f20 | 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 72 72 64 65 66 65 | id="toc-errdefer".href="#errdefe |
| 4f40 | 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 20 20 20 20 20 20 | r">errdefer</a></li>............ |
| 4f60 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 6f 6d 6d 6f 6e 2d 65 72 72 64 65 | .....<li><a.id="toc-Common-errde |
| 4f80 | 66 65 72 2d 53 6c 69 70 2d 55 70 73 22 20 68 72 65 66 3d 22 23 43 6f 6d 6d 6f 6e 2d 65 72 72 64 | fer-Slip-Ups".href="#Common-errd |
| 4fa0 | 65 66 65 72 2d 53 6c 69 70 2d 55 70 73 22 3e 43 6f 6d 6d 6f 6e 20 65 72 72 64 65 66 65 72 20 53 | efer-Slip-Ups">Common.errdefer.S |
| 4fc0 | 6c 69 70 2d 55 70 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 | lip-Ups</a></li>................ |
| 4fe0 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4d 65 72 67 69 6e 67 2d 45 72 72 6f 72 2d 53 65 | .<li><a.id="toc-Merging-Error-Se |
| 5000 | 74 73 22 20 68 72 65 66 3d 22 23 4d 65 72 67 69 6e 67 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e 4d | ts".href="#Merging-Error-Sets">M |
| 5020 | 65 72 67 69 6e 67 20 45 72 72 6f 72 20 53 65 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | erging.Error.Sets</a></li>...... |
| 5040 | 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 66 65 72 72 | ...........<li><a.id="toc-Inferr |
| 5060 | 65 64 2d 45 72 72 6f 72 2d 53 65 74 73 22 20 68 72 65 66 3d 22 23 49 6e 66 65 72 72 65 64 2d 45 | ed-Error-Sets".href="#Inferred-E |
| 5080 | 72 72 6f 72 2d 53 65 74 73 22 3e 49 6e 66 65 72 72 65 64 20 45 72 72 6f 72 20 53 65 74 73 3c 2f | rror-Sets">Inferred.Error.Sets</ |
| 50a0 | 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 20 | a></li>.............</ul></li>.. |
| 50c0 | 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 72 6f 72 2d | ...........<li><a.id="toc-Error- |
| 50e0 | 52 65 74 75 72 6e 2d 54 72 61 63 65 73 22 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 52 65 74 75 | Return-Traces".href="#Error-Retu |
| 5100 | 72 6e 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 | rn-Traces">Error.Return.Traces</ |
| 5120 | 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | a>.............<ul>............. |
| 5140 | 20 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 61 74 69 6f | ....<li><a.id="toc-Implementatio |
| 5160 | 6e 2d 44 65 74 61 69 6c 73 22 20 68 72 65 66 3d 22 23 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e | n-Details".href="#Implementation |
| 5180 | 2d 44 65 74 61 69 6c 73 22 3e 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 44 65 74 61 69 6c 73 | -Details">Implementation.Details |
| 51a0 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e | </a></li>.............</ul></li> |
| 51c0 | 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> |
| 51e0 | 3c 61 20 69 64 3d 22 74 6f 63 2d 4f 70 74 69 6f 6e 61 6c 73 22 20 68 72 65 66 3d 22 23 4f 70 74 | <a.id="toc-Optionals".href="#Opt |
| 5200 | 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 | ionals">Optionals</a>.........<u |
| 5220 | 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 4f 70 | l>.............<li><a.id="toc-Op |
| 5240 | 74 69 6f 6e 61 6c 2d 54 79 70 65 22 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 54 79 70 | tional-Type".href="#Optional-Typ |
| 5260 | 65 22 3e 4f 70 74 69 6f 6e 61 6c 20 54 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | e">Optional.Type</a></li>....... |
| 5280 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6e 75 6c 6c 22 20 68 72 65 66 3d | ......<li><a.id="toc-null".href= |
| 52a0 | 22 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | "#null">null</a></li>........... |
| 52c0 | 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 2d 50 6f 69 6e 74 65 | ..<li><a.id="toc-Optional-Pointe |
| 52e0 | 72 73 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 22 3e 4f 70 | rs".href="#Optional-Pointers">Op |
| 5300 | 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 20 20 20 20 20 20 20 | tional.Pointers</a></li>........ |
| 5320 | 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 |
| 5340 | 6f 63 2d 43 61 73 74 69 6e 67 22 20 68 72 65 66 3d 22 23 43 61 73 74 69 6e 67 22 3e 43 61 73 74 | oc-Casting".href="#Casting">Cast |
| 5360 | 69 6e 67 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 | ing</a>.........<ul>............ |
| 5380 | 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 22 20 68 | .<li><a.id="toc-Type-Coercion".h |
| 53a0 | 72 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 | ref="#Type-Coercion">Type.Coerci |
| 53c0 | 6f 6e 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 | on</a>.............<ul>......... |
| 53e0 | 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 65 72 | ........<li><a.id="toc-Type-Coer |
| 5400 | 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 22 20 68 72 65 | cion-Stricter-Qualification".hre |
| 5420 | 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 74 72 69 63 74 65 72 2d 51 75 61 6c 69 | f="#Type-Coercion-Stricter-Quali |
| 5440 | 66 69 63 61 74 69 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 53 74 72 69 63 74 65 | fication">Type.Coercion:.Stricte |
| 5460 | 72 20 51 75 61 6c 69 66 69 63 61 74 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | r.Qualification</a></li>........ |
| 5480 | 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 65 | .........<li><a.id="toc-Type-Coe |
| 54a0 | 72 63 69 6f 6e 2d 49 6e 74 65 67 65 72 2d 61 6e 64 2d 46 6c 6f 61 74 2d 57 69 64 65 6e 69 6e 67 | rcion-Integer-and-Float-Widening |
| 54c0 | 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 |
| 54e0 | 6e 64 2d 46 6c 6f 61 74 2d 57 69 64 65 6e 69 6e 67 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e | nd-Float-Widening">Type.Coercion |
| 5500 | 3a 20 49 6e 74 65 67 65 72 20 61 6e 64 20 46 6c 6f 61 74 20 57 69 64 65 6e 69 6e 67 3c 2f 61 3e | :.Integer.and.Float.Widening</a> |
| 5520 | 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 64 3d | </li>.................<li><a.id= |
| 5540 | 22 74 6f 63 2d 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 | "toc-Type-Coercion-Float-to-Int" |
| 5560 | 20 68 72 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 | .href="#Type-Coercion-Float-to-I |
| 5580 | 6e 74 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 46 6c 6f 61 74 20 74 6f 20 49 6e 74 3c | nt">Type.Coercion:.Float.to.Int< |
| 55a0 | 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. |
| 55c0 | 69 64 3d 22 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 6c 69 63 65 73 2d 41 72 72 | id="toc-Type-Coercion-Slices-Arr |
| 55e0 | 61 79 73 2d 61 6e 64 2d 50 6f 69 6e 74 65 72 73 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f | ays-and-Pointers".href="#Type-Co |
| 5600 | 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 6e 74 65 72 | ercion-Slices-Arrays-and-Pointer |
| 5620 | 73 22 3e 54 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 | s">Type.Coercion:.Slices,.Arrays |
| 5640 | 20 61 6e 64 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 | .and.Pointers</a></li>.......... |
| 5660 | 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 65 72 63 | .......<li><a.id="toc-Type-Coerc |
| 5680 | 69 6f 6e 2d 4f 70 74 69 6f 6e 61 6c 73 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 | ion-Optionals".href="#Type-Coerc |
| 56a0 | 69 6f 6e 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 4f 70 | ion-Optionals">Type.Coercion:.Op |
| 56c0 | 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 20 20 20 | tionals</a></li>................ |
| 56e0 | 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 45 72 | .<li><a.id="toc-Type-Coercion-Er |
| 5700 | 72 6f 72 2d 55 6e 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e | ror-Unions".href="#Type-Coercion |
| 5720 | 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 20 45 72 | -Error-Unions">Type.Coercion:.Er |
| 5740 | 72 6f 72 20 55 6e 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ror.Unions</a></li>............. |
| 5760 | 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 |
| 5780 | 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 20 68 72 65 | -Compile-Time-Known-Numbers".hre |
| 57a0 | 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 |
| 57c0 | 6e 6f 77 6e 2d 4e 75 6d 62 65 72 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 43 6f 6d | nown-Numbers">Type.Coercion:.Com |
| 57e0 | 70 69 6c 65 2d 54 69 6d 65 20 4b 6e 6f 77 6e 20 4e 75 6d 62 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e | pile-Time.Known.Numbers</a></li> |
| 5800 | 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- |
| 5820 | 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 20 | Type-Coercion-Unions-and-Enums". |
| 5840 | 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 64 2d | href="#Type-Coercion-Unions-and- |
| 5860 | 45 6e 75 6d 73 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 | Enums">Type.Coercion:.Unions.and |
| 5880 | 20 45 6e 75 6d 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 | .Enums</a></li>................. |
| 58a0 | 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 75 6e 64 | <li><a.id="toc-Type-Coercion-und |
| 58c0 | 65 66 69 6e 65 64 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 6e 64 | efined".href="#Type-Coercion-und |
| 58e0 | 65 66 69 6e 65 64 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 75 6e 64 65 66 69 6e 65 64 | efined">Type.Coercion:.undefined |
| 5900 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | </a></li>.................<li><a |
| 5920 | 20 69 64 3d 22 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 | .id="toc-Type-Coercion-Tuples-to |
| 5940 | 2d 41 72 72 61 79 73 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 54 75 | -Arrays".href="#Type-Coercion-Tu |
| 5960 | 70 6c 65 73 2d 74 6f 2d 41 72 72 61 79 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 54 | ples-to-Arrays">Type.Coercion:.T |
| 5980 | 75 70 6c 65 73 20 74 6f 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | uples.to.Arrays</a></li>........ |
| 59a0 | 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 3e | .....</ul></li>.............<li> |
| 59c0 | 3c 61 20 69 64 3d 22 74 6f 63 2d 45 78 70 6c 69 63 69 74 2d 43 61 73 74 73 22 20 68 72 65 66 3d | <a.id="toc-Explicit-Casts".href= |
| 59e0 | 22 23 45 78 70 6c 69 63 69 74 2d 43 61 73 74 73 22 3e 45 78 70 6c 69 63 69 74 20 43 61 73 74 73 | "#Explicit-Casts">Explicit.Casts |
| 5a00 | 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= |
| 5a20 | 22 74 6f 63 2d 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 20 68 72 65 66 3d | "toc-Peer-Type-Resolution".href= |
| 5a40 | 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 70 | "#Peer-Type-Resolution">Peer.Typ |
| 5a60 | 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f | e.Resolution</a></li>.........</ |
| 5a80 | 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- |
| 5aa0 | 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 20 68 72 65 66 3d 22 23 5a 65 72 6f 2d 42 69 74 2d | Zero-Bit-Types".href="#Zero-Bit- |
| 5ac0 | 54 79 70 65 73 22 3e 5a 65 72 6f 20 42 69 74 20 54 79 70 65 73 3c 2f 61 3e 0a 20 20 20 20 20 20 | Types">Zero.Bit.Types</a>....... |
| 5ae0 | 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 |
| 5b00 | 63 2d 76 6f 69 64 22 20 68 72 65 66 3d 22 23 76 6f 69 64 22 3e 76 6f 69 64 3c 2f 61 3e 3c 2f 6c | c-void".href="#void">void</a></l |
| 5b20 | 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 |
| 5b40 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 2d 53 65 6d | i><a.id="toc-Result-Location-Sem |
| 5b60 | 61 6e 74 69 63 73 22 20 68 72 65 66 3d 22 23 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 2d 53 | antics".href="#Result-Location-S |
| 5b80 | 65 6d 61 6e 74 69 63 73 22 3e 52 65 73 75 6c 74 20 4c 6f 63 61 74 69 6f 6e 20 53 65 6d 61 6e 74 | emantics">Result.Location.Semant |
| 5ba0 | 69 63 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 20 | ics</a>.........<ul>............ |
| 5bc0 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 73 75 6c 74 2d 54 79 70 65 73 22 20 68 72 | .<li><a.id="toc-Result-Types".hr |
| 5be0 | 65 66 3d 22 23 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 | ef="#Result-Types">Result.Types< |
| 5c00 | 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 | /a></li>.............<li><a.id=" |
| 5c20 | 74 6f 63 2d 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 52 65 73 | toc-Result-Locations".href="#Res |
| 5c40 | 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 73 22 3e 52 65 73 75 6c 74 20 4c 6f 63 61 74 69 6f 6e 73 3c | ult-Locations">Result.Locations< |
| 5c60 | 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>..... |
| 5c80 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 | ....<li><a.id="toc-usingnamespac |
| 5ca0 | 65 22 20 68 72 65 66 3d 22 23 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 22 3e 75 73 69 6e 67 6e | e".href="#usingnamespace">usingn |
| 5cc0 | 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 3c 6c 69 3e 3c 61 | amespace</a></li>.........<li><a |
| 5ce0 | 20 69 64 3d 22 74 6f 63 2d 63 6f 6d 70 74 69 6d 65 22 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 | .id="toc-comptime".href="#compti |
| 5d00 | 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | me">comptime</a>.........<ul>... |
| 5d20 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 74 72 6f 64 75 | ..........<li><a.id="toc-Introdu |
| 5d40 | 63 69 6e 67 2d 74 68 65 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 43 6f 6e 63 65 70 74 22 20 68 | cing-the-Compile-Time-Concept".h |
| 5d60 | 72 65 66 3d 22 23 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 | ref="#Introducing-the-Compile-Ti |
| 5d80 | 6d 65 2d 43 6f 6e 63 65 70 74 22 3e 49 6e 74 72 6f 64 75 63 69 6e 67 20 74 68 65 20 43 6f 6d 70 | me-Concept">Introducing.the.Comp |
| 5da0 | 69 6c 65 2d 54 69 6d 65 20 43 6f 6e 63 65 70 74 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ile-Time.Concept</a>............ |
| 5dc0 | 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= |
| 5de0 | 22 74 6f 63 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 50 61 72 61 6d 65 74 65 72 73 22 20 68 72 | "toc-Compile-Time-Parameters".hr |
| 5e00 | 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 3e 43 6f | ef="#Compile-Time-Parameters">Co |
| 5e20 | 6d 70 69 6c 65 2d 54 69 6d 65 20 50 61 72 61 6d 65 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | mpile-Time.Parameters</a></li>.. |
| 5e40 | 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 |
| 5e60 | 6d 70 69 6c 65 2d 54 69 6d 65 2d 56 61 72 69 61 62 6c 65 73 22 20 68 72 65 66 3d 22 23 43 6f 6d | mpile-Time-Variables".href="#Com |
| 5e80 | 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 2d 54 69 6d | pile-Time-Variables">Compile-Tim |
| 5ea0 | 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 20 20 20 | e.Variables</a></li>............ |
| 5ec0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 | .....<li><a.id="toc-Compile-Time |
| 5ee0 | 2d 45 78 70 72 65 73 73 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 54 69 6d | -Expressions".href="#Compile-Tim |
| 5f00 | 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 20 45 78 70 72 | e-Expressions">Compile-Time.Expr |
| 5f20 | 65 73 73 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 | essions</a></li>.............</u |
| 5f40 | 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 | l></li>.............<li><a.id="t |
| 5f60 | 6f 63 2d 47 65 6e 65 72 69 63 2d 44 61 74 61 2d 53 74 72 75 63 74 75 72 65 73 22 20 68 72 65 66 | oc-Generic-Data-Structures".href |
| 5f80 | 3d 22 23 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 | ="#Generic-Data-Structures">Gene |
| 5fa0 | 72 69 63 20 44 61 74 61 20 53 74 72 75 63 74 75 72 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | ric.Data.Structures</a></li>.... |
| 5fc0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 61 73 65 2d 53 74 75 | .........<li><a.id="toc-Case-Stu |
| 5fe0 | 64 79 2d 70 72 69 6e 74 2d 69 6e 2d 5a 69 67 22 20 68 72 65 66 3d 22 23 43 61 73 65 2d 53 74 75 | dy-print-in-Zig".href="#Case-Stu |
| 6000 | 64 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 | dy-print-in-Zig">Case.Study:.pri |
| 6020 | 6e 74 20 69 6e 20 5a 69 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e | nt.in.Zig</a></li>.........</ul> |
| 6040 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 73 73 | </li>.........<li><a.id="toc-Ass |
| 6060 | 65 6d 62 6c 79 22 20 68 72 65 66 3d 22 23 41 73 73 65 6d 62 6c 79 22 3e 41 73 73 65 6d 62 6c 79 | embly".href="#Assembly">Assembly |
| 6080 | 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | </a>.........<ul>.............<l |
| 60a0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4f 75 74 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 | i><a.id="toc-Output-Constraints" |
| 60c0 | 20 68 72 65 66 3d 22 23 4f 75 74 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e 4f 75 74 70 | .href="#Output-Constraints">Outp |
| 60e0 | 75 74 20 43 6f 6e 73 74 72 61 69 6e 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | ut.Constraints</a></li>......... |
| 6100 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 70 75 74 2d 43 6f 6e 73 74 72 61 | ....<li><a.id="toc-Input-Constra |
| 6120 | 69 6e 74 73 22 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 | ints".href="#Input-Constraints"> |
| 6140 | 49 6e 70 75 74 20 43 6f 6e 73 74 72 61 69 6e 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | Input.Constraints</a></li>...... |
| 6160 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 6c 6f 62 62 65 72 73 22 20 | .......<li><a.id="toc-Clobbers". |
| 6180 | 68 72 65 66 3d 22 23 43 6c 6f 62 62 65 72 73 22 3e 43 6c 6f 62 62 65 72 73 3c 2f 61 3e 3c 2f 6c | href="#Clobbers">Clobbers</a></l |
| 61a0 | 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 6c | i>.............<li><a.id="toc-Gl |
| 61c0 | 6f 62 61 6c 2d 41 73 73 65 6d 62 6c 79 22 20 68 72 65 66 3d 22 23 47 6c 6f 62 61 6c 2d 41 73 73 | obal-Assembly".href="#Global-Ass |
| 61e0 | 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 3c 2f 6c 69 3e 0a | embly">Global.Assembly</a></li>. |
| 6200 | 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>< |
| 6220 | 61 20 69 64 3d 22 74 6f 63 2d 41 74 6f 6d 69 63 73 22 20 68 72 65 66 3d 22 23 41 74 6f 6d 69 63 | a.id="toc-Atomics".href="#Atomic |
| 6240 | 73 22 3e 41 74 6f 6d 69 63 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e | s">Atomics</a></li>.........<li> |
| 6260 | 3c 61 20 69 64 3d 22 74 6f 63 2d 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 20 68 72 65 66 | <a.id="toc-Async-Functions".href |
| 6280 | 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 6e 63 74 69 | ="#Async-Functions">Async.Functi |
| 62a0 | 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 | ons</a></li>.........<li><a.id=" |
| 62c0 | 74 6f 63 2d 42 75 69 6c 74 69 6e 2d 46 75 6e 63 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 42 75 | toc-Builtin-Functions".href="#Bu |
| 62e0 | 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 6f | iltin-Functions">Builtin.Functio |
| 6300 | 6e 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 20 73 74 79 6c 65 3d 22 63 6f 6c 75 6d 6e | ns</a>.........<ul.style="column |
| 6320 | 73 3a 20 32 22 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 | s:.2">.............<li><a.id="to |
| 6340 | 63 2d 61 64 64 72 53 70 61 63 65 43 61 73 74 22 20 68 72 65 66 3d 22 23 61 64 64 72 53 70 61 63 | c-addrSpaceCast".href="#addrSpac |
| 6360 | 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 3c 2f 6c 69 3e 0a 20 | eCast">@addrSpaceCast</a></li>.. |
| 6380 | 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 64 64 57 69 74 | ...........<li><a.id="toc-addWit |
| 63a0 | 68 4f 76 65 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f | hOverflow".href="#addWithOverflo |
| 63c0 | 77 22 3e 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | w">@addWithOverflow</a></li>.... |
| 63e0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 6c 69 67 6e 43 61 73 | .........<li><a.id="toc-alignCas |
| 6400 | 74 22 20 68 72 65 66 3d 22 23 61 6c 69 67 6e 43 61 73 74 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c | t".href="#alignCast">@alignCast< |
| 6420 | 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=" |
| 6440 | 74 6f 63 2d 61 6c 69 67 6e 4f 66 22 20 68 72 65 66 3d 22 23 61 6c 69 67 6e 4f 66 22 3e 40 61 6c | toc-alignOf".href="#alignOf">@al |
| 6460 | 69 67 6e 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | ignOf</a></li>.............<li>< |
| 6480 | 61 20 69 64 3d 22 74 6f 63 2d 61 73 22 20 68 72 65 66 3d 22 23 61 73 22 3e 40 61 73 3c 2f 61 3e | a.id="toc-as".href="#as">@as</a> |
| 64a0 | 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 |
| 64c0 | 2d 61 74 6f 6d 69 63 4c 6f 61 64 22 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 4c 6f 61 64 22 3e | -atomicLoad".href="#atomicLoad"> |
| 64e0 | 40 61 74 6f 6d 69 63 4c 6f 61 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | @atomicLoad</a></li>............ |
| 6500 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 74 6f 6d 69 63 52 6d 77 22 20 68 72 65 66 3d | .<li><a.id="toc-atomicRmw".href= |
| 6520 | 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 3c 2f 6c 69 3e | "#atomicRmw">@atomicRmw</a></li> |
| 6540 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 74 6f 6d | .............<li><a.id="toc-atom |
| 6560 | 69 63 53 74 6f 72 65 22 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 53 74 6f 72 65 22 3e 40 61 74 | icStore".href="#atomicStore">@at |
| 6580 | 6f 6d 69 63 53 74 6f 72 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | omicStore</a></li>.............< |
| 65a0 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 62 69 74 43 61 73 74 22 20 68 72 65 66 3d 22 23 62 69 | li><a.id="toc-bitCast".href="#bi |
| 65c0 | 74 43 61 73 74 22 3e 40 62 69 74 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | tCast">@bitCast</a></li>........ |
| 65e0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 62 69 74 4f 66 66 73 65 74 4f 66 22 | .....<li><a.id="toc-bitOffsetOf" |
| 6600 | 20 68 72 65 66 3d 22 23 62 69 74 4f 66 66 73 65 74 4f 66 22 3e 40 62 69 74 4f 66 66 73 65 74 4f | .href="#bitOffsetOf">@bitOffsetO |
| 6620 | 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | f</a></li>.............<li><a.id |
| 6640 | 3d 22 74 6f 63 2d 62 69 74 53 69 7a 65 4f 66 22 20 68 72 65 66 3d 22 23 62 69 74 53 69 7a 65 4f | ="toc-bitSizeOf".href="#bitSizeO |
| 6660 | 66 22 3e 40 62 69 74 53 69 7a 65 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | f">@bitSizeOf</a></li>.......... |
| 6680 | 20 20 20 3c 6c 69 3e 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 | ...<li><a.id="toc-breakpoint".hr |
| 66a0 | 65 66 3d 22 23 62 72 65 61 6b 70 6f 69 6e 74 22 3e 40 62 72 65 61 6b 70 6f 69 6e 74 3c 2f 61 3e | ef="#breakpoint">@breakpoint</a> |
| 66c0 | 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 |
| 66e0 | 2d 6d 75 6c 41 64 64 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 | -mulAdd".href="#mulAdd">@mulAdd< |
| 6700 | 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=" |
| 6720 | 74 6f 63 2d 62 79 74 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 | toc-byteSwap".href="#byteSwap">@ |
| 6740 | 62 79 74 65 53 77 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 | byteSwap</a></li>.............<l |
| 6760 | 69 3e 3c 61 20 69 64 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 | i><a.id="toc-bitReverse".href="# |
| 6780 | 62 69 74 52 65 76 65 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 | bitReverse">@bitReverse</a></li> |
| 67a0 | 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 6f 66 66 73 | .............<li><a.id="toc-offs |
| 67c0 | 65 74 4f 66 22 20 68 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 | etOf".href="#offsetOf">@offsetOf |
| 67e0 | 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= |
| 6800 | 22 74 6f 63 2d 63 61 6c 6c 22 20 68 72 65 66 3d 22 23 63 61 6c 6c 22 3e 40 63 61 6c 6c 3c 2f 61 | "toc-call".href="#call">@call</a |
| 6820 | 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 |
| 6840 | 63 2d 63 44 65 66 69 6e 65 22 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 | c-cDefine".href="#cDefine">@cDef |
| 6860 | 69 6e 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 | ine</a></li>.............<li><a. |
| 6880 | 69 64 3d 22 74 6f 63 2d 63 49 6d 70 6f 72 74 22 20 68 72 65 66 3d 22 23 63 49 6d 70 6f 72 74 22 | id="toc-cImport".href="#cImport" |
| 68a0 | 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | >@cImport</a></li>.............< |
| 68c0 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 49 6e 63 6c 75 64 65 22 20 68 72 65 66 3d 22 23 63 | li><a.id="toc-cInclude".href="#c |
| 68e0 | 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 20 20 20 20 | Include">@cInclude</a></li>..... |
| 6900 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 6c 7a 22 20 68 72 65 66 | ........<li><a.id="toc-clz".href |
| 6920 | 3d 22 23 63 6c 7a 22 3e 40 63 6c 7a 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | ="#clz">@clz</a></li>........... |
| 6940 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 22 20 | ..<li><a.id="toc-cmpxchgStrong". |
| 6960 | 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 53 74 | href="#cmpxchgStrong">@cmpxchgSt |
| 6980 | 72 6f 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | rong</a></li>.............<li><a |
| 69a0 | 20 69 64 3d 22 74 6f 63 2d 63 6d 70 78 63 68 67 57 65 61 6b 22 20 68 72 65 66 3d 22 23 63 6d 70 | .id="toc-cmpxchgWeak".href="#cmp |
| 69c0 | 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>. |
| 69e0 | 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 6f 6d 70 69 | ............<li><a.id="toc-compi |
| 6a00 | 6c 65 45 72 72 6f 72 22 20 68 72 65 66 3d 22 23 63 6f 6d 70 69 6c 65 45 72 72 6f 72 22 3e 40 63 | leError".href="#compileError">@c |
| 6a20 | 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ompileError</a></li>............ |
| 6a40 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 6f 6d 70 69 6c 65 4c 6f 67 22 20 68 72 65 66 | .<li><a.id="toc-compileLog".href |
| 6a60 | 3d 22 23 63 6f 6d 70 69 6c 65 4c 6f 67 22 3e 40 63 6f 6d 70 69 6c 65 4c 6f 67 3c 2f 61 3e 3c 2f | ="#compileLog">@compileLog</a></ |
| 6a80 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 | li>.............<li><a.id="toc-c |
| 6aa0 | 6f 6e 73 74 43 61 73 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 | onstCast".href="#constCast">@con |
| 6ac0 | 73 74 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | stCast</a></li>.............<li> |
| 6ae0 | 3c 61 20 69 64 3d 22 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 | <a.id="toc-ctz".href="#ctz">@ctz |
| 6b00 | 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= |
| 6b20 | 22 74 6f 63 2d 63 55 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 | "toc-cUndef".href="#cUndef">@cUn |
| 6b40 | 64 65 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | def</a></li>.............<li><a. |
| 6b60 | 69 64 3d 22 74 6f 63 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 | id="toc-cVaArg".href="#cVaArg">@ |
| 6b80 | 63 56 61 41 72 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 | cVaArg</a></li>.............<li> |
| 6ba0 | 3c 61 20 69 64 3d 22 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 | <a.id="toc-cVaCopy".href="#cVaCo |
| 6bc0 | 70 79 22 3e 40 63 56 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 | py">@cVaCopy</a></li>........... |
| 6be0 | 20 20 3c 6c 69 3e 3c 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 | ..<li><a.id="toc-cVaEnd".href="# |
| 6c00 | 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 20 20 20 20 20 20 20 | cVaEnd">@cVaEnd</a></li>........ |
| 6c20 | 20 20 20 20 20 3c 6c 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 | .....<li><a.id="toc-cVaStart".hr |
| 6c40 | 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 69 | ef="#cVaStart">@cVaStart</a></li |
| 6c60 | 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 69 76 | >.............<li><a.id="toc-div |
| 6c80 | 45 78 61 63 74 22 20 68 72 65 66 3d 22 23 64 69 76 45 78 61 63 74 22 3e 40 64 69 76 45 78 61 63 | Exact".href="#divExact">@divExac |
| 6ca0 | 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | t</a></li>.............<li><a.id |
| 6cc0 | 3d 22 74 6f 63 2d 64 69 76 46 6c 6f 6f 72 22 20 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 | ="toc-divFloor".href="#divFloor" |
| 6ce0 | 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | >@divFloor</a></li>............. |
| 6d00 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 64 69 76 54 72 75 6e 63 22 20 68 72 65 66 3d 22 23 | <li><a.id="toc-divTrunc".href="# |
| 6d20 | 64 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 20 20 20 | divTrunc">@divTrunc</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 65 6d 62 65 64 46 69 6c | .........<li><a.id="toc-embedFil |
| 6d60 | 65 22 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 | e".href="#embedFile">@embedFile< |
| 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 65 6e 75 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 | toc-enumFromInt".href="#enumFrom |
| 6dc0 | 49 6e 74 22 3e 40 65 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 | Int">@enumFromInt</a></li>...... |
| 6de0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 72 72 6f 72 46 72 6f 6d 49 | .......<li><a.id="toc-errorFromI |
| 6e00 | 6e 74 22 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 | nt".href="#errorFromInt">@errorF |
| 6e20 | 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> |
| 6e40 | 3c 61 20 69 64 3d 22 74 6f 63 2d 65 72 72 6f 72 4e 61 6d 65 22 20 68 72 65 66 3d 22 23 65 72 72 | <a.id="toc-errorName".href="#err |
| 6e60 | 6f 72 4e 61 6d 65 22 3e 40 65 72 72 6f 72 4e 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | orName">@errorName</a></li>..... |
| 6e80 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 72 72 6f 72 52 65 74 75 | ........<li><a.id="toc-errorRetu |
| 6ea0 | 72 6e 54 72 61 63 65 22 20 68 72 65 66 3d 22 23 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 | rnTrace".href="#errorReturnTrace |
| 6ec0 | 22 3e 40 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | ">@errorReturnTrace</a></li>.... |
| 6ee0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 72 72 6f 72 43 61 73 | .........<li><a.id="toc-errorCas |
| 6f00 | 74 22 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 43 61 73 74 3c | t".href="#errorCast">@errorCast< |
| 6f20 | 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=" |
| 6f40 | 74 6f 63 2d 65 78 70 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 | toc-export".href="#export">@expo |
| 6f60 | 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 |
| 6f80 | 64 3d 22 74 6f 63 2d 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 | d="toc-extern".href="#extern">@e |
| 6fa0 | 78 74 65 72 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 | xtern</a></li>.............<li>< |
| 6fc0 | 61 20 69 64 3d 22 74 6f 63 2d 66 65 6e 63 65 22 20 68 72 65 66 3d 22 23 66 65 6e 63 65 22 3e 40 | a.id="toc-fence".href="#fence">@ |
| 6fe0 | 66 65 6e 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | fence</a></li>.............<li>< |
| 7000 | 61 20 69 64 3d 22 74 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 | a.id="toc-field".href="#field">@ |
| 7020 | 66 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 3c 6c 69 3e 3c | field</a></li>.............<li>< |
| 7040 | 61 20 69 64 3d 22 74 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 | a.id="toc-fieldParentPtr".href=" |
| 7060 | 23 66 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 | #fieldParentPtr">@fieldParentPtr |
| 7080 | 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= |
| 70a0 | 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 74 43 61 73 74 | "toc-floatCast".href="#floatCast |
| 70c0 | 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 20 20 20 20 20 | ">@floatCast</a></li>........... |
| 70e0 | 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 6e 74 22 20 68 | ..<li><a.id="toc-floatFromInt".h |
| 7100 | 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 6f 6d 49 6e | ref="#floatFromInt">@floatFromIn |
| 7120 | 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | t</a></li>.............<li><a.id |
| 7140 | 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 66 72 61 6d 65 | ="toc-frameAddress".href="#frame |
| 7160 | 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 2f 6c 69 3e 0a | Address">@frameAddress</a></li>. |
| 7180 | 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 68 61 73 44 65 | ............<li><a.id="toc-hasDe |
| 71a0 | 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 6c 3c 2f 61 3e | cl".href="#hasDecl">@hasDecl</a> |
| 71c0 | 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 |
| 71e0 | 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 3e 40 68 61 73 | -hasField".href="#hasField">@has |
| 7200 | 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 3c 6c 69 3e 3c | Field</a></li>.............<li>< |
| 7220 | 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 70 6f 72 74 22 | a.id="toc-import".href="#import" |
| 7240 | 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 20 20 20 3c 6c | >@import</a></li>.............<l |
| 7260 | 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 65 66 3d 22 23 | i><a.id="toc-inComptime".href="# |
| 7280 | 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 3c 2f 6c 69 3e | inComptime">@inComptime</a></li> |
| 72a0 | 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 74 43 | .............<li><a.id="toc-intC |
| 72c0 | 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 73 74 3c 2f 61 | ast".href="#intCast">@intCast</a |
| 72e0 | 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 |
| 7300 | 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 6f 6d 42 6f 6f | c-intFromBool".href="#intFromBoo |
| 7320 | 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 20 20 20 20 20 | l">@intFromBool</a></li>........ |
| 7340 | 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 45 6e 75 6d 22 | .....<li><a.id="toc-intFromEnum" |
| 7360 | 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 6f 6d 45 6e 75 | .href="#intFromEnum">@intFromEnu |
| 7380 | 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | m</a></li>.............<li><a.id |
| 73a0 | 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 69 6e 74 46 72 | ="toc-intFromError".href="#intFr |
| 73c0 | 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 2f 6c 69 3e 0a | omError">@intFromError</a></li>. |
| 73e0 | 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 74 46 72 | ............<li><a.id="toc-intFr |
| 7400 | 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 74 22 3e 40 69 | omFloat".href="#intFromFloat">@i |
| 7420 | 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 20 20 20 20 20 | ntFromFloat</a></li>............ |
| 7440 | 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 20 68 72 65 66 | .<li><a.id="toc-intFromPtr".href |
| 7460 | 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 3c 2f | ="#intFromPtr">@intFromPtr</a></ |
| 7480 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6d | li>.............<li><a.id="toc-m |
| 74a0 | 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 69 3e 0a 20 20 | ax".href="#max">@max</a></li>... |
| 74c0 | 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 6d 63 70 79 22 | ..........<li><a.id="toc-memcpy" |
| 74e0 | 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 3c 2f 6c 69 3e | .href="#memcpy">@memcpy</a></li> |
| 7500 | 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 6d 73 | .............<li><a.id="toc-mems |
| 7520 | 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 2f 61 3e 3c 2f | et".href="#memset">@memset</a></ |
| 7540 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6d | li>.............<li><a.id="toc-m |
| 7560 | 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 69 3e 0a 20 20 | in".href="#min">@min</a></li>... |
| 7580 | 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 |
| 75a0 | 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 69 7a 65 22 3e | orySize".href="#wasmMemorySize"> |
| 75c0 | 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 20 20 20 20 20 | @wasmMemorySize</a></li>........ |
| 75e0 | 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 6f 72 79 47 72 | .....<li><a.id="toc-wasmMemoryGr |
| 7600 | 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 40 77 61 73 6d | ow".href="#wasmMemoryGrow">@wasm |
| 7620 | 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 20 20 20 20 20 | MemoryGrow</a></li>............. |
| 7640 | 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 6d 6f 64 22 3e | <li><a.id="toc-mod".href="#mod"> |
| 7660 | 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 6c 69 3e 3c 61 | @mod</a></li>.............<li><a |
| 7680 | 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 72 65 66 3d 22 | .id="toc-mulWithOverflow".href=" |
| 76a0 | 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 76 65 72 66 6c | #mulWithOverflow">@mulWithOverfl |
| 76c0 | 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 20 69 | ow</a></li>.............<li><a.i |
| 76e0 | 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 3e 40 70 61 6e | d="toc-panic".href="#panic">@pan |
| 7700 | 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 3e 3c 61 20 69 | ic</a></li>.............<li><a.i |
| 7720 | 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 43 6f 75 6e 74 | d="toc-popCount".href="#popCount |
| 7740 | 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 20 20 20 20 20 | ">@popCount</a></li>............ |
| 7760 | 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 72 65 66 3d 22 | .<li><a.id="toc-prefetch".href=" |
| 7780 | 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 69 3e 0a 20 20 | #prefetch">@prefetch</a></li>... |
| 77a0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 70 74 72 43 61 73 74 | ..........<li><a.id="toc-ptrCast |
| 77c0 | 22 20 68 72 65 66 3d 22 23 70 74 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 74 3c 2f 61 3e 3c 2f | ".href="#ptrCast">@ptrCast</a></ |
| 77e0 | 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 |
| 7800 | 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 74 22 3e 40 70 | trFromInt".href="#ptrFromInt">@p |
| 7820 | 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 20 20 20 20 3c | trFromInt</a></li>.............< |
| 7840 | 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 65 6d 22 3e 40 | li><a.id="toc-rem".href="#rem">@ |
| 7860 | 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 69 3e 3c 61 20 | rem</a></li>.............<li><a. |
| 7880 | 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 3d 22 23 72 65 | id="toc-returnAddress".href="#re |
| 78a0 | 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 3c 2f 61 3e 3c | turnAddress">@returnAddress</a>< |
| 78c0 | 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- |
| 78e0 | 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 65 63 74 3c 2f | select".href="#select">@select</ |
| 7900 | 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 |
| 7920 | 6f 63 2d 73 65 74 41 6c 69 67 6e 53 74 61 63 6b 22 20 68 72 65 66 3d 22 23 73 65 74 41 6c 69 67 | oc-setAlignStack".href="#setAlig |
| 7940 | 6e 53 74 61 63 6b 22 3e 40 73 65 74 41 6c 69 67 6e 53 74 61 63 6b 3c 2f 61 3e 3c 2f 6c 69 3e 0a | nStack">@setAlignStack</a></li>. |
| 7960 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 65 74 43 6f | ............<li><a.id="toc-setCo |
| 7980 | 6c 64 22 20 68 72 65 66 3d 22 23 73 65 74 43 6f 6c 64 22 3e 40 73 65 74 43 6f 6c 64 3c 2f 61 3e | ld".href="#setCold">@setCold</a> |
| 79a0 | 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 |
| 79c0 | 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 3d 22 23 73 65 74 45 | -setEvalBranchQuota".href="#setE |
| 79e0 | 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 72 61 6e 63 68 51 75 | valBranchQuota">@setEvalBranchQu |
| 7a00 | 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 3c 6c 69 3e 3c 61 20 | ota</a></li>.............<li><a. |
| 7a20 | 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 66 3d 22 23 73 65 74 | id="toc-setFloatMode".href="#set |
| 7a40 | 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 2f 61 3e 3c 2f 6c 69 | FloatMode">@setFloatMode</a></li |
| 7a60 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 65 74 | >.............<li><a.id="toc-set |
| 7a80 | 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 52 75 6e 74 69 6d 65 | RuntimeSafety".href="#setRuntime |
| 7aa0 | 53 61 66 65 74 79 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 61 3e 3c 2f 6c | Safety">@setRuntimeSafety</a></l |
| 7ac0 | 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 68 | i>.............<li><a.id="toc-sh |
| 7ae0 | 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 40 73 68 6c 45 78 61 | lExact".href="#shlExact">@shlExa |
| 7b00 | 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 69 | ct</a></li>.............<li><a.i |
| 7b20 | 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 72 65 66 3d 22 23 73 | d="toc-shlWithOverflow".href="#s |
| 7b40 | 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 |
| 7b60 | 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= |
| 7b80 | 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 45 78 61 63 74 22 3e | "toc-shrExact".href="#shrExact"> |
| 7ba0 | 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 20 20 20 20 20 20 3c | @shrExact</a></li>.............< |
| 7bc0 | 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 65 66 3d 22 23 73 68 | li><a.id="toc-shuffle".href="#sh |
| 7be0 | 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 20 20 20 20 20 20 20 | uffle">@shuffle</a></li>........ |
| 7c00 | 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 66 22 20 68 72 65 66 | .....<li><a.id="toc-sizeOf".href |
| 7c20 | 3d 22 23 73 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | ="#sizeOf">@sizeOf</a></li>..... |
| 7c40 | 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 6c 61 74 22 20 68 72 | ........<li><a.id="toc-splat".hr |
| 7c60 | 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 69 3e 0a 20 20 20 20 | ef="#splat">@splat</a></li>..... |
| 7c80 | 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 64 75 63 65 22 20 68 | ........<li><a.id="toc-reduce".h |
| 7ca0 | 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 6c 69 3e 0a 20 | ref="#reduce">@reduce</a></li>.. |
| 7cc0 | 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 72 63 22 20 68 | ...........<li><a.id="toc-src".h |
| 7ce0 | 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 20 20 20 20 20 20 20 | ref="#src">@src</a></li>........ |
| 7d00 | 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 20 68 72 65 66 3d 22 | .....<li><a.id="toc-sqrt".href=" |
| 7d20 | 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 20 20 20 20 20 20 20 | #sqrt">@sqrt</a></li>........... |
| 7d40 | 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 66 3d 22 23 73 69 6e | ..<li><a.id="toc-sin".href="#sin |
| 7d60 | 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 20 20 20 3c 6c 69 3e | ">@sin</a></li>.............<li> |
| 7d80 | 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 73 22 3e 40 63 6f 73 | <a.id="toc-cos".href="#cos">@cos |
| 7da0 | 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= |
| 7dc0 | 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 6e 3c 2f 61 3e 3c 2f | "toc-tan".href="#tan">@tan</a></ |
| 7de0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 | li>.............<li><a.id="toc-e |
| 7e00 | 78 70 22 20 68 72 65 66 3d 22 23 65 78 70 22 3e 40 65 78 70 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | xp".href="#exp">@exp</a></li>... |
| 7e20 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 78 70 32 22 20 68 | ..........<li><a.id="toc-exp2".h |
| 7e40 | 72 65 66 3d 22 23 65 78 70 32 22 3e 40 65 78 70 32 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | ref="#exp2">@exp2</a></li>...... |
| 7e60 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6c 6f 67 22 20 68 72 65 66 3d | .......<li><a.id="toc-log".href= |
| 7e80 | 22 23 6c 6f 67 22 3e 40 6c 6f 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | "#log">@log</a></li>............ |
| 7ea0 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6c 6f 67 32 22 20 68 72 65 66 3d 22 23 6c 6f 67 | .<li><a.id="toc-log2".href="#log |
| 7ec0 | 32 22 3e 40 6c 6f 67 32 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | 2">@log2</a></li>.............<l |
| 7ee0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6c 6f 67 31 30 22 20 68 72 65 66 3d 22 23 6c 6f 67 31 30 | i><a.id="toc-log10".href="#log10 |
| 7f00 | 22 3e 40 6c 6f 67 31 30 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | ">@log10</a></li>.............<l |
| 7f20 | 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 61 62 73 22 3e 40 61 | i><a.id="toc-abs".href="#abs">@a |
| 7f40 | 62 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | bs</a></li>.............<li><a.i |
| 7f60 | 64 3d 22 74 6f 63 2d 66 6c 6f 6f 72 22 20 68 72 65 66 3d 22 23 66 6c 6f 6f 72 22 3e 40 66 6c 6f | d="toc-floor".href="#floor">@flo |
| 7f80 | 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | or</a></li>.............<li><a.i |
| 7fa0 | 64 3d 22 74 6f 63 2d 63 65 69 6c 22 20 68 72 65 66 3d 22 23 63 65 69 6c 22 3e 40 63 65 69 6c 3c | d="toc-ceil".href="#ceil">@ceil< |
| 7fc0 | 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=" |
| 7fe0 | 74 6f 63 2d 74 72 75 6e 63 22 20 68 72 65 66 3d 22 23 74 72 75 6e 63 22 3e 40 74 72 75 6e 63 3c | toc-trunc".href="#trunc">@trunc< |
| 8000 | 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=" |
| 8020 | 74 6f 63 2d 72 6f 75 6e 64 22 20 68 72 65 66 3d 22 23 72 6f 75 6e 64 22 3e 40 72 6f 75 6e 64 3c | toc-round".href="#round">@round< |
| 8040 | 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=" |
| 8060 | 74 6f 63 2d 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 73 75 62 57 | toc-subWithOverflow".href="#subW |
| 8080 | 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 | ithOverflow">@subWithOverflow</a |
| 80a0 | 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 |
| 80c0 | 63 2d 74 61 67 4e 61 6d 65 22 20 68 72 65 66 3d 22 23 74 61 67 4e 61 6d 65 22 3e 40 74 61 67 4e | c-tagName".href="#tagName">@tagN |
| 80e0 | 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ame</a></li>.............<li><a. |
| 8100 | 69 64 3d 22 74 6f 63 2d 54 68 69 73 22 20 68 72 65 66 3d 22 23 54 68 69 73 22 3e 40 54 68 69 73 | id="toc-This".href="#This">@This |
| 8120 | 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= |
| 8140 | 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 74 72 61 70 3c 2f 61 | "toc-trap".href="#trap">@trap</a |
| 8160 | 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 |
| 8180 | 63 2d 74 72 75 6e 63 61 74 65 22 20 68 72 65 66 3d 22 23 74 72 75 6e 63 61 74 65 22 3e 40 74 72 | c-truncate".href="#truncate">@tr |
| 81a0 | 75 6e 63 61 74 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | uncate</a></li>.............<li> |
| 81c0 | 3c 61 20 69 64 3d 22 74 6f 63 2d 54 79 70 65 22 20 68 72 65 66 3d 22 23 54 79 70 65 22 3e 40 54 | <a.id="toc-Type".href="#Type">@T |
| 81e0 | 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 61 20 | ype</a></li>.............<li><a. |
| 8200 | 69 64 3d 22 74 6f 63 2d 74 79 70 65 49 6e 66 6f 22 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 | id="toc-typeInfo".href="#typeInf |
| 8220 | 6f 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | o">@typeInfo</a></li>........... |
| 8240 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 74 79 70 65 4e 61 6d 65 22 20 68 72 65 66 3d | ..<li><a.id="toc-typeName".href= |
| 8260 | 22 23 74 79 70 65 4e 61 6d 65 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | "#typeName">@typeName</a></li>.. |
| 8280 | 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 4f 66 | ...........<li><a.id="toc-TypeOf |
| 82a0 | 22 20 68 72 65 66 3d 22 23 54 79 70 65 4f 66 22 3e 40 54 79 70 65 4f 66 3c 2f 61 3e 3c 2f 6c 69 | ".href="#TypeOf">@TypeOf</a></li |
| 82c0 | 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 75 6e 69 | >.............<li><a.id="toc-uni |
| 82e0 | 6f 6e 49 6e 69 74 22 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 49 6e 69 74 22 3e 40 75 6e 69 6f 6e | onInit".href="#unionInit">@union |
| 8300 | 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 20 3c 6c 69 3e 3c 61 | Init</a></li>.............<li><a |
| 8320 | 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 65 63 74 6f 72 22 3e | .id="toc-Vector".href="#Vector"> |
| 8340 | 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 20 20 20 20 3c 6c 69 | @Vector</a></li>.............<li |
| 8360 | 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 20 68 72 65 66 3d 22 | ><a.id="toc-volatileCast".href=" |
| 8380 | 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 61 73 74 3c 2f 61 3e | #volatileCast">@volatileCast</a> |
| 83a0 | 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 |
| 83c0 | 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 47 72 6f 75 70 49 64 | -workGroupId".href="#workGroupId |
| 83e0 | 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 20 20 20 20 20 20 20 | ">@workGroupId</a></li>......... |
| 8400 | 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 6f 75 70 53 69 7a 65 | ....<li><a.id="toc-workGroupSize |
| 8420 | 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 77 6f 72 6b 47 72 6f | ".href="#workGroupSize">@workGro |
| 8440 | 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 20 20 20 3c 6c 69 3e | upSize</a></li>.............<li> |
| 8460 | 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 65 66 3d 22 23 77 6f | <a.id="toc-workItemId".href="#wo |
| 8480 | 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 3c 2f 6c 69 3e 0a 20 | rkItemId">@workItemId</a></li>.. |
| 84a0 | 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 |
| 84c0 | 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 3d 22 23 42 75 69 6c | .id="toc-Build-Mode".href="#Buil |
| 84e0 | 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 20 20 20 20 20 20 3c | d-Mode">Build.Mode</a>.........< |
| 8500 | 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 44 | ul>.............<li><a.id="toc-D |
| 8520 | 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 3c 2f 61 3e 3c 2f 6c | ebug".href="#Debug">Debug</a></l |
| 8540 | 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 52 65 | i>.............<li><a.id="toc-Re |
| 8560 | 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 46 61 73 74 22 3e 52 | leaseFast".href="#ReleaseFast">R |
| 8580 | 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 20 20 20 20 20 20 20 | eleaseFast</a></li>............. |
| 85a0 | 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 65 22 20 68 72 65 66 | <li><a.id="toc-ReleaseSafe".href |
| 85c0 | 3d 22 23 52 65 6c 65 61 73 65 53 61 66 65 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 61 3e 3c | ="#ReleaseSafe">ReleaseSafe</a>< |
| 85e0 | 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- |
| 8600 | 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 61 73 65 53 6d 61 6c | ReleaseSmall".href="#ReleaseSmal |
| 8620 | 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 20 | l">ReleaseSmall</a></li>........ |
| 8640 | 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 |
| 8660 | 6f 63 2d 53 69 6e 67 6c 65 2d 54 68 72 65 61 64 65 64 2d 42 75 69 6c 64 73 22 20 68 72 65 66 3d | oc-Single-Threaded-Builds".href= |
| 8680 | 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 53 69 6e 67 6c 65 | "#Single-Threaded-Builds">Single |
| 86a0 | 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 0a 20 20 20 20 20 20 | .Threaded.Builds</a></li>....... |
| 86c0 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 | ..<li><a.id="toc-Undefined-Behav |
| 86e0 | 69 6f 72 22 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e | ior".href="#Undefined-Behavior"> |
| 8700 | 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c | Undefined.Behavior</a>.........< |
| 8720 | 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 52 | ul>.............<li><a.id="toc-R |
| 8740 | 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 22 | eaching-Unreachable-Code".href=" |
| 8760 | 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 63 | #Reaching-Unreachable-Code">Reac |
| 8780 | 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 20 | hing.Unreachable.Code</a></li>.. |
| 87a0 | 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 2d | ...........<li><a.id="toc-Index- |
| 87c0 | 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 2d | out-of-Bounds".href="#Index-out- |
| 87e0 | 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 2f | of-Bounds">Index.out.of.Bounds</ |
| 8800 | 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 |
| 8820 | 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 67 | oc-Cast-Negative-Number-to-Unsig |
| 8840 | 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 76 | ned-Integer".href="#Cast-Negativ |
| 8860 | 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 61 | e-Number-to-Unsigned-Integer">Ca |
| 8880 | 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 49 | st.Negative.Number.to.Unsigned.I |
| 88a0 | 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 3e | nteger</a></li>.............<li> |
| 88c0 | 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 20 | <a.id="toc-Cast-Truncates-Data". |
| 88e0 | 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 74 | href="#Cast-Truncates-Data">Cast |
| 8900 | 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 20 | .Truncates.Data</a></li>........ |
| 8920 | 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 72 | .....<li><a.id="toc-Integer-Over |
| 8940 | 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 49 | flow".href="#Integer-Overflow">I |
| 8960 | 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 20 | nteger.Overflow</a>............. |
| 8980 | 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 22 | <ul>.................<li><a.id=" |
| 89a0 | 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 44 | toc-Default-Operations".href="#D |
| 89c0 | 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 61 | efault-Operations">Default.Opera |
| 89e0 | 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 3c | tions</a></li>.................< |
| 8a00 | 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 4d | li><a.id="toc-Standard-Library-M |
| 8a20 | 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 4c | ath-Functions".href="#Standard-L |
| 8a40 | 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 20 | ibrary-Math-Functions">Standard. |
| 8a60 | 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 0a | Library.Math.Functions</a></li>. |
| 8a80 | 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 42 | ................<li><a.id="toc-B |
| 8aa0 | 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 3d | uiltin-Overflow-Functions".href= |
| 8ac0 | 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 75 | "#Builtin-Overflow-Functions">Bu |
| 8ae0 | 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 69 | iltin.Overflow.Functions</a></li |
| 8b00 | 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 |
| 8b20 | 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 61 | -Wrapping-Operations".href="#Wra |
| 8b40 | 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 61 | pping-Operations">Wrapping.Opera |
| 8b60 | 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 3e | tions</a></li>.............</ul> |
| 8b80 | 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 |
| 8ba0 | 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 66 | -Exact-Left-Shift-Overflow".href |
| 8bc0 | 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 78 | ="#Exact-Left-Shift-Overflow">Ex |
| 8be0 | 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 3e | act.Left.Shift.Overflow</a></li> |
| 8c00 | 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 63 | .............<li><a.id="toc-Exac |
| 8c20 | 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 45 | t-Right-Shift-Overflow".href="#E |
| 8c40 | 78 61 63 74 2d 52 69 67 68 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e 45 78 61 63 74 | xact-Right-Shift-Overflow">Exact |
| 8c60 | 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 20 | .Right.Shift.Overflow</a></li>.. |
| 8c80 | 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 69 | ...........<li><a.id="toc-Divisi |
| 8ca0 | 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 5a | on-by-Zero".href="#Division-by-Z |
| 8cc0 | 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 20 | ero">Division.by.Zero</a></li>.. |
| 8ce0 | 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 6e | ...........<li><a.id="toc-Remain |
| 8d00 | 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 6d | der-Division-by-Zero".href="#Rem |
| 8d20 | 61 69 6e 64 65 72 2d 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 52 65 6d 61 69 6e 64 | ainder-Division-by-Zero">Remaind |
| 8d40 | 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 20 | er.Division.by.Zero</a></li>.... |
| 8d60 | 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 69 | .........<li><a.id="toc-Exact-Di |
| 8d80 | 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 44 | vision-Remainder".href="#Exact-D |
| 8da0 | 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 6f | ivision-Remainder">Exact.Divisio |
| 8dc0 | 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 20 | n.Remainder</a></li>............ |
| 8de0 | 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 61 | .<li><a.id="toc-Attempt-to-Unwra |
| 8e00 | 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 70 | p-Null".href="#Attempt-to-Unwrap |
| 8e20 | 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 61 | -Null">Attempt.to.Unwrap.Null</a |
| 8e40 | 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 |
| 8e60 | 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 3d | c-Attempt-to-Unwrap-Error".href= |
| 8e80 | 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 6d | "#Attempt-to-Unwrap-Error">Attem |
| 8ea0 | 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 20 | pt.to.Unwrap.Error</a></li>..... |
| 8ec0 | 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 45 | ........<li><a.id="toc-Invalid-E |
| 8ee0 | 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 2d | rror-Code".href="#Invalid-Error- |
| 8f00 | 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 69 | Code">Invalid.Error.Code</a></li |
| 8f20 | 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 76 | >.............<li><a.id="toc-Inv |
| 8f40 | 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 45 | alid-Enum-Cast".href="#Invalid-E |
| 8f60 | 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 3c | num-Cast">Invalid.Enum.Cast</a>< |
| 8f80 | 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- |
| 8fa0 | 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 49 | Invalid-Error-Set-Cast".href="#I |
| 8fc0 | 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 45 | nvalid-Error-Set-Cast">Invalid.E |
| 8fe0 | 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 20 | rror.Set.Cast</a></li>.......... |
| 9000 | 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 6e | ...<li><a.id="toc-Incorrect-Poin |
| 9020 | 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 2d | ter-Alignment".href="#Incorrect- |
| 9040 | 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 69 | Pointer-Alignment">Incorrect.Poi |
| 9060 | 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 20 | nter.Alignment</a></li>......... |
| 9080 | 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 46 | ....<li><a.id="toc-Wrong-Union-F |
| 90a0 | 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 2d | ield-Access".href="#Wrong-Union- |
| 90c0 | 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 20 | Field-Access">Wrong.Union.Field. |
| 90e0 | 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 3e | Access</a></li>.............<li> |
| 9100 | 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 74 | <a.id="toc-Out-of-Bounds-Float-t |
| 9120 | 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 6f | o-Integer-Cast".href="#Out-of-Bo |
| 9140 | 75 6e 64 73 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 65 67 65 72 2d 43 61 73 74 22 3e 4f 75 74 20 | unds-Float-to-Integer-Cast">Out. |
| 9160 | 6f 66 20 42 6f 75 6e 64 73 20 46 6c 6f 61 74 20 74 6f 20 49 6e 74 65 67 65 72 20 43 61 73 74 3c | of.Bounds.Float.to.Integer.Cast< |
| 9180 | 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=" |
| 91a0 | 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 68 | toc-Pointer-Cast-Invalid-Null".h |
| 91c0 | 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" |
| 91e0 | 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 2f | >Pointer.Cast.Invalid.Null</a></ |
| 9200 | 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>.........< |
| 9220 | 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 6d | li><a.id="toc-Memory".href="#Mem |
| 9240 | 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 20 | ory">Memory</a>.........<ul>.... |
| 9260 | 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 67 | .........<li><a.id="toc-Choosing |
| 9280 | 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 61 | -an-Allocator".href="#Choosing-a |
| 92a0 | 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 74 | n-Allocator">Choosing.an.Allocat |
| 92c0 | 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | or</a></li>.............<li><a.i |
| 92e0 | 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 66 | d="toc-Where-are-the-bytes".href |
| 9300 | 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 72 | ="#Where-are-the-bytes">Where.ar |
| 9320 | 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 20 | e.the.bytes?</a></li>........... |
| 9340 | 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 6e | ..<li><a.id="toc-Implementing-an |
| 9360 | 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 2d | -Allocator".href="#Implementing- |
| 9380 | 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 6c | an-Allocator">Implementing.an.Al |
| 93a0 | 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 69 | locator</a></li>.............<li |
| 93c0 | 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 6c | ><a.id="toc-Heap-Allocation-Fail |
| 93e0 | 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 6c | ure".href="#Heap-Allocation-Fail |
| 9400 | 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 3e | ure">Heap.Allocation.Failure</a> |
| 9420 | 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 |
| 9440 | 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 65 | -Recursion".href="#Recursion">Re |
| 9460 | 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 69 | cursion</a></li>.............<li |
| 9480 | 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 68 | ><a.id="toc-Lifetime-and-Ownersh |
| 94a0 | 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 69 | ip".href="#Lifetime-and-Ownershi |
| 94c0 | 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 6c | p">Lifetime.and.Ownership</a></l |
| 94e0 | 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 |
| 9500 | 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 20 | i><a.id="toc-Compile-Variables". |
| 9520 | 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 6c | href="#Compile-Variables">Compil |
| 9540 | 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 69 | e.Variables</a></li>.........<li |
| 9560 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 6f 6f 74 2d 53 6f 75 72 63 65 2d 46 69 6c 65 22 20 68 72 | ><a.id="toc-Root-Source-File".hr |
| 9580 | 65 66 3d 22 23 52 6f 6f 74 2d 53 6f 75 72 63 65 2d 46 69 6c 65 22 3e 52 6f 6f 74 20 53 6f 75 72 | ef="#Root-Source-File">Root.Sour |
| 95a0 | 63 65 20 46 69 6c 65 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 | ce.File</a></li>.........<li><a. |
| 95c0 | 69 64 3d 22 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 | id="toc-Zig-Build-System".href=" |
| 95e0 | 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 73 | #Zig-Build-System">Zig.Build.Sys |
| 9600 | 74 65 6d 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 | tem</a></li>.........<li><a.id=" |
| 9620 | 74 6f 63 2d 43 22 20 68 72 65 66 3d 22 23 43 22 3e 43 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c | toc-C".href="#C">C</a>.........< |
| 9640 | 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 43 | ul>.............<li><a.id="toc-C |
| 9660 | 2d 54 79 70 65 2d 50 72 69 6d 69 74 69 76 65 73 22 20 68 72 65 66 3d 22 23 43 2d 54 79 70 65 2d | -Type-Primitives".href="#C-Type- |
| 9680 | 50 72 69 6d 69 74 69 76 65 73 22 3e 43 20 54 79 70 65 20 50 72 69 6d 69 74 69 76 65 73 3c 2f 61 | Primitives">C.Type.Primitives</a |
| 96a0 | 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 |
| 96c0 | 63 2d 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 20 68 72 65 | c-Import-from-C-Header-File".hre |
| 96e0 | 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 |
| 9700 | 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 |
| 9720 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 2d 54 | >.............<li><a.id="toc-C-T |
| 9740 | 72 61 6e 73 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 | ranslation-CLI".href="#C-Transla |
| 9760 | 74 69 6f 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 0a | tion-CLI">C.Translation.CLI</a>. |
| 9780 | 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>................ |
| 97a0 | 20 3c 6c 69 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 | .<li><a.id="toc-Command-line-fla |
| 97c0 | 67 73 22 20 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 | gs".href="#Command-line-flags">C |
| 97e0 | 6f 6d 6d 61 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 | ommand.line.flags</a></li>...... |
| 9800 | 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 55 73 69 6e 67 2d | ...........<li><a.id="toc-Using- |
| 9820 | 2d 74 61 72 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 | -target-and--cflags".href="#Usin |
| 9840 | 67 2d 2d 74 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 | g--target-and--cflags">Using.-ta |
| 9860 | 72 67 65 74 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 | rget.and.-cflags</a></li>....... |
| 9880 | 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 49 6d 70 6f 72 74 | ..........<li><a.id="toc-cImport |
| 98a0 | 2d 76 73 2d 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 | -vs-translate-c".href="#cImport- |
| 98c0 | 76 73 2d 74 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 | vs-translate-c">@cImport.vs.tran |
| 98e0 | 73 6c 61 74 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 | slate-c</a></li>.............</u |
| 9900 | 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 | l></li>.............<li><a.id="t |
| 9920 | 6f 63 2d 43 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 | oc-C-Translation-Caching".href=" |
| 9940 | 23 43 2d 54 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 | #C-Translation-Caching">C.Transl |
| 9960 | 61 74 69 6f 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 | ation.Caching</a></li>.......... |
| 9980 | 20 20 20 3c 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 | ...<li><a.id="toc-Translation-fa |
| 99a0 | 69 6c 75 72 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 | ilures".href="#Translation-failu |
| 99c0 | 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 3e 3c 2f 6c | res">Translation.failures</a></l |
| 99e0 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 2d | i>.............<li><a.id="toc-C- |
| 9a00 | 4d 61 63 72 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 | Macros".href="#C-Macros">C.Macro |
| 9a20 | 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 |
| 9a40 | 3d 22 74 6f 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 | ="toc-C-Pointers".href="#C-Point |
| 9a60 | 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 20 20 20 20 20 20 20 | ers">C.Pointers</a></li>........ |
| 9a80 | 20 20 20 20 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 | .....<li><a.id="toc-C-Variadic-F |
| 9aa0 | 75 6e 63 74 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 | unctions".href="#C-Variadic-Func |
| 9ac0 | 74 69 6f 6e 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 | tions">C.Variadic.Functions</a>< |
| 9ae0 | 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- |
| 9b00 | 45 78 70 6f 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 | Exporting-a-C-Library".href="#Ex |
| 9b20 | 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 72 74 69 6e 67 20 61 | porting-a-C-Library">Exporting.a |
| 9b40 | 20 43 20 4c 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 | .C.Library</a></li>............. |
| 9b60 | 3c 6c 69 3e 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 | <li><a.id="toc-Mixing-Object-Fil |
| 9b80 | 65 73 22 20 68 72 65 66 3d 22 23 4d 69 78 69 6e 67 2d 4f 62 6a 65 63 74 2d 46 69 6c 65 73 22 3e | es".href="#Mixing-Object-Files"> |
| 9ba0 | 4d 69 78 69 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 | Mixing.Object.Files</a></li>.... |
| 9bc0 | 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 |
| 9be0 | 64 3d 22 74 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 | d="toc-WebAssembly".href="#WebAs |
| 9c00 | 73 65 6d 62 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 | sembly">WebAssembly</a>......... |
| 9c20 | 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- |
| 9c40 | 46 72 65 65 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 | Freestanding".href="#Freestandin |
| 9c60 | 67 22 3e 46 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 | g">Freestanding</a></li>........ |
| 9c80 | 20 20 20 20 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 | .....<li><a.id="toc-WASI".href=" |
| 9ca0 | 23 57 41 53 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 | #WASI">WASI</a></li>.........</u |
| 9cc0 | 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 54 | l></li>.........<li><a.id="toc-T |
| 9ce0 | 61 72 67 65 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 | argets".href="#Targets">Targets< |
| 9d00 | 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- |
| 9d20 | 53 74 79 6c 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 | Style-Guide".href="#Style-Guide" |
| 9d40 | 3e 53 74 79 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 | >Style.Guide</a>.........<ul>... |
| 9d60 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 76 6f 69 64 2d 52 | ..........<li><a.id="toc-Avoid-R |
| 9d80 | 65 64 75 6e 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 | edundancy-in-Names".href="#Avoid |
| 9da0 | 2d 52 65 64 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 | -Redundancy-in-Names">Avoid.Redu |
| 9dc0 | 6e 64 61 6e 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 | ndancy.in.Names</a></li>........ |
| 9de0 | 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 64 | .....<li><a.id="toc-Avoid-Redund |
| 9e00 | 61 6e 74 2d 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 | ant-Names-in-Fully-Qualified-Nam |
| 9e20 | 65 73 70 61 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 | espaces".href="#Avoid-Redundant- |
| 9e40 | 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 |
| 9e60 | 63 65 73 22 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 | ces">Avoid.Redundant.Names.in.Fu |
| 9e80 | 6c 6c 79 2d 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 | lly-Qualified.Namespaces</a></li |
| 9ea0 | 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 57 68 69 | >.............<li><a.id="toc-Whi |
| 9ec0 | 74 65 73 70 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 | tespace".href="#Whitespace">Whit |
| 9ee0 | 65 73 70 61 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | espace</a></li>.............<li> |
| 9f00 | 3c 61 20 69 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 | <a.id="toc-Names".href="#Names"> |
| 9f20 | 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 20 3c 6c 69 3e 3c | Names</a></li>.............<li>< |
| 9f40 | 61 20 69 64 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 | a.id="toc-Examples".href="#Examp |
| 9f60 | 6c 65 73 22 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 | les">Examples</a></li>.......... |
| 9f80 | 20 20 20 3c 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 | ...<li><a.id="toc-Doc-Comment-Gu |
| 9fa0 | 69 64 61 6e 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 | idance".href="#Doc-Comment-Guida |
| 9fc0 | 6e 63 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 3c 2f 6c | nce">Doc.Comment.Guidance</a></l |
| 9fe0 | 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 |
| a000 | 69 3e 3c 61 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 | i><a.id="toc-Source-Encoding".hr |
| a020 | 65 66 3d 22 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 | ef="#Source-Encoding">Source.Enc |
| a040 | 6f 64 69 6e 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 | oding</a></li>.........<li><a.id |
| a060 | 3d 22 74 6f 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 | ="toc-Keyword-Reference".href="# |
| a080 | 4b 65 79 77 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 | Keyword-Reference">Keyword.Refer |
| a0a0 | 65 6e 63 65 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 | ence</a></li>.........<li><a.id= |
| a0c0 | 22 74 6f 63 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 | "toc-Appendix".href="#Appendix"> |
| a0e0 | 41 70 70 65 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 | Appendix</a>.........<ul>....... |
| a100 | 20 20 20 20 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 | ......<li><a.id="toc-Containers" |
| a120 | 20 68 72 65 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 | .href="#Containers">Containers</ |
| a140 | 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 |
| a160 | 6f 63 2d 47 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 | oc-Grammar".href="#Grammar">Gram |
| a180 | 6d 61 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 | mar</a></li>.............<li><a. |
| a1a0 | 69 64 3d 22 74 6f 63 2d 5a 65 6e 22 20 68 72 65 66 3d 22 23 5a 65 6e 22 3e 5a 65 6e 3c 2f 61 3e | id="toc-Zen".href="#Zen">Zen</a> |
| a1c0 | 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 3c 2f 75 | </li>.........</ul></li>.....</u |
| a1e0 | 6c 3e 0a 0a 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 | l>..........</nav>.......</div>. |
| a200 | 20 20 20 20 20 20 3c 64 69 76 20 69 64 3d 22 63 6f 6e 74 65 6e 74 73 2d 77 72 61 70 70 65 72 22 | ......<div.id="contents-wrapper" |
| a220 | 3e 3c 6d 61 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 | ><main.id="contents">.......<h2. |
| a240 | 69 64 3d 22 49 6e 74 72 6f 64 75 63 74 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | id="Introduction"><a.href="#toc- |
| a260 | 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 20 3c | Introduction">Introduction</a>.< |
| a280 | 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 74 69 6f | a.class="hdr".href="#Introductio |
| a2a0 | 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | n">..</a></h2>........<p>....... |
| a2c0 | 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 22 3e 5a 69 | <a.href="https://ziglang.org">Zi |
| a2e0 | 67 3c 2f 61 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 | g</a>.is.a.general-purpose.progr |
| a300 | 61 6d 6d 69 6e 67 20 6c 61 6e 67 75 61 67 65 20 61 6e 64 20 74 6f 6f 6c 63 68 61 69 6e 20 66 6f | amming.language.and.toolchain.fo |
| a320 | 72 20 6d 61 69 6e 74 61 69 6e 69 6e 67 0a 20 20 20 20 20 20 3c 73 74 72 6f 6e 67 3e 72 6f 62 75 | r.maintaining.......<strong>robu |
| a340 | 73 74 3c 2f 73 74 72 6f 6e 67 3e 2c 20 3c 73 74 72 6f 6e 67 3e 6f 70 74 69 6d 61 6c 3c 2f 73 74 | st</strong>,.<strong>optimal</st |
| a360 | 72 6f 6e 67 3e 2c 20 61 6e 64 20 3c 73 74 72 6f 6e 67 3e 72 65 75 73 61 62 6c 65 3c 2f 73 74 72 | rong>,.and.<strong>reusable</str |
| a380 | 6f 6e 67 3e 20 73 6f 66 74 77 61 72 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | ong>.software........</p>....... |
| a3a0 | 3c 64 6c 3e 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 | <dl>.........<dt>Robust</dt><dd> |
| a3c0 | 42 65 68 61 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 | Behavior.is.correct.even.for.edg |
| a3e0 | 65 20 63 61 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 | e.cases.such.as.out.of.memory.</ |
| a400 | 64 64 3e 0a 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 | dd>.........<dt>Optimal</dt><dd> |
| a420 | 57 72 69 74 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 | Write.programs.the.best.way.they |
| a440 | 20 63 61 6e 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 | .can.behave.and.perform.</dd>... |
| a460 | 20 20 20 20 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 | ......<dt>Reusable</dt><dd>The.s |
| a480 | 61 6d 65 20 63 6f 64 65 20 77 6f 72 6b 73 20 69 6e 20 6d 61 6e 79 20 65 6e 76 69 72 6f 6e 6d 65 | ame.code.works.in.many.environme |
| a4a0 | 6e 74 73 20 77 68 69 63 68 20 68 61 76 65 20 64 69 66 66 65 72 65 6e 74 0a 20 20 20 20 20 20 20 | nts.which.have.different........ |
| a4c0 | 20 20 20 63 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 | ...constraints.</dd>.........<dt |
| a4e0 | 3e 4d 61 69 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 | >Maintainable</dt><dd>Precisely. |
| a500 | 63 6f 6d 6d 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 | communicate.intent.to.the.compil |
| a520 | 65 72 20 61 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 | er.and...........other.programme |
| a540 | 72 73 2e 20 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 | rs..The.language.imposes.a.low.o |
| a560 | 76 65 72 68 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 | verhead.to.reading.code.and.is.. |
| a580 | 20 20 20 20 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 | .........resilient.to.changing.r |
| a5a0 | 65 71 75 69 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 | equirements.and.environments.</d |
| a5c0 | 64 3e 0a 20 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 | d>.......</dl>.......<p>.......O |
| a5e0 | 66 74 65 6e 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 | ften.the.most.efficient.way.to.l |
| a600 | 65 61 72 6e 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 | earn.something.new.is.to.see.exa |
| a620 | 6d 70 6c 65 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 | mples,.so.......this.documentati |
| a640 | 6f 6e 20 73 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 | on.shows.how.to.use.each.of.Zig' |
| a660 | 73 20 66 65 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 | s.features..It.is.......all.on.o |
| a680 | 6e 65 20 70 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 | ne.page.so.you.can.search.with.y |
| a6a0 | 6f 75 72 20 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 | our.browser's.search.tool....... |
| a6c0 | 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 63 6f 64 65 20 73 | .</p>.......<p>.......The.code.s |
| a6e0 | 61 6d 70 6c 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 | amples.in.this.document.are.comp |
| a700 | 69 6c 65 64 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 | iled.and.tested.as.part.of.the.m |
| a720 | 61 69 6e 20 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 | ain.test.suite.of.Zig........</p |
| a740 | 3e 0a 20 20 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 | >.......<p>.......This.HTML.docu |
| a760 | 6d 65 6e 74 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 | ment.depends.on.no.external.file |
| a780 | 73 2c 20 73 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 | s,.so.you.can.use.it.offline.... |
| a7a0 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 5a | ....</p>...............<h2.id="Z |
| a7c0 | 69 67 2d 53 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 | ig-Standard-Library"><a.href="#t |
| a7e0 | 6f 63 2d 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 74 61 | oc-Zig-Standard-Library">Zig.Sta |
| a800 | 6e 64 61 72 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 | ndard.Library</a>.<a.class="hdr" |
| a820 | 20 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 c2 a7 | .href="#Zig-Standard-Library">.. |
| a840 | 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 20 20 54 68 65 | </a></h2>........<p>.........The |
| a860 | 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f | .<a.href="https://ziglang.org/do |
| a880 | 63 75 6d 65 6e 74 61 74 69 6f 6e 2f 30 2e 31 33 2e 30 2f 73 74 64 2f 22 3e 5a 69 67 20 53 74 61 | cumentation/0.13.0/std/">Zig.Sta |
| a8a0 | 6e 64 61 72 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 | ndard.Library</a>.has.its.own.do |
| a8c0 | 63 75 6d 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 | cumentation........</p>.......<p |
| a8e0 | 3e 0a 20 20 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 | >.........Zig's.Standard.Library |
| a900 | 20 63 6f 6e 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 | .contains.commonly.used.algorith |
| a920 | 6d 73 2c 20 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 | ms,.data.structures,.and.definit |
| a940 | 69 6f 6e 73 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 | ions.to.help.you.build.programs. |
| a960 | 6f 72 20 6c 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 | or.libraries..........You.will.s |
| a980 | 65 65 20 6d 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 | ee.many.examples.of.Zig's.Standa |
| a9a0 | 72 64 20 4c 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 | rd.Library.used.in.this.document |
| a9c0 | 61 74 69 6f 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 | ation..To.learn.more.about.the.Z |
| a9e0 | 69 67 20 53 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 | ig.Standard.Library,.........vis |
| aa00 | 69 74 20 74 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 | it.the.link.above........</p>... |
| aa20 | 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 48 65 6c 6c 6f 2d 57 6f 72 6c 64 22 | ............<h2.id="Hello-World" |
| aa40 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 48 65 6c 6c 6f 2d 57 6f 72 6c 64 22 3e 48 65 6c 6c | ><a.href="#toc-Hello-World">Hell |
| aa60 | 6f 20 57 6f 72 6c 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | o.World</a>.<a.class="hdr".href= |
| aa80 | 22 23 48 65 6c 6c 6f 2d 57 6f 72 6c 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 0a 20 20 20 | "#Hello-World">..</a></h2>...... |
| aaa0 | 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 |
| aac0 | 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 65 6c 6c 6f 2e | g-cap"><cite.class="file">hello. |
| aae0 | 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 |
| ab00 | 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 |
| ab20 | 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 |
| ab40 | 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=" |
| ab60 | 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>) |
| ab80 | 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 70 61 | ;..<span.class="tok-kw">pub</spa |
| aba0 | 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 |
| abc0 | 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 |
| abe0 | 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 |
| ac00 | 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- |
| ac20 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 6f 75 74 20 3d 20 73 74 64 2e 69 6f | kw">const</span>.stdout.=.std.io |
| ac40 | 2e 67 65 74 53 74 64 4f 75 74 28 29 2e 77 72 69 74 65 72 28 29 3b 0a 20 20 20 20 3c 73 70 61 6e | .getStdOut().writer();.....<span |
| ac60 | 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 6f 75 | .class="tok-kw">try</span>.stdou |
| ac80 | 74 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 | t.print(<span.class="tok-str">&q |
| aca0 | 75 6f 74 3b 48 65 6c 6c 6f 2c 20 7b 73 7d 21 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 | uot;Hello,.{s}!\n"</span>,. |
| acc0 | 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 6f | .{<span.class="tok-str">"wo |
| ace0 | 72 6c 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | rld"</span>});.}</code></pr |
| ad00 | 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 |
| ad20 | 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 |
| ad40 | 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 |
| ad60 | 78 65 20 68 65 6c 6c 6f 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 68 65 6c 6c | xe.hello.zig</kbd>.$.<kbd>./hell |
| ad80 | 6f 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 3e 3c 2f 70 | o</kbd>.Hello,.world!.</samp></p |
| ada0 | 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 4d 6f | re></figure>........<p>.......Mo |
| adc0 | 73 74 20 6f 66 20 74 68 65 20 74 69 6d 65 2c 20 69 74 20 69 73 20 6d 6f 72 65 20 61 70 70 72 6f | st.of.the.time,.it.is.more.appro |
| ade0 | 70 72 69 61 74 65 20 74 6f 20 77 72 69 74 65 20 74 6f 20 73 74 64 65 72 72 20 72 61 74 68 65 72 | priate.to.write.to.stderr.rather |
| ae00 | 20 74 68 61 6e 20 73 74 64 6f 75 74 2c 20 61 6e 64 0a 20 20 20 20 20 20 77 68 65 74 68 65 72 20 | .than.stdout,.and.......whether. |
| ae20 | 6f 72 20 6e 6f 74 20 74 68 65 20 6d 65 73 73 61 67 65 20 69 73 20 73 75 63 63 65 73 73 66 75 6c | or.not.the.message.is.successful |
| ae40 | 6c 79 20 77 72 69 74 74 65 6e 20 74 6f 20 74 68 65 20 73 74 72 65 61 6d 20 69 73 20 69 72 72 65 | ly.written.to.the.stream.is.irre |
| ae60 | 6c 65 76 61 6e 74 2e 0a 20 20 20 20 20 20 46 6f 72 20 74 68 69 73 20 63 6f 6d 6d 6f 6e 20 63 61 | levant........For.this.common.ca |
| ae80 | 73 65 2c 20 74 68 65 72 65 20 69 73 20 61 20 73 69 6d 70 6c 65 72 20 41 50 49 3a 0a 20 20 20 20 | se,.there.is.a.simpler.API:..... |
| aea0 | 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 |
| aec0 | 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 |
| aee0 | 6c 65 22 3e 68 65 6c 6c 6f 5f 61 67 61 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 | le">hello_again.zig</cite></figc |
| af00 | 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 |
| af20 | 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. |
| af40 | 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 |
| af60 | 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 |
| af80 | 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=" |
| afa0 | 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=" |
| afc0 | 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 |
| afe0 | 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 |
| b000 | 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 74 | ="tok-type">void</span>.{.....st |
| b020 | 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 |
| b040 | 74 72 22 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 | tr">"Hello,.world!\n"< |
| b060 | 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | /span>,..{});.}</code></pre></fi |
| b080 | 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=" |
| b0a0 | 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 |
| b0c0 | 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 68 65 6c | e><samp>$.<kbd>zig.build-exe.hel |
| b0e0 | 6c 6f 5f 61 67 61 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 68 65 6c 6c | lo_again.zig</kbd>.$.<kbd>./hell |
| b100 | 6f 5f 61 67 61 69 6e 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 | o_again</kbd>.Hello,.world!.</sa |
| b120 | 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>... |
| b140 | 20 20 20 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 74 68 65 20 3c 63 6f 64 65 3e 21 3c 2f 63 | ....In.this.case,.the.<code>!</c |
| b160 | 6f 64 65 3e 20 6d 61 79 20 62 65 20 6f 6d 69 74 74 65 64 20 66 72 6f 6d 20 74 68 65 20 72 65 74 | ode>.may.be.omitted.from.the.ret |
| b180 | 75 72 6e 0a 20 20 20 20 20 20 74 79 70 65 20 62 65 63 61 75 73 65 20 6e 6f 20 65 72 72 6f 72 73 | urn.......type.because.no.errors |
| b1a0 | 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 6f 6e 2e | .are.returned.from.the.function. |
| b1c0 | 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:</ |
| b1e0 | 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 56 61 6c | p><ul>.<li><a.href="#Values">Val |
| b200 | 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 69 6d 70 6f 72 | ues</a></li>.<li><a.href="#impor |
| b220 | 74 22 3e 40 69 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 | t">@import</a></li>.<li><a.href= |
| b240 | 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 6c 69 3e 3c 61 | "#Errors">Errors</a></li>.<li><a |
| b260 | 20 68 72 65 66 3d 22 23 52 6f 6f 74 2d 53 6f 75 72 63 65 2d 46 69 6c 65 22 3e 52 6f 6f 74 20 53 | .href="#Root-Source-File">Root.S |
| b280 | 6f 75 72 63 65 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 | ource.File</a></li>.<li><a.href= |
| b2a0 | 22 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 | "#Source-Encoding">Source.Encodi |
| b2c0 | 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 20 20 20 20 20 20 | ng</a></li>.</ul>............... |
| b2e0 | 3c 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 | <h2.id="Comments"><a.href="#toc- |
| b300 | 43 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 | Comments">Comments</a>.<a.class= |
| b320 | 22 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 | "hdr".href="#Comments">..</a></h |
| b340 | 32 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 | 2>........<p>.......Zig.supports |
| b360 | 20 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 | .3.types.of.comments..Normal.com |
| b380 | 6d 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 | ments.are.ignored,.but.doc.comme |
| b3a0 | 6e 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 | nts.......and.top-level.doc.comm |
| b3c0 | 65 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 | ents.are.used.by.the.compiler.to |
| b3e0 | 20 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 | .generate.the.package.documentat |
| b400 | 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>....... |
| b420 | 54 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 | The.generated.documentation.is.s |
| b440 | 74 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 | till.experimental,.and.can.be.pr |
| b460 | 6f 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 | oduced.with:.......</p>.......<f |
| b480 | 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 |
| b4a0 | 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 |
| b4c0 | 3e 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 | >zig.test.-femit-docs.main.zig.< |
| b4e0 | 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 66 69 67 | /samp></pre></figure>.......<fig |
| b500 | 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"> |
| b520 | 3c 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 | <cite.class="file">comments.zig< |
| b540 | 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 |
| b560 | 70 61 6e 20 63 6c 61 73 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>. |
| b580 | 70 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | print.=.<span.class="tok-builtin |
| b5a0 | 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 |
| b5c0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 | k-str">"std"</span>).d |
| b5e0 | 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 6b 77 | ebug.print;..<span.class="tok-kw |
| b600 | 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 |
| b620 | 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" |
| b640 | 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 2d | >main</span>().<span.class="tok- |
| b660 | 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 |
| b680 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 43 6f 6d 6d 65 6e 74 73 20 69 6e | ass="tok-comment">//.Comments.in |
| b6a0 | 20 5a 69 67 20 73 74 61 72 74 20 77 69 74 68 20 26 71 75 6f 74 3b 2f 2f 26 71 75 6f 74 3b 20 61 | .Zig.start.with."//".a |
| b6c0 | 6e 64 20 65 6e 64 20 61 74 20 74 68 65 20 6e 65 78 74 20 4c 46 20 62 79 74 65 20 28 65 6e 64 20 | nd.end.at.the.next.LF.byte.(end. |
| b6e0 | 6f 66 20 6c 69 6e 65 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | of.line).</span>.....<span.class |
| b700 | 3d 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 | ="tok-comment">//.The.line.below |
| b720 | 20 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 | .is.a.comment.and.won't.be.execu |
| b740 | 74 65 64 2e 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ted.</span>......<span.class="to |
| b760 | 6b 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 | k-comment">//print("Hello?& |
| b780 | 71 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 | quot;,..{});</span>......print(< |
| b7a0 | 73 70 61 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 | span.class="tok-str">"Hello |
| b7c0 | 2c 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 | ,.world!\n"</span>,..{});.< |
| b7e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 6e 6f 74 | span.class="tok-comment">//.anot |
| b800 | 68 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 | her.comment</span>.}</code></pre |
| b820 | 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 |
| b840 | 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 |
| b860 | 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 |
| b880 | 65 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 | e.comments.zig</kbd>.$.<kbd>./co |
| b8a0 | 6d 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 | mments</kbd>.Hello,.world!.</sam |
| b8c0 | 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>.... |
| b8e0 | 20 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 | ...There.are.no.multiline.commen |
| b900 | 74 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 | ts.in.Zig.(e.g..like.<code.class |
| b920 | 3d 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 | ="c">/*.*/</code>.......comments |
| b940 | 20 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 | .in.C)...This.allows.Zig.to.have |
| b960 | 20 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 | .the.property.that.each.line.... |
| b980 | 20 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 | ...of.code.can.be.tokenized.out. |
| b9a0 | 6f 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 | of.context........</p>.......<h3 |
| b9c0 | 20 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 | .id="Doc-Comments"><a.href="#toc |
| b9e0 | 2d 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 | -Doc-Comments">Doc.Comments</a>. |
| ba00 | 3c 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 | <a.class="hdr".href="#Doc-Commen |
| ba20 | 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 20 20 20 | ts">..</a></h3>........<p>...... |
| ba40 | 20 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 | .A.doc.comment.is.one.that.begin |
| ba60 | 73 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 | s.with.exactly.three.slashes.(i. |
| ba80 | 65 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 | e........<code><span.class="tok- |
| baa0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 75 74 20 6e | comment">///</span></code>.but.n |
| bac0 | 6f 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 | ot.<code><span.class="tok-commen |
| bae0 | 74 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 | t">////</span></code>);.......mu |
| bb00 | 6c 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 | ltiple.doc.comments.in.a.row.are |
| bb20 | 20 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 | .merged.together.to.form.a.multi |
| bb40 | 6c 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 | line.......doc.comment...The.doc |
| bb60 | 20 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 | .comment.documents.whatever.imme |
| bb80 | 64 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 | diately.follows.it........</p>.. |
| bba0 | 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=" |
| bbc0 | 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 64 6f 63 5f | zig-cap"><cite.class="file">doc_ |
| bbe0 | 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> |
| bc00 | 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 |
| bc20 | 65 6e 74 22 3e 2f 2f 2f 20 41 20 73 74 72 75 63 74 75 72 65 20 66 6f 72 20 73 74 6f 72 69 6e 67 | ent">///.A.structure.for.storing |
| bc40 | 20 61 20 74 69 6d 65 73 74 61 6d 70 2c 20 77 69 74 68 20 6e 61 6e 6f 73 65 63 6f 6e 64 20 70 72 | .a.timestamp,.with.nanosecond.pr |
| bc60 | 65 63 69 73 69 6f 6e 20 28 74 68 69 73 20 69 73 20 61 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | ecision.(this.is.a</span>.<span. |
| bc80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 6d 75 6c 74 69 6c 69 6e | class="tok-comment">///.multilin |
| bca0 | 65 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 29 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | e.doc.comment).</span>.<span.cla |
| bcc0 | 73 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 | ss="tok-kw">const</span>.Timesta |
| bce0 | 6d 70 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 | mp.=.<span.class="tok-kw">struct |
| bd00 | 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 |
| bd20 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 54 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 73 65 63 6f 6e 64 | omment">///.The.number.of.second |
| bd40 | 73 20 73 69 6e 63 65 20 74 68 65 20 65 70 6f 63 68 20 28 74 68 69 73 20 69 73 20 61 6c 73 6f 20 | s.since.the.epoch.(this.is.also. |
| bd60 | 61 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 65 63 6f 6e | a.doc.comment).</span>.....secon |
| bd80 | 64 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 36 34 3c 2f | ds:.<span.class="tok-type">i64</ |
| bda0 | 73 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 | span>,.<span.class="tok-comment" |
| bdc0 | 3e 2f 2f 20 73 69 67 6e 65 64 20 73 6f 20 77 65 20 63 61 6e 20 72 65 70 72 65 73 65 6e 74 20 70 | >//.signed.so.we.can.represent.p |
| bde0 | 72 65 2d 31 39 37 30 20 28 6e 6f 74 20 61 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 29 3c 2f 73 70 61 | re-1970.(not.a.doc.comment)</spa |
| be00 | 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" |
| be20 | 3e 2f 2f 2f 20 54 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 6e 61 6e 6f 73 65 63 6f 6e 64 73 20 70 | >///.The.number.of.nanoseconds.p |
| be40 | 61 73 74 20 74 68 65 20 73 65 63 6f 6e 64 20 28 64 6f 63 20 63 6f 6d 6d 65 6e 74 20 61 67 61 69 | ast.the.second.(doc.comment.agai |
| be60 | 6e 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 6e 61 6e 6f 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | n).</span>.....nanos:.<span.clas |
| be80 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c 73 | s="tok-type">u32</span>,......<s |
| bea0 | 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 52 65 74 75 | pan.class="tok-comment">///.Retu |
| bec0 | 72 6e 73 20 61 20 60 54 69 6d 65 73 74 61 6d 70 60 20 73 74 72 75 63 74 20 72 65 70 72 65 73 65 | rns.a.`Timestamp`.struct.represe |
| bee0 | 6e 74 69 6e 67 20 74 68 65 20 55 6e 69 78 20 65 70 6f 63 68 3b 20 74 68 61 74 20 69 73 2c 20 74 | nting.the.Unix.epoch;.that.is,.t |
| bf00 | 68 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | he</span>.....<span.class="tok-c |
| bf20 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 6d 6f 6d 65 6e 74 20 6f 66 20 31 39 37 30 20 4a 61 6e 20 31 | omment">///.moment.of.1970.Jan.1 |
| bf40 | 20 30 30 3a 30 30 3a 30 30 20 55 54 43 20 28 74 68 69 73 20 69 73 20 61 20 64 6f 63 20 63 6f 6d | .00:00:00.UTC.(this.is.a.doc.com |
| bf60 | 6d 65 6e 74 20 74 6f 6f 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ment.too).</span>.....<span.clas |
| bf80 | 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 |
| bfa0 | 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 |
| bfc0 | 3d 22 74 6f 6b 2d 66 6e 22 3e 75 6e 69 78 45 70 6f 63 68 3c 2f 73 70 61 6e 3e 28 29 20 54 69 6d | ="tok-fn">unixEpoch</span>().Tim |
| bfe0 | 65 73 74 61 6d 70 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | estamp.{.........<span.class="to |
| c000 | 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 54 69 6d 65 73 74 61 6d 70 7b 0a 20 | k-kw">return</span>.Timestamp{.. |
| c020 | 20 20 20 20 20 20 20 20 20 20 20 2e 73 65 63 6f 6e 64 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ............seconds.=.<span.clas |
| c040 | 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>,........ |
| c060 | 20 20 20 20 20 2e 6e 61 6e 6f 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ......nanos.=.<span.class="tok-n |
| c080 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 | umber">0</span>,.........};..... |
| c0a0 | 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 3e 0a 0a 20 20 20 20 | }.};</code></pre></figure>...... |
| c0c0 | 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 61 72 65 20 6f 6e 6c | ..<p>.......Doc.comments.are.onl |
| c0e0 | 79 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 | y.allowed.in.certain.places;.it. |
| c100 | 69 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 | is.a.compile.error.to.......have |
| c120 | 20 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 | .a.doc.comment.in.an.unexpected. |
| c140 | 70 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 | place,.such.as.in.the.middle.of. |
| c160 | 61 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 | an.expression,.......or.just.bef |
| c180 | 6f 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 | ore.a.non-doc.comment........</p |
| c1a0 | 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 |
| c1c0 | 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 |
| c1e0 | 6e 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 | nvalid_doc-comment.zig</cite></f |
| c200 | 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 |
| c220 | 3d 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 | ="tok-comment">///.doc-comment</ |
| c240 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | span>.<span.class="tok-comment"> |
| c260 | 2f 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 | //!.top-level.doc-comment</span> |
| c280 | 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 |
| c2a0 | 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 |
| c2c0 | 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 |
| c2e0 | 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>); |
| c300 | 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 |
| c320 | 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 |
| c340 | 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> |
| c360 | 7a 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 | zig.build-obj.invalid_doc-commen |
| c380 | 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 22 | t.zig</kbd>.<span.class="sgr-1m" |
| c3a0 | 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 69 6e 76 61 6c 69 64 5f 64 6f 63 2d 63 6f 6d 6d 65 6e 74 | >doc/langref/invalid_doc-comment |
| c3c0 | 2e 7a 69 67 3a 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 | .zig:1:16:.</span><span.class="s |
| c3e0 | 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 73 | gr-31m">error:.</span><span.clas |
| c400 | 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 65 78 70 72 65 73 73 | s="sgr-1m">expected.type.express |
| c420 | 69 6f 6e 2c 20 66 6f 75 6e 64 20 27 61 20 64 6f 63 75 6d 65 6e 74 20 63 6f 6d 6d 65 6e 74 27 0a | ion,.found.'a.document.comment'. |
| c440 | 3c 2f 73 70 61 6e 3e 2f 2f 2f 20 64 6f 63 2d 63 6f 6d 6d 65 6e 74 0a 20 20 20 20 20 20 20 20 20 | </span>///.doc-comment.......... |
| c460 | 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">^.</ |
| c480 | 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>.... |
| c4a0 | 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 |
| c4c0 | 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 75 6e 61 74 74 | ig-cap"><cite.class="file">unatt |
| c4e0 | 61 63 68 65 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 | ached_doc-comment.zig</cite></fi |
| c500 | 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= |
| c520 | 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= |
| c540 | 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=" |
| c560 | 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 |
| c580 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 0a 3c 73 70 | s="tok-type">void</span>.{}..<sp |
| c5a0 | 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 6e 64 20 6f | an.class="tok-comment">///.End.o |
| c5c0 | 66 20 66 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | f.file</span></code></pre></figu |
| c5e0 | 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 |
| c600 | 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> |
| c620 | 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 75 6e 61 74 74 | <samp>$.<kbd>zig.build-obj.unatt |
| c640 | 61 63 68 65 64 5f 64 6f 63 2d 63 6f 6d 6d 65 6e 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 | ached_doc-comment.zig</kbd>.<spa |
| c660 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 75 6e 61 | n.class="sgr-1m">doc/langref/una |
| c680 | 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 3a 20 3c 2f 73 | ttached_doc-comment.zig:3:1:.</s |
| c6a0 | 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: |
| c6c0 | 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 75 6e 61 | .</span><span.class="sgr-1m">una |
| c6e0 | 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 6e 74 0a 3c 2f | ttached.documentation.comment.</ |
| c700 | 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 63 6c 61 73 73 | span>///.End.of.file.<span.class |
| c720 | 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 3c 2f 73 70 61 | ="sgr-32m">^~~~~~~~~~~~~~~.</spa |
| c740 | 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 20 | n>.</samp></pre></figure>....... |
| c760 | 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 20 62 65 20 69 | .<p>.......Doc.comments.can.be.i |
| c780 | 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 65 6e 74 73 2e | nterleaved.with.normal.comments. |
| c7a0 | 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 20 20 20 20 20 | .Currently,.when.producing...... |
| c7c0 | 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 20 6e 6f 72 6d | .the.package.documentation,.norm |
| c7e0 | 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 20 64 6f 63 20 | al.comments.are.merged.with.doc. |
| c800 | 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 0a 20 20 20 20 | comments........</p>............ |
| c820 | 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 6d 65 6e 74 73 | ..<h3.id="Top-Level-Doc-Comments |
| c840 | 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 6f 63 2d 43 6f | "><a.href="#toc-Top-Level-Doc-Co |
| c860 | 6d 6d 65 6e 74 73 22 3e 54 6f 70 2d 4c 65 76 65 6c 20 44 6f 63 20 43 6f 6d 6d 65 6e 74 73 3c 2f | mments">Top-Level.Doc.Comments</ |
| c880 | 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 70 2d 4c 65 76 | a>.<a.class="hdr".href="#Top-Lev |
| c8a0 | 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 3e 0a 0a 20 20 | el-Doc-Comments">..</a></h3>.... |
| c8c0 | 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 6f 63 20 63 6f | ....<p>.......A.top-level.doc.co |
| c8e0 | 6d 6d 65 6e 74 20 69 73 20 6f 6e 65 20 74 68 61 74 20 62 65 67 69 6e 73 20 77 69 74 68 20 74 77 | mment.is.one.that.begins.with.tw |
| c900 | 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 6e 0a 20 20 20 | o.slashes.and.an.exclamation.... |
| c920 | 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 3d 22 74 6f 6b | ...point:.<code><span.class="tok |
| c940 | 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 3b 20 69 74 20 | -comment">//!</span></code>;.it. |
| c960 | 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 65 2e 0a 20 20 | documents.the.current.module.... |
| c980 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 69 73 20 61 | ....</p>.......<p>.......It.is.a |
| c9a0 | 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 65 6c 20 64 6f | .compile.error.if.a.top-level.do |
| c9c0 | 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 74 68 65 20 73 | c.comment.is.not.placed.at.the.s |
| c9e0 | 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 6f 6e 74 61 69 | tart.......of.a.<a.href="#Contai |
| ca00 | 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 20 61 6e 79 20 | ners">container</a>,.before.any. |
| ca20 | 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 20 3c 66 | expressions........</p>.......<f |
| ca40 | 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 |
| ca60 | 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 63 6f 6d 6d 65 | "><cite.class="file">tldoc_comme |
| ca80 | 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 70 72 65 3e | nts.zig</cite></figcaption><pre> |
| caa0 | 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"> |
| cac0 | 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 6e 63 74 69 6f | //!.This.module.provides.functio |
| cae0 | 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 6e 74 20 64 61 | ns.for.retrieving.the.current.da |
| cb00 | 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 74 6f 6b 2d 63 | te.and</span>.<span.class="tok-c |
| cb20 | 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 6e 67 20 64 65 | omment">//!.time.with.varying.de |
| cb40 | 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 72 61 63 79 2e | grees.of.precision.and.accuracy. |
| cb60 | 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 6c 61 73 73 3d | .It.does.not</span>.<span.class= |
| cb80 | 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 20 6c 69 62 63 | "tok-comment">//!.depend.on.libc |
| cba0 | 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 6f 6d 20 69 74 | ,.but.will.use.functions.from.it |
| cbc0 | 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 6e 20 63 6c 61 | .if.available.</span>..<span.cla |
| cbe0 | 73 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 3d 20 3c 73 70 | ss="tok-kw">const</span>.S.=.<sp |
| cc00 | 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>. |
| cc20 | 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"> |
| cc40 | 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 61 6c 6c 6f 77 | //!.Top.level.comments.are.allow |
| cc60 | 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 20 74 68 61 6e | ed.inside.a.container.other.than |
| cc80 | 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 20 63 6c 61 73 | .a.module,</span>.....<span.clas |
| cca0 | 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 69 73 20 6e 6f | s="tok-comment">//!.but.it.is.no |
| ccc0 | 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 77 68 65 6e 20 | t.very.useful...Currently,.when. |
| cce0 | 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 3e 0a 20 20 20 | producing.the.package</span>.... |
| cd00 | 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 21 20 64 | .<span.class="tok-comment">//!.d |
| cd20 | 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 73 20 61 72 65 | ocumentation,.these.comments.are |
| cd40 | 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 2f 70 72 65 3e | .ignored.</span>.};</code></pre> |
| cd60 | 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 20 20 20 20 3c | </figure>......................< |
| cd80 | 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 63 2d 56 61 6c | h2.id="Values"><a.href="#toc-Val |
| cda0 | 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 64 72 22 20 68 | ues">Values</a>.<a.class="hdr".h |
| cdc0 | 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 20 20 20 20 20 | ref="#Values">..</a></h2>....... |
| cde0 | 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- |
| ce00 | 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 75 65 73 2e 7a | cap"><cite.class="file">values.z |
| ce20 | 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 |
| ce40 | 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 54 6f | ><span.class="tok-comment">//.To |
| ce60 | 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 64 65 72 2d 69 | p-level.declarations.are.order-i |
| ce80 | 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 61 73 73 3d 22 | ndependent:</span>.<span.class=" |
| cea0 | 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 73 74 64 | tok-kw">const</span>.print.=.std |
| cec0 | 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 74 6f 6b 2d 6b | .debug.print;.<span.class="tok-k |
| cee0 | 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 |
| cf00 | 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>(< |
| cf20 | 73 70 61 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 |
| cf40 | 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 |
| cf60 | 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 3b 0a 3c 73 70 | w">const</span>.os.=.std.os;.<sp |
| cf80 | 61 6e 20 63 6c 61 73 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 |
| cfa0 | 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 3c 73 70 61 6e | ssert.=.std.debug.assert;..<span |
| cfc0 | 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 |
| cfe0 | 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. |
| d000 | 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 70 | class="tok-fn">main</span>().<sp |
| d020 | 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>. |
| d040 | 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"> |
| d060 | 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 6e 20 63 6c 61 | //.integers</span>.....<span.cla |
| d080 | 73 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 65 5f 70 6c 75 | ss="tok-kw">const</span>.one_plu |
| d0a0 | 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 65 22 3e 69 33 | s_one:.<span.class="tok-type">i3 |
| d0c0 | 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 |
| d0e0 | 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 22 74 6f 6b 2d | er">1</span>.+.<span.class="tok- |
| d100 | 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 28 3c 73 70 61 | number">1</span>;.....print(<spa |
| d120 | 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 20 31 20 3d 20 | n.class="tok-str">"1.+.1.=. |
| d140 | 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 75 73 5f 6f 6e | {}\n"</span>,..{one_plus_on |
| d160 | 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 63 6f 6d 6d 65 | e});......<span.class="tok-comme |
| d180 | 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 70 61 6e 20 63 | nt">//.floats</span>.....<span.c |
| d1a0 | 6c 61 73 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 65 76 65 6e | lass="tok-kw">const</span>.seven |
| d1c0 | 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 6b 2d 74 79 70 | _div_three:.<span.class="tok-typ |
| d1e0 | 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 |
| d200 | 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 20 63 6c 61 73 | -number">7.0</span>./.<span.clas |
| d220 | 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 20 20 20 20 70 | s="tok-number">3.0</span>;.....p |
| d240 | 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">" |
| d260 | 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 61 6e 3e 2c 20 | ;7.0./.3.0.=.{}\n"</span>,. |
| d280 | 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 73 70 61 6e 20 | .{seven_div_three});......<span. |
| d2a0 | 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 65 61 6e 3c 2f | class="tok-comment">//.boolean</ |
| d2c0 | 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 6f 6b | span>.....print(<span.class="tok |
| d2e0 | 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 6f 74 3b 3c 2f | -str">"{}\n{}\n{}\n"</ |
| d300 | 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 73 73 3d 22 74 | span>,..{.........<span.class="t |
| d320 | 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 63 6c 61 73 73 | ok-null">true</span>.<span.class |
| d340 | 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 63 6c 61 73 73 | ="tok-kw">and</span>.<span.class |
| d360 | 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 20 | ="tok-null">false</span>,....... |
| d380 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 | ..<span.class="tok-null">true</s |
| d3a0 | 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 70 | pan>.<span.class="tok-kw">or</sp |
| d3c0 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 | an>.<span.class="tok-null">false |
| d3e0 | 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 73 73 3d 22 74 | </span>,.........!<span.class="t |
| d400 | 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 29 3b 0a 0a 20 | ok-null">true</span>,.....});... |
| d420 | 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">//. |
| d440 | 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 6c 61 73 73 3d | optional</span>.....<span.class= |
| d460 | 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 6c 5f 76 61 6c | "tok-kw">var</span>.optional_val |
| d480 | 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 3e 63 6f 6e 73 | ue:.?[]<span.class="tok-kw">cons |
| d4a0 | 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"> |
| d4c0 | 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 6c | u8</span>.=.<span.class="tok-nul |
| d4e0 | 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 6f 70 74 69 6f | l">null</span>;.....assert(optio |
| d500 | 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 6f 6b 2d 6e 75 | nal_value.==.<span.class="tok-nu |
| d520 | 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 73 70 | ll">null</span>);......print(<sp |
| d540 | 61 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 69 6f | an.class="tok-str">"\noptio |
| d560 | 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 7d 5c 6e 26 71 | nal.1\ntype:.{}\nvalue:.{?s}\n&q |
| d580 | 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 |
| d5a0 | 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> |
| d5c0 | 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 75 65 | (optional_value),.optional_value |
| d5e0 | 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 75 65 20 3d 20 | ,.....});......optional_value.=. |
| d600 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 | <span.class="tok-str">"hi&q |
| d620 | 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 69 6f 6e 61 6c | uot;</span>;.....assert(optional |
| d640 | 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 6e 75 6c 6c 22 | _value.!=.<span.class="tok-null" |
| d660 | 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 73 70 61 6e 20 | >null</span>);......print(<span. |
| d680 | 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 69 6f 6e 61 6c | class="tok-str">"\noptional |
| d6a0 | 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 26 71 75 6f 74 | .2\ntype:.{}\nvalue:.{?s}\n" |
| d6c0 | 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 73 73 | ;</span>,..{.........<span.class |
| d6e0 | 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 6f 70 | ="tok-builtin">@TypeOf</span>(op |
| d700 | 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 75 65 2c 0a 20 | tional_value),.optional_value,.. |
| d720 | 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 6b 2d 63 6f 6d | ...});......<span.class="tok-com |
| d740 | 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 0a 20 20 20 20 | ment">//.error.union</span>..... |
| d760 | 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>. |
| d780 | 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 73 3d 22 74 6f | number_or_error:.<span.class="to |
| d7a0 | 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 |
| d7c0 | 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 |
| d7e0 | 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 41 72 | n.class="tok-kw">error</span>.Ar |
| d800 | 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 20 63 6c 61 73 | gNotFound;......print(<span.clas |
| d820 | 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 6e 69 6f 6e 20 | s="tok-str">"\nerror.union. |
| d840 | 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 75 6f 74 3b 3c | 1\ntype:.{}\nvalue:.{!}\n"< |
| d860 | 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 73 73 3d 22 | /span>,..{.........<span.class=" |
| d880 | 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 75 6d 62 | tok-builtin">@TypeOf</span>(numb |
| d8a0 | 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 72 5f 6f 72 5f | er_or_error),.........number_or_ |
| d8c0 | 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 6f 72 5f 65 72 | error,.....});......number_or_er |
| d8e0 | 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 65 72 22 3e 31 | ror.=.<span.class="tok-number">1 |
| d900 | 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 6e 20 63 6c 61 | 234</span>;......print(<span.cla |
| d920 | 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 6e 69 6f 6e | ss="tok-str">"\nerror.union |
| d940 | 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 71 75 6f 74 3b | .2\ntype:.{}\nvalue:.{!}\n" |
| d960 | 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 73 73 3d | </span>,..{.........<span.class= |
| d980 | 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 6e 75 6d | "tok-builtin">@TypeOf</span>(num |
| d9a0 | 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 72 6f 72 2c 0a | ber_or_error),.number_or_error,. |
| d9c0 | 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 75 72 65 3e 3c | ....});.}</code></pre></figure>< |
| d9e0 | 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- |
| da00 | 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 |
| da20 | 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 65 73 2e 7a 69 | p>$.<kbd>zig.build-exe.values.zi |
| da40 | 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 64 3e 0a 31 20 | g</kbd>.$.<kbd>./values</kbd>.1. |
| da60 | 2b 20 31 20 3d 20 32 0a 37 2e 30 20 2f 20 33 2e 30 20 3d 20 32 2e 33 33 33 33 33 33 33 65 30 0a | +.1.=.2.7.0./.3.0.=.2.3333333e0. |
| da80 | 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 31 0a 74 79 70 | false.true.false..optional.1.typ |
| daa0 | 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 0a 6f 70 74 69 | e:.?[]const.u8.value:.null..opti |
| dac0 | 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 6c 75 65 3a 20 | onal.2.type:.?[]const.u8.value:. |
| dae0 | 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 65 72 72 6f 72 | hi..error.union.1.type:.anyerror |
| db00 | 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 6e 64 0a 0a 65 | !i32.value:.error.ArgNotFound..e |
| db20 | 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 21 69 33 32 0a | rror.union.2.type:.anyerror!i32. |
| db40 | 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 66 69 67 75 72 | value:.1234.</samp></pre></figur |
| db60 | 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 2d 54 79 70 65 | e>........<h3.id="Primitive-Type |
| db80 | 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 54 79 70 65 73 | s"><a.href="#toc-Primitive-Types |
| dba0 | 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 61 73 73 3d 22 | ">Primitive.Types</a>.<a.class=" |
| dbc0 | 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 22 3e c2 a7 3c | hdr".href="#Primitive-Types">..< |
| dbe0 | 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 6c | /a></h3>........<div.class="tabl |
| dc00 | 65 2d 77 72 61 70 70 65 72 22 3e 0a 20 20 20 20 20 20 3c 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 | e-wrapper">.......<table>....... |
| dc20 | 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 2f 63 61 70 74 | ..<caption>Primitive.Types</capt |
| dc40 | 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 20 20 20 20 20 | ion>.........<thead>............ |
| dc60 | 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 63 6f 6c | .<tr>.............<th.scope="col |
| dc80 | 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 20 73 63 6f 70 | ">Type</th>.............<th.scop |
| dca0 | 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 20 20 20 20 20 | e="col">C.Equivalent</th>....... |
| dcc0 | 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 69 70 74 69 6f | ......<th.scope="col">Descriptio |
| dce0 | 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 20 20 3c 2f 74 | n</th>.........</tr>.........</t |
| dd00 | 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 3c 74 | head>.........<tbody>.........<t |
| dd20 | 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">< |
| dd40 | 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 38 3c 2f | code><span.class="tok-type">i8</ |
| dd60 | 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 64 3e | span></code></th>...........<td> |
| dd80 | 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 65 3e 3c 2f 74 | <code.class="c">int8_t</code></t |
| dda0 | 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 69 74 20 69 6e | d>...........<td>signed.8-bit.in |
| ddc0 | 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>........ |
| dde0 | 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 |
| de00 | 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 |
| de20 | 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 20 3c | 8</span></code></th>...........< |
| de40 | 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 2f 63 6f 64 65 | td><code.class="c">uint8_t</code |
| de60 | 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 38 2d | ></td>...........<td>unsigned.8- |
| de80 | 62 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 | bit.integer</td>.........</tr>.. |
| dea0 | 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 |
| dec0 | 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 2d 74 | e="row"><code><span.class="tok-t |
| dee0 | 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 0a 20 20 20 20 | ype">i16</span></code></th>..... |
| df00 | 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 31 36 5f | ......<td><code.class="c">int16_ |
| df20 | 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 69 67 6e | t</code></td>...........<td>sign |
| df40 | 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 20 20 20 20 3c | ed.16-bit.integer</td>.........< |
| df60 | 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 | /tr>.........<tr>.............<t |
| df80 | 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= |
| dfa0 | 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 3e 3c 2f 74 68 | "tok-type">u16</span></code></th |
| dfc0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e | >...........<td><code.class="c"> |
| dfe0 | 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 20 20 20 20 3c | uint16_t</code></td>...........< |
| e000 | 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 2f 74 64 3e 0a | td>unsigned.16-bit.integer</td>. |
| e020 | 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>...... |
| e040 | 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 |
| e060 | 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 3c 2f | an.class="tok-type">i32</span></ |
| e080 | 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 63 | code></th>...........<td><code.c |
| e0a0 | 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 3e 0a 20 20 20 | lass="c">int32_t</code></td>.... |
| e0c0 | 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 74 65 67 65 72 | .......<td>signed.32-bit.integer |
| e0e0 | 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> |
| e100 | 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 |
| e120 | 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 33 32 3c 2f 73 | de><span.class="tok-type">u32</s |
| e140 | 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>< |
| e160 | 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 64 65 3e 3c 2f | code.class="c">uint32_t</code></ |
| e180 | 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 33 32 2d 62 69 | td>...........<td>unsigned.32-bi |
| e1a0 | 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 20 | t.integer</td>.........</tr>.... |
| e1c0 | 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= |
| e1e0 | 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 70 | "row"><code><span.class="tok-typ |
| e200 | 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 20 20 20 20 20 | e">i64</span></code></th>....... |
| e220 | 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 36 34 5f 74 3c | ....<td><code.class="c">int64_t< |
| e240 | 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 69 67 6e 65 64 | /code></td>...........<td>signed |
| e260 | 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 20 20 3c 2f 74 | .64-bit.integer</td>.........</t |
| e280 | 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 | r>.........<tr>.............<th. |
| e2a0 | 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 |
| e2c0 | 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 2f 74 68 3e 0a | ok-type">u64</span></code></th>. |
| e2e0 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 69 | ..........<td><code.class="c">ui |
| e300 | 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 20 20 3c 74 64 | nt64_t</code></td>...........<td |
| e320 | 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 64 3e 0a 20 20 | >unsigned.64-bit.integer</td>... |
| e340 | 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>........ |
| e360 | 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 6e | .....<th.scope="row"><code><span |
| e380 | 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 6e 3e 3c 2f 63 | .class="tok-type">i128</span></c |
| e3a0 | 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 63 6c | ode></th>...........<td><code.cl |
| e3c0 | 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 3e 0a 20 20 20 | ass="c">__int128</code></td>.... |
| e3e0 | 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 6e 74 65 67 65 | .......<td>signed.128-bit.intege |
| e400 | 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 | r</td>.........</tr>.........<tr |
| e420 | 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 |
| e440 | 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 31 32 38 3c | ode><span.class="tok-type">u128< |
| e460 | 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 64 | /span></code></th>...........<td |
| e480 | 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 5f 69 6e 74 31 | ><code.class="c">unsigned.__int1 |
| e4a0 | 32 38 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 6e 73 | 28</code></td>...........<td>uns |
| e4c0 | 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 20 20 20 20 20 | igned.128-bit.integer</td>...... |
| e4e0 | 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>........... |
| e500 | 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 |
| e520 | 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 3c 2f 63 6f 64 | ass="tok-type">isize</span></cod |
| e540 | 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 |
| e560 | 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 20 20 20 20 20 | s="c">intptr_t</code></td>...... |
| e580 | 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 65 64 20 69 6e | .....<td>signed.pointer.sized.in |
| e5a0 | 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>........ |
| e5c0 | 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 |
| e5e0 | 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 |
| e600 | 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 20 20 20 20 20 | size</span></code></th>......... |
| e620 | 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 74 72 5f 74 3c | ..<td><code.class="c">uintptr_t< |
| e640 | 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 65 5f 74 3c 2f | /code>,.<code.class="c">size_t</ |
| e660 | 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 6e 73 69 67 6e 65 | code></td>...........<td>unsigne |
| e680 | 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 73 6f 20 73 65 | d.pointer.sized.integer..Also.se |
| e6a0 | 65 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 | e.<a.href="https://github.com/zi |
| e6c0 | 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 35 3c 2f 61 3e | glang/zig/issues/5185">#5185</a> |
| e6e0 | 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 20 20 3c 74 72 | </td>.........</tr>..........<tr |
| e700 | 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 |
| e720 | 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 63 68 61 | ode><span.class="tok-type">c_cha |
| e740 | 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 20 20 20 20 3c | r</span></code></th>...........< |
| e760 | 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 64 65 3e 3c 2f | td><code.class="c">char</code></ |
| e780 | 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 74 | td>...........<td>for.ABI.compat |
| e7a0 | 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 72 | ibility.with.C</td>.........</tr |
| e7c0 | 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 |
| e7e0 | 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 |
| e800 | 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 65 3e 3c 2f 74 | k-type">c_short</span></code></t |
| e820 | 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 63 22 | h>...........<td><code.class="c" |
| e840 | 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 20 20 3c 74 64 | >short</code></td>...........<td |
| e860 | 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 43 3c 2f 74 | >for.ABI.compatibility.with.C</t |
| e880 | 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>... |
| e8a0 | 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> |
| e8c0 | 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 68 6f 72 74 3c | <span.class="tok-type">c_ushort< |
| e8e0 | 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 64 | /span></code></th>...........<td |
| e900 | 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 68 6f 72 74 3c | ><code.class="c">unsigned.short< |
| e920 | 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 66 6f 72 20 41 42 | /code></td>...........<td>for.AB |
| e940 | 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 43 3c 2f 74 64 3e 0a 20 20 20 20 | I.compatibility.with.C</td>..... |
| e960 | 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>.......... |
| e980 | 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 |
| e9a0 | 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 3c 2f 63 6f | lass="tok-type">c_int</span></co |
| e9c0 | 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 63 6c 61 | de></th>...........<td><code.cla |
| e9e0 | 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 20 20 20 20 20 | ss="c">int</code></td>.......... |
| ea00 | 20 3c 74 64 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 | .<td>for.ABI.compatibility.with. |
| ea20 | 43 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 | C</td>.........</tr>.........<tr |
| ea40 | 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 |
| ea60 | 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 69 6e | ode><span.class="tok-type">c_uin |
| ea80 | 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>...........< |
| eaa0 | 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 69 6e 74 3c | td><code.class="c">unsigned.int< |
| eac0 | 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 66 6f 72 20 41 42 | /code></td>...........<td>for.AB |
| eae0 | 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 43 3c 2f 74 64 3e 0a 20 20 20 20 | I.compatibility.with.C</td>..... |
| eb00 | 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>.......... |
| eb20 | 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 |
| eb40 | 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 6e 3e 3c 2f 63 | lass="tok-type">c_long</span></c |
| eb60 | 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 63 6c | ode></th>...........<td><code.cl |
| eb80 | 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 20 20 20 20 20 | ass="c">long</code></td>........ |
| eba0 | 20 20 20 3c 74 64 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 | ...<td>for.ABI.compatibility.wit |
| ebc0 | 68 20 43 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c | h.C</td>.........</tr>.........< |
| ebe0 | 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"> |
| ec00 | 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 75 | <code><span.class="tok-type">c_u |
| ec20 | 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 20 20 20 20 20 | long</span></code></th>......... |
| ec40 | 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 6c | ..<td><code.class="c">unsigned.l |
| ec60 | 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 74 64 3e 66 6f | ong</code></td>...........<td>fo |
| ec80 | 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 0a | r.ABI.compatibility.with.C</td>. |
| eca0 | 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>...... |
| ecc0 | 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 |
| ece0 | 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 6f 6e 67 3c 2f | an.class="tok-type">c_longlong</ |
| ed00 | 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 64 3e | span></code></th>...........<td> |
| ed20 | 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 63 6f 64 65 3e | <code.class="c">long.long</code> |
| ed40 | 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 | </td>...........<td>for.ABI.comp |
| ed60 | 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 43 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f | atibility.with.C</td>.........</ |
| ed80 | 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 |
| eda0 | 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=" |
| edc0 | 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 3e 3c 2f 63 6f | tok-type">c_ulonglong</span></co |
| ede0 | 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 63 6c 61 | de></th>...........<td><code.cla |
| ee00 | 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 63 6f 64 65 3e | ss="c">unsigned.long.long</code> |
| ee20 | 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 | </td>...........<td>for.ABI.comp |
| ee40 | 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 43 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f | atibility.with.C</td>.........</ |
| ee60 | 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 |
| ee80 | 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=" |
| eea0 | 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 6c 6f 6e 67 64 6f 75 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | tok-type">c_longdouble</span></c |
| eec0 | 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 63 6c | ode></th>...........<td><code.cl |
| eee0 | 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 3e 0a | ass="c">long.double</code></td>. |
| ef00 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c | ..........<td>for.ABI.compatibil |
| ef20 | 69 74 79 20 77 69 74 68 20 43 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 0a 20 | ity.with.C</td>.........</tr>... |
| ef40 | 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 |
| ef60 | 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 2d 74 | e="row"><code><span.class="tok-t |
| ef80 | 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 0a 20 20 20 20 | ype">f16</span></code></th>..... |
| efa0 | 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 5f 46 6c 6f 61 74 | ......<td><code.class="c">_Float |
| efc0 | 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 64 3e 31 36 2d | 16</code></td>...........<td>16- |
| efe0 | 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 6d 61 6e 74 69 | bit.floating.point.(10-bit.manti |
| f000 | 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 3c 2f 74 64 3e | ssa).IEEE-754-2008.binary16</td> |
| f020 | 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>..... |
| f040 | 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 |
| f060 | 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 3c | pan.class="tok-type">f32</span>< |
| f080 | 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. |
| f0a0 | 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 0a 20 20 20 20 | class="c">float</code></td>..... |
| f0c0 | 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 6f 69 6e 74 20 | ......<td>32-bit.floating.point. |
| f0e0 | 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 32 30 30 38 20 | (23-bit.mantissa).IEEE-754-2008. |
| f100 | 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 0a 20 20 20 20 | binary32</td>.........</tr>..... |
| f120 | 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=" |
| f140 | 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 |
| f160 | 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 20 20 20 20 20 | ">f64</span></code></th>........ |
| f180 | 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 6c 65 3c 2f 63 | ...<td><code.class="c">double</c |
| f1a0 | 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 62 69 74 20 66 | ode></td>...........<td>64-bit.f |
| f1c0 | 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 73 73 61 29 20 | loating.point.(52-bit.mantissa). |
| f1e0 | 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 0a 20 20 20 20 | IEEE-754-2008.binary64</td>..... |
| f200 | 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>.......... |
| f220 | 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 |
| f240 | 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 2f 63 6f 64 65 | lass="tok-type">f80</span></code |
| f260 | 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 |
| f280 | 3d 22 63 22 3e 64 6f 75 62 6c 65 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | ="c">double</code></td>......... |
| f2a0 | 20 20 3c 74 64 3e 38 30 2d 62 69 74 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 28 36 34 2d | ..<td>80-bit.floating.point.(64- |
| f2c0 | 62 69 74 20 6d 61 6e 74 69 73 73 61 29 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 20 38 30 2d 62 | bit.mantissa).IEEE-754-2008.80-b |
| f2e0 | 69 74 20 65 78 74 65 6e 64 65 64 20 70 72 65 63 69 73 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 | it.extended.precision</td>...... |
| f300 | 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>........... |
| f320 | 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 |
| f340 | 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 2f 63 6f 64 65 | ass="tok-type">f128</span></code |
| f360 | 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 20 63 6c 61 | ></th>.............<td><code.cla |
| f380 | 73 73 3d 22 63 22 3e 5f 46 6c 6f 61 74 31 32 38 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 | ss="c">_Float128</code></td>.... |
| f3a0 | 20 20 20 20 20 20 20 3c 74 64 3e 31 32 38 2d 62 69 74 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e | .......<td>128-bit.floating.poin |
| f3c0 | 74 20 28 31 31 32 2d 62 69 74 20 6d 61 6e 74 69 73 73 61 29 20 49 45 45 45 2d 37 35 34 2d 32 30 | t.(112-bit.mantissa).IEEE-754-20 |
| f3e0 | 30 38 20 62 69 6e 61 72 79 31 32 38 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a | 08.binary128</td>.........</tr>. |
| f400 | 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 |
| f420 | 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 2d | pe="row"><code><span.class="tok- |
| f440 | 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 74 68 3e 0a 20 20 | type">bool</span></code></th>... |
| f460 | 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 62 6f 6f 6c | ........<td><code.class="c">bool |
| f480 | 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 | </code></td>...........<td><code |
| f4a0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 | ><span.class="tok-null">true</sp |
| f4c0 | 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 20 63 6c 61 73 73 3d | an></code>.or.<code><span.class= |
| f4e0 | 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 3c 2f | "tok-null">false</span></code></ |
| f500 | 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>.. |
| f520 | 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 |
| f540 | 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 71 75 | ><span.class="tok-type">anyopaqu |
| f560 | 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 3c | e</span></code></th>...........< |
| f580 | 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 76 6f 69 64 3c 2f 63 6f 64 65 3e 3c 2f | td><code.class="c">void</code></ |
| f5a0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 55 73 65 64 20 66 6f 72 20 74 79 70 65 2d | td>...........<td>Used.for.type- |
| f5c0 | 65 72 61 73 65 64 20 70 6f 69 6e 74 65 72 73 2e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f | erased.pointers.</td>.........</ |
| f5e0 | 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 |
| f600 | 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=" |
| f620 | 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 74 68 | tok-type">void</span></code></th |
| f640 | 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 20 20 20 | >...........<td>(none)</td>..... |
| f660 | 20 20 20 20 20 20 3c 74 64 3e 41 6c 77 61 79 73 20 74 68 65 20 76 61 6c 75 65 20 3c 63 6f 64 65 | ......<td>Always.the.value.<code |
| f680 | 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 70 | ><span.class="tok-type">void</sp |
| f6a0 | 61 6e 3e 7b 7d 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 | an>{}</code></td>.........</tr>. |
| f6c0 | 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 |
| f6e0 | 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 2d | pe="row"><code><span.class="tok- |
| f700 | 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 | type">noreturn</span></code></th |
| f720 | 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 20 20 20 | >...........<td>(none)</td>..... |
| f740 | 20 20 20 20 20 20 3c 74 64 3e 74 68 65 20 74 79 70 65 20 6f 66 20 3c 63 6f 64 65 3e 3c 73 70 61 | ......<td>the.type.of.<code><spa |
| f760 | 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 2f 63 | n.class="tok-kw">break</span></c |
| f780 | 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 6b 77 22 | ode>,.<code><span.class="tok-kw" |
| f7a0 | 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 3c | >continue</span></code>,.<code>< |
| f7c0 | 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 |
| f7e0 | 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 |
| f800 | 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 | -kw">unreachable</span></code>,. |
| f820 | 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 6b 77 22 3e 77 | and.<code><span.class="tok-kw">w |
| f840 | 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 2d 6e 75 | hile</span>.(<span.class="tok-nu |
| f860 | 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a | ll">true</span>).{}</code></td>. |
| f880 | 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>...... |
| f8a0 | 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 |
| f8c0 | 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>< |
| 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 28 6e 6f 6e 65 29 | /code></th>...........<td>(none) |
| f900 | 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. |
| f920 | 74 79 70 65 73 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 | types</td>.........</tr>........ |
| f940 | 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 |
| f960 | 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 61 | "><code><span.class="tok-type">a |
| f980 | 6e 79 65 72 72 6f 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 | nyerror</span></code></th>...... |
| f9a0 | 20 20 20 20 20 3c 74 64 3e 28 6e 6f 6e 65 29 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | .....<td>(none)</td>...........< |
| f9c0 | 74 64 3e 61 6e 20 65 72 72 6f 72 20 63 6f 64 65 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f | td>an.error.code</td>.........</ |
| f9e0 | 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 |
| fa00 | 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=" |
| fa20 | 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 |
| fa40 | 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 3c 2f | ode></th>...........<td>(none)</ |
| fa60 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4f 6e 6c 79 20 61 6c 6c 6f 77 65 64 20 66 | td>...........<td>Only.allowed.f |
| fa80 | 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c | or.<a.href="#comptime">comptime< |
| faa0 | 2f 61 3e 2d 6b 6e 6f 77 6e 20 76 61 6c 75 65 73 2e 20 54 68 65 20 74 79 70 65 20 6f 66 20 69 6e | /a>-known.values..The.type.of.in |
| fac0 | 74 65 67 65 72 20 6c 69 74 65 72 61 6c 73 2e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 | teger.literals.</td>.........</t |
| fae0 | 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. |
| fb00 | 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 |
| fb20 | 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 70 61 6e 3e 3c 2f | ok-type">comptime_float</span></ |
| fb40 | 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 3c | code></th>...........<td>(none)< |
| fb60 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4f 6e 6c 79 20 61 6c 6c 6f 77 65 64 20 | /td>...........<td>Only.allowed. |
| fb80 | 66 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 | for.<a.href="#comptime">comptime |
| fba0 | 3c 2f 61 3e 2d 6b 6e 6f 77 6e 20 76 61 6c 75 65 73 2e 20 54 68 65 20 74 79 70 65 20 6f 66 20 66 | </a>-known.values..The.type.of.f |
| fbc0 | 6c 6f 61 74 20 6c 69 74 65 72 61 6c 73 2e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 | loat.literals.</td>.........</tr |
| fbe0 | 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 3c 2f 74 61 62 6c 65 | >.........</tbody>.......</table |
| fc00 | 3e 0a 20 20 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 | >.......</div>.......<p>.......I |
| fc20 | 6e 20 61 64 64 69 74 69 6f 6e 20 74 6f 20 74 68 65 20 69 6e 74 65 67 65 72 20 74 79 70 65 73 20 | n.addition.to.the.integer.types. |
| fc40 | 61 62 6f 76 65 2c 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 | above,.arbitrary.bit-width.integ |
| fc60 | 65 72 73 20 63 61 6e 20 62 65 20 72 65 66 65 72 65 6e 63 65 64 20 62 79 20 75 73 69 6e 67 0a 20 | ers.can.be.referenced.by.using.. |
| fc80 | 20 20 20 20 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 20 6f 66 20 3c 63 6f 64 65 3e 69 3c 2f 63 | .....an.identifier.of.<code>i</c |
| fca0 | 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 3e 75 3c 2f 63 6f 64 65 3e 20 66 6f 6c 6c 6f 77 65 64 20 | ode>.or.<code>u</code>.followed. |
| fcc0 | 62 79 20 64 69 67 69 74 73 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 69 64 65 6e | by.digits..For.example,.the.iden |
| fce0 | 74 69 66 69 65 72 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 | tifier.......<code><span.class=" |
| fd00 | 74 6f 6b 2d 74 79 70 65 22 3e 69 37 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 66 65 72 | tok-type">i7</span></code>.refer |
| fd20 | 73 20 74 6f 20 61 20 73 69 67 6e 65 64 20 37 2d 62 69 74 20 69 6e 74 65 67 65 72 2e 20 54 68 65 | s.to.a.signed.7-bit.integer..The |
| fd40 | 20 6d 61 78 69 6d 75 6d 20 61 6c 6c 6f 77 65 64 20 62 69 74 2d 77 69 64 74 68 20 6f 66 20 61 6e | .maximum.allowed.bit-width.of.an |
| fd60 | 0a 20 20 20 20 20 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 | .......integer.type.is.<code><sp |
| fd80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 35 35 33 35 3c 2f 73 70 61 | an.class="tok-number">65535</spa |
| fda0 | 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 |
| fdc0 | 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 49 | ee.also:</p><ul>.<li><a.href="#I |
| fde0 | 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 3c 6c 69 3e 3c | ntegers">Integers</a></li>.<li>< |
| fe00 | 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 69 3e | a.href="#Floats">Floats</a></li> |
| fe20 | 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 2f 6c | .<li><a.href="#void">void</a></l |
| fe40 | 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 73 3c | i>.<li><a.href="#Errors">Errors< |
| fe60 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 22 3e 40 54 79 | /a></li>.<li><a.href="#Type">@Ty |
| fe80 | 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | pe</a></li>.</ul>............... |
| fea0 | 3c 68 33 20 69 64 3d 22 50 72 69 6d 69 74 69 76 65 2d 56 61 6c 75 65 73 22 3e 3c 61 20 68 72 65 | <h3.id="Primitive-Values"><a.hre |
| fec0 | 66 3d 22 23 74 6f 63 2d 50 72 69 6d 69 74 69 76 65 2d 56 61 6c 75 65 73 22 3e 50 72 69 6d 69 74 | f="#toc-Primitive-Values">Primit |
| fee0 | 69 76 65 20 56 61 6c 75 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | ive.Values</a>.<a.class="hdr".hr |
| ff00 | 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 56 61 6c 75 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | ef="#Primitive-Values">..</a></h |
| ff20 | 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 6c 65 2d 77 72 61 70 | 3>........<div.class="table-wrap |
| ff40 | 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 63 61 70 | per">.......<table>.........<cap |
| ff60 | 74 69 6f 6e 3e 50 72 69 6d 69 74 69 76 65 20 56 61 6c 75 65 73 3c 2f 63 61 70 74 69 6f 6e 3e 0a | tion>Primitive.Values</caption>. |
| ff80 | 20 20 20 20 20 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 | ........<thead>.........<tr>.... |
| ffa0 | 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 68 3e | .......<th.scope="col">Name</th> |
| ffc0 | 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 44 65 73 63 72 | ...........<th.scope="col">Descr |
| ffe0 | 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>....... |
| 10000 | 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>...... |
| 10020 | 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 |
| 10040 | 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 6e 75 6c 6c 22 | ow"><code><span.class="tok-null" |
| 10060 | 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 3c 73 | >true</span></code>.and.<code><s |
| 10080 | 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 |
| 100a0 | 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 3c 63 | ></code></th>.............<td><c |
| 100c0 | 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 62 6f 6f 6c 3c | ode><span.class="tok-type">bool< |
| 100e0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 61 6c 75 65 73 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | /span></code>.values</td>....... |
| 10100 | 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>............ |
| 10120 | 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 |
| 10140 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ss="tok-null">null</span></code> |
| 10160 | 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 73 65 64 20 74 6f 20 73 65 | </th>.............<td>used.to.se |
| 10180 | 74 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 | t.an.optional.type.to.<code><spa |
| 101a0 | 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 2f | n.class="tok-null">null</span></ |
| 101c0 | 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 20 20 20 | code></td>.........</tr>........ |
| 101e0 | 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 |
| 10200 | 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 6e 75 6c 6c 22 3e 75 | "><code><span.class="tok-null">u |
| 10220 | 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 | ndefined</span></code></th>..... |
| 10240 | 20 20 20 20 20 20 3c 74 64 3e 75 73 65 64 20 74 6f 20 6c 65 61 76 65 20 61 20 76 61 6c 75 65 20 | ......<td>used.to.leave.a.value. |
| 10260 | 75 6e 73 70 65 63 69 66 69 65 64 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 | unspecified</td>.........</tr>.. |
| 10280 | 20 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 | .......</tbody>.......</table>.. |
| 102a0 | 20 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f | .....</div>.......<p>See.also:</ |
| 102c0 | 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 3e | p><ul>.<li><a.href="#Optionals"> |
| 102e0 | 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 20 68 72 65 66 3d 22 | Optionals</a></li>.<li><a.href=" |
| 10300 | 23 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | #undefined">undefined</a></li>.< |
| 10320 | 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 53 74 72 69 6e | /ul>...............<h3.id="Strin |
| 10340 | 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 69 6e | g-Literals-and-Unicode-Code-Poin |
| 10360 | 74 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 74 72 69 6e 67 | t-Literals"><a.href="#toc-String |
| 10380 | 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 69 6e 74 | -Literals-and-Unicode-Code-Point |
| 103a0 | 2d 4c 69 74 65 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 | -Literals">String.Literals.and.U |
| 103c0 | 6e 69 63 6f 64 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 20 3c | nicode.Code.Point.Literals</a>.< |
| 103e0 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 74 72 69 6e 67 2d 4c 69 74 65 | a.class="hdr".href="#String-Lite |
| 10400 | 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 |
| 10420 | 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 0a 20 20 20 | rals">..</a></h3>........<p>.... |
| 10440 | 20 20 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 61 6e 74 20 | ...String.literals.are.constant. |
| 10460 | 73 69 6e 67 6c 65 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 | single-item.<a.href="#Pointers"> |
| 10480 | 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 74 6f 20 6e 75 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 | Pointers</a>.to.null-terminated. |
| 104a0 | 62 79 74 65 20 61 72 72 61 79 73 2e 0a 20 20 20 20 20 20 54 68 65 20 74 79 70 65 20 6f 66 20 73 | byte.arrays........The.type.of.s |
| 104c0 | 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 65 6e 63 6f 64 65 73 20 62 6f 74 68 20 74 68 65 20 | tring.literals.encodes.both.the. |
| 104e0 | 6c 65 6e 67 74 68 2c 20 61 6e 64 20 74 68 65 20 66 61 63 74 20 74 68 61 74 20 74 68 65 79 20 61 | length,.and.the.fact.that.they.a |
| 10500 | 72 65 20 6e 75 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 68 | re.null-terminated,.......and.th |
| 10520 | 75 73 20 74 68 65 79 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 | us.they.can.be.<a.href="#Type-Co |
| 10540 | 65 72 63 69 6f 6e 22 3e 63 6f 65 72 63 65 64 3c 2f 61 3e 20 74 6f 20 62 6f 74 68 20 3c 61 20 68 | ercion">coerced</a>.to.both.<a.h |
| 10560 | 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e 53 6c 69 63 65 73 3c 2f 61 3e 20 61 6e 64 0a 20 20 20 | ref="#Slices">Slices</a>.and.... |
| 10580 | 20 20 20 3c 61 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 | ...<a.href="#Sentinel-Terminated |
| 105a0 | 2d 50 6f 69 6e 74 65 72 73 22 3e 4e 75 6c 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 50 6f 69 6e 74 | -Pointers">Null-Terminated.Point |
| 105c0 | 65 72 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 44 65 72 65 66 65 72 65 6e 63 69 6e 67 20 73 74 72 | ers</a>........Dereferencing.str |
| 105e0 | 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 63 6f 6e 76 65 72 74 73 20 74 68 65 6d 20 74 6f 20 3c 61 | ing.literals.converts.them.to.<a |
| 10600 | 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 2e 0a 20 20 20 20 | .href="#Arrays">Arrays</a>...... |
| 10620 | 20 20 3c 2f 70 3e 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 5a | ..</p>.......<p>.......Because.Z |
| 10640 | 69 67 20 73 6f 75 72 63 65 20 63 6f 64 65 20 69 73 20 3c 61 20 68 72 65 66 3d 22 23 53 6f 75 72 | ig.source.code.is.<a.href="#Sour |
| 10660 | 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e 55 54 46 2d 38 20 65 6e 63 6f 64 65 64 3c 2f 61 3e 2c 20 | ce-Encoding">UTF-8.encoded</a>,. |
| 10680 | 61 6e 79 0a 20 20 20 20 20 20 6e 6f 6e 2d 41 53 43 49 49 20 62 79 74 65 73 20 61 70 70 65 61 72 | any.......non-ASCII.bytes.appear |
| 106a0 | 69 6e 67 20 77 69 74 68 69 6e 20 61 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 69 6e 20 73 | ing.within.a.string.literal.in.s |
| 106c0 | 6f 75 72 63 65 20 63 6f 64 65 20 63 61 72 72 79 0a 20 20 20 20 20 20 74 68 65 69 72 20 55 54 46 | ource.code.carry.......their.UTF |
| 106e0 | 2d 38 20 6d 65 61 6e 69 6e 67 20 69 6e 74 6f 20 74 68 65 20 63 6f 6e 74 65 6e 74 20 6f 66 20 74 | -8.meaning.into.the.content.of.t |
| 10700 | 68 65 20 73 74 72 69 6e 67 20 69 6e 20 74 68 65 20 5a 69 67 20 70 72 6f 67 72 61 6d 3b 0a 20 20 | he.string.in.the.Zig.program;... |
| 10720 | 20 20 20 20 74 68 65 20 62 79 74 65 73 20 61 72 65 20 6e 6f 74 20 6d 6f 64 69 66 69 65 64 20 62 | ....the.bytes.are.not.modified.b |
| 10740 | 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 2e 20 49 74 20 69 73 20 70 6f 73 73 69 62 6c 65 20 74 | y.the.compiler..It.is.possible.t |
| 10760 | 6f 20 65 6d 62 65 64 0a 20 20 20 20 20 20 6e 6f 6e 2d 55 54 46 2d 38 20 62 79 74 65 73 20 69 6e | o.embed.......non-UTF-8.bytes.in |
| 10780 | 74 6f 20 61 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 75 73 69 6e 67 20 3c 63 6f 64 65 3e | to.a.string.literal.using.<code> |
| 107a0 | 5c 78 4e 4e 3c 2f 63 6f 64 65 3e 20 6e 6f 74 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | \xNN</code>.notation........</p> |
| 107c0 | 0a 20 20 20 20 20 20 3c 70 3e 49 6e 64 65 78 69 6e 67 20 69 6e 74 6f 20 61 20 73 74 72 69 6e 67 | .......<p>Indexing.into.a.string |
| 107e0 | 20 63 6f 6e 74 61 69 6e 69 6e 67 20 6e 6f 6e 2d 41 53 43 49 49 20 62 79 74 65 73 20 72 65 74 75 | .containing.non-ASCII.bytes.retu |
| 10800 | 72 6e 73 20 69 6e 64 69 76 69 64 75 61 6c 0a 20 20 20 20 20 20 62 79 74 65 73 2c 20 77 68 65 74 | rns.individual.......bytes,.whet |
| 10820 | 68 65 72 20 76 61 6c 69 64 20 55 54 46 2d 38 20 6f 72 20 6e 6f 74 2e 3c 2f 70 3e 0a 20 20 20 20 | her.valid.UTF-8.or.not.</p>..... |
| 10840 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 6e 69 63 6f 64 65 20 63 6f 64 65 20 70 6f 69 6e 74 20 6c | ..<p>.......Unicode.code.point.l |
| 10860 | 69 74 65 72 61 6c 73 20 68 61 76 65 20 74 79 70 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | iterals.have.type.<code><span.cl |
| 10880 | 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 |
| 108a0 | 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 20 73 61 6d 65 20 61 73 0a 20 20 20 20 20 20 3c 61 20 | n></code>,.the.same.as.......<a. |
| 108c0 | 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 49 6e 74 65 67 65 72 | href="#Integer-Literals">Integer |
| 108e0 | 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 2e 20 41 6c 6c 20 3c 61 20 68 72 65 66 3d 22 23 45 73 63 | .Literals</a>..All.<a.href="#Esc |
| 10900 | 61 70 65 2d 53 65 71 75 65 6e 63 65 73 22 3e 45 73 63 61 70 65 20 53 65 71 75 65 6e 63 65 73 3c | ape-Sequences">Escape.Sequences< |
| 10920 | 2f 61 3e 20 61 72 65 20 76 61 6c 69 64 20 69 6e 20 62 6f 74 68 20 73 74 72 69 6e 67 20 6c 69 74 | /a>.are.valid.in.both.string.lit |
| 10940 | 65 72 61 6c 73 0a 20 20 20 20 20 20 61 6e 64 20 55 6e 69 63 6f 64 65 20 63 6f 64 65 20 70 6f 69 | erals.......and.Unicode.code.poi |
| 10960 | 6e 74 20 6c 69 74 65 72 61 6c 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 | nt.literals........</p>.......<f |
| 10980 | 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 |
| 109a0 | 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 74 72 69 6e 67 5f 6c 69 74 65 | "><cite.class="file">string_lite |
| 109c0 | 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 3e 3c 70 72 65 | rals.zig</cite></figcaption><pre |
| 109e0 | 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 |
| 10a00 | 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 3d 22 74 6f | t</span>.print.=.<span.class="to |
| 10a20 | 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. |
| 10a40 | 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"< |
| 10a60 | 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 63 6c 61 73 73 | /span>).debug.print;.<span.class |
| 10a80 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 3c 73 70 | ="tok-kw">const</span>.mem.=.<sp |
| 10aa0 | 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</ |
| 10ac0 | 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 |
| 10ae0 | 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 65 6d 3b 20 3c 73 70 61 6e 20 63 | t;std"</span>).mem;.<span.c |
| 10b00 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 77 69 6c 6c 20 62 65 20 75 73 | lass="tok-comment">//.will.be.us |
| 10b20 | 65 64 20 74 6f 20 63 6f 6d 70 61 72 65 20 62 79 74 65 73 3c 2f 73 70 61 6e 3e 0a 0a 3c 73 70 61 | ed.to.compare.bytes</span>..<spa |
| 10b40 | 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 |
| 10b60 | 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 |
| 10b80 | 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 |
| 10ba0 | 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> |
| 10bc0 | 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 |
| 10be0 | 74 3c 2f 73 70 61 6e 3e 20 62 79 74 65 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | t</span>.bytes.=.<span.class="to |
| 10c00 | 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>; |
| 10c20 | 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" |
| 10c40 | 3e 26 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 3c 73 70 61 | >"{}\n"</span>,..{<spa |
| 10c60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 | n.class="tok-builtin">@TypeOf</s |
| 10c80 | 70 61 6e 3e 28 62 79 74 65 73 29 7d 29 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>(bytes)});.<span.class="tok- |
| 10ca0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2a 63 6f 6e 73 74 20 5b 35 3a 30 5d 75 38 3c 2f 73 70 61 6e | comment">//.*const.[5:0]u8</span |
| 10cc0 | 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 6f 6b 2d 73 74 72 | >.....print(<span.class="tok-str |
| 10ce0 | 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 2c 20 2e 7b 62 79 | ">"{d}\n"</span>,..{by |
| 10d00 | 74 65 73 2e 6c 65 6e 7d 29 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | tes.len});.<span.class="tok-comm |
| 10d20 | 65 6e 74 22 3e 2f 2f 20 35 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e | ent">//.5</span>.....print(<span |
| 10d40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 63 7d 5c 6e 26 71 75 6f | .class="tok-str">"{c}\n&quo |
| 10d60 | 74 3b 3c 2f 73 70 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 | t;</span>,..{bytes[<span.class=" |
| 10d80 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 7d 29 3b 20 3c 73 70 61 6e 20 63 | tok-number">1</span>]});.<span.c |
| 10da0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 27 65 27 3c 2f 73 70 61 6e 3e | lass="tok-comment">//.'e'</span> |
| 10dc0 | 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" |
| 10de0 | 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 2c 20 2e 7b 62 79 74 | >"{d}\n"</span>,..{byt |
| 10e00 | 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 35 3c 2f 73 | es[<span.class="tok-number">5</s |
| 10e20 | 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 63 6f 6d 6d 65 6e | pan>]});.<span.class="tok-commen |
| 10e40 | 74 22 3e 2f 2f 20 30 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 | t">//.0</span>.....print(<span.c |
| 10e60 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 7d 5c 6e 26 71 75 6f 74 3b 3c | lass="tok-str">"{}\n"< |
| 10e80 | 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 73 74 72 22 3e | /span>,..{<span.class="tok-str"> |
| 10ea0 | 27 65 27 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | 'e'</span>.==.<span.class="tok-s |
| 10ec0 | 74 72 22 3e 27 5c 78 36 35 27 3c 2f 73 70 61 6e 3e 7d 29 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tr">'\x65'</span>});.<span.class |
| 10ee0 | 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 20 | ="tok-comment">//.true</span>... |
| 10f00 | 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 |
| 10f20 | 75 6f 74 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 | uot;{d}\n"</span>,..{<span. |
| 10f40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5c 75 7b 31 66 34 61 39 7d 27 3c 2f 73 70 61 | class="tok-str">'\u{1f4a9}'</spa |
| 10f60 | 6e 3e 7d 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 | n>});.<span.class="tok-comment"> |
| 10f80 | 2f 2f 20 31 32 38 31 36 39 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e | //.128169</span>.....print(<span |
| 10fa0 | 20 63 6c 61 73 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 | .class="tok-str">"{d}\n&quo |
| 10fc0 | 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 73 74 | t;</span>,..{<span.class="tok-st |
| 10fe0 | 72 22 3e 27 f0 9f 92 af 27 3c 2f 73 70 61 6e 3e 7d 29 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | r">'....'</span>});.<span.class= |
| 11000 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 31 32 38 31 37 35 3c 2f 73 70 61 6e 3e 0a 20 | "tok-comment">//.128175</span>.. |
| 11020 | 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">& |
| 11040 | 71 75 6f 74 3b 7b 75 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 | quot;{u}\n"</span>,..{<span |
| 11060 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 e2 9a a1 27 3c 2f 73 70 61 6e 3e 7d 29 3b | .class="tok-str">'...'</span>}); |
| 11080 | 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" |
| 110a0 | 3e 26 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 | >"{}\n"</span>,..{mem. |
| 110c0 | 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 | eql(<span.class="tok-type">u8</s |
| 110e0 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | pan>,.<span.class="tok-str">&quo |
| 11100 | 74 3b 68 65 6c 6c 6f 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 | t;hello"</span>,.<span.clas |
| 11120 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 5c 78 36 35 6c 6c 6f 26 71 75 6f 74 3b | s="tok-str">"h\x65llo" |
| 11140 | 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 6b 2d 63 6f 6d | </span>)});.<span.class="tok-com |
| 11160 | 6d 65 6e 74 22 3e 2f 2f 20 74 72 75 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 72 69 6e 74 28 3c | ment">//.true</span>.....print(< |
| 11180 | 73 70 61 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 5c 6e 26 | span.class="tok-str">"{}\n& |
| 111a0 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c | quot;</span>,..{mem.eql(<span.cl |
| 111c0 | 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. |
| 111e0 | 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 3b | class="tok-str">"...." |
| 11200 | 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">& |
| 11220 | 71 75 6f 74 3b 5c 78 66 30 5c 78 39 66 5c 78 39 32 5c 78 61 66 26 71 75 6f 74 3b 3c 2f 73 70 61 | quot;\xf0\x9f\x92\xaf"</spa |
| 11240 | 6e 3e 29 7d 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 | n>)});.<span.class="tok-comment" |
| 11260 | 3e 2f 2f 20 61 6c 73 6f 20 74 72 75 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | >//.also.true</span>.....<span.c |
| 11280 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 69 6e 76 61 6c | lass="tok-kw">const</span>.inval |
| 112a0 | 69 64 5f 75 74 66 38 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 | id_utf8.=.<span.class="tok-str"> |
| 112c0 | 26 71 75 6f 74 3b 5c 78 66 66 5c 78 66 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 20 3c 73 70 | "\xff\xfe"</span>;.<sp |
| 112e0 | 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 6e 2d 55 54 | an.class="tok-comment">//.non-UT |
| 11300 | 46 2d 38 20 73 74 72 69 6e 67 73 20 61 72 65 20 70 6f 73 73 69 62 6c 65 20 77 69 74 68 20 5c 78 | F-8.strings.are.possible.with.\x |
| 11320 | 4e 4e 20 6e 6f 74 61 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 | NN.notation.</span>.....print(<s |
| 11340 | 70 61 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 78 7b 78 7d 5c | pan.class="tok-str">"0x{x}\ |
| 11360 | 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 69 6e 76 61 6c 69 64 5f 75 74 66 38 5b 3c | n"</span>,..{invalid_utf8[< |
| 11380 | 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> |
| 113a0 | 5d 7d 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 | ]});.<span.class="tok-comment">/ |
| 113c0 | 2f 20 69 6e 64 65 78 69 6e 67 20 74 68 65 6d 20 72 65 74 75 72 6e 73 20 69 6e 64 69 76 69 64 75 | /.indexing.them.returns.individu |
| 113e0 | 61 6c 20 62 79 74 65 73 2e 2e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 | al.bytes...</span>.....print(<sp |
| 11400 | 61 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 78 7b 78 7d 5c 6e | an.class="tok-str">"0x{x}\n |
| 11420 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | "</span>,..{<span.class="to |
| 11440 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b f0 9f 92 af 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 5b 3c | k-str">"...."</span>[< |
| 11460 | 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> |
| 11480 | 5d 7d 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 | ]});.<span.class="tok-comment">/ |
| 114a0 | 2f 20 2e 2e 2e 61 73 20 64 6f 65 73 20 69 6e 64 65 78 69 6e 67 20 70 61 72 74 2d 77 61 79 20 74 | /....as.does.indexing.part-way.t |
| 114c0 | 68 72 6f 75 67 68 20 6e 6f 6e 2d 41 53 43 49 49 20 63 68 61 72 61 63 74 65 72 73 3c 2f 73 70 61 | hrough.non-ASCII.characters</spa |
| 114e0 | 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 3c 66 69 67 75 72 | n>.}</code></pre></figure><figur |
| 11500 | 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"> |
| 11520 | 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>$.< |
| 11540 | 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 73 74 72 69 6e 67 5f 6c 69 74 65 72 61 6c | kbd>zig.build-exe.string_literal |
| 11560 | 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 73 74 72 69 6e 67 5f 6c 69 74 65 | s.zig</kbd>.$.<kbd>./string_lite |
| 11580 | 72 61 6c 73 3c 2f 6b 62 64 3e 0a 2a 63 6f 6e 73 74 20 5b 35 3a 30 5d 75 38 0a 35 0a 65 0a 30 0a | rals</kbd>.*const.[5:0]u8.5.e.0. |
| 115a0 | 74 72 75 65 0a 31 32 38 31 36 39 0a 31 32 38 31 37 35 0a e2 9a a1 0a 74 72 75 65 0a 74 72 75 65 | true.128169.128175.....true.true |
| 115c0 | 0a 30 78 66 65 0a 30 78 39 66 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | .0xfe.0x9f.</samp></pre></figure |
| 115e0 | 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 |
| 11600 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 3c 2f | i><a.href="#Arrays">Arrays</a></ |
| 11620 | 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e | li>.<li><a.href="#Source-Encodin |
| 11640 | 67 22 3e 53 6f 75 72 63 65 20 45 6e 63 6f 64 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c | g">Source.Encoding</a></li>.</ul |
| 11660 | 3e 0a 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 45 73 63 61 70 65 2d 53 65 71 75 65 6e 63 65 | >........<h4.id="Escape-Sequence |
| 11680 | 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 73 63 61 70 65 2d 53 65 71 75 65 6e 63 65 | s"><a.href="#toc-Escape-Sequence |
| 116a0 | 73 22 3e 45 73 63 61 70 65 20 53 65 71 75 65 6e 63 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | s">Escape.Sequences</a>.<a.class |
| 116c0 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 73 63 61 70 65 2d 53 65 71 75 65 6e 63 65 73 22 3e | ="hdr".href="#Escape-Sequences"> |
| 116e0 | c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 64 69 76 20 63 6c 61 73 73 3d 22 74 | ..</a></h4>........<div.class="t |
| 11700 | 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 20 | able-wrapper">.......<table>.... |
| 11720 | 20 20 20 20 20 3c 63 61 70 74 69 6f 6e 3e 45 73 63 61 70 65 20 53 65 71 75 65 6e 63 65 73 3c 2f | .....<caption>Escape.Sequences</ |
| 11740 | 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 20 | caption>.........<thead>........ |
| 11760 | 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 3e | .<tr>...........<th.scope="col"> |
| 11780 | 45 73 63 61 70 65 20 53 65 71 75 65 6e 63 65 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | Escape.Sequence</th>...........< |
| 117a0 | 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 20 20 20 | th.scope="col">Name</th>........ |
| 117c0 | 20 3c 2f 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 | .</tr>.........</thead>......... |
| 117e0 | 3c 74 62 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 | <tbody>.........<tr>............ |
| 11800 | 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 5c 6e 3c 2f 63 6f 64 65 3e | .<th.scope="row"><code>\n</code> |
| 11820 | 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4e 65 77 6c 69 6e 65 3c 2f 74 64 3e | </th>...........<td>Newline</td> |
| 11840 | 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>..... |
| 11860 | 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 5c 72 | ........<th.scope="row"><code>\r |
| 11880 | 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 43 61 72 72 69 | </code></th>...........<td>Carri |
| 118a0 | 61 67 65 20 52 65 74 75 72 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 | age.Return</td>.........</tr>... |
| 118c0 | 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 |
| 118e0 | 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 5c 74 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 | ="row"><code>\t</code></th>..... |
| 11900 | 20 20 20 20 20 20 3c 74 64 3e 54 61 62 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e | ......<td>Tab</td>.........</tr> |
| 11920 | 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 |
| 11940 | 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 5c 5c 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 | ope="row"><code>\\</code></th>.. |
| 11960 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 42 61 63 6b 73 6c 61 73 68 3c 2f 74 64 3e 0a 20 20 20 20 | .........<td>Backslash</td>..... |
| 11980 | 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>.......... |
| 119a0 | 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 27 3c 2f 63 6f 64 | ...<th.scope="row"><code>\'</cod |
| 119c0 | 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 53 69 6e 67 6c 65 20 51 75 6f | e></th>...........<td>Single.Quo |
| 119e0 | 74 65 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 | te</td>.........</tr>.........<t |
| 11a00 | 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">< |
| 11a20 | 63 6f 64 65 3e 5c 22 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 | code>\"</code></th>...........<t |
| 11a40 | 64 3e 44 6f 75 62 6c 65 20 51 75 6f 74 65 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 | d>Double.Quote</td>.........</tr |
| 11a60 | 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 |
| 11a80 | 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 5c 78 4e 4e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 | cope="row"><code>\xNN</code></th |
| 11aa0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 68 65 78 61 64 65 63 69 6d 61 6c 20 38 2d 62 69 | >...........<td>hexadecimal.8-bi |
| 11ac0 | 74 20 62 79 74 65 20 76 61 6c 75 65 20 28 32 20 64 69 67 69 74 73 29 3c 2f 74 64 3e 0a 20 20 20 | t.byte.value.(2.digits)</td>.... |
| 11ae0 | 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>......... |
| 11b00 | 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 75 7b 4e 4e 4e | ....<th.scope="row"><code>\u{NNN |
| 11b20 | 4e 4e 4e 7d 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 68 | NNN}</code></th>...........<td>h |
| 11b40 | 65 78 61 64 65 63 69 6d 61 6c 20 55 6e 69 63 6f 64 65 20 63 6f 64 65 20 70 6f 69 6e 74 20 55 54 | exadecimal.Unicode.code.point.UT |
| 11b60 | 46 2d 38 20 65 6e 63 6f 64 65 64 20 28 31 20 6f 72 20 6d 6f 72 65 20 64 69 67 69 74 73 29 3c 2f | F-8.encoded.(1.or.more.digits)</ |
| 11b80 | 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 6f 64 | td>.........</tr>.........</tbod |
| 11ba0 | 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 20 | y>.......</table>.......</div>.. |
| 11bc0 | 20 20 20 20 20 3c 70 3e 4e 6f 74 65 20 74 68 61 74 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 76 61 | .....<p>Note.that.the.maximum.va |
| 11be0 | 6c 69 64 20 55 6e 69 63 6f 64 65 20 70 6f 69 6e 74 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | lid.Unicode.point.is.<code><span |
| 11c00 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 30 66 66 66 66 3c 2f 73 70 | .class="tok-number">0x10ffff</sp |
| 11c20 | 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 | an></code>.</p>..............<h4 |
| 11c40 | 20 69 64 3d 22 4d 75 6c 74 69 6c 69 6e 65 2d 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 22 3e | .id="Multiline-String-Literals"> |
| 11c60 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4d 75 6c 74 69 6c 69 6e 65 2d 53 74 72 69 6e 67 2d 4c | <a.href="#toc-Multiline-String-L |
| 11c80 | 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 72 61 | iterals">Multiline.String.Litera |
| 11ca0 | 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 4d 75 6c | ls</a>.<a.class="hdr".href="#Mul |
| 11cc0 | 74 69 6c 69 6e 65 2d 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f | tiline-String-Literals">..</a></ |
| 11ce0 | 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4d 75 6c 74 69 6c 69 6e 65 20 73 | h4>........<p>.......Multiline.s |
| 11d00 | 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 68 61 76 65 20 6e 6f 20 65 73 63 61 70 65 73 20 61 | tring.literals.have.no.escapes.a |
| 11d20 | 6e 64 20 63 61 6e 20 73 70 61 6e 20 61 63 72 6f 73 73 20 6d 75 6c 74 69 70 6c 65 20 6c 69 6e 65 | nd.can.span.across.multiple.line |
| 11d40 | 73 2e 0a 20 20 20 20 20 20 54 6f 20 73 74 61 72 74 20 61 20 6d 75 6c 74 69 6c 69 6e 65 20 73 74 | s........To.start.a.multiline.st |
| 11d60 | 72 69 6e 67 20 6c 69 74 65 72 61 6c 2c 20 75 73 65 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 | ring.literal,.use.the.<code><spa |
| 11d80 | 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 6f 64 | n.class="tok-str">\\</span></cod |
| 11da0 | 65 3e 20 74 6f 6b 65 6e 2e 20 4a 75 73 74 20 6c 69 6b 65 20 61 20 63 6f 6d 6d 65 6e 74 2c 0a 20 | e>.token..Just.like.a.comment,.. |
| 11dc0 | 20 20 20 20 20 74 68 65 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 67 6f 65 73 20 75 6e 74 | .....the.string.literal.goes.unt |
| 11de0 | 69 6c 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 6c 69 6e 65 2e 20 54 68 65 20 65 6e 64 20 | il.the.end.of.the.line..The.end. |
| 11e00 | 6f 66 20 74 68 65 20 6c 69 6e 65 20 69 73 0a 20 20 20 20 20 20 6e 6f 74 20 69 6e 63 6c 75 64 65 | of.the.line.is.......not.include |
| 11e20 | 64 20 69 6e 20 74 68 65 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 2e 0a 20 20 20 20 20 20 48 | d.in.the.string.literal........H |
| 11e40 | 6f 77 65 76 65 72 2c 20 69 66 20 74 68 65 20 6e 65 78 74 20 6c 69 6e 65 20 62 65 67 69 6e 73 20 | owever,.if.the.next.line.begins. |
| 11e60 | 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 73 74 72 22 | with.<code><span.class="tok-str" |
| 11e80 | 3e 5c 5c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 68 65 6e 20 61 20 6e 65 77 6c 69 6e 65 | >\\</span></code>.then.a.newline |
| 11ea0 | 20 69 73 20 61 70 70 65 6e 64 65 64 20 61 6e 64 0a 20 20 20 20 20 20 74 68 65 20 73 74 72 69 6e | .is.appended.and.......the.strin |
| 11ec0 | 67 20 6c 69 74 65 72 61 6c 20 63 6f 6e 74 69 6e 75 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | g.literal.continues........</p>. |
| 11ee0 | 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= |
| 11f00 | 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 6d 75 6c | "zig-cap"><cite.class="file">mul |
| 11f20 | 74 69 6c 69 6e 65 5f 73 74 72 69 6e 67 5f 6c 69 74 65 72 61 6c 73 2e 7a 69 67 3c 2f 63 69 74 65 | tiline_string_literals.zig</cite |
| 11f40 | 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 |
| 11f60 | 6c 61 73 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 | lass="tok-kw">const</span>.hello |
| 11f80 | 5f 77 6f 72 6c 64 5f 69 6e 5f 63 20 3d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | _world_in_c.=.....<span.class="t |
| 11fa0 | 6f 6b 2d 73 74 72 22 3e 5c 5c 23 69 6e 63 6c 75 64 65 20 26 6c 74 3b 73 74 64 69 6f 2e 68 26 67 | ok-str">\\#include.<stdio.h&g |
| 11fc0 | 74 3b 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | t;.</span>....<span.class="tok-s |
| 11fe0 | 74 72 22 3e 5c 5c 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | tr">\\.</span>....<span.class="t |
| 12000 | 6f 6b 2d 73 74 72 22 3e 5c 5c 69 6e 74 20 6d 61 69 6e 28 69 6e 74 20 61 72 67 63 2c 20 63 68 61 | ok-str">\\int.main(int.argc,.cha |
| 12020 | 72 20 2a 2a 61 72 67 76 29 20 7b 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | r.**argv).{.</span>....<span.cla |
| 12040 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 20 20 20 20 70 72 69 6e 74 66 28 26 71 75 6f 74 3b | ss="tok-str">\\....printf(" |
| 12060 | 68 65 6c 6c 6f 20 77 6f 72 6c 64 5c 6e 26 71 75 6f 74 3b 29 3b 0a 3c 2f 73 70 61 6e 3e 20 20 20 | hello.world\n");.</span>... |
| 12080 | 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 20 20 20 20 72 65 74 | .<span.class="tok-str">\\....ret |
| 120a0 | 75 72 6e 20 30 3b 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | urn.0;.</span>....<span.class="t |
| 120c0 | 6f 6b 2d 73 74 72 22 3e 5c 5c 7d 0a 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ok-str">\\}.</span>;</code></pre |
| 120e0 | 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:</ |
| 12100 | 70 3e 3c 75 6c 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 | p><ul>.<li><a.href="#embedFile"> |
| 12120 | 40 65 6d 62 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 | @embedFile</a></li>.</ul>....... |
| 12140 | 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 41 73 73 69 67 6e 6d 65 6e | ...............<h3.id="Assignmen |
| 12160 | 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 73 73 69 67 6e 6d 65 6e 74 22 3e 41 73 73 | t"><a.href="#toc-Assignment">Ass |
| 12180 | 69 67 6e 6d 65 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | ignment</a>.<a.class="hdr".href= |
| 121a0 | 22 23 41 73 73 69 67 6e 6d 65 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | "#Assignment">..</a></h3>....... |
| 121c0 | 20 3c 70 3e 55 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 | .<p>Use.the.<code><span.class="t |
| 121e0 | 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 6b 65 79 77 6f | ok-kw">const</span></code>.keywo |
| 12200 | 72 64 20 74 6f 20 61 73 73 69 67 6e 20 61 20 76 61 6c 75 65 20 74 6f 20 61 6e 20 69 64 65 6e 74 | rd.to.assign.a.value.to.an.ident |
| 12220 | 69 66 69 65 72 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 | ifier:</p>.......<figure><figcap |
| 12240 | 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 |
| 12260 | 3d 22 66 69 6c 65 22 3e 63 6f 6e 73 74 61 6e 74 5f 69 64 65 6e 74 69 66 69 65 72 5f 63 61 6e 6e | ="file">constant_identifier_cann |
| 12280 | 6f 74 5f 63 68 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 | ot_change.zig</cite></figcaption |
| 122a0 | 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" |
| 122c0 | 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 74 | >const</span>.x.=.<span.class="t |
| 122e0 | 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 61 6e 20 63 | ok-number">1234</span>;..<span.c |
| 12300 | 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 |
| 12320 | 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. |
| 12340 | 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>.{.. |
| 12360 | 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">//. |
| 12380 | 49 74 20 77 6f 72 6b 73 20 61 74 20 66 69 6c 65 20 73 63 6f 70 65 20 61 73 20 77 65 6c 6c 20 61 | It.works.at.file.scope.as.well.a |
| 123a0 | 73 20 69 6e 73 69 64 65 20 66 75 6e 63 74 69 6f 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | s.inside.functions.</span>.....< |
| 123c0 | 73 70 61 6e 20 63 6c 61 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> |
| 123e0 | 20 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 | .y.=.<span.class="tok-number">56 |
| 12400 | 37 38 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 | 78</span>;......<span.class="tok |
| 12420 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4f 6e 63 65 20 61 73 73 69 67 6e 65 64 2c 20 61 6e 20 69 | -comment">//.Once.assigned,.an.i |
| 12440 | 64 65 6e 74 69 66 69 65 72 20 63 61 6e 6e 6f 74 20 62 65 20 63 68 61 6e 67 65 64 2e 3c 2f 73 70 | dentifier.cannot.be.changed.</sp |
| 12460 | 61 6e 3e 0a 20 20 20 20 79 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | an>.....y.+=.<span.class="tok-nu |
| 12480 | 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 22 | mber">1</span>;.}..<span.class=" |
| 124a0 | 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=" |
| 124c0 | 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 |
| 124e0 | 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 |
| 12500 | 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 6f | ="tok-type">void</span>.{.....fo |
| 12520 | 6f 28 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 | o();.}</code></pre></figure><fig |
| 12540 | 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 |
| 12560 | 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>$ |
| 12580 | 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 63 6f 6e 73 74 61 6e 74 5f 69 64 65 | .<kbd>zig.build-exe.constant_ide |
| 125a0 | 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 3c 2f 6b 62 64 3e 0a | ntifier_cannot_change.zig</kbd>. |
| 125c0 | 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/ |
| 125e0 | 73 72 63 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 | src/zig/doc/langref/constant_ide |
| 12600 | 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 38 3a 37 3a 20 3c | ntifier_cannot_change.zig:8:7:.< |
| 12620 | 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 |
| 12640 | 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 |
| 12660 | 61 6e 6e 6f 74 20 61 73 73 69 67 6e 20 74 6f 20 63 6f 6e 73 74 61 6e 74 0a 3c 2f 73 70 61 6e 3e | annot.assign.to.constant.</span> |
| 12680 | 20 20 20 20 79 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 | ....y.+=.1;.....<span.class="sgr |
| 126a0 | 2d 33 32 6d 22 3e 7e 7e 5e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -32m">~~^~~~.</span><span.class= |
| 126c0 | 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 6d 61 69 6e | "sgr-2m">referenced.by:.....main |
| 126e0 | 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 | :./home/andy/src/zig/doc/langref |
| 12700 | 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 74 5f 63 68 61 6e | /constant_identifier_cannot_chan |
| 12720 | 67 65 2e 7a 69 67 3a 31 32 3a 35 0a 20 20 20 20 63 61 6c 6c 4d 61 69 6e 3a 20 2f 68 6f 6d 65 2f | ge.zig:12:5.....callMain:./home/ |
| 12740 | 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 35 | andy/src/zig/lib/std/start.zig:5 |
| 12760 | 31 34 3a 31 37 0a 20 20 20 20 72 65 6d 61 69 6e 69 6e 67 20 72 65 66 65 72 65 6e 63 65 20 74 72 | 14:17.....remaining.reference.tr |
| 12780 | 61 63 65 73 20 68 69 64 64 65 6e 3b 20 75 73 65 20 27 2d 66 72 65 66 65 72 65 6e 63 65 2d 74 72 | aces.hidden;.use.'-freference-tr |
| 127a0 | 61 63 65 27 20 74 6f 20 73 65 65 20 61 6c 6c 20 72 65 66 65 72 65 6e 63 65 20 74 72 61 63 65 73 | ace'.to.see.all.reference.traces |
| 127c0 | 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>. |
| 127e0 | 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 6f 6b | .......<p><code><span.class="tok |
| 12800 | 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 61 70 70 6c 69 65 73 | -kw">const</span></code>.applies |
| 12820 | 20 74 6f 20 61 6c 6c 20 6f 66 20 74 68 65 20 62 79 74 65 73 20 74 68 61 74 20 74 68 65 20 69 64 | .to.all.of.the.bytes.that.the.id |
| 12840 | 65 6e 74 69 66 69 65 72 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 61 64 64 72 65 73 73 65 73 2e 20 | entifier.immediately.addresses.. |
| 12860 | 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e | <a.href="#Pointers">Pointers</a> |
| 12880 | 20 68 61 76 65 20 74 68 65 69 72 20 6f 77 6e 20 63 6f 6e 73 74 2d 6e 65 73 73 2e 3c 2f 70 3e 0a | .have.their.own.const-ness.</p>. |
| 128a0 | 20 20 20 20 20 20 3c 70 3e 49 66 20 79 6f 75 20 6e 65 65 64 20 61 20 76 61 72 69 61 62 6c 65 20 | ......<p>If.you.need.a.variable. |
| 128c0 | 74 68 61 74 20 79 6f 75 20 63 61 6e 20 6d 6f 64 69 66 79 2c 20 75 73 65 20 74 68 65 20 3c 63 6f | that.you.can.modify,.use.the.<co |
| 128e0 | 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 |
| 12900 | 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 | n></code>.keyword:</p>.......<fi |
| 12920 | 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" |
| 12940 | 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6d 75 74 61 62 6c 65 5f 76 61 72 2e | ><cite.class="file">mutable_var. |
| 12960 | 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 |
| 12980 | 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 |
| 129a0 | 61 6e 3e 20 70 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | an>.print.=.<span.class="tok-bui |
| 129c0 | 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 |
| 129e0 | 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 |
| 12a00 | 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >).debug.print;..<span.class="to |
| 12a20 | 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 |
| 12a40 | 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 |
| 12a60 | 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=" |
| 12a80 | 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 |
| 12aa0 | 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 3c | n.class="tok-kw">var</span>.y:.< |
| 12ac0 | 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> |
| 12ae0 | 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 36 37 38 | .=.<span.class="tok-number">5678 |
| 12b00 | 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 79 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </span>;......y.+=.<span.class=" |
| 12b20 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 70 72 69 6e 74 | tok-number">1</span>;......print |
| 12b40 | 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 64 7d | (<span.class="tok-str">"{d} |
| 12b60 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 79 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | "</span>,..{y});.}</code></ |
| 12b80 | 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 |
| 12ba0 | 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 |
| 12bc0 | 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 |
| 12be0 | 2d 65 78 65 20 6d 75 74 61 62 6c 65 5f 76 61 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 | -exe.mutable_var.zig</kbd>.$.<kb |
| 12c00 | 64 3e 2e 2f 6d 75 74 61 62 6c 65 5f 76 61 72 3c 2f 6b 62 64 3e 0a 35 36 37 39 0a 3c 2f 73 61 6d | d>./mutable_var</kbd>.5679.</sam |
| 12c20 | 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 56 61 72 69 | p></pre></figure>........<p>Vari |
| 12c40 | 61 62 6c 65 73 20 6d 75 73 74 20 62 65 20 69 6e 69 74 69 61 6c 69 7a 65 64 3a 3c 2f 70 3e 0a 20 | ables.must.be.initialized:</p>.. |
| 12c60 | 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=" |
| 12c80 | 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 72 5f | zig-cap"><cite.class="file">var_ |
| 12ca0 | 6d 75 73 74 5f 62 65 5f 69 6e 69 74 69 61 6c 69 7a 65 64 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | must_be_initialized.zig</cite></ |
| 12cc0 | 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 |
| 12ce0 | 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 |
| 12d00 | 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 |
| 12d20 | 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 |
| 12d40 | 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>.{.... |
| 12d60 | 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> |
| 12d80 | 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | .x:.<span.class="tok-type">i32</ |
| 12da0 | 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>;......x.=.<span.class="tok |
| 12dc0 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | -number">1</span>;.}</code></pre |
| 12de0 | 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 |
| 12e00 | 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 |
| 12e20 | 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 |
| 12e40 | 65 20 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 69 67 3c 2f 6b | e.var_must_be_initialized.zig</k |
| 12e60 | 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 61 | bd>.<span.class="sgr-1m">/home/a |
| 12e80 | 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 76 61 72 5f 6d 75 73 74 | ndy/src/zig/doc/langref/var_must |
| 12ea0 | 5f 62 65 5f 69 6e 69 74 69 61 6c 69 7a 65 64 2e 7a 69 67 3a 32 3a 31 35 3a 20 3c 2f 73 70 61 6e | _be_initialized.zig:2:15:.</span |
| 12ec0 | 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:.</ |
| 12ee0 | 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 63 74 | span><span.class="sgr-1m">expect |
| 12f00 | 65 64 20 27 3d 27 2c 20 66 6f 75 6e 64 20 27 3b 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 76 61 72 | ed.'=',.found.';'.</span>....var |
| 12f20 | 20 78 3a 20 69 33 32 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 | .x:.i32;...............<span.cla |
| 12f40 | 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 2f | ss="sgr-32m">^.</span>.</samp></ |
| 12f60 | 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 75 6e 64 | pre></figure>........<h4.id="und |
| 12f80 | 65 66 69 6e 65 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 75 6e 64 65 66 69 6e 65 64 22 | efined"><a.href="#toc-undefined" |
| 12fa0 | 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | >undefined</a>.<a.class="hdr".hr |
| 12fc0 | 65 66 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 | ef="#undefined">..</a></h4>..... |
| 12fe0 | 20 20 20 3c 70 3e 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 | ...<p>Use.<code><span.class="tok |
| 13000 | 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 74 | -null">undefined</span></code>.t |
| 13020 | 6f 20 6c 65 61 76 65 20 76 61 72 69 61 62 6c 65 73 20 75 6e 69 6e 69 74 69 61 6c 69 7a 65 64 3a | o.leave.variables.uninitialized: |
| 13040 | 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 |
| 13060 | 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 |
| 13080 | 22 3e 61 73 73 69 67 6e 5f 75 6e 64 65 66 69 6e 65 64 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 | ">assign_undefined.zig</cite></f |
| 130a0 | 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 |
| 130c0 | 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.=.< |
| 130e0 | 73 70 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 |
| 13100 | 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 |
| 13120 | 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 |
| 13140 | 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 62 3c 2f 73 70 | t;..<span.class="tok-kw">pub</sp |
| 13160 | 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 |
| 13180 | 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 70 | n>.<span.class="tok-fn">main</sp |
| 131a0 | 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 |
| 131c0 | 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- |
| 131e0 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | kw">var</span>.x:.<span.class="t |
| 13200 | 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 |
| 13220 | 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>;.. |
| 13240 | 20 20 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 | ...x.=.<span.class="tok-number"> |
| 13260 | 31 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 3d | 1</span>;.....print(<span.class= |
| 13280 | 22 74 6f 6b 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 | "tok-str">"{d}"</span> |
| 132a0 | 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> |
| 132c0 | 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 |
| 132e0 | 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 |
| 13300 | 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 61 73 73 69 67 6e 5f 75 | mp>$.<kbd>zig.build-exe.assign_u |
| 13320 | 6e 64 65 66 69 6e 65 64 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 61 73 73 69 | ndefined.zig</kbd>.$.<kbd>./assi |
| 13340 | 67 6e 5f 75 6e 64 65 66 69 6e 65 64 3c 2f 6b 62 64 3e 0a 31 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 | gn_undefined</kbd>.1.</samp></pr |
| 13360 | 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 63 6f | e></figure>........<p>.......<co |
| 13380 | 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 69 | de><span.class="tok-null">undefi |
| 133a0 | 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 3c 61 20 68 72 65 66 | ned</span></code>.can.be.<a.href |
| 133c0 | 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 |
| 133e0 | 20 61 6e 79 20 74 79 70 65 2e 0a 20 20 20 20 20 20 20 20 20 20 4f 6e 63 65 20 74 68 69 73 20 68 | .any.type............Once.this.h |
| 13400 | 61 70 70 65 6e 73 2c 20 69 74 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 70 6f 73 73 69 62 6c 65 | appens,.it.is.no.longer.possible |
| 13420 | 20 74 6f 20 64 65 74 65 63 74 20 74 68 61 74 20 74 68 65 20 76 61 6c 75 65 20 69 73 20 3c 63 6f | .to.detect.that.the.value.is.<co |
| 13440 | 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 69 | de><span.class="tok-null">undefi |
| 13460 | 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 20 20 20 20 20 20 20 | ned</span></code>............... |
| 13480 | 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 75 6e | .<code><span.class="tok-null">un |
| 134a0 | 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6d 65 61 6e 73 20 74 68 65 20 | defined</span></code>.means.the. |
| 134c0 | 76 61 6c 75 65 20 63 6f 75 6c 64 20 62 65 20 61 6e 79 74 68 69 6e 67 2c 20 65 76 65 6e 20 73 6f | value.could.be.anything,.even.so |
| 134e0 | 6d 65 74 68 69 6e 67 20 74 68 61 74 20 69 73 20 6e 6f 6e 73 65 6e 73 65 0a 20 20 20 20 20 20 20 | mething.that.is.nonsense........ |
| 13500 | 20 20 20 20 20 20 20 20 20 20 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 74 68 65 20 74 79 70 65 | ...........according.to.the.type |
| 13520 | 2e 20 54 72 61 6e 73 6c 61 74 65 64 20 69 6e 74 6f 20 45 6e 67 6c 69 73 68 2c 20 3c 63 6f 64 65 | ..Translated.into.English,.<code |
| 13540 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 | ><span.class="tok-null">undefine |
| 13560 | 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6d 65 61 6e 73 20 22 4e 6f 74 20 61 20 6d 65 61 | d</span></code>.means."Not.a.mea |
| 13580 | 6e 69 6e 67 66 75 6c 0a 20 20 20 20 20 20 76 61 6c 75 65 2e 20 55 73 69 6e 67 20 74 68 69 73 20 | ningful.......value..Using.this. |
| 135a0 | 76 61 6c 75 65 20 77 6f 75 6c 64 20 62 65 20 61 20 62 75 67 2e 20 54 68 65 20 76 61 6c 75 65 20 | value.would.be.a.bug..The.value. |
| 135c0 | 77 69 6c 6c 20 62 65 20 75 6e 75 73 65 64 2c 20 6f 72 20 6f 76 65 72 77 72 69 74 74 65 6e 20 62 | will.be.unused,.or.overwritten.b |
| 135e0 | 65 66 6f 72 65 20 62 65 69 6e 67 20 75 73 65 64 2e 22 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | efore.being.used.".......</p>... |
| 13600 | 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 65 62 75 67 | ....<p>.......In.<a.href="#Debug |
| 13620 | 22 3e 44 65 62 75 67 3c 2f 61 3e 20 6d 6f 64 65 2c 20 5a 69 67 20 77 72 69 74 65 73 20 3c 63 6f | ">Debug</a>.mode,.Zig.writes.<co |
| 13640 | 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 30 78 61 61 | de><span.class="tok-number">0xaa |
| 13660 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 79 74 65 73 20 74 6f 20 75 6e 64 65 66 69 6e 65 | </span></code>.bytes.to.undefine |
| 13680 | 64 20 6d 65 6d 6f 72 79 2e 20 54 68 69 73 20 69 73 20 74 6f 20 63 61 74 63 68 0a 20 20 20 20 20 | d.memory..This.is.to.catch...... |
| 136a0 | 20 62 75 67 73 20 65 61 72 6c 79 2c 20 61 6e 64 20 74 6f 20 68 65 6c 70 20 64 65 74 65 63 74 20 | .bugs.early,.and.to.help.detect. |
| 136c0 | 75 73 65 20 6f 66 20 75 6e 64 65 66 69 6e 65 64 20 6d 65 6d 6f 72 79 20 69 6e 20 61 20 64 65 62 | use.of.undefined.memory.in.a.deb |
| 136e0 | 75 67 67 65 72 2e 20 48 6f 77 65 76 65 72 2c 20 74 68 69 73 20 62 65 68 61 76 69 6f 72 20 69 73 | ugger..However,.this.behavior.is |
| 13700 | 20 6f 6e 6c 79 20 61 6e 0a 20 20 20 20 20 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 66 65 | .only.an.......implementation.fe |
| 13720 | 61 74 75 72 65 2c 20 6e 6f 74 20 61 20 6c 61 6e 67 75 61 67 65 20 73 65 6d 61 6e 74 69 63 2c 20 | ature,.not.a.language.semantic,. |
| 13740 | 73 6f 20 69 74 20 69 73 20 6e 6f 74 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 6f 62 | so.it.is.not.guaranteed.to.be.ob |
| 13760 | 73 65 72 76 61 62 6c 65 20 74 6f 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | servable.to.code........</p>.... |
| 13780 | 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 3d 22 | ........................<h2.id=" |
| 137a0 | 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 54 65 73 74 | Zig-Test"><a.href="#toc-Zig-Test |
| 137c0 | 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 22 20 68 72 | ">Zig.Test</a>.<a.class="hdr".hr |
| 137e0 | 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 20 20 20 20 | ef="#Zig-Test">..</a></h2>...... |
| 13800 | 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 69 74 68 69 | ..<p>.........Code.written.withi |
| 13820 | 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 61 73 73 3d | n.one.or.more.<code><span.class= |
| 13840 | 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 64 65 63 6c | "tok-kw">test</span></code>.decl |
| 13860 | 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 72 65 20 62 | arations.can.be.used.to.ensure.b |
| 13880 | 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 20 20 20 20 | ehavior.meets.expectations:..... |
| 138a0 | 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 |
| 138c0 | 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 |
| 138e0 | 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 3c 2f 63 69 | le">testing_introduction.zig</ci |
| 13900 | 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 |
| 13920 | 20 63 6c 61 73 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 |
| 13940 | 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 |
| 13960 | 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 |
| 13980 | 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 | ">"std"</span>);..<spa |
| 139a0 | 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 |
| 139c0 | 61 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 65 63 74 20 | an.class="tok-str">"expect. |
| 139e0 | 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 2f 73 70 61 | addOne.adds.one.to.41"</spa |
| 13a00 | 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 6f 6d 6d 65 | n>.{......<span.class="tok-comme |
| 13a20 | 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 63 6f 6e 74 | nt">//.The.Standard.Library.cont |
| 13a40 | 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 70 20 63 72 | ains.useful.functions.to.help.cr |
| 13a60 | 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 20 63 6c 61 | eate.tests.</span>.....<span.cla |
| 13a80 | 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 20 69 73 20 | ss="tok-comment">//.`expect`.is. |
| 13aa0 | 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 20 61 72 67 | a.function.that.verifies.its.arg |
| 13ac0 | 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 70 61 6e 20 | ument.is.true.</span>.....<span. |
| 13ae0 | 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 6c 6c 20 72 | class="tok-comment">//.It.will.r |
| 13b00 | 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 6e 74 20 69 | eturn.an.error.if.its.argument.i |
| 13b20 | 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 65 2e 3c 2f | s.false.to.indicate.a.failure.</ |
| 13b40 | 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 |
| 13b60 | 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 72 6e 20 61 | nt">//.`try`.is.used.to.return.a |
| 13b80 | 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 6f 20 6e 6f | n.error.to.the.test.runner.to.no |
| 13ba0 | 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 2e 3c 2f 73 | tify.it.that.the.test.failed.</s |
| 13bc0 | 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 |
| 13be0 | 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 61 64 64 4f | y</span>.std.testing.expect(addO |
| 13c00 | 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 34 31 3c 2f | ne(<span.class="tok-number">41</ |
| 13c20 | 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | span>).==.<span.class="tok-numbe |
| 13c40 | 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 73 3d 22 74 | r">42</span>);.}..<span.class="t |
| 13c60 | 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 20 20 20 20 | ok-kw">test</span>.addOne.{..... |
| 13c80 | 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 74 | <span.class="tok-comment">//.A.t |
| 13ca0 | 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 20 75 73 69 | est.name.can.also.be.written.usi |
| 13cc0 | 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 20 3c 73 70 | ng.an.identifier.</span>.....<sp |
| 13ce0 | 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 69 | an.class="tok-comment">//.This.i |
| 13d00 | 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 6f 63 75 6d | s.a.doctest,.and.serves.as.docum |
| 13d20 | 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 3e 0a 20 20 | entation.for.`addOne`.</span>... |
| 13d40 | 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 |
| 13d60 | 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 3c 73 70 61 | >.std.testing.expect(addOne(<spa |
| 13d80 | 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 6e 3e 29 20 | n.class="tok-number">41</span>). |
| 13da0 | 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f | ==.<span.class="tok-number">42</ |
| 13dc0 | 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 |
| 13de0 | 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 65 60 20 61 | ent">///.The.function.`addOne`.a |
| 13e00 | 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 61 73 20 69 | dds.one.to.the.number.given.as.i |
| 13e20 | 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 61 73 73 3d | ts.argument.</span>.<span.class= |
| 13e40 | 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=" |
| 13e60 | 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 3a 20 3c 73 | tok-fn">addOne</span>(number:.<s |
| 13e80 | 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>) |
| 13ea0 | 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 |
| 13ec0 | 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 |
| 13ee0 | 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 6c 61 73 73 | turn</span>.number.+.<span.class |
| 13f00 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e | ="tok-number">1</span>;.}</code> |
| 13f20 | 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 |
| 13f40 | 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 |
| 13f60 | 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 |
| 13f80 | 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 6b 62 64 3e | t.testing_introduction.zig</kbd> |
| 13fa0 | 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 73 74 2e 65 | .1/2.testing_introduction.test.e |
| 13fc0 | 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 2e 2e 4f 4b | xpect.addOne.adds.one.to.41...OK |
| 13fe0 | 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 63 6c 74 65 | .2/2.testing_introduction.declte |
| 14000 | 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 61 73 73 65 | st.addOne...OK.All.2.tests.passe |
| 14020 | 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>....... |
| 14040 | 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 3d 22 66 69 | .<p>.........The.<code.class="fi |
| 14060 | 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 3c 2f 63 6f | le">testing_introduction.zig</co |
| 14080 | 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 20 68 72 65 | de>.code.sample.tests.the.<a.hre |
| 140a0 | 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 20 20 20 20 | f="#Functions">function</a>..... |
| 140c0 | 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 6e 73 75 72 | ....<code>addOne</code>.to.ensur |
| 140e0 | 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 6e 20 63 6c | e.that.it.returns.<code><span.cl |
| 14100 | 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 63 6f 64 65 | ass="tok-number">42</span></code |
| 14120 | 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 6f 64 65 3e | >.given.the.input.........<code> |
| 14140 | 3c 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 |
| 14160 | 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 70 65 72 73 | n></code>..From.this.test's.pers |
| 14180 | 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 6f 64 65 3e | pective,.the.<code>addOne</code> |
| 141a0 | 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 20 62 65 20 | .function.is.........said.to.be. |
| 141c0 | 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 20 20 20 20 | <em>code.under.test</em>........ |
| 141e0 | 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 7a 69 67 20 | </p>.......<p>.........<kbd>zig. |
| 14200 | 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 65 61 74 65 | test</kbd>.is.a.tool.that.create |
| 14220 | 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 64 65 66 61 | s.and.runs.a.test.build..By.defa |
| 14240 | 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 20 20 20 20 | ult,.it.builds.and.runs.an...... |
| 14260 | 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 74 68 65 20 | ...executable.program.using.the. |
| 14280 | 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 20 70 72 6f | <em>default.test.runner</em>.pro |
| 142a0 | 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 74 61 6e 64 | vided.by.the.<a.href="#Zig-Stand |
| 142c0 | 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 61 72 | ard-Library">Zig.Standard.Librar |
| 142e0 | 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 74 72 79 20 | y</a>.........as.its.main.entry. |
| 14300 | 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 64 65 3e 3c | point..During.the.build,.<code>< |
| 14320 | 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>< |
| 14340 | 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 69 6c 65 0a | /code>.declarations.found.while. |
| 14360 | 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 52 6f 6f 74 2d 53 6f 75 72 63 65 2d 46 69 | ........<a.href="#Root-Source-Fi |
| 14380 | 6c 65 22 3e 72 65 73 6f 6c 76 69 6e 67 3c 2f 61 3e 20 74 68 65 20 67 69 76 65 6e 20 5a 69 67 20 | le">resolving</a>.the.given.Zig. |
| 143a0 | 73 6f 75 72 63 65 20 66 69 6c 65 20 61 72 65 20 69 6e 63 6c 75 64 65 64 20 66 6f 72 20 74 68 65 | source.file.are.included.for.the |
| 143c0 | 20 64 65 66 61 75 6c 74 20 74 65 73 74 20 72 75 6e 6e 65 72 0a 20 20 20 20 20 20 20 20 74 6f 20 | .default.test.runner.........to. |
| 143e0 | 72 75 6e 20 61 6e 64 20 72 65 70 6f 72 74 20 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | run.and.report.on........</p>... |
| 14400 | 20 20 20 20 3c 61 73 69 64 65 3e 0a 20 20 20 20 20 20 20 20 54 68 69 73 20 64 6f 63 75 6d 65 6e | ....<aside>.........This.documen |
| 14420 | 74 61 74 69 6f 6e 20 64 69 73 63 75 73 73 65 73 20 74 68 65 20 66 65 61 74 75 72 65 73 20 6f 66 | tation.discusses.the.features.of |
| 14440 | 20 74 68 65 20 64 65 66 61 75 6c 74 20 74 65 73 74 20 72 75 6e 6e 65 72 20 61 73 20 70 72 6f 76 | .the.default.test.runner.as.prov |
| 14460 | 69 64 65 64 20 62 79 20 74 68 65 20 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 | ided.by.the.Zig.Standard.Library |
| 14480 | 2e 0a 20 20 20 20 20 20 20 20 49 74 73 20 73 6f 75 72 63 65 20 63 6f 64 65 20 69 73 20 6c 6f 63 | ..........Its.source.code.is.loc |
| 144a0 | 61 74 65 64 20 69 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6c 69 62 2f 74 | ated.in.<code.class="file">lib/t |
| 144c0 | 65 73 74 5f 72 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 | est_runner.zig</code>........</a |
| 144e0 | 73 69 64 65 3e 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 | side>.......<p>.........The.shel |
| 14500 | 6c 20 6f 75 74 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 | l.output.shown.above.displays.tw |
| 14520 | 6f 20 6c 69 6e 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 | o.lines.after.the.<kbd>zig.test< |
| 14540 | 2f 6b 62 64 3e 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 | /kbd>.command..These.lines.are.. |
| 14560 | 20 20 20 20 20 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 | .......printed.to.standard.error |
| 14580 | 20 62 79 20 74 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 | .by.the.default.test.runner:.... |
| 145a0 | 20 20 20 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 | ...</p>.......<dl>.........<dt>< |
| 145c0 | 73 61 6d 70 3e 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 | samp>1/2.testing_introduction.te |
| 145e0 | 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. |
| 14600 | 2e 2e 3c 2f 73 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 | ..</samp></dt>.........<dd>Lines |
| 14620 | 20 6c 69 6b 65 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 | .like.this.indicate.which.test,. |
| 14640 | 6f 75 74 20 6f 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 | out.of.the.total.number.of.tests |
| 14660 | 2c 20 69 73 20 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 | ,.is.being.run............In.thi |
| 14680 | 73 20 63 61 73 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 | s.case,.<samp>1/2</samp>.indicat |
| 146a0 | 65 73 20 74 68 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 | es.that.the.first.test,.out.of.a |
| 146c0 | 20 74 6f 74 61 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 | .total.of.two.tests,...........i |
| 146e0 | 73 20 62 65 69 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 | s.being.run..Note.that,.when.the |
| 14700 | 20 74 65 73 74 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 | .test.runner.program's.standard. |
| 14720 | 65 72 72 6f 72 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 | error.is.output...........to.the |
| 14740 | 20 74 65 72 6d 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 | .terminal,.these.lines.are.clear |
| 14760 | 65 64 20 77 68 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 | ed.when.a.test.succeeds......... |
| 14780 | 20 3c 2f 64 64 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 | .</dd>.........<dt><samp>2/2.tes |
| 147a0 | 74 69 6e 67 5f 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 | ting_introduction.decltest.addOn |
| 147c0 | 65 2e 2e 2e 3c 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 | e...</samp></dt>.........<dd>Whe |
| 147e0 | 6e 20 74 68 65 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 | n.the.test.name.is.an.identifier |
| 14800 | 2c 20 74 68 65 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 | ,.the.default.test.runner.uses.t |
| 14820 | 68 65 20 74 65 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 | he.text...........decltest.inste |
| 14840 | 61 64 20 6f 66 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 | ad.of.test..........</dd>....... |
| 14860 | 20 20 3c 64 74 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 | ..<dt><samp>All.2.tests.passed.< |
| 14880 | 2f 73 61 6d 70 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 | /samp></dt>.........<dd>This.lin |
| 148a0 | 65 20 69 6e 64 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 | e.indicates.the.total.number.of. |
| 148c0 | 74 65 73 74 73 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 | tests.that.have.passed.</dd>.... |
| 148e0 | 20 20 20 3c 2f 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 | ...</dl>.......<h3.id="Test-Decl |
| 14900 | 61 72 61 74 69 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 | arations"><a.href="#toc-Test-Dec |
| 14920 | 6c 61 72 61 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 | larations">Test.Declarations</a> |
| 14940 | 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 44 65 63 6c | .<a.class="hdr".href="#Test-Decl |
| 14960 | 61 72 61 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | arations">..</a></h3>........<p> |
| 14980 | 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 6f 6e 74 61 | .........Test.declarations.conta |
| 149a0 | 69 6e 20 74 68 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 | in.the.<a.href="#Keyword-Referen |
| 149c0 | 63 65 22 3e 6b 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 | ce">keyword</a>.<code><span.clas |
| 149e0 | 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 2c 20 66 | s="tok-kw">test</span></code>,.f |
| 14a00 | 6f 6c 6c 6f 77 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 | ollowed.by.an.........optional.n |
| 14a20 | 61 6d 65 20 77 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 | ame.written.as.a.<a.href="#Strin |
| 14a40 | 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 69 6e | g-Literals-and-Unicode-Code-Poin |
| 14a60 | 74 2d 4c 69 74 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 | t-Literals">string.literal</a>.o |
| 14a80 | 72 20 61 6e 0a 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 | r.an.........<a.href="#Identifie |
| 14aa0 | 72 73 22 3e 69 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 | rs">identifier</a>,.followed.by. |
| 14ac0 | 61 20 3c 61 20 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 | a.<a.href="#Blocks">block</a>.co |
| 14ae0 | 6e 74 61 69 6e 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 | ntaining.any.valid.Zig.code.that |
| 14b00 | 0a 20 20 20 20 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 | .........is.allowed.in.a.<a.href |
| 14b20 | 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 2e 0a 20 20 20 20 | ="#Functions">function</a>...... |
| 14b40 | 20 20 3c 2f 70 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 | ..</p>.......<p>Non-named.test.b |
| 14b60 | 6c 6f 63 6b 73 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 | locks.always.run.during.test.bui |
| 14b80 | 6c 64 73 20 61 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 | lds.and.are.exempt.from......... |
| 14ba0 | 3c 61 20 68 72 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 | <a.href="#Skip-Tests">Skip.Tests |
| 14bc0 | 3c 2f 61 3e 2e 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 | </a>.</p>.......<p>.........Test |
| 14be0 | 20 64 65 63 6c 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 | .declarations.are.similar.to.<a. |
| 14c00 | 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 3a | href="#Functions">Functions</a>: |
| 14c20 | 20 74 68 65 79 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 | .they.have.a.return.type.and.a.b |
| 14c40 | 6c 6f 63 6b 20 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 | lock.of.code..The.implicit...... |
| 14c60 | 20 20 20 72 65 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 | ...return.type.of.<code><span.cl |
| 14c80 | 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>. |
| 14ca0 | 69 73 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 2d 54 79 70 | is.the.<a.href="#Error-Union-Typ |
| 14cc0 | 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 20 3c 63 6f 64 65 3e 3c 73 | e">Error.Union.Type</a>.<code><s |
| 14ce0 | 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 |
| 14d00 | 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 76 6f 69 64 | pan>!<span.class="tok-type">void |
| 14d20 | 3c 2f 73 70 61 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 | </span></code>,.........and.it.c |
| 14d40 | 61 6e 6e 6f 74 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 | annot.be.changed..When.a.Zig.sou |
| 14d60 | 72 63 65 20 66 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 | rce.file.is.not.built.using.the. |
| 14d80 | 3c 6b 62 64 3e 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 | <kbd>zig.test</kbd>.tool,.the.te |
| 14da0 | 73 74 0a 20 20 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 | st.........declarations.are.omit |
| 14dc0 | 74 65 64 20 66 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 | ted.from.the.build........</p>.. |
| 14de0 | 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 61 72 61 74 69 6f | .....<p>.........Test.declaratio |
| 14e00 | 6e 73 20 63 61 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 | ns.can.be.written.in.the.same.fi |
| 14e20 | 6c 65 2c 20 77 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 | le,.where.code.under.test.is.wri |
| 14e40 | 74 74 65 6e 2c 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 | tten,.or.in.a.separate.Zig.sourc |
| 14e60 | 65 20 66 69 6c 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 | e.file..........Since.test.decla |
| 14e80 | 72 61 74 69 6f 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 | rations.are.top-level.declaratio |
| 14ea0 | 6e 73 2c 20 74 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 | ns,.they.are.order-independent.a |
| 14ec0 | 6e 64 20 63 61 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 | nd.can.........be.written.before |
| 14ee0 | 20 6f 72 20 61 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 | .or.after.the.code.under.test... |
| 14f00 | 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> |
| 14f20 | 3c 75 6c 3e 0a 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 | <ul>.<li><a.href="#The-Global-Er |
| 14f40 | 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 |
| 14f60 | 3e 3c 2f 6c 69 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 | ></li>.<li><a.href="#Grammar">Gr |
| 14f80 | 61 6d 6d 61 72 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 | ammar</a></li>.</ul>........<h4. |
| 14fa0 | 69 64 3d 22 44 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 | id="Doctests"><a.href="#toc-Doct |
| 14fc0 | 65 73 74 73 22 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 | ests">Doctests</a>.<a.class="hdr |
| 14fe0 | 22 20 68 72 65 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 | ".href="#Doctests">..</a></h4>.. |
| 15000 | 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 61 72 61 74 69 | ......<p>.........Test.declarati |
| 15020 | 6f 6e 73 20 6e 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 | ons.named.using.an.identifier.ar |
| 15040 | 65 20 3c 65 6d 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 | e.<em>doctests</em>..The.identif |
| 15060 | 69 65 72 20 6d 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 | ier.must.refer.to.another.declar |
| 15080 | 61 74 69 6f 6e 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 | ation.in.........scope..A.doctes |
| 150a0 | 74 2c 20 6c 69 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 | t,.like.a.<a.href="#Doc-Comments |
| 150c0 | 22 3e 64 6f 63 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 | ">doc.comment</a>,.serves.as.doc |
| 150e0 | 75 6d 65 6e 74 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 | umentation.for.the.associated.de |
| 15100 | 63 6c 61 72 61 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 | claration,.and.........will.appe |
| 15120 | 61 72 20 69 6e 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 | ar.in.the.generated.documentatio |
| 15140 | 6e 20 66 6f 72 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 | n.for.the.declaration........</p |
| 15160 | 3e 0a 20 20 20 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 | >.......<p>.........An.effective |
| 15180 | 20 64 6f 63 74 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 | .doctest.should.be.self-containe |
| 151a0 | 64 20 61 6e 64 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 | d.and.focused.on.the.declaration |
| 151c0 | 20 62 65 69 6e 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 | .being.tested,.answering.questio |
| 151e0 | 6e 73 20 61 20 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 | ns.a.new.........user.might.have |
| 15200 | 20 61 62 6f 75 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 | .about.its.interface.or.intended |
| 15220 | 20 75 73 61 67 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 | .usage,.while.avoiding.unnecessa |
| 15240 | 72 79 20 6f 72 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 | ry.or.confusing.details..A.docte |
| 15260 | 73 74 20 69 73 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 | st.is.not.........a.substitute.f |
| 15280 | 6f 72 20 61 20 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 | or.a.doc.comment,.but.rather.a.s |
| 152a0 | 75 70 70 6c 65 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 | upplement.and.companion.providin |
| 152c0 | 67 20 61 20 74 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 | g.a.testable,.code-driven.exampl |
| 152e0 | 65 2c 20 76 65 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 | e,.verified.........by.<kbd>zig. |
| 15300 | 74 65 73 74 3c 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 | test</kbd>........</p>.......... |
| 15320 | 20 20 20 20 0a 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 | ...........<h3.id="Test-Failure" |
| 15340 | 3e 3c 61 20 68 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 | ><a.href="#toc-Test-Failure">Tes |
| 15360 | 74 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 22 20 68 72 65 | t.Failure</a>.<a.class="hdr".hre |
| 15380 | 66 3d 22 23 54 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 | f="#Test-Failure">..</a></h3>... |
| 153a0 | 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 73 | .....<p>.........The.default.tes |
| 153c0 | 74 20 72 75 6e 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 | t.runner.checks.for.an.<a.href=" |
| 153e0 | 23 45 72 72 6f 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 | #Errors">error</a>.returned.from |
| 15400 | 20 61 20 74 65 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 | .a.test..........When.a.test.ret |
| 15420 | 75 72 6e 73 20 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 | urns.an.error,.the.test.is.consi |
| 15440 | 64 65 72 65 64 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 | dered.a.failure.and.its.<a.href= |
| 15460 | 22 23 45 72 72 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 | "#Error-Return-Traces">error.ret |
| 15480 | 75 72 6e 20 74 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 | urn.trace</a>.........is.output. |
| 154a0 | 74 6f 20 73 74 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 | to.standard.error..The.total.num |
| 154c0 | 62 65 72 20 6f 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 | ber.of.failures.will.be.reported |
| 154e0 | 20 61 66 74 65 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 | .after.all.tests.have.run....... |
| 15500 | 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. |
| 15520 | 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 |
| 15540 | 65 22 3e 74 65 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 | e">testing_failure.zig</cite></f |
| 15560 | 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 |
| 15580 | 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 |
| 155a0 | 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</ |
| 155c0 | 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 |
| 155e0 | 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | t;std"</span>);..<span.clas |
| 15600 | 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 |
| 15620 | 73 73 3d 22 74 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 | ss="tok-str">"expect.this.t |
| 15640 | 6f 20 66 61 69 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 | o.fail"</span>.{.....<span. |
| 15660 | 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 74 65 | class="tok-kw">try</span>.std.te |
| 15680 | 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 6e 75 | sting.expect(<span.class="tok-nu |
| 156a0 | 6c 6c 22 3e 66 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 | ll">false</span>);.}..<span.clas |
| 156c0 | 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 |
| 156e0 | 73 73 3d 22 74 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 | ss="tok-str">"expect.this.t |
| 15700 | 6f 20 73 75 63 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 | o.succeed"</span>.{.....<sp |
| 15720 | 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 |
| 15740 | 2e 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 | .testing.expect(<span.class="tok |
| 15760 | 2d 6e 75 6c 6c 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 | -null">true</span>);.}</code></p |
| 15780 | 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. |
| 157a0 | 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 |
| 157c0 | 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 |
| 157e0 | 65 73 74 69 6e 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 | esting_failure.zig</kbd>.1/2.tes |
| 15800 | 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 74 68 69 73 20 74 6f | ting_failure.test.expect.this.to |
| 15820 | 20 66 61 69 6c 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 | .fail...FAIL.(TestUnexpectedResu |
| 15840 | 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 2f 68 6f 6d 65 2f 61 | lt).<span.class="sgr-1m">/home/a |
| 15860 | 6e 64 79 2f 73 72 63 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 | ndy/src/zig/lib/std/testing.zig: |
| 15880 | 35 34 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 2d | 540:14</span>:.<span.class="sgr- |
| 158a0 | 32 6d 22 3e 30 78 31 30 33 63 65 33 66 20 69 6e 20 65 78 70 65 63 74 20 28 74 65 73 74 29 3c 2f | 2m">0x103ce3f.in.expect.(test)</ |
| 158c0 | 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 20 65 72 72 6f 72 2e | span>.....if.(!ok).return.error. |
| 158e0 | 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 20 20 20 20 20 20 20 | TestUnexpectedResult;........... |
| 15900 | 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 |
| 15920 | 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 |
| 15940 | 79 2f 73 72 63 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 | y/src/zig/doc/langref/testing_fa |
| 15960 | 69 6c 75 72 65 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 | ilure.zig:4:5</span>:.<span.clas |
| 15980 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 63 66 35 35 20 69 6e 20 74 65 73 74 2e 65 78 70 | s="sgr-2m">0x103cf55.in.test.exp |
| 159a0 | 65 63 74 20 74 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 | ect.this.to.fail.(test)</span>.. |
| 159c0 | 20 20 20 74 72 79 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 28 66 61 6c 73 65 29 | ...try.std.testing.expect(false) |
| 159e0 | 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 5e 3c 2f 73 | ;.....<span.class="sgr-32m">^</s |
| 15a00 | 70 61 6e 3e 0a 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 | pan>.2/2.testing_failure.test.ex |
| 15a20 | 70 65 63 74 20 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 | pect.this.to.succeed...OK.1.pass |
| 15a40 | 65 64 3b 20 30 20 73 6b 69 70 70 65 64 3b 20 31 20 66 61 69 6c 65 64 2e 0a 65 72 72 6f 72 3a 20 | ed;.0.skipped;.1.failed..error:. |
| 15a60 | 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 65 73 74 20 63 6f 6d 6d 61 6e 64 20 66 61 69 6c 65 | the.following.test.command.faile |
| 15a80 | 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 2f 73 | d.with.exit.code.1:./home/andy/s |
| 15aa0 | 72 63 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 30 35 34 66 30 62 36 66 30 38 38 38 | rc/zig/.zig-cache/o/054f0b6f0888 |
| 15ac0 | 32 34 66 33 38 34 64 31 62 36 63 36 34 38 35 32 33 35 39 33 2f 74 65 73 74 0a 3c 2f 73 61 6d 70 | 24f384d1b6c648523593/test.</samp |
| 15ae0 | 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>...............< |
| 15b00 | 68 33 20 69 64 3d 22 53 6b 69 70 2d 54 65 73 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | h3.id="Skip-Tests"><a.href="#toc |
| 15b20 | 2d 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 20 3c 61 20 63 | -Skip-Tests">Skip.Tests</a>.<a.c |
| 15b40 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 6b 69 70 2d 54 65 73 74 73 22 3e c2 a7 | lass="hdr".href="#Skip-Tests">.. |
| 15b60 | 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 4f 6e 65 | </a></h3>........<p>.........One |
| 15b80 | 20 77 61 79 20 74 6f 20 73 6b 69 70 20 74 65 73 74 73 20 69 73 20 74 6f 20 66 69 6c 74 65 72 20 | .way.to.skip.tests.is.to.filter. |
| 15ba0 | 74 68 65 6d 20 6f 75 74 20 62 79 20 75 73 69 6e 67 20 74 68 65 20 3c 6b 62 64 3e 7a 69 67 20 74 | them.out.by.using.the.<kbd>zig.t |
| 15bc0 | 65 73 74 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 72 | est</kbd>.command.line.parameter |
| 15be0 | 0a 20 20 20 20 20 20 20 20 3c 6b 62 64 3e 2d 2d 74 65 73 74 2d 66 69 6c 74 65 72 20 5b 74 65 78 | .........<kbd>--test-filter.[tex |
| 15c00 | 74 5d 3c 2f 6b 62 64 3e 2e 20 54 68 69 73 20 6d 61 6b 65 73 20 74 68 65 20 74 65 73 74 20 62 75 | t]</kbd>..This.makes.the.test.bu |
| 15c20 | 69 6c 64 20 6f 6e 6c 79 20 69 6e 63 6c 75 64 65 20 74 65 73 74 73 20 77 68 6f 73 65 20 6e 61 6d | ild.only.include.tests.whose.nam |
| 15c40 | 65 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 0a 20 20 20 20 20 20 20 20 73 75 70 70 6c 69 65 64 20 | e.contains.the.........supplied. |
| 15c60 | 66 69 6c 74 65 72 20 74 65 78 74 2e 20 4e 6f 74 65 20 74 68 61 74 20 6e 6f 6e 2d 6e 61 6d 65 64 | filter.text..Note.that.non-named |
| 15c80 | 20 74 65 73 74 73 20 61 72 65 20 72 75 6e 20 65 76 65 6e 20 77 68 65 6e 20 75 73 69 6e 67 20 74 | .tests.are.run.even.when.using.t |
| 15ca0 | 68 65 20 3c 6b 62 64 3e 2d 2d 74 65 73 74 2d 66 69 6c 74 65 72 20 5b 74 65 78 74 5d 3c 2f 6b 62 | he.<kbd>--test-filter.[text]</kb |
| 15cc0 | 64 3e 0a 20 20 20 20 20 20 20 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 70 61 72 61 6d 65 74 65 | d>.........command.line.paramete |
| 15ce0 | 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 20 20 | r........</p>.......<p>......... |
| 15d00 | 54 6f 20 70 72 6f 67 72 61 6d 6d 61 74 69 63 61 6c 6c 79 20 73 6b 69 70 20 61 20 74 65 73 74 2c | To.programmatically.skip.a.test, |
| 15d20 | 20 6d 61 6b 65 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 | .make.a.<code><span.class="tok-k |
| 15d40 | 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 74 75 72 6e 20 74 68 65 | w">test</span></code>.return.the |
| 15d60 | 20 65 72 72 6f 72 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 | .error.........<code><span.class |
| 15d80 | 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 69 70 5a 69 67 54 65 | ="tok-kw">error</span>.SkipZigTe |
| 15da0 | 73 74 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 74 68 65 20 64 65 66 61 75 6c 74 20 74 65 73 74 20 72 | st</code>.and.the.default.test.r |
| 15dc0 | 75 6e 6e 65 72 20 77 69 6c 6c 20 63 6f 6e 73 69 64 65 72 20 74 68 65 20 74 65 73 74 20 61 73 20 | unner.will.consider.the.test.as. |
| 15de0 | 62 65 69 6e 67 20 73 6b 69 70 70 65 64 2e 0a 20 20 20 20 20 20 20 20 54 68 65 20 74 6f 74 61 6c | being.skipped..........The.total |
| 15e00 | 20 6e 75 6d 62 65 72 20 6f 66 20 73 6b 69 70 70 65 64 20 74 65 73 74 73 20 77 69 6c 6c 20 62 65 | .number.of.skipped.tests.will.be |
| 15e20 | 20 72 65 70 6f 72 74 65 64 20 61 66 74 65 72 20 61 6c 6c 20 74 65 73 74 73 20 68 61 76 65 20 72 | .reported.after.all.tests.have.r |
| 15e40 | 75 6e 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 | un........</p>.......<figure><fi |
| 15e60 | 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 |
| 15e80 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 69 6e 67 5f 73 6b 69 70 2e 7a 69 67 3c 2f 63 69 | lass="file">testing_skip.zig</ci |
| 15ea0 | 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 |
| 15ec0 | 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 |
| 15ee0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 69 73 20 77 69 6c | n.class="tok-str">"this.wil |
| 15f00 | 6c 20 62 65 20 73 6b 69 70 70 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | l.be.skipped"</span>.{..... |
| 15f20 | 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 |
| 15f40 | 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 2f 73 | n>.<span.class="tok-kw">error</s |
| 15f60 | 70 61 6e 3e 2e 53 6b 69 70 5a 69 67 54 65 73 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | pan>.SkipZigTest;.}</code></pre> |
| 15f80 | 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 |
| 15fa0 | 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 |
| 15fc0 | 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 |
| 15fe0 | 69 6e 67 5f 73 6b 69 70 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 69 6e 67 5f 73 | ing_skip.zig</kbd>.1/1.testing_s |
| 16000 | 6b 69 70 2e 74 65 73 74 2e 74 68 69 73 20 77 69 6c 6c 20 62 65 20 73 6b 69 70 70 65 64 2e 2e 2e | kip.test.this.will.be.skipped... |
| 16020 | 53 4b 49 50 0a 30 20 70 61 73 73 65 64 3b 20 31 20 73 6b 69 70 70 65 64 3b 20 30 20 66 61 69 6c | SKIP.0.passed;.1.skipped;.0.fail |
| 16040 | 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>...... |
| 16060 | 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 52 65 70 6f 72 74 2d 4d 65 6d 6f 72 79 2d | ..........<h3.id="Report-Memory- |
| 16080 | 4c 65 61 6b 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 70 6f 72 74 2d 4d 65 6d 6f | Leaks"><a.href="#toc-Report-Memo |
| 160a0 | 72 79 2d 4c 65 61 6b 73 22 3e 52 65 70 6f 72 74 20 4d 65 6d 6f 72 79 20 4c 65 61 6b 73 3c 2f 61 | ry-Leaks">Report.Memory.Leaks</a |
| 160c0 | 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 70 6f 72 74 2d 4d | >.<a.class="hdr".href="#Report-M |
| 160e0 | 65 6d 6f 72 79 2d 4c 65 61 6b 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | emory-Leaks">..</a></h3>........ |
| 16100 | 3c 70 3e 0a 20 20 20 20 20 20 20 20 57 68 65 6e 20 63 6f 64 65 20 61 6c 6c 6f 63 61 74 65 73 20 | <p>.........When.code.allocates. |
| 16120 | 3c 61 20 68 72 65 66 3d 22 23 4d 65 6d 6f 72 79 22 3e 4d 65 6d 6f 72 79 3c 2f 61 3e 20 75 73 69 | <a.href="#Memory">Memory</a>.usi |
| 16140 | 6e 67 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 53 74 61 6e 64 61 72 64 2d 4c 69 | ng.the.<a.href="#Zig-Standard-Li |
| 16160 | 62 72 61 72 79 22 3e 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 3c 2f 61 3e 27 | brary">Zig.Standard.Library</a>' |
| 16180 | 73 20 74 65 73 74 69 6e 67 20 61 6c 6c 6f 63 61 74 6f 72 2c 0a 20 20 20 20 20 20 20 20 3c 63 6f | s.testing.allocator,.........<co |
| 161a0 | 64 65 3e 73 74 64 2e 74 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 2c | de>std.testing.allocator</code>, |
| 161c0 | 20 74 68 65 20 64 65 66 61 75 6c 74 20 74 65 73 74 20 72 75 6e 6e 65 72 20 77 69 6c 6c 20 72 65 | .the.default.test.runner.will.re |
| 161e0 | 70 6f 72 74 20 61 6e 79 20 6c 65 61 6b 73 20 74 68 61 74 20 61 72 65 0a 20 20 20 20 20 20 20 20 | port.any.leaks.that.are......... |
| 16200 | 66 6f 75 6e 64 20 66 72 6f 6d 20 75 73 69 6e 67 20 74 68 65 20 74 65 73 74 69 6e 67 20 61 6c 6c | found.from.using.the.testing.all |
| 16220 | 6f 63 61 74 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 | ocator:.......</p>.......<figure |
| 16240 | 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 |
| 16260 | 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 65 74 65 63 74 5f 6c | te.class="file">testing_detect_l |
| 16280 | 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 6e 3e 3c 70 72 65 3e | eak.zig</cite></figcaption><pre> |
| 162a0 | 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 |
| 162c0 | 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 |
| 162e0 | 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 |
| 16300 | 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 |
| 16320 | 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 |
| 16340 | 3c 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 |
| 16360 | 75 6f 74 3b 64 65 74 65 63 74 20 6c 65 61 6b 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | uot;detect.leak"</span>.{.. |
| 16380 | 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 |
| 163a0 | 6e 3e 20 6c 69 73 74 20 3d 20 73 74 64 2e 41 72 72 61 79 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c | n>.list.=.std.ArrayList(<span.cl |
| 163c0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 31 3c 2f 73 70 61 6e 3e 29 2e 69 6e 69 74 28 | ass="tok-type">u21</span>).init( |
| 163e0 | 73 74 64 2e 74 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 61 74 6f 72 29 3b 0a 20 20 20 20 3c 73 70 61 | std.testing.allocator);.....<spa |
| 16400 | 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 69 73 73 69 6e 67 | n.class="tok-comment">//.missing |
| 16420 | 20 60 64 65 66 65 72 20 6c 69 73 74 2e 64 65 69 6e 69 74 28 29 3b 60 3c 2f 73 70 61 6e 3e 0a 20 | .`defer.list.deinit();`</span>.. |
| 16440 | 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 |
| 16460 | 6e 3e 20 6c 69 73 74 2e 61 70 70 65 6e 64 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | n>.list.append(<span.class="tok- |
| 16480 | 73 74 72 22 3e 27 e2 98 94 27 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | str">'...'</span>);......<span.c |
| 164a0 | 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 74 65 73 | lass="tok-kw">try</span>.std.tes |
| 164c0 | 74 69 6e 67 2e 65 78 70 65 63 74 28 6c 69 73 74 2e 69 74 65 6d 73 2e 6c 65 6e 20 3d 3d 20 3c 73 | ting.expect(list.items.len.==.<s |
| 164e0 | 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>) |
| 16500 | 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 |
| 16520 | 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 |
| 16540 | 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 |
| 16560 | 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 69 6e 67 5f 64 65 74 65 63 74 5f 6c 65 61 6b 2e | bd>zig.test.testing_detect_leak. |
| 16580 | 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 69 6e 67 5f 64 65 74 65 63 74 5f 6c 65 61 | zig</kbd>.1/1.testing_detect_lea |
| 165a0 | 6b 2e 74 65 73 74 2e 64 65 74 65 63 74 20 6c 65 61 6b 2e 2e 2e 4f 4b 0a 5b 67 70 61 5d 20 28 65 | k.test.detect.leak...OK.[gpa].(e |
| 165c0 | 72 72 29 3a 20 6d 65 6d 6f 72 79 20 61 64 64 72 65 73 73 20 30 78 37 66 64 62 65 61 36 39 65 30 | rr):.memory.address.0x7fdbea69e0 |
| 165e0 | 30 30 20 6c 65 61 6b 65 64 3a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e | 00.leaked:.<span.class="sgr-1m"> |
| 16600 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 61 72 72 61 79 | /home/andy/src/zig/lib/std/array |
| 16620 | 5f 6c 69 73 74 2e 7a 69 67 3a 34 35 37 3a 36 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | _list.zig:457:67</span>:.<span.c |
| 16640 | 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 66 37 36 65 20 69 6e 20 65 6e 73 75 72 | lass="sgr-2m">0x104f76e.in.ensur |
| 16660 | 65 54 6f 74 61 6c 43 61 70 61 63 69 74 79 50 72 65 63 69 73 65 20 28 74 65 73 74 29 3c 2f 73 70 | eTotalCapacityPrecise.(test)</sp |
| 16680 | 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 6e 65 77 5f 6d 65 | an>.................const.new_me |
| 166a0 | 6d 6f 72 79 20 3d 20 74 72 79 20 73 65 6c 66 2e 61 6c 6c 6f 63 61 74 6f 72 2e 61 6c 69 67 6e 65 | mory.=.try.self.allocator.aligne |
| 166c0 | 64 41 6c 6c 6f 63 28 54 2c 20 61 6c 69 67 6e 6d 65 6e 74 2c 20 6e 65 77 5f 63 61 70 61 63 69 74 | dAlloc(T,.alignment,.new_capacit |
| 166e0 | 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 20 20 20 20 20 | y);............................. |
| 16700 | 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 | ................................ |
| 16720 | 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 73 | ......<span.class="sgr-32m">^</s |
| 16740 | 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 2f | pan>.<span.class="sgr-1m">/home/ |
| 16760 | 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 61 72 72 61 79 5f 6c 69 73 74 2e | andy/src/zig/lib/std/array_list. |
| 16780 | 7a 69 67 3a 34 33 34 3a 35 31 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | zig:434:51</span>:.<span.class=" |
| 167a0 | 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 35 36 31 30 20 69 6e 20 65 6e 73 75 72 65 54 6f 74 61 6c | sgr-2m">0x1045610.in.ensureTotal |
| 167c0 | 43 61 70 61 63 69 74 79 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 | Capacity.(test)</span>.......... |
| 167e0 | 20 20 20 72 65 74 75 72 6e 20 73 65 6c 66 2e 65 6e 73 75 72 65 54 6f 74 61 6c 43 61 70 61 63 69 | ...return.self.ensureTotalCapaci |
| 16800 | 74 79 50 72 65 63 69 73 65 28 62 65 74 74 65 72 5f 63 61 70 61 63 69 74 79 29 3b 0a 20 20 20 20 | tyPrecise(better_capacity);..... |
| 16820 | 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 | ................................ |
| 16840 | 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 |
| 16860 | 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 |
| 16880 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 61 72 72 | ">/home/andy/src/zig/lib/std/arr |
| 168a0 | 61 79 5f 6c 69 73 74 2e 7a 69 67 3a 34 38 33 3a 34 31 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | ay_list.zig:483:41</span>:.<span |
| 168c0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 31 66 65 30 20 69 6e 20 61 64 64 | .class="sgr-2m">0x1041fe0.in.add |
| 168e0 | 4f 6e 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 74 72 | One.(test)</span>.............tr |
| 16900 | 79 20 73 65 6c 66 2e 65 6e 73 75 72 65 54 6f 74 61 6c 43 61 70 61 63 69 74 79 28 6e 65 77 6c 65 | y.self.ensureTotalCapacity(newle |
| 16920 | 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | n);............................. |
| 16940 | 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 |
| 16960 | 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"> |
| 16980 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 61 72 72 61 79 | /home/andy/src/zig/lib/std/array |
| 169a0 | 5f 6c 69 73 74 2e 7a 69 67 3a 32 36 32 3a 34 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | _list.zig:262:49</span>:.<span.c |
| 169c0 | 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 65 66 32 64 20 69 6e 20 61 70 70 65 6e | lass="sgr-2m">0x103ef2d.in.appen |
| 169e0 | 64 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 63 6f 6e 73 | d.(test)</span>.............cons |
| 16a00 | 74 20 6e 65 77 5f 69 74 65 6d 5f 70 74 72 20 3d 20 74 72 79 20 73 65 6c 66 2e 61 64 64 4f 6e 65 | t.new_item_ptr.=.try.self.addOne |
| 16a20 | 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ();............................. |
| 16a40 | 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= |
| 16a60 | 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=" |
| 16a80 | 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c | sgr-1m">/home/andy/src/zig/doc/l |
| 16aa0 | 61 6e 67 72 65 66 2f 74 65 73 74 69 6e 67 5f 64 65 74 65 63 74 5f 6c 65 61 6b 2e 7a 69 67 3a 36 | angref/testing_detect_leak.zig:6 |
| 16ac0 | 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 6d 22 | :20</span>:.<span.class="sgr-2m" |
| 16ae0 | 3e 30 78 31 30 33 64 31 37 32 20 69 6e 20 74 65 73 74 2e 64 65 74 65 63 74 20 6c 65 61 6b 20 28 | >0x103d172.in.test.detect.leak.( |
| 16b00 | 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 74 72 79 20 6c 69 73 74 2e 61 70 70 65 6e 64 | test)</span>.....try.list.append |
| 16b20 | 28 27 e2 98 94 27 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 | ('...');....................<spa |
| 16b40 | 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 |
| 16b60 | 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 73 72 63 2f 7a | .class="sgr-1m">/home/andy/src/z |
| 16b80 | 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 3a | ig/lib/compiler/test_runner.zig: |
| 16ba0 | 31 35 37 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 | 157:25</span>:.<span.class="sgr- |
| 16bc0 | 32 6d 22 3e 30 78 31 30 34 63 36 61 30 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 20 28 74 | 2m">0x104c6a0.in.mainTerminal.(t |
| 16be0 | 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 2e | est)</span>.........if.(test_fn. |
| 16c00 | 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 20 | func()).|_|.{................... |
| 16c20 | 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 73 | ......<span.class="sgr-32m">^</s |
| 16c40 | 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 2f | pan>.<span.class="sgr-1m">/home/ |
| 16c60 | 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 | andy/src/zig/lib/compiler/test_r |
| 16c80 | 75 6e 6e 65 72 2e 7a 69 67 3a 33 37 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | unner.zig:37:28</span>:.<span.cl |
| 16ca0 | 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 32 38 62 62 20 69 6e 20 6d 61 69 6e 20 28 | ass="sgr-2m">0x10428bb.in.main.( |
| 16cc0 | 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 6e | test)</span>.........return.main |
| 16ce0 | 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 20 | Terminal();..................... |
| 16d00 | 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">^</ |
| 16d20 | 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 |
| 16d40 | 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a | /andy/src/zig/lib/std/start.zig: |
| 16d60 | 35 31 34 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 | 514:22</span>:.<span.class="sgr- |
| 16d80 | 32 6d 22 3e 30 78 31 30 33 66 34 32 39 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e | 2m">0x103f429.in.posixCallMainAn |
| 16da0 | 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 20 | dExit.(test)</span>............. |
| 16dc0 | 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();.................... |
| 16de0 | 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> |
| 16e00 | 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 |
| 16e20 | 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 36 36 3a 35 | /src/zig/lib/std/start.zig:266:5 |
| 16e40 | 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 |
| 16e60 | 31 30 33 65 66 39 31 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 | 103ef91.in._start.(test)</span>. |
| 16e80 | 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 65 | ....asm.volatile.(switch.(native |
| 16ea0 | 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 32 | _arch).{.....<span.class="sgr-32 |
| 16ec0 | 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e | m">^</span>..All.1.tests.passed. |
| 16ee0 | 0a 31 20 65 72 72 6f 72 73 20 77 65 72 65 20 6c 6f 67 67 65 64 2e 0a 31 20 74 65 73 74 73 20 6c | .1.errors.were.logged..1.tests.l |
| 16f00 | 65 61 6b 65 64 20 6d 65 6d 6f 72 79 2e 0a 65 72 72 6f 72 3a 20 74 68 65 20 66 6f 6c 6c 6f 77 69 | eaked.memory..error:.the.followi |
| 16f20 | 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 68 20 65 78 69 74 | ng.test.command.failed.with.exit |
| 16f40 | 20 63 6f 64 65 20 31 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 2e 7a 69 67 | .code.1:./home/andy/src/zig/.zig |
| 16f60 | 2d 63 61 63 68 65 2f 6f 2f 34 61 31 37 31 39 38 31 33 38 62 66 38 31 62 63 66 61 62 64 35 36 35 | -cache/o/4a17198138bf81bcfabd565 |
| 16f80 | 32 62 30 64 36 62 65 32 34 2f 74 65 73 74 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | 2b0d6be24/test.</samp></pre></fi |
| 16fa0 | 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 |
| 16fc0 | 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 61 3e | >.<li><a.href="#defer">defer</a> |
| 16fe0 | 3c 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 | </li>.<li><a.href="#Memory">Memo |
| 17000 | 72 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 | ry</a></li>.</ul>............... |
| 17020 | 3c 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 | <h3.id="Detecting-Test-Build"><a |
| 17040 | 20 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 | .href="#toc-Detecting-Test-Build |
| 17060 | 22 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 | ">Detecting.Test.Build</a>.<a.cl |
| 17080 | 61 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 | ass="hdr".href="#Detecting-Test- |
| 170a0 | 42 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 | Build">..</a></h3>........<p>... |
| 170c0 | 20 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 | ......Use.the.<a.href="#Compile- |
| 170e0 | 56 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 | Variables">compile.variable</a>. |
| 17100 | 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"> |
| 17120 | 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- |
| 17140 | 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | str">"builtin"</span>) |
| 17160 | 2e 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 | .is_test</code>.........to.detec |
| 17180 | 74 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 | t.a.test.build:.......</p>...... |
| 171a0 | 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- |
| 171c0 | 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 5f | cap"><cite.class="file">testing_ |
| 171e0 | 64 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 | detect_test.zig</cite></figcapti |
| 17200 | 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 |
| 17220 | 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 |
| 17240 | 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>(< |
| 17260 | 73 70 61 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 |
| 17280 | 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 |
| 172a0 | 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 6e 20 | w">const</span>.builtin.=.<span. |
| 172c0 | 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 |
| 172e0 | 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 62 | n>(<span.class="tok-str">"b |
| 17300 | 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 6c 61 73 | uiltin"</span>);.<span.clas |
| 17320 | 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.= |
| 17340 | 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 |
| 17360 | 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 |
| 17380 | 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 2e 69 73 5f 74 65 | ss="tok-str">"builtin.is_te |
| 173a0 | 73 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 | st"</span>.{.....<span.clas |
| 173c0 | 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 73 41 | s="tok-kw">try</span>.expect(isA |
| 173e0 | 54 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 | Test());.}..<span.class="tok-kw" |
| 17400 | 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"> |
| 17420 | 69 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 | isATest</span>().<span.class="to |
| 17440 | 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | k-type">bool</span>.{.....<span. |
| 17460 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 62 75 69 | class="tok-kw">return</span>.bui |
| 17480 | 6c 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 | ltin.is_test;.}</code></pre></fi |
| 174a0 | 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=" |
| 174c0 | 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 |
| 174e0 | 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 5f | e><samp>$.<kbd>zig.test.testing_ |
| 17500 | 64 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 | detect_test.zig</kbd>.1/1.testin |
| 17520 | 67 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 | g_detect_test.test.builtin.is_te |
| 17540 | 73 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 | st...OK.All.1.tests.passed..</sa |
| 17560 | 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>.............. |
| 17580 | 20 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 | .<h3.id="Test-Output-and-Logging |
| 175a0 | 22 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 | "><a.href="#toc-Test-Output-and- |
| 175c0 | 4c 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 | Logging">Test.Output.and.Logging |
| 175e0 | 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 74 2d | </a>.<a.class="hdr".href="#Test- |
| 17600 | 4f 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 | Output-and-Logging">..</a></h3>. |
| 17620 | 0a 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 | .......<p>.........The.default.t |
| 17640 | 65 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 | est.runner.and.the.Zig.Standard. |
| 17660 | 4c 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 | Library's.testing.namespace.outp |
| 17680 | 75 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 | ut.messages.to.standard.error... |
| 176a0 | 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 54 | .....</p>..............<h3.id="T |
| 176c0 | 68 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 | he-Testing-Namespace"><a.href="# |
| 176e0 | 74 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 | toc-The-Testing-Namespace">The.T |
| 17700 | 65 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 | esting.Namespace</a>.<a.class="h |
| 17720 | 64 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 | dr".href="#The-Testing-Namespace |
| 17740 | 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 20 | ">..</a></h3>........<p>........ |
| 17760 | 20 54 68 65 20 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 27 73 20 3c 63 6f 64 | .The.Zig.Standard.Library's.<cod |
| 17780 | 65 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 | e>testing</code>.namespace.conta |
| 177a0 | 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 70 0a 20 20 20 | ins.useful.functions.to.help.... |
| 177c0 | 20 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 | .....you.create.tests..In.additi |
| 177e0 | 6f 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 | on.to.the.<code>expect</code>.fu |
| 17800 | 6e 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 | nction,.this.document.uses.a.cou |
| 17820 | 70 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 | ple.of.more.functions.........as |
| 17840 | 20 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 | .exemplified.here:.......</p>... |
| 17860 | 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 |
| 17880 | 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 69 | ig-cap"><cite.class="file">testi |
| 178a0 | 6e 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 | ng_namespace.zig</cite></figcapt |
| 178c0 | 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- |
| 178e0 | 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 |
| 17900 | 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>( |
| 17920 | 3c 73 70 61 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& |
| 17940 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | quot;</span>);..<span.class="tok |
| 17960 | 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 |
| 17980 | 6b 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 | k-str">"expectEqual.demo&qu |
| 179a0 | 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 |
| 179c0 | 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 3a 20 3c 73 70 | k-kw">const</span>.expected:.<sp |
| 179e0 | 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>.= |
| 17a00 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 | .<span.class="tok-number">42</sp |
| 17a20 | 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 |
| 17a40 | 6e 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 | nst</span>.actual.=.<span.class= |
| 17a60 | 22 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 | "tok-number">42</span>;......<sp |
| 17a80 | 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 69 | an.class="tok-comment">//.The.fi |
| 17aa0 | 72 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 | rst.argument.to.`expectEqual`.is |
| 17ac0 | 20 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 | .the.known,.expected,.result.</s |
| 17ae0 | 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 |
| 17b00 | 74 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 | t">//.The.second.argument.is.the |
| 17b20 | 20 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 | .result.of.some.expression.</spa |
| 17b40 | 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" |
| 17b60 | 3e 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 | >//.The.actual's.type.is.casted. |
| 17b80 | 74 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 | to.the.type.of.expected.</span>. |
| 17ba0 | 20 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 |
| 17bc0 | 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 6c 28 65 78 70 65 | an>.std.testing.expectEqual(expe |
| 17be0 | 63 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 | cted,.actual);.}..<span.class="t |
| 17c00 | 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=" |
| 17c20 | 74 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 | tok-str">"expectError.demo& |
| 17c40 | 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=" |
| 17c60 | 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 65 64 5f 65 72 | tok-kw">const</span>.expected_er |
| 17c80 | 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 72 6f 72 | ror.=.<span.class="tok-kw">error |
| 17ca0 | 3c 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 | </span>.DemoError;.....<span.cla |
| 17cc0 | 73 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 | ss="tok-kw">const</span>.actual_ |
| 17ce0 | 65 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 | error_union:.<span.class="tok-ty |
| 17d00 | 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pe">anyerror</span>!<span.class= |
| 17d20 | 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | "tok-type">void</span>.=.<span.c |
| 17d40 | 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 6d 6f 45 | lass="tok-kw">error</span>.DemoE |
| 17d60 | 72 72 6f 72 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | rror;......<span.class="tok-comm |
| 17d80 | 65 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 | ent">//.`expectError`.will.fail. |
| 17da0 | 77 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 | when.the.actual.error.is.differe |
| 17dc0 | 6e 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 | nt.than</span>.....<span.class=" |
| 17de0 | 74 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 | tok-comment">//.the.expected.err |
| 17e00 | 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 6f 6b 2d | or.</span>.....<span.class="tok- |
| 17e20 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 | kw">try</span>.std.testing.expec |
| 17e40 | 74 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 | tError(expected_error,.actual_er |
| 17e60 | 72 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 | ror_union);.}</code></pre></figu |
| 17e80 | 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 |
| 17ea0 | 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> |
| 17ec0 | 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 6e 61 | <samp>$.<kbd>zig.test.testing_na |
| 17ee0 | 6d 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 | mespace.zig</kbd>.1/2.testing_na |
| 17f00 | 6d 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 | mespace.test.expectEqual.demo... |
| 17f20 | 4f 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 | OK.2/2.testing_namespace.test.ex |
| 17f40 | 70 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 | pectError.demo...OK.All.2.tests. |
| 17f60 | 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>.. |
| 17f80 | 20 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 | ......<p>The.Zig.Standard.Librar |
| 17fa0 | 79 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 | y.also.contains.functions.to.com |
| 17fc0 | 70 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 | pare.<a.href="#Slices">Slices</a |
| 17fe0 | 3e 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 | >,.strings,.and.more..See.the.re |
| 18000 | 73 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 | st.of.the.........<code>std.test |
| 18020 | 69 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 | ing</code>.namespace.in.the.<a.h |
| 18040 | 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 20 | ref="#Zig-Standard-Library">Zig. |
| 18060 | 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 61 76 | Standard.Library</a>.for.more.av |
| 18080 | 61 69 6c 61 62 6c 65 20 66 75 6e 63 74 69 6f 6e 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 | ailable.functions.</p>.......... |
| 180a0 | 20 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 | ....<h3.id="Test-Tool-Documentat |
| 180c0 | 69 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 | ion"><a.href="#toc-Test-Tool-Doc |
| 180e0 | 75 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 | umentation">Test.Tool.Documentat |
| 18100 | 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 54 65 | ion</a>.<a.class="hdr".href="#Te |
| 18120 | 73 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 | st-Tool-Documentation">..</a></h |
| 18140 | 33 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 | 3>........<p>.........<kbd>zig.t |
| 18160 | 65 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 | est</kbd>.has.a.few.command.line |
| 18180 | 20 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 | .parameters.which.affect.the.com |
| 181a0 | 70 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 | pilation..........See.<kbd>zig.t |
| 181c0 | 65 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 | est.--help</kbd>.for.a.full.list |
| 181e0 | 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 0a 20 20 20 20 | ........</p>.................... |
| 18200 | 20 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 | ..<h2.id="Variables"><a.href="#t |
| 18220 | 6f 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 | oc-Variables">Variables</a>.<a.c |
| 18240 | 6c 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 | lass="hdr".href="#Variables">..< |
| 18260 | 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 76 61 72 69 | /a></h2>........<p>.......A.vari |
| 18280 | 61 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 | able.is.a.unit.of.<a.href="#Memo |
| 182a0 | 72 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 | ry">Memory</a>.storage........</ |
| 182c0 | 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 |
| 182e0 | 6c 79 20 70 72 65 66 65 72 61 62 6c 65 20 74 6f 20 75 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | ly.preferable.to.use.<code><span |
| 18300 | 20 63 6c 61 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 |
| 18320 | 64 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 | de>.rather.than.......<code><spa |
| 18340 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | n.class="tok-kw">var</span></cod |
| 18360 | 65 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 | e>.when.declaring.a.variable..Th |
| 18380 | 69 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 | is.causes.less.work.for.both.... |
| 183a0 | 20 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 | ...humans.and.computers.to.do.wh |
| 183c0 | 65 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 | en.reading.code,.and.creates.mor |
| 183e0 | 65 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 | e.optimization.opportunities.... |
| 18400 | 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 3c 63 6f | ....</p>.......<p>.......The.<co |
| 18420 | 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 65 72 6e 3c 2f | de><span.class="tok-kw">extern</ |
| 18440 | 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= |
| 18460 | 22 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 | "#extern">@extern</a>.builtin.fu |
| 18480 | 6e 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 | nction.can.be.used.to.link.again |
| 184a0 | 73 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 | st.a.variable.that.is.exported.. |
| 184c0 | 20 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 | .....from.another.object..The.<c |
| 184e0 | 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 6f 72 74 3c | ode><span.class="tok-kw">export< |
| 18500 | 2f 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 | /span></code>.keyword.or.<a.href |
| 18520 | 3d 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 | ="#export">@export</a>.builtin.f |
| 18540 | 75 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 | unction.......can.be.used.to.mak |
| 18560 | 65 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 | e.a.variable.available.to.other. |
| 18580 | 6f 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 | objects.at.link.time..In.both.ca |
| 185a0 | 73 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 | ses,.......the.type.of.the.varia |
| 185c0 | 62 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 | ble.must.be.C.ABI.compatible.... |
| 185e0 | 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 3c | ....</p>.......<p>See.also:</p>< |
| 18600 | 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 2d 43 2d | ul>.<li><a.href="#Exporting-a-C- |
| 18620 | 4c 69 62 72 61 72 79 22 3e 45 78 70 6f 72 74 69 6e 67 20 61 20 43 20 4c 69 62 72 61 72 79 3c 2f | Library">Exporting.a.C.Library</ |
| 18640 | 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 69 64 3d 22 49 64 | a></li>.</ul>.........<h3.id="Id |
| 18660 | 65 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 | entifiers"><a.href="#toc-Identif |
| 18680 | 69 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 | iers">Identifiers</a>.<a.class=" |
| 186a0 | 68 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 | hdr".href="#Identifiers">..</a>< |
| 186c0 | 2f 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 | /h3>........<p>.......Variable.i |
| 186e0 | 64 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 | dentifiers.are.never.allowed.to. |
| 18700 | 73 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 | shadow.identifiers.from.an.outer |
| 18720 | 20 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 | .scope........</p>.......<p>.... |
| 18740 | 20 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 | ...Identifiers.must.start.with.a |
| 18760 | 6e 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 | n.alphabetic.character.or.unders |
| 18780 | 63 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 | core.and.may.be.followed.......b |
| 187a0 | 79 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 | y.any.number.of.alphanumeric.cha |
| 187c0 | 72 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 | racters.or.underscores........Th |
| 187e0 | 65 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 | ey.must.not.overlap.with.any.key |
| 18800 | 77 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 | words..See.<a.href="#Keyword-Ref |
| 18820 | 65 72 65 6e 63 65 22 3e 4b 65 79 77 6f 72 64 20 52 65 66 65 72 65 6e 63 65 3c 2f 61 3e 2e 0a 20 | erence">Keyword.Reference</a>... |
| 18840 | 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 61 20 6e | .....</p>.......<p>.......If.a.n |
| 18860 | 61 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 | ame.that.does.not.fit.these.requ |
| 18880 | 69 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 | irements.is.needed,.such.as.for. |
| 188a0 | 6c 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 | linking.with.external.libraries, |
| 188c0 | 20 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 | .the.<code>@""</code>. |
| 188e0 | 73 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 | syntax.may.be.used........</p>.. |
| 18900 | 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=" |
| 18920 | 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 64 65 6e | zig-cap"><cite.class="file">iden |
| 18940 | 74 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 | tifiers.zig</cite></figcaption>< |
| 18960 | 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 |
| 18980 | 6f 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 | onst</span>.@"identifier.wi |
| 189a0 | 74 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 | th.spaces.in.it".=.<span.cl |
| 189c0 | 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 3e 3b 0a 3c 73 | ass="tok-number">0xff</span>;.<s |
| 189e0 | 70 61 6e 20 63 6c 61 73 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>. |
| 18a00 | 40 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 | @"1SmallStep4Man".=.<s |
| 18a20 | 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 32 33 35 38 3c 2f 73 | pan.class="tok-number">112358</s |
| 18a40 | 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | pan>;..<span.class="tok-kw">cons |
| 18a60 | 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 22 74 6f 6b 2d 62 75 | t</span>.c.=.<span.class="tok-bu |
| 18a80 | 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 |
| 18aa0 | 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 |
| 18ac0 | 6e 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 | n>).c;.<span.class="tok-kw">pub< |
| 18ae0 | 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 65 | /span>.<span.class="tok-kw">exte |
| 18b00 | 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 3e | rn</span>.<span.class="tok-str"> |
| 18b20 | 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 73 | "c"</span>.<span.class |
| 18b40 | 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= |
| 18b60 | 22 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 | "tok-fn">@"error"</spa |
| 18b80 | 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 |
| 18ba0 | 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 |
| 18bc0 | 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 65 78 | b</span>.<span.class="tok-kw">ex |
| 18be0 | 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 |
| 18c00 | 22 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 | ">"c"</span>.<span.cla |
| 18c20 | 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 |
| 18c40 | 73 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 | s="tok-fn">@"fstat$INODE64& |
| 18c60 | 71 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 | quot;</span>(fd:.c.fd_t,.buf:.*c |
| 18c80 | 2e 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 | .Stat).<span.class="tok-type">c_ |
| 18ca0 | 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 77 | int</span>;..<span.class="tok-kw |
| 18cc0 | 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 6e 20 63 6c 61 | ">const</span>.Color.=.<span.cla |
| 18ce0 | 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 72 65 | ss="tok-kw">enum</span>.{.....re |
| 18d00 | 64 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 | d,.....@"really.red",. |
| 18d20 | 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | };.<span.class="tok-kw">const</s |
| 18d40 | 70 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 | pan>.color:.Color.=..@"real |
| 18d60 | 6c 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 | ly.red";</code></pre></figu |
| 18d80 | 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 43 6f 6e 74 61 | re>................<h3.id="Conta |
| 18da0 | 69 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 | iner-Level-Variables"><a.href="# |
| 18dc0 | 74 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 | toc-Container-Level-Variables">C |
| 18de0 | 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 20 3c 61 20 | ontainer.Level.Variables</a>.<a. |
| 18e00 | 63 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 | class="hdr".href="#Container-Lev |
| 18e20 | 65 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 | el-Variables">..</a></h3>....... |
| 18e40 | 20 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 | .<p>.......<a.href="#Containers" |
| 18e60 | 3e 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 | >Container</a>.level.variables.h |
| 18e80 | 61 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 | ave.static.lifetime.and.are.orde |
| 18ea0 | 72 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 | r-independent.and.lazily.analyze |
| 18ec0 | 64 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 | d........The.initialization.valu |
| 18ee0 | 65 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 | e.of.container.level.variables.i |
| 18f00 | 73 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 | s.implicitly.......<a.href="#com |
| 18f20 | 70 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 | ptime">comptime</a>..If.a.contai |
| 18f40 | 6e 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 | ner.level.variable.is.<code><spa |
| 18f60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 | n.class="tok-kw">const</span></c |
| 18f80 | 6f 64 65 3e 20 74 68 65 6e 20 69 74 73 20 76 61 6c 75 65 20 69 73 0a 20 20 20 20 20 20 3c 63 6f | ode>.then.its.value.is.......<co |
| 18fa0 | 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 |
| 18fc0 | 3c 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 | </span></code>-known,.otherwise. |
| 18fe0 | 69 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 | it.is.runtime-known........</p>. |
| 19000 | 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= |
| 19020 | 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 |
| 19040 | 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 7a 69 67 3c | t_container_level_variables.zig< |
| 19060 | 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 |
| 19080 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 3a | pan.class="tok-kw">var</span>.y: |
| 190a0 | 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 |
| 190c0 | 6e 3e 20 3d 20 61 64 64 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | n>.=.add(<span.class="tok-number |
| 190e0 | 22 3e 31 30 3c 2f 73 70 61 6e 3e 2c 20 78 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">10</span>,.x);.<span.class="to |
| 19100 | 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 73 | k-kw">const</span>.x:.<span.clas |
| 19120 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 61 64 64 28 3c 73 | s="tok-type">i32</span>.=.add(<s |
| 19140 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e | pan.class="tok-number">12</span> |
| 19160 | 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 34 3c 2f 73 | ,.<span.class="tok-number">34</s |
| 19180 | 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 | pan>);..<span.class="tok-kw">tes |
| 191a0 | 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">& |
| 191c0 | 71 75 6f 74 3b 63 6f 6e 74 61 69 6e 65 72 20 6c 65 76 65 6c 20 76 61 72 69 61 62 6c 65 73 26 71 | quot;container.level.variables&q |
| 191e0 | 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 |
| 19200 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 78 20 3d 3d 20 3c 73 | ok-kw">try</span>.expect(x.==.<s |
| 19220 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 36 3c 2f 73 70 61 6e 3e | pan.class="tok-number">46</span> |
| 19240 | 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< |
| 19260 | 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=" |
| 19280 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e | tok-number">56</span>);.}..<span |
| 192a0 | 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. |
| 192c0 | 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 |
| 192e0 | 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>,. |
| 19300 | 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 |
| 19320 | 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 |
| 19340 | 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 |
| 19360 | 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2b 20 62 3b 0a 7d 0a 0a 3c 73 70 61 6e | w">return</span>.a.+.b;.}..<span |
| 19380 | 20 63 6c 61 73 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 |
| 193a0 | 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 |
| 193c0 | 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 |
| 193e0 | 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 |
| 19400 | 20 63 6c 61 73 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 |
| 19420 | 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 3c 2f 63 6f 64 65 3e | ect.=.std.testing.expect;</code> |
| 19440 | 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 |
| 19460 | 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 |
| 19480 | 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 |
| 194a0 | 74 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 | t.test_container_level_variables |
| 194c0 | 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 5f 6c 65 | .zig</kbd>.1/1.test_container_le |
| 194e0 | 76 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 | vel_variables.test.container.lev |
| 19500 | 65 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 | el.variables...OK.All.1.tests.pa |
| 19520 | 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>.... |
| 19540 | 20 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 | ....<p>.......Container.level.va |
| 19560 | 72 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 | riables.may.be.declared.inside.a |
| 19580 | 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 2c 20 3c | .<a.href="#struct">struct</a>,.< |
| 195a0 | 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 2c 20 3c 61 20 68 72 | a.href="#union">union</a>,.<a.hr |
| 195c0 | 65 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 | ef="#enum">enum</a>,.or.<a.href= |
| 195e0 | 22 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 | "#opaque">opaque</a>:.......</p> |
| 19600 | 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 |
| 19620 | 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 |
| 19640 | 73 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 | st_namespaced_container_level_va |
| 19660 | 72 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 | riable.zig</cite></figcaption><p |
| 19680 | 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 |
| 196a0 | 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 |
| 196c0 | 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. |
| 196e0 | 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"< |
| 19700 | 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 |
| 19720 | 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. |
| 19740 | 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 |
| 19760 | 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"> |
| 19780 | 26 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 | "namespaced.container.level |
| 197a0 | 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 20 20 3c 73 70 | .variable"</span>.{.....<sp |
| 197c0 | 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 |
| 197e0 | 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 |
| 19800 | 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 61 6e 20 63 6c | mber">1235</span>);.....<span.cl |
| 19820 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 | ass="tok-kw">try</span>.expect(f |
| 19840 | 6f 6f 28 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | oo().==.<span.class="tok-number" |
| 19860 | 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 73 73 3d 22 74 | >1236</span>);.}..<span.class="t |
| 19880 | 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 63 6c | ok-kw">const</span>.S.=.<span.cl |
| 198a0 | 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>.{.... |
| 198c0 | 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> |
| 198e0 | 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | .x:.<span.class="tok-type">i32</ |
| 19900 | 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" |
| 19920 | 3e 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 | >1234</span>;.};..<span.class="t |
| 19940 | 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 |
| 19960 | 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-fn">foo</span>().<span.class=" |
| 19980 | 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 53 2e 78 20 2b | tok-type">i32</span>.{.....S.x.+ |
| 199a0 | 3d 20 3c 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 |
| 199c0 | 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 | an>;.....<span.class="tok-kw">re |
| 199e0 | 74 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 | turn</span>.S.x;.}</code></pre>< |
| 19a00 | 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 |
| 19a20 | 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> |
| 19a40 | 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_ |
| 19a60 | 6e 61 6d 65 73 70 61 63 65 64 5f 63 6f 6e 74 61 69 6e 65 72 5f 6c 65 76 65 6c 5f 76 61 72 69 61 | namespaced_container_level_varia |
| 19a80 | 62 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 | ble.zig</kbd>.1/1.test_namespace |
| 19aa0 | 64 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 | d_container_level_variable.test. |
| 19ac0 | 6e 61 6d 65 73 70 61 63 65 64 20 63 6f 6e 74 61 69 6e 65 72 20 6c 65 76 65 6c 20 76 61 72 69 61 | namespaced.container.level.varia |
| 19ae0 | 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 64 2e 0a 3c 2f 73 | ble...OK.All.1.tests.passed..</s |
| 19b00 | 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>............. |
| 19b20 | 20 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 | ...<h3.id="Static-Local-Variable |
| 19b40 | 73 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 | s"><a.href="#toc-Static-Local-Va |
| 19b60 | 72 69 61 62 6c 65 73 22 3e 53 74 61 74 69 63 20 4c 6f 63 61 6c 20 56 61 72 69 61 62 6c 65 73 3c | riables">Static.Local.Variables< |
| 19b80 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 74 61 74 69 63 | /a>.<a.class="hdr".href="#Static |
| 19ba0 | 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 68 33 3e 0a 0a 20 | -Local-Variables">..</a></h3>... |
| 19bc0 | 20 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 | .....<p>.........It.is.also.poss |
| 19be0 | 69 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 | ible.to.have.local.variables.wit |
| 19c00 | 68 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 | h.static.lifetime.by.using.conta |
| 19c20 | 69 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 | iners.inside.functions........</ |
| 19c40 | 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 |
| 19c60 | 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"> |
| 19c80 | 74 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 | test_static_local_variable.zig</ |
| 19ca0 | 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 |
| 19cc0 | 61 6e 20 63 6c 61 73 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 |
| 19ce0 | 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">@ |
| 19d00 | 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 |
| 19d20 | 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 |
| 19d40 | 61 6e 20 63 6c 61 73 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 |
| 19d60 | 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 |
| 19d80 | 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 |
| 19da0 | 70 61 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 | pan.class="tok-str">"static |
| 19dc0 | 20 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 | .local.variable"</span>.{.. |
| 19de0 | 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 |
| 19e00 | 6e 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 | n>.expect(foo().==.<span.class=" |
| 19e20 | 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 20 20 20 20 3c 73 | tok-number">1235</span>);.....<s |
| 19e40 | 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 |
| 19e60 | 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 6f 6b 2d 6e | pect(foo().==.<span.class="tok-n |
| 19e80 | 75 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 | umber">1236</span>);.}..<span.cl |
| 19ea0 | 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 |
| 19ec0 | 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 63 | ss="tok-fn">foo</span>().<span.c |
| 19ee0 | 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>.{.... |
| 19f00 | 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 |
| 19f20 | 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 77 22 3e 73 74 72 75 | n>.S.=.<span.class="tok-kw">stru |
| 19f40 | 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 20 63 6c 61 73 73 3d | ct</span>.{.........<span.class= |
| 19f60 | 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 |
| 19f80 | 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 |
| 19fa0 | 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 3b | .class="tok-number">1234</span>; |
| 19fc0 | 0a 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 | .....};.....S.x.+=.<span.class=" |
| 19fe0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | tok-number">1</span>;.....<span. |
| 1a000 | 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 53 2e 78 | class="tok-kw">return</span>.S.x |
| 1a020 | 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 |
| 1a040 | 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 |
| 1a060 | 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 |
| 1a080 | 62 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 | bd>zig.test.test_static_local_va |
| 1a0a0 | 72 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 | riable.zig</kbd>.1/1.test_static |
| 1a0c0 | 5f 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 | _local_variable.test.static.loca |
| 1a0e0 | 6c 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 | l.variable...OK.All.1.tests.pass |
| 1a100 | 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>...... |
| 1a120 | 20 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 | ..........<h3.id="Thread-Local-V |
| 1a140 | 61 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 | ariables"><a.href="#toc-Thread-L |
| 1a160 | 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 56 61 72 | ocal-Variables">Thread.Local.Var |
| 1a180 | 69 61 62 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | iables</a>.<a.class="hdr".href=" |
| 1a1a0 | 23 54 68 72 65 61 64 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c | #Thread-Local-Variables">..</a>< |
| 1a1c0 | 2f 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 | /h3>........<p>A.variable.may.be |
| 1a1e0 | 20 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 | .specified.to.be.a.thread-local. |
| 1a200 | 76 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 | variable.using.the.......<code>< |
| 1a220 | 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 3c | span.class="tok-kw">threadlocal< |
| 1a240 | 2f 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 | /span></code>.keyword,.......whi |
| 1a260 | 63 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 | ch.makes.each.thread.work.with.a |
| 1a280 | 20 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 | .separate.instance.of.the.variab |
| 1a2a0 | 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 67 63 61 70 74 69 6f | le:</p>.......<figure><figcaptio |
| 1a2c0 | 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 |
| 1a2e0 | 69 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 | ile">test_thread_local_variables |
| 1a300 | 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 |
| 1a320 | 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 |
| 1a340 | 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 |
| 1a360 | 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= |
| 1a380 | 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> |
| 1a3a0 | 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 |
| 1a3c0 | 70 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 | pan>.assert.=.std.debug.assert;. |
| 1a3e0 | 0a 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 | .<span.class="tok-kw">threadloca |
| 1a400 | 6c 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 | l</span>.<span.class="tok-kw">va |
| 1a420 | 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | r</span>.x:.<span.class="tok-typ |
| 1a440 | 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 |
| 1a460 | 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 61 6e 20 63 6c 61 | -number">1234</span>;..<span.cla |
| 1a480 | 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 |
| 1a4a0 | 61 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 | ass="tok-str">"thread.local |
| 1a4c0 | 20 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 | .storage"</span>.{.....<spa |
| 1a4e0 | 6e 20 63 6c 61 73 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 | n.class="tok-kw">const</span>.th |
| 1a500 | 72 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 | read1.=.<span.class="tok-kw">try |
| 1a520 | 3c 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 | </span>.std.Thread.spawn(.{},.te |
| 1a540 | 73 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 | stTls,..{});.....<span.class="to |
| 1a560 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 68 72 65 61 64 32 20 3d 20 3c 73 70 | k-kw">const</span>.thread2.=.<sp |
| 1a580 | 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 |
| 1a5a0 | 2e 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 | .Thread.spawn(.{},.testTls,..{}) |
| 1a5c0 | 3b 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 | ;.....testTls();.....thread1.joi |
| 1a5e0 | 6e 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 | n();.....thread2.join();.}..<spa |
| 1a600 | 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 |
| 1a620 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 65 73 74 54 6c 73 3c 2f 73 70 61 6e 3e 28 29 | .class="tok-fn">testTls</span>() |
| 1a640 | 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 |
| 1a660 | 61 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 | an>.{.....assert(x.==.<span.clas |
| 1a680 | 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 20 | s="tok-number">1234</span>);.... |
| 1a6a0 | 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | .x.+=.<span.class="tok-number">1 |
| 1a6c0 | 3c 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 | </span>;.....assert(x.==.<span.c |
| 1a6e0 | 6c 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 | lass="tok-number">1235</span>);. |
| 1a700 | 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>< |
| 1a720 | 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 |
| 1a740 | 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 |
| 1a760 | 3e 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 | >zig.test.test_thread_local_vari |
| 1a780 | 61 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 | ables.zig</kbd>.1/1.test_thread_ |
| 1a7a0 | 6c 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 | local_variables.test.thread.loca |
| 1a7c0 | 6c 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 | l.storage...OK.All.1.tests.passe |
| 1a7e0 | 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>....... |
| 1a800 | 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 53 69 6e 67 6c 65 2d | .<p>.......For.<a.href="#Single- |
| 1a820 | 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 64 | Threaded-Builds">Single.Threaded |
| 1a840 | 20 42 75 69 6c 64 73 3c 2f 61 3e 2c 20 61 6c 6c 20 74 68 72 65 61 64 20 6c 6f 63 61 6c 20 76 61 | .Builds</a>,.all.thread.local.va |
| 1a860 | 72 69 61 62 6c 65 73 20 61 72 65 20 74 72 65 61 74 65 64 20 61 73 20 72 65 67 75 6c 61 72 20 3c | riables.are.treated.as.regular.< |
| 1a880 | 61 20 68 72 65 66 3d 22 23 43 6f 6e 74 61 69 6e 65 72 2d 4c 65 76 65 6c 2d 56 61 72 69 61 62 6c | a.href="#Container-Level-Variabl |
| 1a8a0 | 65 73 22 3e 43 6f 6e 74 61 69 6e 65 72 20 4c 65 76 65 6c 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 | es">Container.Level.Variables</a |
| 1a8c0 | 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 |
| 1a8e0 | 72 65 61 64 20 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 73 20 6d 61 79 20 6e 6f 74 20 62 65 20 | read.local.variables.may.not.be. |
| 1a900 | 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 |
| 1a920 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | </span></code>........</p>...... |
| 1a940 | 20 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 | .........<h3.id="Local-Variables |
| 1a960 | 22 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 | "><a.href="#toc-Local-Variables" |
| 1a980 | 3e 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 | >Local.Variables</a>.<a.class="h |
| 1a9a0 | 64 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 | dr".href="#Local-Variables">..</ |
| 1a9c0 | 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 4c 6f 63 61 6c 20 76 | a></h3>........<p>.......Local.v |
| 1a9e0 | 61 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 | ariables.occur.inside.<a.href="# |
| 1aa00 | 46 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 | Functions">Functions</a>,.<a.hre |
| 1aa20 | 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 62 6c 6f 63 6b | f="#comptime">comptime</a>.block |
| 1aa40 | 73 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 | s,.and.<a.href="#cImport">@cImpo |
| 1aa60 | 72 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 | rt</a>.blocks........</p>....... |
| 1aa80 | 3c 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 | <p>.......When.a.local.variable. |
| 1aaa0 | 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 6b 77 22 3e 63 6f | is.<code><span.class="tok-kw">co |
| 1aac0 | 6e 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 | nst</span></code>,.it.means.that |
| 1aae0 | 20 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 | .after.initialization,.the.varia |
| 1ab00 | 62 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 | ble's.......value.will.not.chang |
| 1ab20 | 65 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 | e..If.the.initialization.value.o |
| 1ab40 | 66 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 | f.a.<code><span.class="tok-kw">c |
| 1ab60 | 6f 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 | onst</span></code>.variable.is.. |
| 1ab80 | 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d | .....<a.href="#comptime">comptim |
| 1aba0 | 65 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 | e</a>-known,.then.the.variable.i |
| 1abc0 | 73 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 | s.also.<code><span.class="tok-kw |
| 1abe0 | 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 6e 6f 77 6e 2e 0a | ">comptime</span></code>-known.. |
| 1ac00 | 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 20 6c 6f 63 | ......</p>.......<p>.......A.loc |
| 1ac20 | 61 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 | al.variable.may.be.qualified.wit |
| 1ac40 | 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" |
| 1ac60 | 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 2e | >comptime</span></code>.keyword. |
| 1ac80 | 20 54 68 69 73 20 63 61 75 73 65 73 0a 20 20 20 20 20 20 74 68 65 20 76 61 72 69 61 62 6c 65 27 | .This.causes.......the.variable' |
| 1aca0 | 73 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 | s.value.to.be.<code><span.class= |
| 1acc0 | 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 2d | "tok-kw">comptime</span></code>- |
| 1ace0 | 6b 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 | known,.and.all.loads.and.stores. |
| 1ad00 | 6f 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 | of.the.......variable.to.happen. |
| 1ad20 | 64 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 | during.semantic.analysis.of.the. |
| 1ad40 | 70 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 | program,.rather.than.at.runtime. |
| 1ad60 | 0a 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 | .......All.variables.declared.in |
| 1ad80 | 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 |
| 1ada0 | 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 6e 20 | mptime</span></code>.expression. |
| 1adc0 | 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 6e | are.implicitly.......<code><span |
| 1ade0 | 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>< |
| 1ae00 | 2f 63 6f 64 65 3e 20 76 61 72 69 61 62 6c 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | /code>.variables........</p>.... |
| 1ae20 | 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 |
| 1ae40 | 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 63 | g-cap"><cite.class="file">test_c |
| 1ae60 | 6f 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 | omptime_variables.zig</cite></fi |
| 1ae80 | 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= |
| 1aea0 | 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 |
| 1aec0 | 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 |
| 1aee0 | 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">" |
| 1af00 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ;std"</span>);.<span.class= |
| 1af20 | 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 |
| 1af40 | 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= |
| 1af60 | 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 |
| 1af80 | 3d 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 | ="tok-str">"comptime.vars&q |
| 1afa0 | 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 |
| 1afc0 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-kw">var</span>.x:.<span.class |
| 1afe0 | 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 |
| 1b000 | 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>;..... |
| 1b020 | 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 |
| 1b040 | 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 |
| 1b060 | 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 69 | pan>.y:.<span.class="tok-type">i |
| 1b080 | 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 |
| 1b0a0 | 62 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 | ber">1</span>;......x.+=.<span.c |
| 1b0c0 | 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>;..... |
| 1b0e0 | 79 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | y.+=.<span.class="tok-number">1< |
| 1b100 | 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>;......<span.class="tok-kw |
| 1b120 | 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 61 6e 20 63 | ">try</span>.expect(x.==.<span.c |
| 1b140 | 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 20 20 | lass="tok-number">2</span>);.... |
| 1b160 | 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> |
| 1b180 | 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 75 | .expect(y.==.<span.class="tok-nu |
| 1b1a0 | 6d 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 | mber">2</span>);......<span.clas |
| 1b1c0 | 73 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 | s="tok-kw">if</span>.(y.!=.<span |
| 1b1e0 | 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 7b 0a | .class="tok-number">2</span>).{. |
| 1b200 | 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 |
| 1b220 | 22 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 | ">//.This.compile.error.never.tr |
| 1b240 | 69 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 | iggers.because.y.is.a.comptime.v |
| 1b260 | 61 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 | ariable,</span>.........<span.cl |
| 1b280 | 61 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 | ass="tok-comment">//.and.so.`y.! |
| 1b2a0 | 3d 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 | =.2`.is.a.comptime.value,.and.th |
| 1b2c0 | 69 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 | is.if.is.statically.evaluated.</ |
| 1b2e0 | 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 62 | span>.........<span.class="tok-b |
| 1b300 | 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 | uiltin">@compileError</span>(<sp |
| 1b320 | 61 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 | an.class="tok-str">"wrong.y |
| 1b340 | 20 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 | .value"</span>);.....}.}</c |
| 1b360 | 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 |
| 1b380 | 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</ |
| 1b3a0 | 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 |
| 1b3c0 | 20 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 | .test.test_comptime_variables.zi |
| 1b3e0 | 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 76 61 72 69 61 62 | g</kbd>.1/1.test_comptime_variab |
| 1b400 | 6c 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 | les.test.comptime.vars...OK.All. |
| 1b420 | 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 |
| 1b440 | 69 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 | igure>.......................<h2 |
| 1b460 | 20 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 | .id="Integers"><a.href="#toc-Int |
| 1b480 | 65 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 | egers">Integers</a>.<a.class="hd |
| 1b4a0 | 72 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 | r".href="#Integers">..</a></h2>. |
| 1b4c0 | 0a 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 | .......<h3.id="Integer-Literals" |
| 1b4e0 | 3e 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 | ><a.href="#toc-Integer-Literals" |
| 1b500 | 3e 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 | >Integer.Literals</a>.<a.class=" |
| 1b520 | 68 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 | hdr".href="#Integer-Literals">.. |
| 1b540 | 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 63 61 70 | </a></h3>........<figure><figcap |
| 1b560 | 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 |
| 1b580 | 3d 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 | ="file">integer_literals.zig</ci |
| 1b5a0 | 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 |
| 1b5c0 | 20 63 6c 61 73 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 | .class="tok-kw">const</span>.dec |
| 1b5e0 | 69 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 | imal_int.=.<span.class="tok-numb |
| 1b600 | 65 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 | er">98222</span>;.<span.class="t |
| 1b620 | 6f 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 | ok-kw">const</span>.hex_int.=.<s |
| 1b640 | 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 66 66 3c 2f 73 70 61 | pan.class="tok-number">0xff</spa |
| 1b660 | 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</ |
| 1b680 | 73 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 | span>.another_hex_int.=.<span.cl |
| 1b6a0 | 61 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 | ass="tok-number">0xFF</span>;.<s |
| 1b6c0 | 70 61 6e 20 63 6c 61 73 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>. |
| 1b6e0 | 6f 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 | octal_int.=.<span.class="tok-num |
| 1b700 | 62 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 | ber">0o755</span>;.<span.class=" |
| 1b720 | 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 69 6e 74 20 | tok-kw">const</span>.binary_int. |
| 1b740 | 3d 20 3c 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 | =.<span.class="tok-number">0b111 |
| 1b760 | 31 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 | 10000</span>;..<span.class="tok- |
| 1b780 | 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 20 70 | comment">//.underscores.may.be.p |
| 1b7a0 | 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 76 69 | laced.between.two.digits.as.a.vi |
| 1b7c0 | 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 61 73 | sual.separator</span>.<span.clas |
| 1b7e0 | 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 65 5f 62 69 6c 6c | s="tok-kw">const</span>.one_bill |
| 1b800 | 69 6f 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | ion.=.<span.class="tok-number">1 |
| 1b820 | 5f 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 | _000_000_000</span>;.<span.class |
| 1b840 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 69 6e 61 72 79 5f 6d 61 | ="tok-kw">const</span>.binary_ma |
| 1b860 | 73 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 | sk.=.<span.class="tok-number">0b |
| 1b880 | 31 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 | 1_1111_1111</span>;.<span.class= |
| 1b8a0 | 22 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 | "tok-kw">const</span>.permission |
| 1b8c0 | 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 6f 37 | s.=.<span.class="tok-number">0o7 |
| 1b8e0 | 5f 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 | _5_5</span>;.<span.class="tok-kw |
| 1b900 | 22 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 | ">const</span>.big_address.=.<sp |
| 1b920 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 46 46 38 30 5f 30 30 30 | an.class="tok-number">0xFF80_000 |
| 1b940 | 30 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 | 0_0000_0000</span>;</code></pre> |
| 1b960 | 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=" |
| 1b980 | 52 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 | Runtime-Integer-Values"><a.href= |
| 1b9a0 | 22 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 | "#toc-Runtime-Integer-Values">Ru |
| 1b9c0 | 6e 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 | ntime.Integer.Values</a>.<a.clas |
| 1b9e0 | 73 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 | s="hdr".href="#Runtime-Integer-V |
| 1ba00 | 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 20 | alues">..</a></h3>........<p>... |
| 1ba20 | 20 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 | ....Integer.literals.have.no.siz |
| 1ba40 | 65 20 6c 69 6d 69 74 61 74 69 6f 6e 2c 20 61 6e 64 20 69 66 20 61 6e 79 20 75 6e 64 65 66 69 6e | e.limitation,.and.if.any.undefin |
| 1ba60 | 65 64 20 62 65 68 61 76 69 6f 72 20 6f 63 63 75 72 73 2c 0a 20 20 20 20 20 20 74 68 65 20 63 6f | ed.behavior.occurs,.......the.co |
| 1ba80 | 6d 70 69 6c 65 72 20 63 61 74 63 68 65 73 20 69 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | mpiler.catches.it........</p>... |
| 1baa0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 6f 6e 63 65 20 61 6e 20 69 | ....<p>.......However,.once.an.i |
| 1bac0 | 6e 74 65 67 65 72 20 76 61 6c 75 65 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 6b 6e 6f 77 6e 20 | nteger.value.is.no.longer.known. |
| 1bae0 | 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 69 74 20 6d 75 73 74 20 68 61 76 65 20 61 0a | at.compile-time,.it.must.have.a. |
| 1bb00 | 20 20 20 20 20 20 6b 6e 6f 77 6e 20 73 69 7a 65 2c 20 61 6e 64 20 69 73 20 76 75 6c 6e 65 72 61 | ......known.size,.and.is.vulnera |
| 1bb20 | 62 6c 65 20 74 6f 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 2e 0a 20 20 20 20 20 | ble.to.undefined.behavior....... |
| 1bb40 | 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. |
| 1bb60 | 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 |
| 1bb80 | 65 22 3e 72 75 6e 74 69 6d 65 5f 76 73 5f 63 6f 6d 70 74 69 6d 65 2e 7a 69 67 3c 2f 63 69 74 65 | e">runtime_vs_comptime.zig</cite |
| 1bba0 | 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 |
| 1bbc0 | 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 |
| 1bbe0 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 69 76 69 64 65 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 | ass="tok-fn">divide</span>(a:.<s |
| 1bc00 | 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 2c | pan.class="tok-type">i32</span>, |
| 1bc20 | 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | .b:.<span.class="tok-type">i32</ |
| 1bc40 | 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 |
| 1bc60 | 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- |
| 1bc80 | 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2f 20 62 3b 0a 7d 3c 2f 63 6f 64 65 | kw">return</span>.a./.b;.}</code |
| 1bca0 | 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>..... |
| 1bcc0 | 20 20 49 6e 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 2c 20 76 61 6c 75 65 73 20 3c 63 6f 64 65 | ..In.this.function,.values.<code |
| 1bce0 | 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 72 65 | >a</code>.and.<code>b</code>.are |
| 1bd00 | 20 6b 6e 6f 77 6e 20 6f 6e 6c 79 20 61 74 20 72 75 6e 74 69 6d 65 2c 0a 20 20 20 20 20 20 61 6e | .known.only.at.runtime,.......an |
| 1bd20 | 64 20 74 68 75 73 20 74 68 69 73 20 64 69 76 69 73 69 6f 6e 20 6f 70 65 72 61 74 69 6f 6e 20 69 | d.thus.this.division.operation.i |
| 1bd40 | 73 20 76 75 6c 6e 65 72 61 62 6c 65 20 74 6f 20 62 6f 74 68 20 3c 61 20 68 72 65 66 3d 22 23 49 | s.vulnerable.to.both.<a.href="#I |
| 1bd60 | 6e 74 65 67 65 72 2d 4f 76 65 72 66 6c 6f 77 22 3e 49 6e 74 65 67 65 72 20 4f 76 65 72 66 6c 6f | nteger-Overflow">Integer.Overflo |
| 1bd80 | 77 3c 2f 61 3e 20 61 6e 64 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 | w</a>.and.......<a.href="#Divisi |
| 1bda0 | 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 6f 3c 2f 61 3e | on-by-Zero">Division.by.Zero</a> |
| 1bdc0 | 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 65 | ........</p>.......<p>.......Ope |
| 1bde0 | 72 61 74 6f 72 73 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 3e 2b 3c 2f 63 6f 64 65 3e 20 61 6e | rators.such.as.<code>+</code>.an |
| 1be00 | 64 20 3c 63 6f 64 65 3e 2d 3c 2f 63 6f 64 65 3e 20 63 61 75 73 65 20 75 6e 64 65 66 69 6e 65 64 | d.<code>-</code>.cause.undefined |
| 1be20 | 20 62 65 68 61 76 69 6f 72 20 6f 6e 0a 20 20 20 20 20 20 69 6e 74 65 67 65 72 20 6f 76 65 72 66 | .behavior.on.......integer.overf |
| 1be40 | 6c 6f 77 2e 20 41 6c 74 65 72 6e 61 74 69 76 65 20 6f 70 65 72 61 74 6f 72 73 20 61 72 65 20 70 | low..Alternative.operators.are.p |
| 1be60 | 72 6f 76 69 64 65 64 20 66 6f 72 20 77 72 61 70 70 69 6e 67 20 61 6e 64 20 73 61 74 75 72 61 74 | rovided.for.wrapping.and.saturat |
| 1be80 | 69 6e 67 20 61 72 69 74 68 6d 65 74 69 63 20 6f 6e 20 61 6c 6c 20 74 61 72 67 65 74 73 2e 0a 20 | ing.arithmetic.on.all.targets... |
| 1bea0 | 20 20 20 20 20 3c 63 6f 64 65 3e 2b 25 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 2d | .....<code>+%</code>.and.<code>- |
| 1bec0 | 25 3c 2f 63 6f 64 65 3e 20 70 65 72 66 6f 72 6d 20 77 72 61 70 70 69 6e 67 20 61 72 69 74 68 6d | %</code>.perform.wrapping.arithm |
| 1bee0 | 65 74 69 63 0a 20 20 20 20 20 20 77 68 69 6c 65 20 3c 63 6f 64 65 3e 2b 7c 3c 2f 63 6f 64 65 3e | etic.......while.<code>+|</code> |
| 1bf00 | 20 61 6e 64 20 3c 63 6f 64 65 3e 2d 7c 3c 2f 63 6f 64 65 3e 20 70 65 72 66 6f 72 6d 20 73 61 74 | .and.<code>-|</code>.perform.sat |
| 1bf20 | 75 72 61 74 69 6e 67 20 61 72 69 74 68 6d 65 74 69 63 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | urating.arithmetic........</p>.. |
| 1bf40 | 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 61 72 62 69 | .....<p>.......Zig.supports.arbi |
| 1bf60 | 74 72 61 72 79 20 62 69 74 2d 77 69 64 74 68 20 69 6e 74 65 67 65 72 73 2c 20 72 65 66 65 72 65 | trary.bit-width.integers,.refere |
| 1bf80 | 6e 63 65 64 20 62 79 20 75 73 69 6e 67 0a 20 20 20 20 20 20 61 6e 20 69 64 65 6e 74 69 66 69 65 | nced.by.using.......an.identifie |
| 1bfa0 | 72 20 6f 66 20 3c 63 6f 64 65 3e 69 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 3e 75 3c 2f | r.of.<code>i</code>.or.<code>u</ |
| 1bfc0 | 63 6f 64 65 3e 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 64 69 67 69 74 73 2e 20 46 6f 72 20 65 78 | code>.followed.by.digits..For.ex |
| 1bfe0 | 61 6d 70 6c 65 2c 20 74 68 65 20 69 64 65 6e 74 69 66 69 65 72 0a 20 20 20 20 20 20 3c 63 6f 64 | ample,.the.identifier.......<cod |
| 1c000 | 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 37 3c 2f 73 70 61 | e><span.class="tok-type">i7</spa |
| 1c020 | 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 66 65 72 73 20 74 6f 20 61 20 73 69 67 6e 65 64 20 37 2d 62 | n></code>.refers.to.a.signed.7-b |
| 1c040 | 69 74 20 69 6e 74 65 67 65 72 2e 20 54 68 65 20 6d 61 78 69 6d 75 6d 20 61 6c 6c 6f 77 65 64 20 | it.integer..The.maximum.allowed. |
| 1c060 | 62 69 74 2d 77 69 64 74 68 20 6f 66 20 61 6e 0a 20 20 20 20 20 20 69 6e 74 65 67 65 72 20 74 79 | bit-width.of.an.......integer.ty |
| 1c080 | 70 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 75 6d | pe.is.<code><span.class="tok-num |
| 1c0a0 | 62 65 72 22 3e 36 35 35 33 35 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 46 6f 72 20 73 69 | ber">65535</span></code>..For.si |
| 1c0c0 | 67 6e 65 64 20 69 6e 74 65 67 65 72 20 74 79 70 65 73 2c 20 5a 69 67 20 75 73 65 73 20 61 0a 20 | gned.integer.types,.Zig.uses.a.. |
| 1c0e0 | 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 | .....<a.href="https://en.wikiped |
| 1c100 | 69 61 2e 6f 72 67 2f 77 69 6b 69 2f 54 77 6f 27 73 5f 63 6f 6d 70 6c 65 6d 65 6e 74 22 3e 74 77 | ia.org/wiki/Two's_complement">tw |
| 1c120 | 6f 27 73 20 63 6f 6d 70 6c 65 6d 65 6e 74 3c 2f 61 3e 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f | o's.complement</a>.representatio |
| 1c140 | 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 3a | n........</p>.......<p>See.also: |
| 1c160 | 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 57 72 61 70 70 69 6e 67 2d | </p><ul>.<li><a.href="#Wrapping- |
| 1c180 | 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 61 74 69 6f 6e 73 3c | Operations">Wrapping.Operations< |
| 1c1a0 | 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 20 20 | /a></li>.</ul>.................. |
| 1c1c0 | 20 20 20 20 3c 68 32 20 69 64 3d 22 46 6c 6f 61 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | ....<h2.id="Floats"><a.href="#to |
| 1c1e0 | 63 2d 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | c-Floats">Floats</a>.<a.class="h |
| 1c200 | 64 72 22 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a | dr".href="#Floats">..</a></h2>.. |
| 1c220 | 20 20 20 20 20 20 3c 70 3e 5a 69 67 20 68 61 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 | ......<p>Zig.has.the.following.f |
| 1c240 | 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 74 79 70 65 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | loating.point.types:</p>.......< |
| 1c260 | 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 6e 20 63 6c | ul>...........<li><code><span.cl |
| 1c280 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 31 36 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-type">f16</span></code> |
| 1c2a0 | 20 2d 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 31 36 3c 2f 6c 69 3e 0a 20 | .-.IEEE-754-2008.binary16</li>.. |
| 1c2c0 | 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=" |
| 1c2e0 | 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 49 45 | tok-type">f32</span></code>.-.IE |
| 1c300 | 45 45 2d 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 33 32 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | EE-754-2008.binary32</li>....... |
| 1c320 | 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 74 | ....<li><code><span.class="tok-t |
| 1c340 | 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 49 45 45 45 2d 37 35 | ype">f64</span></code>.-.IEEE-75 |
| 1c360 | 34 2d 32 30 30 38 20 62 69 6e 61 72 79 36 34 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | 4-2008.binary64</li>...........< |
| 1c380 | 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 22 3e | li><code><span.class="tok-type"> |
| 1c3a0 | 66 38 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 49 45 45 45 2d 37 35 34 2d 32 30 30 | f80</span></code>.-.IEEE-754-200 |
| 1c3c0 | 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 2f 6c 69 3e | 8.80-bit.extended.precision</li> |
| 1c3e0 | 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 |
| 1c400 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 31 32 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d | ="tok-type">f128</span></code>.- |
| 1c420 | 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 31 32 38 3c 2f 6c 69 3e 0a 20 20 | .IEEE-754-2008.binary128</li>... |
| 1c440 | 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 |
| 1c460 | 6f 6b 2d 74 79 70 65 22 3e 63 5f 6c 6f 6e 67 64 6f 75 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ok-type">c_longdouble</span></co |
| 1c480 | 64 65 3e 20 2d 20 6d 61 74 63 68 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 6c 6f | de>.-.matches.<code.class="c">lo |
| 1c4a0 | 6e 67 20 64 6f 75 62 6c 65 3c 2f 63 6f 64 65 3e 20 66 6f 72 20 74 68 65 20 74 61 72 67 65 74 20 | ng.double</code>.for.the.target. |
| 1c4c0 | 43 20 41 42 49 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 68 33 | C.ABI</li>.......</ul>.......<h3 |
| 1c4e0 | 20 69 64 3d 22 46 6c 6f 61 74 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | .id="Float-Literals"><a.href="#t |
| 1c500 | 6f 63 2d 46 6c 6f 61 74 2d 4c 69 74 65 72 61 6c 73 22 3e 46 6c 6f 61 74 20 4c 69 74 65 72 61 6c | oc-Float-Literals">Float.Literal |
| 1c520 | 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 46 6c 6f 61 | s</a>.<a.class="hdr".href="#Floa |
| 1c540 | 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 20 20 20 3c | t-Literals">..</a></h3>........< |
| 1c560 | 70 3e 0a 20 20 20 20 20 20 46 6c 6f 61 74 20 6c 69 74 65 72 61 6c 73 20 68 61 76 65 20 74 79 70 | p>.......Float.literals.have.typ |
| 1c580 | 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 63 | e.<code><span.class="tok-type">c |
| 1c5a0 | 6f 6d 70 74 69 6d 65 5f 66 6c 6f 61 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 68 69 63 | omptime_float</span></code>.whic |
| 1c5c0 | 68 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 68 61 76 65 0a 20 20 20 20 20 20 74 68 | h.is.guaranteed.to.have.......th |
| 1c5e0 | 65 20 73 61 6d 65 20 70 72 65 63 69 73 69 6f 6e 20 61 6e 64 20 6f 70 65 72 61 74 69 6f 6e 73 20 | e.same.precision.and.operations. |
| 1c600 | 6f 66 20 74 68 65 20 6c 61 72 67 65 73 74 20 6f 74 68 65 72 20 66 6c 6f 61 74 69 6e 67 20 70 6f | of.the.largest.other.floating.po |
| 1c620 | 69 6e 74 20 74 79 70 65 2c 20 77 68 69 63 68 20 69 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c | int.type,.which.is.......<code>< |
| 1c640 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 31 32 38 3c 2f 73 70 61 6e | span.class="tok-type">f128</span |
| 1c660 | 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 20 | ></code>........</p>.......<p>.. |
| 1c680 | 20 20 20 20 20 46 6c 6f 61 74 20 6c 69 74 65 72 61 6c 73 20 3c 61 20 68 72 65 66 3d 22 23 54 79 | .....Float.literals.<a.href="#Ty |
| 1c6a0 | 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 63 6f 65 72 63 65 3c 2f 61 3e 20 74 6f 20 61 6e 79 20 66 | pe-Coercion">coerce</a>.to.any.f |
| 1c6c0 | 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 74 79 70 65 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 6f | loating.point.type,.......and.to |
| 1c6e0 | 20 61 6e 79 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 | .any.<a.href="#Integers">integer |
| 1c700 | 3c 2f 61 3e 20 74 79 70 65 20 77 68 65 6e 20 74 68 65 72 65 20 69 73 20 6e 6f 20 66 72 61 63 74 | </a>.type.when.there.is.no.fract |
| 1c720 | 69 6f 6e 61 6c 20 63 6f 6d 70 6f 6e 65 6e 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ional.component........</p>..... |
| 1c740 | 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 |
| 1c760 | 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 6c | -cap"><cite.class="file">float_l |
| 1c780 | 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 3e 3c | iterals.zig</cite></figcaption>< |
| 1c7a0 | 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 |
| 1c7c0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 6c 6f 61 74 69 6e 67 5f 70 6f 69 6e 74 20 3d 20 3c 73 70 | onst</span>.floating_point.=.<sp |
| 1c7e0 | 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 45 2b 37 37 3c | an.class="tok-number">123.0E+77< |
| 1c800 | 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 6e | /span>;.<span.class="tok-kw">con |
| 1c820 | 73 74 3c 2f 73 70 61 6e 3e 20 61 6e 6f 74 68 65 72 5f 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 | st</span>.another_float.=.<span. |
| 1c840 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 2e 30 3c 2f 73 70 61 6e 3e 3b | class="tok-number">123.0</span>; |
| 1c860 | 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 |
| 1c880 | 6e 3e 20 79 65 74 5f 61 6e 6f 74 68 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n>.yet_another.=.<span.class="to |
| 1c8a0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 2e 30 65 2b 37 37 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 | k-number">123.0e+77</span>;..<sp |
| 1c8c0 | 61 6e 20 63 6c 61 73 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 | an.class="tok-kw">const</span>.h |
| 1c8e0 | 65 78 5f 66 6c 6f 61 74 69 6e 67 5f 70 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ex_floating_point.=.<span.class= |
| 1c900 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 30 33 2e 37 30 70 2d 35 3c 2f 73 70 61 6e 3e 3b | "tok-number">0x103.70p-5</span>; |
| 1c920 | 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 |
| 1c940 | 6e 3e 20 61 6e 6f 74 68 65 72 5f 68 65 78 5f 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | n>.another_hex_float.=.<span.cla |
| 1c960 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 30 33 2e 37 30 3c 2f 73 70 61 6e 3e 3b | ss="tok-number">0x103.70</span>; |
| 1c980 | 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 |
| 1c9a0 | 6e 3e 20 79 65 74 5f 61 6e 6f 74 68 65 72 5f 68 65 78 5f 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e | n>.yet_another_hex_float.=.<span |
| 1c9c0 | 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 50 2d 35 3c | .class="tok-number">0x103.70P-5< |
| 1c9e0 | 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 6f 6d 6d 65 6e | /span>;..<span.class="tok-commen |
| 1ca00 | 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 61 63 65 64 20 | t">//.underscores.may.be.placed. |
| 1ca20 | 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 75 61 6c 20 73 | between.two.digits.as.a.visual.s |
| 1ca40 | 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 3d 22 74 6f 6b | eparator</span>.<span.class="tok |
| 1ca60 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 67 68 74 73 70 65 65 64 20 3d 20 3c | -kw">const</span>.lightspeed.=.< |
| 1ca80 | 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 39 5f 37 39 32 5f | span.class="tok-number">299_792_ |
| 1caa0 | 34 35 38 2e 30 30 30 5f 30 30 30 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | 458.000_000</span>;.<span.class= |
| 1cac0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 61 6e 6f 73 65 63 6f 6e 64 | "tok-kw">const</span>.nanosecond |
| 1cae0 | 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 30 30 | .=.<span.class="tok-number">0.00 |
| 1cb00 | 30 5f 30 30 30 5f 30 30 31 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | 0_000_001</span>;.<span.class="t |
| 1cb20 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 6f 72 65 5f 68 65 78 20 3d 20 3c | ok-kw">const</span>.more_hex.=.< |
| 1cb40 | 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 33 34 5f 35 | span.class="tok-number">0x1234_5 |
| 1cb60 | 36 37 38 2e 39 41 42 43 5f 43 44 45 46 70 2d 31 30 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e | 678.9ABC_CDEFp-10</span>;</code> |
| 1cb80 | 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>...... |
| 1cba0 | 20 54 68 65 72 65 20 69 73 20 6e 6f 20 73 79 6e 74 61 78 20 66 6f 72 20 4e 61 4e 2c 20 69 6e 66 | .There.is.no.syntax.for.NaN,.inf |
| 1cbc0 | 69 6e 69 74 79 2c 20 6f 72 20 6e 65 67 61 74 69 76 65 20 69 6e 66 69 6e 69 74 79 2e 20 46 6f 72 | inity,.or.negative.infinity..For |
| 1cbe0 | 20 74 68 65 73 65 20 73 70 65 63 69 61 6c 20 76 61 6c 75 65 73 2c 0a 20 20 20 20 20 20 6f 6e 65 | .these.special.values,.......one |
| 1cc00 | 20 6d 75 73 74 20 75 73 65 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 3a 0a | .must.use.the.standard.library:. |
| 1cc20 | 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 |
| 1cc40 | 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 |
| 1cc60 | 3d 22 66 69 6c 65 22 3e 66 6c 6f 61 74 5f 73 70 65 63 69 61 6c 5f 76 61 6c 75 65 73 2e 7a 69 67 | ="file">float_special_values.zig |
| 1cc80 | 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>< |
| 1cca0 | 73 70 61 6e 20 63 6c 61 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> |
| 1ccc0 | 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" |
| 1cce0 | 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 |
| 1cd00 | 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>);.. |
| 1cd20 | 3c 73 70 61 6e 20 63 6c 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 |
| 1cd40 | 3e 20 69 6e 66 20 3d 20 73 74 64 2e 6d 61 74 68 2e 69 6e 66 28 3c 73 70 61 6e 20 63 6c 61 73 73 | >.inf.=.std.math.inf(<span.class |
| 1cd60 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 | ="tok-type">f32</span>);.<span.c |
| 1cd80 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 65 67 61 74 | lass="tok-kw">const</span>.negat |
| 1cda0 | 69 76 65 5f 69 6e 66 20 3d 20 2d 73 74 64 2e 6d 61 74 68 2e 69 6e 66 28 3c 73 70 61 6e 20 63 6c | ive_inf.=.-std.math.inf(<span.cl |
| 1cdc0 | 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 3b 0a 3c 73 70 61 | ass="tok-type">f64</span>);.<spa |
| 1cde0 | 6e 20 63 6c 61 73 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 |
| 1ce00 | 6e 20 3d 20 73 74 64 2e 6d 61 74 68 2e 6e 61 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n.=.std.math.nan(<span.class="to |
| 1ce20 | 6b 2d 74 79 70 65 22 3e 66 31 32 38 3c 2f 73 70 61 6e 3e 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | k-type">f128</span>);</code></pr |
| 1ce40 | 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 |
| 1ce60 | 3d 22 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 3c 61 20 | ="Floating-Point-Operations"><a. |
| 1ce80 | 68 72 65 66 3d 22 23 74 6f 63 2d 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 | href="#toc-Floating-Point-Operat |
| 1cea0 | 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 74 69 6f 6e 73 3c | ions">Floating.Point.Operations< |
| 1cec0 | 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 6c 6f 61 74 69 | /a>.<a.class="hdr".href="#Floati |
| 1cee0 | 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e | ng-Point-Operations">..</a></h3> |
| 1cf00 | 0a 0a 20 20 20 20 20 20 3c 70 3e 42 79 20 64 65 66 61 75 6c 74 20 66 6c 6f 61 74 69 6e 67 20 70 | ........<p>By.default.floating.p |
| 1cf20 | 6f 69 6e 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 75 73 65 20 3c 63 6f 64 65 3e 53 74 72 69 63 74 | oint.operations.use.<code>Strict |
| 1cf40 | 3c 2f 63 6f 64 65 3e 20 6d 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 20 20 62 75 74 20 79 6f 75 20 | </code>.mode,...........but.you. |
| 1cf60 | 63 61 6e 20 73 77 69 74 63 68 20 74 6f 20 3c 63 6f 64 65 3e 4f 70 74 69 6d 69 7a 65 64 3c 2f 63 | can.switch.to.<code>Optimized</c |
| 1cf80 | 6f 64 65 3e 20 6d 6f 64 65 20 6f 6e 20 61 20 70 65 72 2d 62 6c 6f 63 6b 20 62 61 73 69 73 3a 3c | ode>.mode.on.a.per-block.basis:< |
| 1cfa0 | 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 |
| 1cfc0 | 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" |
| 1cfe0 | 3e 66 6c 6f 61 74 5f 6d 6f 64 65 5f 6f 62 6a 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 | >float_mode_obj.zig</cite></figc |
| 1d000 | 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 |
| 1d020 | 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. |
| 1d040 | 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 |
| 1d060 | 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 |
| 1d080 | 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 |
| 1d0a0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 69 67 20 3d 20 3c 73 70 61 6e 20 | ok-kw">const</span>.big.=.<span. |
| 1d0c0 | 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 3c | class="tok-builtin">@as</span>(< |
| 1d0e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e | span.class="tok-type">f64</span> |
| 1d100 | 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 |
| 1d120 | 61 6e 3e 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 75 | an>.<<.<span.class="tok-nu |
| 1d140 | 6d 62 65 72 22 3e 34 30 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | mber">40</span>);..<span.class=" |
| 1d160 | 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">export</span>.<span.clas |
| 1d180 | 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 |
| 1d1a0 | 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 6e 3e 28 78 3a 20 3c | ="tok-fn">foo_strict</span>(x:.< |
| 1d1c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e | span.class="tok-type">f64</span> |
| 1d1e0 | 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 70 | ).<span.class="tok-type">f64</sp |
| 1d200 | 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 |
| 1d220 | 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 78 20 2b 20 62 69 67 20 2d 20 62 69 67 3b 0a 7d 0a 0a 3c | eturn</span>.x.+.big.-.big;.}..< |
| 1d240 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e | span.class="tok-kw">export</span |
| 1d260 | 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> |
| 1d280 | 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 5f 6f 70 74 69 6d 69 | .<span.class="tok-fn">foo_optimi |
| 1d2a0 | 7a 65 64 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 74 | zed</span>(x:.<span.class="tok-t |
| 1d2c0 | 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ype">f64</span>).<span.class="to |
| 1d2e0 | 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | k-type">f64</span>.{.....<span.c |
| 1d300 | 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 4d 6f 64 65 | lass="tok-builtin">@setFloatMode |
| 1d320 | 3c 2f 73 70 61 6e 3e 28 2e 6f 70 74 69 6d 69 7a 65 64 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | </span>(.optimized);.....<span.c |
| 1d340 | 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 78 20 2b 20 | lass="tok-kw">return</span>.x.+. |
| 1d360 | 62 69 67 20 2d 20 62 69 67 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | big.-.big;.}</code></pre></figur |
| 1d380 | 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 |
| 1d3a0 | 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>< |
| 1d3c0 | 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 66 6c 6f 61 74 5f | samp>$.<kbd>zig.build-obj.float_ |
| 1d3e0 | 6d 6f 64 65 5f 6f 62 6a 2e 7a 69 67 20 2d 4f 20 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 6b 62 64 | mode_obj.zig.-O.ReleaseFast</kbd |
| 1d400 | 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 20 | >.</samp></pre></figure>........ |
| 1d420 | 3c 70 3e 46 6f 72 20 74 68 69 73 20 74 65 73 74 20 77 65 20 68 61 76 65 20 74 6f 20 73 65 70 61 | <p>For.this.test.we.have.to.sepa |
| 1d440 | 72 61 74 65 20 63 6f 64 65 20 69 6e 74 6f 20 74 77 6f 20 6f 62 6a 65 63 74 20 66 69 6c 65 73 20 | rate.code.into.two.object.files. |
| 1d460 | 2d 0a 20 20 20 20 20 20 6f 74 68 65 72 77 69 73 65 20 74 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 | -.......otherwise.the.optimizer. |
| 1d480 | 66 69 67 75 72 65 73 20 6f 75 74 20 61 6c 6c 20 74 68 65 20 76 61 6c 75 65 73 20 61 74 20 63 6f | figures.out.all.the.values.at.co |
| 1d4a0 | 6d 70 69 6c 65 2d 74 69 6d 65 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 6f 70 65 72 61 74 65 73 | mpile-time,.......which.operates |
| 1d4c0 | 20 69 6e 20 73 74 72 69 63 74 20 6d 6f 64 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 | .in.strict.mode.</p>.......<figu |
| 1d4e0 | 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">< |
| 1d500 | 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 66 6c 6f 61 74 5f 6d 6f 64 65 5f 65 78 65 | cite.class="file">float_mode_exe |
| 1d520 | 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 |
| 1d540 | 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 |
| 1d560 | 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 75 | pan>.print.=.<span.class="tok-bu |
| 1d580 | 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 |
| 1d5a0 | 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 |
| 1d5c0 | 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 74 | n>).debug.print;..<span.class="t |
| 1d5e0 | 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-kw">extern</span>.<span.class |
| 1d600 | 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= |
| 1d620 | 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 5f 73 74 72 69 63 74 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 | "tok-fn">foo_strict</span>(x:.<s |
| 1d640 | 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 29 | pan.class="tok-type">f64</span>) |
| 1d660 | 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 |
| 1d680 | 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 65 72 6e 3c | n>;.<span.class="tok-kw">extern< |
| 1d6a0 | 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</ |
| 1d6c0 | 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 5f 6f | span>.<span.class="tok-fn">foo_o |
| 1d6e0 | 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 73 3d 22 | ptimized</span>(x:.<span.class=" |
| 1d700 | 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-type">f64</span>).<span.clas |
| 1d720 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 | s="tok-type">f64</span>;..<span. |
| 1d740 | 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. |
| 1d760 | 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 |
| 1d780 | 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 |
| 1d7a0 | 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>.{ |
| 1d7c0 | 0a 20 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< |
| 1d7e0 | 2f 73 70 61 6e 3e 20 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | /span>.x.=.<span.class="tok-numb |
| 1d800 | 65 72 22 3e 30 2e 30 30 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 | er">0.001</span>;.....print(<spa |
| 1d820 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6f 70 74 69 6d 69 7a 65 | n.class="tok-str">"optimize |
| 1d840 | 64 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 6f 70 74 | d.=.{}\n"</span>,..{foo_opt |
| 1d860 | 69 6d 69 7a 65 64 28 78 29 7d 29 3b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 | imized(x)});.....print(<span.cla |
| 1d880 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 72 69 63 74 20 3d 20 7b 7d 5c 6e | ss="tok-str">"strict.=.{}\n |
| 1d8a0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 66 6f 6f 5f 73 74 72 69 63 74 28 78 29 7d 29 | "</span>,..{foo_strict(x)}) |
| 1d8c0 | 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>....... |
| 1d8e0 | 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 |
| 1d900 | 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< |
| 1d920 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d | /a></li>.<li><a.href="#Division- |
| 1d940 | 62 79 2d 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 | by-Zero">Division.by.Zero</a></l |
| 1d960 | 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | i>.</ul>......................<h |
| 1d980 | 32 20 69 64 3d 22 4f 70 65 72 61 74 6f 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4f | 2.id="Operators"><a.href="#toc-O |
| 1d9a0 | 70 65 72 61 74 6f 72 73 22 3e 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | perators">Operators</a>.<a.class |
| 1d9c0 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4f 70 65 72 61 74 6f 72 73 22 3e c2 a7 3c 2f 61 3e 3c | ="hdr".href="#Operators">..</a>< |
| 1d9e0 | 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 72 65 20 69 73 20 6e | /h2>........<p>.......There.is.n |
| 1da00 | 6f 20 6f 70 65 72 61 74 6f 72 20 6f 76 65 72 6c 6f 61 64 69 6e 67 2e 20 57 68 65 6e 20 79 6f 75 | o.operator.overloading..When.you |
| 1da20 | 20 73 65 65 20 61 6e 20 6f 70 65 72 61 74 6f 72 20 69 6e 20 5a 69 67 2c 20 79 6f 75 20 6b 6e 6f | .see.an.operator.in.Zig,.you.kno |
| 1da40 | 77 20 74 68 61 74 0a 20 20 20 20 20 20 69 74 20 69 73 20 64 6f 69 6e 67 20 73 6f 6d 65 74 68 69 | w.that.......it.is.doing.somethi |
| 1da60 | 6e 67 20 66 72 6f 6d 20 74 68 69 73 20 74 61 62 6c 65 2c 20 61 6e 64 20 6e 6f 74 68 69 6e 67 20 | ng.from.this.table,.and.nothing. |
| 1da80 | 65 6c 73 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 54 | else........</p>.......<h3.id="T |
| 1daa0 | 61 62 6c 65 2d 6f 66 2d 4f 70 65 72 61 74 6f 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | able-of-Operators"><a.href="#toc |
| 1dac0 | 2d 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 20 6f 66 20 4f 70 | -Table-of-Operators">Table.of.Op |
| 1dae0 | 65 72 61 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 | erators</a>.<a.class="hdr".href= |
| 1db00 | 22 23 54 61 62 6c 65 2d 6f 66 2d 4f 70 65 72 61 74 6f 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 | "#Table-of-Operators">..</a></h3 |
| 1db20 | 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 72 61 70 70 | >........<div.class="table-wrapp |
| 1db40 | 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 |
| 1db60 | 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 |
| 1db80 | 6f 70 65 3d 22 63 6f 6c 22 3e 4e 61 6d 65 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | ope="col">Name</th>...........<t |
| 1dba0 | 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 53 79 6e 74 61 78 3c 2f 74 68 3e 0a 20 20 20 20 20 20 | h.scope="col">Syntax</th>....... |
| 1dbc0 | 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 54 79 70 65 73 3c 2f 74 68 3e 0a 20 | ....<th.scope="col">Types</th>.. |
| 1dbe0 | 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 6d 61 72 6b 73 | .........<th.scope="col">Remarks |
| 1dc00 | 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 3e | </th>...........<th.scope="col"> |
| 1dc20 | 45 78 61 6d 70 6c 65 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 | Example</th>.........</tr>...... |
| 1dc40 | 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 0a 20 20 20 20 | ...</thead>.........<tbody>..... |
| 1dc60 | 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 69 74 69 6f 6e 3c | ....<tr>...........<td>Addition< |
| 1dc80 | 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 20 | /td>...........<td><pre><code>a. |
| 1dca0 | 2b 20 62 0a 61 20 2b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 | +.b.a.+=.b</code></pre></td>.... |
| 1dcc0 | 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>.... |
| 1dce0 | 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 |
| 1dd00 | 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>............ |
| 1dd20 | 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 73 3c | ...<li><a.href="#Floats">Floats< |
| 1dd40 | 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>...... |
| 1dd60 | 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>....... |
| 1dd80 | 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e | ......<ul>...............<li>Can |
| 1dda0 | 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 | .cause.<a.href="#Default-Operati |
| 1ddc0 | 6f 6e 73 22 3e 6f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c | ons">overflow</a>.for.integers.< |
| 1dde0 | 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 3c | /li>...............<li>Invokes.< |
| 1de00 | 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 |
| 1de20 | 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. |
| 1de40 | 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 69 | operands.</li>...............<li |
| 1de60 | 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 66 | >See.also.<a.href="#addWithOverf |
| 1de80 | 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 0a | low">@addWithOverflow</a>.</li>. |
| 1dea0 | 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 |
| 1dec0 | 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 |
| 1dee0 | 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 22 | e><code><span.class="tok-number" |
| 1df00 | 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 6e 75 6d | >2</span>.+.<span.class="tok-num |
| 1df20 | 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ber">5</span>.==.<span.class="to |
| 1df40 | 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | k-number">7</span></code></pre>. |
| 1df60 | 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>... |
| 1df80 | 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 6e | ......<tr>...........<td>Wrappin |
| 1dfa0 | 67 20 41 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 | g.Addition</td>...........<td><p |
| 1dfc0 | 72 65 3e 3c 63 6f 64 65 3e 61 20 2b 25 20 62 0a 61 20 2b 25 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f | re><code>a.+%.b.a.+%=.b</code></ |
| 1dfe0 | 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>........ |
| 1e000 | 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 |
| 1e020 | 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 |
| 1e040 | 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>...........</ |
| 1e060 | 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>.............< |
| 1e080 | 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 70 6c | ul>...............<li>Twos-compl |
| 1e0a0 | 65 6d 65 6e 74 20 77 72 61 70 70 69 6e 67 20 62 65 68 61 76 69 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 | ement.wrapping.behavior.</li>... |
| 1e0c0 | 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 3d | ............<li>Invokes.<a.href= |
| 1e0e0 | 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 70 | "#Peer-Type-Resolution">Peer.Typ |
| 1e100 | 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 64 | e.Resolution</a>.for.the.operand |
| 1e120 | 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 61 6c | s.</li>...............<li>See.al |
| 1e140 | 73 6f 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 77 22 3e 40 61 | so.<a.href="#addWithOverflow">@a |
| 1e160 | 64 64 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 20 20 | ddWithOverflow</a>.</li>........ |
| 1e180 | 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>...... |
| 1e1a0 | 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 |
| 1e1c0 | 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</ |
| 1e1e0 | 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 |
| 1e200 | 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 |
| 1e220 | 22 3e 30 78 66 66 66 66 66 66 66 66 3c 2f 73 70 61 6e 3e 29 20 2b 25 20 3c 73 70 61 6e 20 63 6c | ">0xffffffff</span>).+%.<span.cl |
| 1e240 | 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 70 | ass="tok-number">1</span>.==.<sp |
| 1e260 | 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 2f | an.class="tok-number">0</span></ |
| 1e280 | 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>..... |
| 1e2a0 | 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>.......... |
| 1e2c0 | 20 3c 74 64 3e 53 61 74 75 72 61 74 69 6e 67 20 41 64 64 69 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 | .<td>Saturating.Addition</td>... |
| 1e2e0 | 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 2b 7c 20 62 0a 61 20 | ........<td><pre><code>a.+|.b.a. |
| 1e300 | 2b 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 20 20 20 20 20 20 | +|=.b</code></pre></td>......... |
| 1e320 | 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>......... |
| 1e340 | 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 |
| 1e360 | 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c | tegers</a></li>.............</ul |
| 1e380 | 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> |
| 1e3a0 | 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>............... |
| 1e3c0 | 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 70 65 2d | <li>Invokes.<a.href="#Peer-Type- |
| 1e3e0 | 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e | Resolution">Peer.Type.Resolution |
| 1e400 | 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 20 20 20 | </a>.for.the.operands.</li>..... |
| 1e420 | 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>... |
| 1e440 | 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 |
| 1e460 | 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 61 | ode><span.class="tok-builtin">@a |
| 1e480 | 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | s</span>(<span.class="tok-type"> |
| 1e4a0 | 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | u8</span>,.<span.class="tok-numb |
| 1e4c0 | 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 29 20 2b 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | er">255</span>).+|.<span.class=" |
| 1e4e0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | tok-number">1</span>.==.<span.cl |
| 1e500 | 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 |
| 1e520 | 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 3c | an.class="tok-type">u8</span>,.< |
| 1e540 | 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 |
| 1e560 | 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e | n>)</code></pre>...........</td> |
| 1e580 | 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>..... |
| 1e5a0 | 20 20 20 20 20 20 3c 74 64 3e 53 75 62 74 72 61 63 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 | ......<td>Subtraction</td>...... |
| 1e5c0 | 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 2d 20 62 0a 61 20 2d 3d 20 62 | .....<td><pre><code>a.-.b.a.-=.b |
| 1e5e0 | 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 |
| 1e600 | 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>.............. |
| 1e620 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 | .<li><a.href="#Integers">Integer |
| 1e640 | 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | s</a></li>...............<li><a. |
| 1e660 | 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | href="#Floats">Floats</a></li>.. |
| 1e680 | 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> |
| 1e6a0 | 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> |
| 1e6c0 | 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 20 3c 61 20 | ...............<li>Can.cause.<a. |
| 1e6e0 | 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 76 65 72 66 | href="#Default-Operations">overf |
| 1e700 | 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 20 20 20 20 | low</a>.for.integers.</li>...... |
| 1e720 | 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 50 | .........<li>Invokes.<a.href="#P |
| 1e740 | 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 |
| 1e760 | 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 3c | esolution</a>.for.the.operands.< |
| 1e780 | 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 6f 20 | /li>...............<li>See.also. |
| 1e7a0 | 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 40 73 75 62 57 | <a.href="#subWithOverflow">@subW |
| 1e7c0 | 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 20 20 20 20 20 | ithOverflow</a>.</li>........... |
| 1e7e0 | 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>......... |
| 1e800 | 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 73 | ..<td>.............<pre><code><s |
| 1e820 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-number">2</span>. |
| 1e840 | 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 35 3c 2f 73 70 | -.<span.class="tok-number">5</sp |
| 1e860 | 61 6e 3e 20 3d 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | an>.==.-<span.class="tok-number" |
| 1e880 | 3e 33 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 | >3</span></code></pre>.......... |
| 1e8a0 | 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 |
| 1e8c0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 57 72 61 70 70 69 6e 67 20 53 75 62 74 72 61 63 | >...........<td>Wrapping.Subtrac |
| 1e8e0 | 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 |
| 1e900 | 64 65 3e 61 20 2d 25 20 62 0a 61 20 2d 25 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f | de>a.-%.b.a.-%=.b</code></pre></ |
| 1e920 | 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>.............< |
| 1e940 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | ul>...............<li><a.href="# |
| 1e960 | 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | Integers">Integers</a></li>..... |
| 1e980 | 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>... |
| 1e9a0 | 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>... |
| 1e9c0 | 20 20 20 20 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 | ............<li>Twos-complement. |
| 1e9e0 | 77 72 61 70 70 69 6e 67 20 62 65 68 61 76 69 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | wrapping.behavior.</li>......... |
| 1ea00 | 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 | ......<li>Invokes.<a.href="#Peer |
| 1ea20 | 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 |
| 1ea40 | 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 | lution</a>.for.the.operands.</li |
| 1ea60 | 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 20 | >...............<li>See.also.<a. |
| 1ea80 | 68 72 65 66 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 | href="#subWithOverflow">@subWith |
| 1eaa0 | 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | Overflow</a>.</li>.............< |
| 1eac0 | 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>...........< |
| 1eae0 | 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 6e | td>.............<pre><code><span |
| 1eb00 | 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>( |
| 1eb20 | 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> |
| 1eb40 | 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 |
| 1eb60 | 61 6e 3e 29 20 2d 25 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | an>).-%.<span.class="tok-number" |
| 1eb80 | 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 75 | >1</span>.==.<span.class="tok-nu |
| 1eba0 | 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>... |
| 1ebc0 | 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>..... |
| 1ebe0 | 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 |
| 1ec00 | 67 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 | g.Subtraction</td>...........<td |
| 1ec20 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 2d 7c 20 62 0a 61 20 2d 7c 3d 20 62 3c 2f 63 6f 64 65 | ><pre><code>a.-|.b.a.-|=.b</code |
| 1ec40 | 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>..... |
| 1ec60 | 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>< |
| 1ec80 | 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>< |
| 1eca0 | 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>.......... |
| 1ecc0 | 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | .</td>...........<td>........... |
| 1ece0 | 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 6b 65 73 | ..<ul>...............<li>Invokes |
| 1ed00 | 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 | .<a.href="#Peer-Type-Resolution" |
| 1ed20 | 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 | >Peer.Type.Resolution</a>.for.th |
| 1ed40 | 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 3c 2f 75 | e.operands.</li>.............</u |
| 1ed60 | 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 |
| 1ed80 | 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 |
| 1eda0 | 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 |
| 1edc0 | 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>, |
| 1ede0 | 20 3c 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 |
| 1ee00 | 6e 3e 29 20 2d 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 | n>).-|.<span.class="tok-number"> |
| 1ee20 | 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 75 6d | 1</span>.==.<span.class="tok-num |
| 1ee40 | 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | ber">0</span></code></pre>...... |
| 1ee60 | 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>........ |
| 1ee80 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4e 65 67 61 74 69 6f 6e 3c 2f 74 64 | .<tr>...........<td>Negation</td |
| 1eea0 | 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 2d 61 3c 2f 63 | >...........<td><pre><code>-a</c |
| 1eec0 | 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>.. |
| 1eee0 | 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 |
| 1ef00 | 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</ |
| 1ef20 | 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 |
| 1ef40 | 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 20 | f="#Floats">Floats</a></li>..... |
| 1ef60 | 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>... |
| 1ef80 | 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>... |
| 1efa0 | 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 65 | ............<li>Can.cause.<a.hre |
| 1efc0 | 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 6f 76 65 72 66 6c 6f 77 | f="#Default-Operations">overflow |
| 1efe0 | 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | </a>.for.integers.</li>......... |
| 1f000 | 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>....... |
| 1f020 | 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> |
| 1f040 | 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 70 61 | -<span.class="tok-number">1</spa |
| 1f060 | 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 30 | n>.==.<span.class="tok-number">0 |
| 1f080 | 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 |
| 1f0a0 | 72 22 3e 31 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 | r">1</span></code></pre>........ |
| 1f0c0 | 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>.........< |
| 1f0e0 | 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 20 4e 65 67 61 74 | tr>...........<td>Wrapping.Negat |
| 1f100 | 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 64 | ion</td>...........<td><pre><cod |
| 1f120 | 65 3e 2d 25 61 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | e>-%a</code></pre></td>......... |
| 1f140 | 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>......... |
| 1f160 | 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 |
| 1f180 | 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c | tegers</a></li>.............</ul |
| 1f1a0 | 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> |
| 1f1c0 | 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>............... |
| 1f1e0 | 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 68 | <li>Twos-complement.wrapping.beh |
| 1f200 | 61 76 69 6f 72 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 | avior.</li>.............</ul>... |
| 1f220 | 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>.... |
| 1f240 | 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 2d 25 3c 73 70 61 6e 20 63 6c 61 73 | .........<pre><code>-%<span.clas |
| 1f260 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | s="tok-builtin">@as</span>(<span |
| 1f280 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 20 2d 3c 73 | .class="tok-type">i8</span>,.-<s |
| 1f2a0 | 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 |
| 1f2c0 | 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 6d 62 65 72 22 3e | >).==.-<span.class="tok-number"> |
| 1f2e0 | 31 32 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 20 20 | 128</span></code></pre>......... |
| 1f300 | 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 |
| 1f320 | 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4d 75 6c 74 69 70 6c 69 63 61 74 69 6f 6e 3c | r>...........<td>Multiplication< |
| 1f340 | 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 20 | /td>...........<td><pre><code>a. |
| 1f360 | 2a 20 62 0a 61 20 2a 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 | *.b.a.*=.b</code></pre></td>.... |
| 1f380 | 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>.... |
| 1f3a0 | 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 |
| 1f3c0 | 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>............ |
| 1f3e0 | 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 73 3c | ...<li><a.href="#Floats">Floats< |
| 1f400 | 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>...... |
| 1f420 | 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>....... |
| 1f440 | 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e | ......<ul>...............<li>Can |
| 1f460 | 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 | .cause.<a.href="#Default-Operati |
| 1f480 | 6f 6e 73 22 3e 6f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c | ons">overflow</a>.for.integers.< |
| 1f4a0 | 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 3c | /li>...............<li>Invokes.< |
| 1f4c0 | 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 |
| 1f4e0 | 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. |
| 1f500 | 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 69 | operands.</li>...............<li |
| 1f520 | 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 74 68 4f 76 65 72 66 | >See.also.<a.href="#mulWithOverf |
| 1f540 | 6c 6f 77 22 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a | low">@mulWithOverflow</a>.</li>. |
| 1f560 | 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 |
| 1f580 | 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 |
| 1f5a0 | 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 22 | e><code><span.class="tok-number" |
| 1f5c0 | 3e 32 3c 2f 73 70 61 6e 3e 20 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | >2</span>.*.<span.class="tok-num |
| 1f5e0 | 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ber">5</span>.==.<span.class="to |
| 1f600 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | k-number">10</span></code></pre> |
| 1f620 | 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>.. |
| 1f640 | 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 |
| 1f660 | 6e 67 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 20 20 | ng.Multiplication</td>.......... |
| 1f680 | 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 2a 25 20 62 0a 61 20 2a 25 3d 20 62 3c 2f | .<td><pre><code>a.*%.b.a.*%=.b</ |
| 1f6a0 | 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>. |
| 1f6c0 | 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>...............< |
| 1f6e0 | 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< |
| 1f700 | 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>...... |
| 1f720 | 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>....... |
| 1f740 | 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 6f | ......<ul>...............<li>Two |
| 1f760 | 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 3c | s-complement.wrapping.behavior.< |
| 1f780 | 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 3c | /li>...............<li>Invokes.< |
| 1f7a0 | 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 |
| 1f7c0 | 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. |
| 1f7e0 | 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 69 | operands.</li>...............<li |
| 1f800 | 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 74 68 4f 76 65 72 66 | >See.also.<a.href="#mulWithOverf |
| 1f820 | 6c 6f 77 22 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a | low">@mulWithOverflow</a>.</li>. |
| 1f840 | 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 |
| 1f860 | 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 |
| 1f880 | 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 |
| 1f8a0 | 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 |
| 1f8c0 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pe">u8</span>,.<span.class="tok- |
| 1f8e0 | 6e 75 6d 62 65 72 22 3e 32 30 30 3c 2f 73 70 61 6e 3e 29 20 2a 25 20 3c 73 70 61 6e 20 63 6c 61 | number">200</span>).*%.<span.cla |
| 1f900 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 | ss="tok-number">2</span>.==.<spa |
| 1f920 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 34 34 3c 2f 73 70 61 6e 3e 3c | n.class="tok-number">144</span>< |
| 1f940 | 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>.... |
| 1f960 | 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>......... |
| 1f980 | 20 20 3c 74 64 3e 53 61 74 75 72 61 74 69 6e 67 20 4d 75 6c 74 69 70 6c 69 63 61 74 69 6f 6e 3c | ..<td>Saturating.Multiplication< |
| 1f9a0 | 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 20 | /td>...........<td><pre><code>a. |
| 1f9c0 | 2a 7c 20 62 0a 61 20 2a 7c 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 | *|.b.a.*|=.b</code></pre></td>.. |
| 1f9e0 | 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>.. |
| 1fa00 | 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 67 | .............<li><a.href="#Integ |
| 1fa20 | 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 20 | ers">Integers</a></li>.......... |
| 1fa40 | 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | ...</ul>...........</td>........ |
| 1fa60 | 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>........ |
| 1fa80 | 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 | .......<li>Invokes.<a.href="#Pee |
| 1faa0 | 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 | r-Type-Resolution">Peer.Type.Res |
| 1fac0 | 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c | olution</a>.for.the.operands.</l |
| 1fae0 | 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>...........< |
| 1fb00 | 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>............. |
| 1fb20 | 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 |
| 1fb40 | 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 6b | tin">@as</span>(<span.class="tok |
| 1fb60 | 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 74 | -type">u8</span>,.<span.class="t |
| 1fb80 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 30 30 3c 2f 73 70 61 6e 3e 29 20 2a 7c 20 3c 73 70 61 6e 20 | ok-number">200</span>).*|.<span. |
| 1fba0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c | class="tok-number">2</span>.==.< |
| 1fbc0 | 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 |
| 1fbe0 | 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a | n></code></pre>...........</td>. |
| 1fc00 | 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>...... |
| 1fc20 | 20 20 20 20 20 3c 74 64 3e 44 69 76 69 73 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | .....<td>Division</td>.......... |
| 1fc40 | 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 2f 20 62 0a 61 20 2f 3d 20 62 3c 2f 63 6f | .<td><pre><code>a./.b.a./=.b</co |
| 1fc60 | 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 20 | de></pre></td>...........<td>... |
| 1fc80 | 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 |
| 1fca0 | 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 61 | ><a.href="#Integers">Integers</a |
| 1fcc0 | 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 66 | ></li>...............<li><a.href |
| 1fce0 | 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 20 20 | ="#Floats">Floats</a></li>...... |
| 1fd00 | 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>.... |
| 1fd20 | 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>.... |
| 1fd40 | 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 65 66 | ...........<li>Can.cause.<a.href |
| 1fd60 | 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 6f 76 65 72 66 6c 6f 77 3c | ="#Default-Operations">overflow< |
| 1fd80 | 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | /a>.for.integers.</li>.......... |
| 1fda0 | 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 69 76 | .....<li>Can.cause.<a.href="#Div |
| 1fdc0 | 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 6f 3c | ision-by-Zero">Division.by.Zero< |
| 1fde0 | 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | /a>.for.integers.</li>.......... |
| 1fe00 | 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 69 76 | .....<li>Can.cause.<a.href="#Div |
| 1fe20 | 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 6f 3c | ision-by-Zero">Division.by.Zero< |
| 1fe40 | 2f 61 3e 20 66 6f 72 20 66 6c 6f 61 74 73 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 | /a>.for.floats.in.<a.href="#Floa |
| 1fe60 | 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 46 6c 6f 61 74 4d 6f 64 65 | ting-Point-Operations">FloatMode |
| 1fe80 | 2e 4f 70 74 69 6d 69 7a 65 64 20 4d 6f 64 65 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | .Optimized.Mode</a>.</li>....... |
| 1fea0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 6f 70 65 72 61 | ........<li>Signed.integer.opera |
| 1fec0 | 6e 64 73 20 6d 75 73 74 20 62 65 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 61 6e 64 20 70 | nds.must.be.comptime-known.and.p |
| 1fee0 | 6f 73 69 74 69 76 65 2e 20 49 6e 20 6f 74 68 65 72 20 63 61 73 65 73 2c 20 75 73 65 0a 20 20 20 | ositive..In.other.cases,.use.... |
| 1ff00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 64 69 76 54 72 75 6e 63 22 | .............<a.href="#divTrunc" |
| 1ff20 | 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | >@divTrunc</a>,................. |
| 1ff40 | 3c 61 20 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 61 | <a.href="#divFloor">@divFloor</a |
| 1ff60 | 3e 2c 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 | >,.or.................<a.href="# |
| 1ff80 | 64 69 76 45 78 61 63 74 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 61 3e 20 69 6e 73 74 65 61 64 2e | divExact">@divExact</a>.instead. |
| 1ffa0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ...............</li>............ |
| 1ffc0 | 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 |
| 1ffe0 | 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 |
| 20000 | 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>.. |
| 20020 | 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> |
| 20040 | 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 |
| 20060 | 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"> |
| 20080 | 31 30 3c 2f 73 70 61 6e 3e 20 2f 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | 10</span>./.<span.class="tok-num |
| 200a0 | 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ber">5</span>.==.<span.class="to |
| 200c0 | 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | k-number">2</span></code></pre>. |
| 200e0 | 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>... |
| 20100 | 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 52 65 6d 61 69 6e 64 | ......<tr>...........<td>Remaind |
| 20120 | 65 72 20 44 69 76 69 73 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c | er.Division</td>...........<td>< |
| 20140 | 70 72 65 3e 3c 63 6f 64 65 3e 61 20 25 20 62 0a 61 20 25 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 | pre><code>a.%.b.a.%=.b</code></p |
| 20160 | 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 | re></td>...........<td>......... |
| 20180 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 | ....<ul>...............<li><a.hr |
| 201a0 | 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e | ef="#Integers">Integers</a></li> |
| 201c0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f | ...............<li><a.href="#Flo |
| 201e0 | 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ats">Floats</a></li>............ |
| 20200 | 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>.......... |
| 20220 | 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>.......... |
| 20240 | 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 69 76 | .....<li>Can.cause.<a.href="#Div |
| 20260 | 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 6f 3c | ision-by-Zero">Division.by.Zero< |
| 20280 | 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | /a>.for.integers.</li>.......... |
| 202a0 | 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 69 76 | .....<li>Can.cause.<a.href="#Div |
| 202c0 | 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 6f 3c | ision-by-Zero">Division.by.Zero< |
| 202e0 | 2f 61 3e 20 66 6f 72 20 66 6c 6f 61 74 73 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 | /a>.for.floats.in.<a.href="#Floa |
| 20300 | 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 46 6c 6f 61 74 4d 6f 64 65 | ting-Point-Operations">FloatMode |
| 20320 | 2e 4f 70 74 69 6d 69 7a 65 64 20 4d 6f 64 65 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | .Optimized.Mode</a>.</li>....... |
| 20340 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 69 67 6e 65 64 20 6f 72 20 66 6c 6f 61 74 69 6e 67 2d 70 | ........<li>Signed.or.floating-p |
| 20360 | 6f 69 6e 74 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 | oint.operands.must.be.comptime-k |
| 20380 | 6e 6f 77 6e 20 61 6e 64 20 70 6f 73 69 74 69 76 65 2e 20 49 6e 20 6f 74 68 65 72 20 63 61 73 65 | nown.and.positive..In.other.case |
| 203a0 | 73 2c 20 75 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 | s,.use.................<a.href=" |
| 203c0 | 23 72 65 6d 22 3e 40 72 65 6d 3c 2f 61 3e 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | #rem">@rem</a>.or............... |
| 203e0 | 20 20 3c 61 20 68 72 65 66 3d 22 23 6d 6f 64 22 3e 40 6d 6f 64 3c 2f 61 3e 20 69 6e 73 74 65 61 | ..<a.href="#mod">@mod</a>.instea |
| 20400 | 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 20 20 20 20 20 20 | d................</li>.......... |
| 20420 | 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d | .....<li>Invokes.<a.href="#Peer- |
| 20440 | 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 6c | Type-Resolution">Peer.Type.Resol |
| 20460 | 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e | ution</a>.for.the.operands.</li> |
| 20480 | 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 |
| 204a0 | 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 |
| 204c0 | 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 |
| 204e0 | 22 3e 31 30 3c 2f 73 70 61 6e 3e 20 25 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ">10</span>.%.<span.class="tok-n |
| 20500 | 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | umber">3</span>.==.<span.class=" |
| 20520 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | tok-number">1</span></code></pre |
| 20540 | 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>. |
| 20560 | 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 42 69 74 20 53 | ........<tr>...........<td>Bit.S |
| 20580 | 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 3c 74 64 3e 3c 70 72 | hift.Left</td>...........<td><pr |
| 205a0 | 65 3e 3c 63 6f 64 65 3e 61 20 26 6c 74 3b 26 6c 74 3b 20 62 0a 61 20 26 6c 74 3b 26 6c 74 3b 3d | e><code>a.<<.b.a.<<= |
| 205c0 | 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>...........< |
| 205e0 | 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>............ |
| 20600 | 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 |
| 20620 | 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>.. |
| 20640 | 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>... |
| 20660 | 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 |
| 20680 | 3e 4d 6f 76 65 73 20 61 6c 6c 20 62 69 74 73 20 74 6f 20 74 68 65 20 6c 65 66 74 2c 20 69 6e 73 | >Moves.all.bits.to.the.left,.ins |
| 206a0 | 65 72 74 69 6e 67 20 6e 65 77 20 7a 65 72 6f 65 73 20 61 74 20 74 68 65 0a 20 20 20 20 20 20 20 | erting.new.zeroes.at.the........ |
| 206c0 | 20 20 20 20 20 20 20 6c 65 61 73 74 2d 73 69 67 6e 69 66 69 63 61 6e 74 20 62 69 74 2e 3c 2f 6c | .......least-significant.bit.</l |
| 206e0 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 62 3c 2f 63 6f | i>...............<li><code>b</co |
| 20700 | 64 65 3e 20 6d 75 73 74 20 62 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 | de>.must.be...............<a.hre |
| 20720 | 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 3c 2f 61 3e | f="#comptime">comptime-known</a> |
| 20740 | 20 6f 72 20 68 61 76 65 20 61 20 74 79 70 65 20 77 69 74 68 20 6c 6f 67 32 20 6e 75 6d 62 65 72 | .or.have.a.type.with.log2.number |
| 20760 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 66 20 62 69 74 73 20 61 73 20 3c 63 6f 64 65 3e | ...............of.bits.as.<code> |
| 20780 | 61 3c 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | a</code>.</li>...............<li |
| 207a0 | 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 45 78 61 63 74 22 3e 40 73 | >See.also.<a.href="#shlExact">@s |
| 207c0 | 68 6c 45 78 61 63 74 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | hlExact</a>.</li>............... |
| 207e0 | 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 4f 76 | <li>See.also.<a.href="#shlWithOv |
| 20800 | 65 72 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 2e 3c 2f 6c | erflow">@shlWithOverflow</a>.</l |
| 20820 | 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>...........< |
| 20840 | 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>............. |
| 20860 | 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 75 6d 62 | <pre><code><span.class="tok-numb |
| 20880 | 65 72 22 3e 30 62 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 | er">0b1</span>.<<.<span.cl |
| 208a0 | 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 3d 3d 20 3c 73 70 | ass="tok-number">8</span>.==.<sp |
| 208c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 30 30 30 30 30 30 | an.class="tok-number">0b10000000 |
| 208e0 | 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 | 0</span></code></pre>........... |
| 20900 | 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> |
| 20920 | 0a 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 42 69 74 20 53 68 | ...........<td>Saturating.Bit.Sh |
| 20940 | 69 66 74 20 4c 65 66 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 | ift.Left</td>...........<td><pre |
| 20960 | 3e 3c 63 6f 64 65 3e 61 20 26 6c 74 3b 26 6c 74 3b 7c 20 62 0a 61 20 26 6c 74 3b 26 6c 74 3b 7c | ><code>a.<<|.b.a.<<| |
| 20980 | 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 20 | =.b</code></pre></td>........... |
| 209a0 | 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 20 | <td>.............<ul>........... |
| 209c0 | 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 65 | ....<li><a.href="#Integers">Inte |
| 209e0 | 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | gers</a></li>.............</ul>. |
| 20a00 | 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>.. |
| 20a20 | 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 |
| 20a40 | 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 45 78 61 63 74 22 3e 40 | i>See.also.<a.href="#shlExact">@ |
| 20a60 | 73 68 6c 45 78 61 63 74 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | shlExact</a>.</li>.............. |
| 20a80 | 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 4f | .<li>See.also.<a.href="#shlWithO |
| 20aa0 | 76 65 72 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 2e 3c 2f | verflow">@shlWithOverflow</a>.</ |
| 20ac0 | 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>........... |
| 20ae0 | 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>............ |
| 20b00 | 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 |
| 20b20 | 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 |
| 20b40 | 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=" |
| 20b60 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 26 6c 74 3b 26 6c 74 3b 7c 20 | tok-number">1</span>).<<|. |
| 20b80 | 3c 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 |
| 20ba0 | 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 32 35 | >.==.<span.class="tok-number">25 |
| 20bc0 | 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 20 20 | 5</span></code></pre>........... |
| 20be0 | 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> |
| 20c00 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 42 69 74 20 53 68 69 66 74 20 52 69 67 68 74 3c 2f | ...........<td>Bit.Shift.Right</ |
| 20c20 | 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 26 | td>...........<td><pre><code>a.& |
| 20c40 | 67 74 3b 26 67 74 3b 20 62 0a 61 20 26 67 74 3b 26 67 74 3b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f | gt;>.b.a.>>=.b</code></ |
| 20c60 | 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>........ |
| 20c80 | 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 |
| 20ca0 | 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 |
| 20cc0 | 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>...........</ |
| 20ce0 | 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>.............< |
| 20d00 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 4d 6f 76 65 73 20 61 6c 6c 20 | ul>...............<li>Moves.all. |
| 20d20 | 62 69 74 73 20 74 6f 20 74 68 65 20 72 69 67 68 74 2c 20 69 6e 73 65 72 74 69 6e 67 20 7a 65 72 | bits.to.the.right,.inserting.zer |
| 20d40 | 6f 65 73 20 61 74 20 74 68 65 20 6d 6f 73 74 2d 73 69 67 6e 69 66 69 63 61 6e 74 20 62 69 74 2e | oes.at.the.most-significant.bit. |
| 20d60 | 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 64 65 3e 62 3c | </li>...............<li><code>b< |
| 20d80 | 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 20 20 20 20 3c | /code>.must.be.................< |
| 20da0 | 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 6e 6f 77 | a.href="#comptime">comptime-know |
| 20dc0 | 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 32 20 6e | n</a>.or.have.a.type.with.log2.n |
| 20de0 | 75 6d 62 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 66 20 62 69 74 73 20 61 73 | umber.................of.bits.as |
| 20e00 | 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 20 | .<code>a</code>.</li>........... |
| 20e20 | 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 72 45 78 | ....<li>See.also.<a.href="#shrEx |
| 20e40 | 61 63 74 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | act">@shrExact</a>.</li>........ |
| 20e60 | 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>...... |
| 20e80 | 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 |
| 20ea0 | 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 62 31 30 31 30 | ><span.class="tok-number">0b1010 |
| 20ec0 | 3c 2f 73 70 61 6e 3e 20 26 67 74 3b 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>.>>.<span.class="to |
| 20ee0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | k-number">1</span>.==.<span.clas |
| 20f00 | 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 3c 2f 63 6f 64 | s="tok-number">0b101</span></cod |
| 20f20 | 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>........ |
| 20f40 | 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 |
| 20f60 | 64 3e 42 69 74 77 69 73 65 20 41 6e 64 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | d>Bitwise.And</td>...........<td |
| 20f80 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 26 61 6d 70 3b 20 62 0a 61 20 26 61 6d 70 3b 3d 20 62 | ><pre><code>a.&.b.a.&=.b |
| 20fa0 | 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 |
| 20fc0 | 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>.............. |
| 20fe0 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 | .<li><a.href="#Integers">Integer |
| 21000 | 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 20 | s</a></li>.............</ul>.... |
| 21020 | 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>..... |
| 21040 | 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 49 | ........<ul>...............<li>I |
| 21060 | 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 |
| 21080 | 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>. |
| 210a0 | 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>.......... |
| 210c0 | 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | ...</ul>...........</td>........ |
| 210e0 | 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>< |
| 21100 | 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 30 31 31 3c 2f 73 | span.class="tok-number">0b011</s |
| 21120 | 70 61 6e 3e 20 26 61 6d 70 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | pan>.&.<span.class="tok-numb |
| 21140 | 65 72 22 3e 30 62 31 30 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | er">0b101</span>.==.<span.class= |
| 21160 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 30 30 31 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | "tok-number">0b001</span></code> |
| 21180 | 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>.........< |
| 211a0 | 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> |
| 211c0 | 42 69 74 77 69 73 65 20 4f 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 | Bitwise.Or</td>...........<td><p |
| 211e0 | 72 65 3e 3c 63 6f 64 65 3e 61 20 7c 20 62 0a 61 20 7c 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | re><code>a.|.b.a.|=.b</code></pr |
| 21200 | 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>.......... |
| 21220 | 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 |
| 21240 | 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a | f="#Integers">Integers</a></li>. |
| 21260 | 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 |
| 21280 | 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 |
| 212a0 | 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 68 | >...............<li>Invokes.<a.h |
| 212c0 | 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 | ref="#Peer-Type-Resolution">Peer |
| 212e0 | 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 65 | .Type.Resolution</a>.for.the.ope |
| 21300 | 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 | rands.</li>.............</ul>... |
| 21320 | 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>.... |
| 21340 | 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= |
| 21360 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 30 31 30 3c 2f 73 70 61 6e 3e 20 7c 20 3c 73 70 61 | "tok-number">0b010</span>.|.<spa |
| 21380 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 30 3c 2f 73 70 61 6e | n.class="tok-number">0b100</span |
| 213a0 | 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 |
| 213c0 | 31 31 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 | 110</span></code></pre>......... |
| 213e0 | 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 |
| 21400 | 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 42 69 74 77 69 73 65 20 58 6f 72 3c 2f 74 64 | r>...........<td>Bitwise.Xor</td |
| 21420 | 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 5e 20 62 | >...........<td><pre><code>a.^.b |
| 21440 | 0a 61 20 5e 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 | .a.^=.b</code></pre></td>....... |
| 21460 | 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>....... |
| 21480 | 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 3e | ........<li><a.href="#Integers"> |
| 214a0 | 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 2f | Integers</a></li>.............</ |
| 214c0 | 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 |
| 214e0 | 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>............. |
| 21500 | 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 70 | ..<li>Invokes.<a.href="#Peer-Typ |
| 21520 | 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 | e-Resolution">Peer.Type.Resoluti |
| 21540 | 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 20 | on</a>.for.the.operands.</li>... |
| 21560 | 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>. |
| 21580 | 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> |
| 215a0 | 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 30 | <code><span.class="tok-number">0 |
| 215c0 | 62 30 31 31 3c 2f 73 70 61 6e 3e 20 5e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | b011</span>.^.<span.class="tok-n |
| 215e0 | 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 6e 20 63 6c 61 | umber">0b101</span>.==.<span.cla |
| 21600 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 31 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ss="tok-number">0b110</span></co |
| 21620 | 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>....... |
| 21640 | 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>...........< |
| 21660 | 74 64 3e 42 69 74 77 69 73 65 20 4e 6f 74 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | td>Bitwise.Not</td>...........<t |
| 21680 | 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 7e 61 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 | d><pre><code>~a</code></pre></td |
| 216a0 | 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 |
| 216c0 | 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 |
| 216e0 | 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>....... |
| 21700 | 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>..... |
| 21720 | 20 20 20 20 20 20 3c 74 64 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 | ......<td></td>...........<td>.. |
| 21740 | 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 7e 3c 73 70 61 6e 20 63 6c 61 | ...........<pre><code>~<span.cla |
| 21760 | 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 |
| 21780 | 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 |
| 217a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 31 30 31 31 31 | pan.class="tok-number">0b1010111 |
| 217c0 | 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 75 | 1</span>).==.<span.class="tok-nu |
| 217e0 | 6d 62 65 72 22 3e 30 62 30 31 30 31 30 30 30 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f | mber">0b01010000</span></code></ |
| 21800 | 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 | pre>...........</td>.........</t |
| 21820 | 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 44 65 | r>.........<tr>...........<td>De |
| 21840 | 66 61 75 6c 74 69 6e 67 20 4f 70 74 69 6f 6e 61 6c 20 55 6e 77 72 61 70 3c 2f 74 64 3e 0a 20 20 | faulting.Optional.Unwrap</td>... |
| 21860 | 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 73 70 61 6e 20 63 | ........<td><pre><code>a.<span.c |
| 21880 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 62 3c 2f 63 | lass="tok-kw">orelse</span>.b</c |
| 218a0 | 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>.. |
| 218c0 | 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 |
| 218e0 | 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 61 6c 73 | i><a.href="#Optionals">Optionals |
| 21900 | 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>..... |
| 21920 | 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 49 66 20 3c 63 6f | ......</td>...........<td>If.<co |
| 21940 | 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 61 73 73 | de>a</code>.is.<code><span.class |
| 21960 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a | ="tok-null">null</span></code>,. |
| 21980 | 20 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 | ..........returns.<code>b</code> |
| 219a0 | 20 28 22 64 65 66 61 75 6c 74 20 76 61 6c 75 65 22 29 2c 0a 20 20 20 20 20 20 20 20 20 20 6f 74 | .("default.value"),...........ot |
| 219c0 | 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 76 61 | herwise.returns.the.unwrapped.va |
| 219e0 | 6c 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 | lue.of.<code>a</code>........... |
| 21a00 | 20 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 | .Note.that.<code>b</code>.may.be |
| 21a20 | 20 61 20 76 61 6c 75 65 20 6f 66 20 74 79 70 65 20 3c 61 20 68 72 65 66 3d 22 23 6e 6f 72 65 74 | .a.value.of.type.<a.href="#noret |
| 21a40 | 75 72 6e 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 | urn">noreturn</a>............</t |
| 21a60 | 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 |
| 21a80 | 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 |
| 21aa0 | 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=" |
| 21ac0 | 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 |
| 21ae0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e | ss="tok-null">null</span>;.<span |
| 21b00 | 20 63 6c 61 73 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 | .class="tok-kw">const</span>.unw |
| 21b20 | 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 74 6f 6b 2d | rapped.=.value.<span.class="tok- |
| 21b40 | 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 73 3d 22 74 | kw">orelse</span>.<span.class="t |
| 21b60 | 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 70 70 65 | ok-number">1234</span>;.unwrappe |
| 21b80 | 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 3e 31 32 | d.==.<span.class="tok-number">12 |
| 21ba0 | 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 20 20 20 | 34</span></code></pre>.......... |
| 21bc0 | 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 |
| 21be0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4f 70 74 69 6f 6e 61 6c 20 55 6e 77 72 61 70 3c | >...........<td>Optional.Unwrap< |
| 21c00 | 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 2e | /td>...........<td><pre><code>a. |
| 21c20 | 3f 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | ?</code></pre></td>...........<t |
| 21c40 | 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>............. |
| 21c60 | 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 70 74 69 6f | ..<li><a.href="#Optionals">Optio |
| 21c80 | 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 75 6c 3e 0a | nals</a></li>.............</ul>. |
| 21ca0 | 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>.. |
| 21cc0 | 20 20 20 20 20 20 20 20 20 20 20 45 71 75 69 76 61 6c 65 6e 74 20 74 6f 3a 0a 20 20 20 20 20 20 | ...........Equivalent.to:....... |
| 21ce0 | 20 20 20 20 20 20 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 | ......<pre><code>a.<span.class=" |
| 21d00 | 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 |
| 21d20 | 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 63 | s="tok-kw">unreachable</span></c |
| 21d40 | 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>...... |
| 21d60 | 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 |
| 21d80 | 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 |
| 21da0 | 6e 3e 20 76 61 6c 75 65 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | n>.value:.?<span.class="tok-type |
| 21dc0 | 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">u32</span>.=.<span.class="tok- |
| 21de0 | 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e 3e 3b 0a 76 61 6c 75 65 2e 3f 20 3d 3d 20 | number">5678</span>;.value.?.==. |
| 21e00 | 3c 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 | <span.class="tok-number">5678</s |
| 21e20 | 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 |
| 21e40 | 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>.... |
| 21e60 | 20 20 20 20 20 20 20 3c 74 64 3e 44 65 66 61 75 6c 74 69 6e 67 20 45 72 72 6f 72 20 55 6e 77 72 | .......<td>Defaulting.Error.Unwr |
| 21e80 | 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 3c 63 6f 64 65 | ap</td>...........<td><pre><code |
| 21ea0 | 3e 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 |
| 21ec0 | 70 61 6e 3e 20 62 0a 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 | pan>.b.a.<span.class="tok-kw">ca |
| 21ee0 | 74 63 68 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | tch</span>.|err|.b</code></pre>< |
| 21f00 | 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>............. |
| 21f20 | 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=" |
| 21f40 | 23 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | #Errors">Error.Unions</a></li>.. |
| 21f60 | 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> |
| 21f80 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 49 66 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e | ...........<td>If.<code>a</code> |
| 21fa0 | 20 69 73 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 | .is.an.<code><span.class="tok-kw |
| 21fc0 | 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 | ">error</span></code>,.......... |
| 21fe0 | 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 28 22 64 65 66 61 75 6c | .returns.<code>b</code>.("defaul |
| 22000 | 74 20 76 61 6c 75 65 22 29 2c 0a 20 20 20 20 20 20 20 20 20 20 6f 74 68 65 72 77 69 73 65 20 72 | t.value"),...........otherwise.r |
| 22020 | 65 74 75 72 6e 73 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 76 61 6c 75 65 20 6f 66 20 3c 63 | eturns.the.unwrapped.value.of.<c |
| 22040 | 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 | ode>a</code>............Note.tha |
| 22060 | 74 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 62 65 20 61 20 76 61 6c 75 65 20 | t.<code>b</code>.may.be.a.value. |
| 22080 | 6f 66 20 74 79 70 65 20 3c 61 20 68 72 65 66 3d 22 23 6e 6f 72 65 74 75 72 6e 22 3e 6e 6f 72 65 | of.type.<a.href="#noreturn">nore |
| 220a0 | 74 75 72 6e 3c 2f 61 3e 2e 0a 3c 63 6f 64 65 3e 65 72 72 3c 2f 63 6f 64 65 3e 20 69 73 20 74 68 | turn</a>..<code>err</code>.is.th |
| 220c0 | 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 72 72 | e.<code><span.class="tok-kw">err |
| 220e0 | 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 69 73 20 69 6e 20 73 63 6f 70 65 | or</span></code>.and.is.in.scope |
| 22100 | 20 6f 66 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 | .of.the.expression.<code>b</code |
| 22120 | 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | >............</td>...........<td |
| 22140 | 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 |
| 22160 | 6c 61 73 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 | lass="tok-kw">const</span>.value |
| 22180 | 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 6f | :.<span.class="tok-type">anyerro |
| 221a0 | 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | r</span>!<span.class="tok-type"> |
| 221c0 | 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 6b 77 | u32</span>.=.<span.class="tok-kw |
| 221e0 | 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 42 72 6f 6b 65 6e 3b 0a 3c 73 70 61 6e 20 63 6c 61 | ">error</span>.Broken;.<span.cla |
| 22200 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 6e 77 72 61 70 70 | ss="tok-kw">const</span>.unwrapp |
| 22220 | 65 64 20 3d 20 76 61 6c 75 65 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ed.=.value.<span.class="tok-kw"> |
| 22240 | 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 6e 75 | catch</span>.<span.class="tok-nu |
| 22260 | 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 75 6e 77 72 61 70 70 65 64 20 3d 3d 20 | mber">1234</span>;.unwrapped.==. |
| 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 31 32 33 34 3c 2f 73 | <span.class="tok-number">1234</s |
| 222a0 | 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 |
| 222c0 | 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>.... |
| 222e0 | 20 20 20 20 20 20 20 3c 74 64 3e 4c 6f 67 69 63 61 6c 20 41 6e 64 3c 2f 74 64 3e 0a 20 20 20 20 | .......<td>Logical.And</td>..... |
| 22300 | 20 20 20 20 20 20 3c 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 | ......<td><pre><code>a.<span.cla |
| 22320 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 62 3c 2f 63 6f 64 65 3e 3c | ss="tok-kw">and</span>.b</code>< |
| 22340 | 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>....... |
| 22360 | 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. |
| 22380 | 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 62 6f 6f 6c 3c 2f 61 3e | href="#Primitive-Types">bool</a> |
| 223a0 | 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>......... |
| 223c0 | 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>.......... |
| 223e0 | 20 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 61 | .If.<code>a</code>.is.<code><spa |
| 22400 | 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 3c | n.class="tok-null">false</span>< |
| 22420 | 2f 63 6f 64 65 3e 2c 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 | /code>,.returns.<code><span.clas |
| 22440 | 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> |
| 22460 | 0a 20 20 20 20 20 20 20 20 20 20 77 69 74 68 6f 75 74 20 65 76 61 6c 75 61 74 69 6e 67 20 3c 63 | ...........without.evaluating.<c |
| 22480 | 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 2e 20 4f 74 68 65 72 77 69 73 65 2c 20 72 65 74 75 72 6e 73 | ode>b</code>..Otherwise,.returns |
| 224a0 | 20 3c 63 6f 64 65 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 | .<code>b</code>............</td> |
| 224c0 | 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 |
| 224e0 | 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 6c 6c 22 3e 66 | ><code>(<span.class="tok-null">f |
| 22500 | 61 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | alse</span>.<span.class="tok-kw" |
| 22520 | 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | >and</span>.<span.class="tok-nul |
| 22540 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | l">true</span>).==.<span.class=" |
| 22560 | 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 3c 2f 70 | tok-null">false</span></code></p |
| 22580 | 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 | re>...........</td>.........</tr |
| 225a0 | 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 4c 6f 67 | >.........<tr>...........<td>Log |
| 225c0 | 69 63 61 6c 20 4f 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 | ical.Or</td>...........<td><pre> |
| 225e0 | 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 6f 72 3c | <code>a.<span.class="tok-kw">or< |
| 22600 | 2f 73 70 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 | /span>.b</code></pre></td>...... |
| 22620 | 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>...... |
| 22640 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 | .........<li><a.href="#Primitive |
| 22660 | 2d 54 79 70 65 73 22 3e 62 6f 6f 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | -Types">bool</a></li>........... |
| 22680 | 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>......... |
| 226a0 | 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 3e 61 3c | ..<td>...............If.<code>a< |
| 226c0 | 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 3d 22 74 6f 6b | /code>.is.<code><span.class="tok |
| 226e0 | 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 2c 0a 20 20 20 20 20 | -null">true</span></code>,...... |
| 22700 | 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | .........returns.<code><span.cla |
| 22720 | 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> |
| 22740 | 20 77 69 74 68 6f 75 74 20 65 76 61 6c 75 61 74 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .without.evaluating............. |
| 22760 | 20 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 20 72 65 74 | ..<code>b</code>..Otherwise,.ret |
| 22780 | 75 72 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 | urns...............<code>b</code |
| 227a0 | 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | >............</td>...........<td |
| 227c0 | 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 73 70 61 6e 20 | >.............<pre><code>(<span. |
| 227e0 | 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 3c 73 | class="tok-null">false</span>.<s |
| 22800 | 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 20 3c 73 70 | pan.class="tok-kw">or</span>.<sp |
| 22820 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 | an.class="tok-null">true</span>) |
| 22840 | 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 3c | .==.<span.class="tok-null">true< |
| 22860 | 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>...........</ |
| 22880 | 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>.. |
| 228a0 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 42 6f 6f 6c 65 61 6e 20 4e 6f 74 3c 2f 74 64 3e 0a 20 20 | .........<td>Boolean.Not</td>... |
| 228c0 | 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 21 61 3c 2f 63 6f 64 65 3e | ........<td><pre><code>!a</code> |
| 228e0 | 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>...... |
| 22900 | 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 |
| 22920 | 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 62 6f 6f 6c 3c 2f 61 | .href="#Primitive-Types">bool</a |
| 22940 | 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>........ |
| 22960 | 20 20 20 3c 2f 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 | ...</td>...........<td></td>.... |
| 22980 | 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 |
| 229a0 | 64 65 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 | de>!<span.class="tok-null">false |
| 229c0 | 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | </span>.==.<span.class="tok-null |
| 229e0 | 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 20 | ">true</span></code></pre>...... |
| 22a00 | 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>........ |
| 22a20 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 45 71 75 61 6c 69 74 79 3c 2f 74 64 | .<tr>...........<td>Equality</td |
| 22a40 | 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 3d 3d 20 | >...........<td><pre><code>a.==. |
| 22a60 | 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | b</code></pre></td>...........<t |
| 22a80 | 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>............. |
| 22aa0 | 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 | ..<li><a.href="#Integers">Intege |
| 22ac0 | 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | rs</a></li>...............<li><a |
| 22ae0 | 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a | .href="#Floats">Floats</a></li>. |
| 22b00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d | ..............<li><a.href="#Prim |
| 22b20 | 69 74 69 76 65 2d 54 79 70 65 73 22 3e 62 6f 6f 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | itive-Types">bool</a></li>...... |
| 22b40 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 | .........<li><a.href="#Primitive |
| 22b60 | 2d 54 79 70 65 73 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 | -Types">type</a></li>........... |
| 22b80 | 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>......... |
| 22ba0 | 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 |
| 22bc0 | 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</ |
| 22be0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 61 20 61 6e 64 20 62 20 61 72 65 20 65 71 75 61 | span></code>.if.a.and.b.are.equa |
| 22c00 | 6c 2c 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | l,.otherwise.returns.<code><span |
| 22c20 | 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></ |
| 22c40 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 | code>..............Invokes.<a.hr |
| 22c60 | 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. |
| 22c80 | 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 |
| 22ca0 | 61 6e 64 73 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | ands............</td>........... |
| 22cc0 | 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 73 70 | <td>.............<pre><code>(<sp |
| 22ce0 | 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>.= |
| 22d00 | 3d 20 3c 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 |
| 22d20 | 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 | an>).==.<span.class="tok-null">t |
| 22d40 | 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 20 20 20 20 | rue</span></code></pre>......... |
| 22d60 | 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 |
| 22d80 | 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4e 75 6c 6c 20 43 68 65 63 6b 3c 2f 74 64 3e | r>...........<td>Null.Check</td> |
| 22da0 | 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 3d 3d 20 3c | ...........<td><pre><code>a.==.< |
| 22dc0 | 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 |
| 22de0 | 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | ></code></pre></td>...........<t |
| 22e00 | 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>............. |
| 22e20 | 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 70 74 69 6f | ..<li><a.href="#Optionals">Optio |
| 22e40 | 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 75 6c 3e 0a | nals</a></li>.............</ul>. |
| 22e60 | 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>.. |
| 22e80 | 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 61 6e | .............Returns.<code><span |
| 22ea0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | .class="tok-null">true</span></c |
| 22ec0 | 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=" |
| 22ee0 | 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 |
| 22f00 | 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 |
| 22f20 | 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> |
| 22f40 | 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | ............</td>...........<td> |
| 22f60 | 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 |
| 22f80 | 61 73 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 | ass="tok-kw">const</span>.value: |
| 22fa0 | 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 | .?<span.class="tok-type">u32</sp |
| 22fc0 | 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 |
| 22fe0 | 6c 3c 2f 73 70 61 6e 3e 3b 0a 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | l</span>;.(value.==.<span.class= |
| 23000 | 22 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 | "tok-null">null</span>).==.<span |
| 23020 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | .class="tok-null">true</span></c |
| 23040 | 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>...... |
| 23060 | 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>........... |
| 23080 | 3c 74 64 3e 49 6e 65 71 75 61 6c 69 74 79 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | <td>Inequality</td>...........<t |
| 230a0 | 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 21 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | d><pre><code>a.!=.b</code></pre> |
| 230c0 | 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>............ |
| 230e0 | 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 3d | .<ul>...............<li><a.href= |
| 23100 | 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 20 | "#Integers">Integers</a></li>... |
| 23120 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 | ............<li><a.href="#Floats |
| 23140 | 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ">Floats</a></li>............... |
| 23160 | 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 62 | <li><a.href="#Primitive-Types">b |
| 23180 | 6f 6f 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | ool</a></li>...............<li>< |
| 231a0 | 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 74 79 70 65 3c 2f | a.href="#Primitive-Types">type</ |
| 231c0 | 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>....... |
| 231e0 | 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>........ |
| 23200 | 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 6c 61 73 73 | .......Returns.<code><span.class |
| 23220 | 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 20 | ="tok-null">false</span></code>. |
| 23240 | 69 66 20 61 20 61 6e 64 20 62 20 61 72 65 20 65 71 75 61 6c 2c 20 6f 74 68 65 72 77 69 73 65 20 | if.a.and.b.are.equal,.otherwise. |
| 23260 | 72 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 22 74 6f 6b 2d 6e | returns.<code><span.class="tok-n |
| 23280 | 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 | ull">true</span></code>......... |
| 232a0 | 20 20 20 20 20 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 | .....Invokes.<a.href="#Peer-Type |
| 232c0 | 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f | -Resolution">Peer.Type.Resolutio |
| 232e0 | 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 0a 20 20 20 20 20 20 20 20 | n</a>.for.the.operands.......... |
| 23300 | 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>.......... |
| 23320 | 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 2d | ...<pre><code>(<span.class="tok- |
| 23340 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | number">1</span>.!=.<span.class= |
| 23360 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 | "tok-number">1</span>).==.<span. |
| 23380 | 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 |
| 233a0 | 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>...... |
| 233c0 | 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>........... |
| 233e0 | 3c 74 64 3e 4e 6f 6e 2d 4e 75 6c 6c 20 43 68 65 63 6b 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | <td>Non-Null.Check</td>......... |
| 23400 | 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ..<td><pre><code>a.!=.<span.clas |
| 23420 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | s="tok-null">null</span></code>< |
| 23440 | 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>....... |
| 23460 | 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. |
| 23480 | 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c | href="#Optionals">Optionals</a>< |
| 234a0 | 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>.......... |
| 234c0 | 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | .</td>...........<td>........... |
| 234e0 | 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 22 74 | ....Returns.<code><span.class="t |
| 23500 | 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 20 69 66 20 | ok-null">false</span></code>.if. |
| 23520 | 61 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 6c 6c | a.is.<code><span.class="tok-null |
| 23540 | 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 6f 74 68 65 72 77 69 73 65 20 | ">null</span></code>,.otherwise. |
| 23560 | 72 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 22 74 6f 6b 2d 6e | returns.<code><span.class="tok-n |
| 23580 | 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 | ull">true</span></code>......... |
| 235a0 | 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>......... |
| 235c0 | 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- |
| 235e0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 3a 20 3f 3c 73 70 61 6e 20 63 | kw">const</span>.value:.?<span.c |
| 23600 | 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 |
| 23620 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b | an.class="tok-null">null</span>; |
| 23640 | 0a 28 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 6e 75 6c 6c | .(value.!=.<span.class="tok-null |
| 23660 | 22 3e 6e 75 6c 6c 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 | ">null</span>).==.<span.class="t |
| 23680 | 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 3c 2f 70 72 | ok-null">false</span></code></pr |
| 236a0 | 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> |
| 236c0 | 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 47 72 65 61 | .........<tr>...........<td>Grea |
| 236e0 | 74 65 72 20 54 68 61 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 | ter.Than</td>...........<td><pre |
| 23700 | 3e 3c 63 6f 64 65 3e 61 20 26 67 74 3b 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 | ><code>a.>.b</code></pre></td |
| 23720 | 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 |
| 23740 | 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 |
| 23760 | 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>....... |
| 23780 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c | ........<li><a.href="#Floats">Fl |
| 237a0 | 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | oats</a></li>.............</ul>. |
| 237c0 | 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>.. |
| 237e0 | 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 61 6e | .............Returns.<code><span |
| 23800 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | .class="tok-null">true</span></c |
| 23820 | 6f 64 65 3e 20 69 66 20 61 20 69 73 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 62 2c 20 6f 74 68 | ode>.if.a.is.greater.than.b,.oth |
| 23840 | 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 73 | erwise.returns.<code><span.class |
| 23860 | 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 2e | ="tok-null">false</span></code>. |
| 23880 | 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 |
| 238a0 | 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 |
| 238c0 | 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.. |
| 238e0 | 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>.. |
| 23900 | 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 |
| 23920 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 26 67 74 3b 20 3c 73 | ss="tok-number">2</span>.>.<s |
| 23940 | 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>) |
| 23960 | 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 3c | .==.<span.class="tok-null">true< |
| 23980 | 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>...........</ |
| 239a0 | 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>.. |
| 239c0 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 47 72 65 61 74 65 72 20 6f 72 20 45 71 75 61 6c 3c 2f 74 | .........<td>Greater.or.Equal</t |
| 239e0 | 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 26 67 | d>...........<td><pre><code>a.&g |
| 23a00 | 74 3b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | t;=.b</code></pre></td>......... |
| 23a20 | 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>......... |
| 23a40 | 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 |
| 23a60 | 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 |
| 23a80 | 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></ |
| 23aa0 | 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>........... |
| 23ac0 | 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>............ |
| 23ae0 | 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 22 74 6f | ...Returns.<code><span.class="to |
| 23b00 | 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 20 61 20 | k-null">true</span></code>.if.a. |
| 23b20 | 69 73 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 6f 72 20 65 71 75 61 6c 20 74 6f 20 62 2c 20 6f | is.greater.than.or.equal.to.b,.o |
| 23b40 | 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 61 6e 20 63 6c 61 | therwise.returns.<code><span.cla |
| 23b60 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ss="tok-null">false</span></code |
| 23b80 | 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 | >..............Invokes.<a.href=" |
| 23ba0 | 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 |
| 23bc0 | 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 |
| 23be0 | 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | ............</td>...........<td> |
| 23c00 | 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 73 70 61 6e 20 63 | .............<pre><code>(<span.c |
| 23c20 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 26 67 74 3b 3d | lass="tok-number">2</span>.>= |
| 23c40 | 20 3c 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 |
| 23c60 | 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 | n>).==.<span.class="tok-null">tr |
| 23c80 | 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 | ue</span></code></pre>.......... |
| 23ca0 | 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 |
| 23cc0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4c 65 73 73 20 54 68 61 6e 3c 2f 74 64 3e 0a 20 | >...........<td>Less.Than</td>.. |
| 23ce0 | 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 26 6c 74 3b 20 62 | .........<td><pre><code>a.<.b |
| 23d00 | 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 |
| 23d20 | 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>.............. |
| 23d40 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 | .<li><a.href="#Integers">Integer |
| 23d60 | 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | s</a></li>...............<li><a. |
| 23d80 | 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | href="#Floats">Floats</a></li>.. |
| 23da0 | 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> |
| 23dc0 | 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 20 20 52 65 | ...........<td>...............Re |
| 23de0 | 74 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 | turns.<code><span.class="tok-nul |
| 23e00 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 61 20 69 73 20 6c 65 | l">true</span></code>.if.a.is.le |
| 23e20 | 73 73 20 74 68 61 6e 20 62 2c 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 6f | ss.than.b,.otherwise.returns.<co |
| 23e40 | 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< |
| 23e60 | 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 |
| 23e80 | 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 |
| 23ea0 | 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. |
| 23ec0 | 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>... |
| 23ee0 | 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 |
| 23f00 | 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< |
| 23f20 | 2f 73 70 61 6e 3e 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 | /span>.<.<span.class="tok-num |
| 23f40 | 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ber">2</span>).==.<span.class="t |
| 23f60 | 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 65 | ok-null">true</span></code></pre |
| 23f80 | 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>. |
| 23fa0 | 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 4c 65 73 73 65 | ........<tr>...........<td>Lesse |
| 23fc0 | 72 20 6f 72 20 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 | r.or.Equal</td>...........<td><p |
| 23fe0 | 72 65 3e 3c 63 6f 64 65 3e 61 20 26 6c 74 3b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | re><code>a.<=.b</code></pre>< |
| 24000 | 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>............. |
| 24020 | 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=" |
| 24040 | 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>.... |
| 24060 | 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" |
| 24080 | 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 |
| 240a0 | 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 |
| 240c0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 65 3e 3c 73 | >...............Returns.<code><s |
| 240e0 | 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> |
| 24100 | 3c 2f 63 6f 64 65 3e 20 69 66 20 61 20 69 73 20 6c 65 73 73 20 74 68 61 6e 20 6f 72 20 65 71 75 | </code>.if.a.is.less.than.or.equ |
| 24120 | 61 6c 20 74 6f 20 62 2c 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 | al.to.b,.otherwise.returns.<code |
| 24140 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 | ><span.class="tok-null">false</s |
| 24160 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 76 6f 6b 65 73 | pan></code>..............Invokes |
| 24180 | 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 | .<a.href="#Peer-Type-Resolution" |
| 241a0 | 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 | >Peer.Type.Resolution</a>.for.th |
| 241c0 | 65 20 6f 70 65 72 61 6e 64 73 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 | e.operands............</td>..... |
| 241e0 | 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | ......<td>.............<pre><cod |
| 24200 | 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 2f 73 | e>(<span.class="tok-number">1</s |
| 24220 | 70 61 6e 3e 20 26 6c 74 3b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | pan>.<=.<span.class="tok-numb |
| 24240 | 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | er">2</span>).==.<span.class="to |
| 24260 | 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 65 3e | k-null">true</span></code></pre> |
| 24280 | 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>.. |
| 242a0 | 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 72 72 61 79 20 | .......<tr>...........<td>Array. |
| 242c0 | 43 6f 6e 63 61 74 65 6e 61 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | Concatenation</td>...........<td |
| 242e0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 2b 2b 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | ><pre><code>a.++.b</code></pre>< |
| 24300 | 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>............. |
| 24320 | 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=" |
| 24340 | 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 20 20 20 20 20 20 | #Arrays">Arrays</a></li>........ |
| 24360 | 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>...... |
| 24380 | 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>...... |
| 243a0 | 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 65 20 77 68 65 6e | .........<li>Only.available.when |
| 243c0 | 20 74 68 65 20 6c 65 6e 67 74 68 73 20 6f 66 20 62 6f 74 68 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f | .the.lengths.of.both.<code>a</co |
| 243e0 | 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 |
| 24400 | 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 |
| 24420 | 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>... |
| 24440 | 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>.... |
| 24460 | 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= |
| 24480 | 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 |
| 244a0 | 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 |
| 244c0 | 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">" |
| 244e0 | 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 |
| 24500 | 61 73 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 31 | ass="tok-kw">const</span>.array1 |
| 24520 | 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 | .=.[_]<span.class="tok-type">u32 |
| 24540 | 3c 2f 73 70 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | </span>{<span.class="tok-number" |
| 24560 | 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 6b 2d 6e 75 6d 62 65 | >1</span>,<span.class="tok-numbe |
| 24580 | 72 22 3e 32 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 | r">2</span>};.<span.class="tok-k |
| 245a0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 32 20 3d 20 5b 5f 5d 3c 73 70 61 | w">const</span>.array2.=.[_]<spa |
| 245c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 7b 3c 73 | n.class="tok-type">u32</span>{<s |
| 245e0 | 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>, |
| 24600 | 3c 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 |
| 24620 | 3e 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | >};.<span.class="tok-kw">const</ |
| 24640 | 73 70 61 6e 3e 20 74 6f 67 65 74 68 65 72 20 3d 20 61 72 72 61 79 31 20 2b 2b 20 61 72 72 61 79 | span>.together.=.array1.++.array |
| 24660 | 32 3b 0a 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 | 2;.mem.eql(<span.class="tok-type |
| 24680 | 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 3b 74 6f 67 65 74 68 65 72 2c 20 26 61 6d | ">u32</span>,.&together,.&am |
| 246a0 | 70 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 33 32 3c | p;[_]<span.class="tok-type">u32< |
| 246c0 | 2f 73 70 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | /span>{<span.class="tok-number"> |
| 246e0 | 31 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 | 1</span>,<span.class="tok-number |
| 24700 | 22 3e 32 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 | ">2</span>,<span.class="tok-numb |
| 24720 | 65 72 22 3e 33 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 | er">3</span>,<span.class="tok-nu |
| 24740 | 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 7d 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | mber">4</span>})</code></pre>... |
| 24760 | 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>..... |
| 24780 | 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 41 72 72 61 79 20 4d 75 6c | ....<tr>...........<td>Array.Mul |
| 247a0 | 74 69 70 6c 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 | tiplication</td>...........<td>< |
| 247c0 | 70 72 65 3e 3c 63 6f 64 65 3e 61 20 2a 2a 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 | pre><code>a.**.b</code></pre></t |
| 247e0 | 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 |
| 24800 | 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 41 | l>...............<li><a.href="#A |
| 24820 | 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | rrays">Arrays</a></li>.......... |
| 24840 | 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | ...</ul>...........</td>........ |
| 24860 | 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>........ |
| 24880 | 20 20 20 20 20 20 20 3c 6c 69 3e 4f 6e 6c 79 20 61 76 61 69 6c 61 62 6c 65 20 77 68 65 6e 20 74 | .......<li>Only.available.when.t |
| 248a0 | 68 65 20 6c 65 6e 67 74 68 20 6f 66 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 | he.length.of.<code>a</code>.and. |
| 248c0 | 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 61 72 65 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d | <code>b</code>.are.<a.href="#com |
| 248e0 | 70 74 69 6d 65 22 3e 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 3c 2f 61 3e 2e 3c 2f | ptime">compile-time.known</a>.</ |
| 24900 | 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>........... |
| 24920 | 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>............ |
| 24940 | 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" |
| 24960 | 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= |
| 24980 | 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 |
| 249a0 | 61 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 |
| 249c0 | 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 65 6d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | t;</span>).mem;.<span.class="tok |
| 249e0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 61 74 74 65 72 6e 20 3d 20 3c 73 70 61 | -kw">const</span>.pattern.=.<spa |
| 24a00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 62 26 71 75 6f 74 3b | n.class="tok-str">"ab" |
| 24a20 | 3c 2f 73 70 61 6e 3e 20 2a 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | </span>.**.<span.class="tok-numb |
| 24a40 | 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 | er">3</span>;.mem.eql(<span.clas |
| 24a60 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 70 61 74 74 65 72 6e 2c | s="tok-type">u8</span>,.pattern, |
| 24a80 | 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 61 | .<span.class="tok-str">"aba |
| 24aa0 | 62 61 62 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | bab"</span>)</code></pre>.. |
| 24ac0 | 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>.... |
| 24ae0 | 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 50 6f 69 6e 74 65 72 20 | .....<tr>...........<td>Pointer. |
| 24b00 | 44 65 72 65 66 65 72 65 6e 63 65 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c | Dereference</td>...........<td>< |
| 24b20 | 70 72 65 3e 3c 63 6f 64 65 3e 61 2e 2a 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>. |
| 24b40 | 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>. |
| 24b60 | 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 6f 69 6e | ..............<li><a.href="#Poin |
| 24b80 | 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 20 20 20 20 20 20 20 | ters">Pointers</a></li>......... |
| 24ba0 | 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>....... |
| 24bc0 | 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 50 6f 69 6e 74 65 72 20 64 65 72 | ....<td>.............Pointer.der |
| 24be0 | 65 66 65 72 65 6e 63 65 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | eference............</td>....... |
| 24c00 | 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> |
| 24c20 | 3c 73 70 61 6e 20 63 6c 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 |
| 24c40 | 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c | >.x:.<span.class="tok-type">u32< |
| 24c60 | 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 |
| 24c80 | 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">1234</span>;.<span.class="tok- |
| 24ca0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 26 61 6d 70 3b 78 3b 0a 70 | kw">const</span>.ptr.=.&x;.p |
| 24cc0 | 74 72 2e 2a 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | tr.*.==.<span.class="tok-number" |
| 24ce0 | 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>....... |
| 24d00 | 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>......... |
| 24d20 | 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 41 64 64 72 65 73 73 20 4f 66 3c 2f 74 | <tr>...........<td>Address.Of</t |
| 24d40 | 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 26 61 6d 70 | d>...........<td><pre><code>& |
| 24d60 | 3b 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 | ;a</code></pre></td>...........< |
| 24d80 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 6c 6c 20 74 79 70 65 73 0a 20 20 20 20 20 20 | td>.............All.types....... |
| 24da0 | 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>........ |
| 24dc0 | 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>......... |
| 24de0 | 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- |
| 24e00 | 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 3d | kw">const</span>.x:.<span.class= |
| 24e20 | 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 |
| 24e40 | 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 3c 73 | ass="tok-number">1234</span>;.<s |
| 24e60 | 70 61 6e 20 63 6c 61 73 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>. |
| 24e80 | 70 74 72 20 3d 20 26 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 | ptr.=.&x;.ptr.*.==.<span.cla |
| 24ea0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | ss="tok-number">1234</span></cod |
| 24ec0 | 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>........ |
| 24ee0 | 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 |
| 24f00 | 64 3e 45 72 72 6f 72 20 53 65 74 20 4d 65 72 67 65 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | d>Error.Set.Merge</td>.......... |
| 24f20 | 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 7c 7c 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 | .<td><pre><code>a.||.b</code></p |
| 24f40 | 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 | re></td>...........<td>......... |
| 24f60 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 | ....<ul>...............<li><a.hr |
| 24f80 | 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 53 65 74 20 54 | ef="#Error-Set-Type">Error.Set.T |
| 24fa0 | 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 3e 0a 20 | ype</a></li>.............</ul>.. |
| 24fc0 | 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>... |
| 24fe0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 4d 65 72 67 69 6e 67 2d 45 72 | ............<a.href="#Merging-Er |
| 25000 | 72 6f 72 2d 53 65 74 73 22 3e 4d 65 72 67 69 6e 67 20 45 72 72 6f 72 20 53 65 74 73 3c 2f 61 3e | ror-Sets">Merging.Error.Sets</a> |
| 25020 | 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>. |
| 25040 | 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 |
| 25060 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 20 3d 20 3c 73 70 | ss="tok-kw">const</span>.A.=.<sp |
| 25080 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 4f | an.class="tok-kw">error</span>{O |
| 250a0 | 6e 65 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 | ne};.<span.class="tok-kw">const< |
| 250c0 | 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 6b 2d 6b 77 22 3e | /span>.B.=.<span.class="tok-kw"> |
| 250e0 | 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 54 77 6f 7d 3b 0a 28 41 20 7c 7c 20 42 29 20 3d 3d 20 3c | error</span>{Two};.(A.||.B).==.< |
| 25100 | 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> |
| 25120 | 7b 4f 6e 65 2c 20 54 77 6f 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 | {One,.Two}</code></pre>......... |
| 25140 | 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 2f | ..</td>.........</tr>.........</ |
| 25160 | 74 62 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 | tbody>.......</table>.......</di |
| 25180 | 76 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 50 72 65 63 65 64 65 6e | v>..............<h3.id="Preceden |
| 251a0 | 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 72 65 63 65 64 65 6e 63 65 22 3e 50 72 | ce"><a.href="#toc-Precedence">Pr |
| 251c0 | 65 63 65 64 65 6e 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | ecedence</a>.<a.class="hdr".href |
| 251e0 | 3d 22 23 50 72 65 63 65 64 65 6e 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 | ="#Precedence">..</a></h3>...... |
| 25200 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 78 28 29 20 78 5b 5d 20 78 2e 79 20 78 2e 2a 20 78 2e 3f | ..<pre><code>x().x[].x.y.x.*.x.? |
| 25220 | 0a 61 21 62 0a 78 7b 7d 0a 21 78 20 2d 78 20 2d 25 78 20 7e 78 20 26 61 6d 70 3b 78 20 3f 78 0a | .a!b.x{}.!x.-x.-%x.~x.&x.?x. |
| 25240 | 2a 20 2f 20 25 20 2a 2a 20 2a 25 20 2a 7c 20 7c 7c 0a 2b 20 2d 20 2b 2b 20 2b 25 20 2d 25 20 2b | *./.%.**.*%.*|.||.+.-.++.+%.-%.+ |
| 25260 | 7c 20 2d 7c 0a 26 6c 74 3b 26 6c 74 3b 20 26 67 74 3b 26 67 74 3b 20 26 6c 74 3b 26 6c 74 3b 7c | |.-|.<<.>>.<<| |
| 25280 | 0a 26 61 6d 70 3b 20 5e 20 7c 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"> |
| 252a0 | 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 2d 6b | orelse</span>.<span.class="tok-k |
| 252c0 | 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 0a 3d 3d 20 21 3d 20 26 6c 74 3b 20 26 67 74 3b 20 | w">catch</span>.==.!=.<.>. |
| 252e0 | 26 6c 74 3b 3d 20 26 67 74 3b 3d 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" |
| 25300 | 3e 61 6e 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 | >and</span>.<span.class="tok-kw" |
| 25320 | 3e 6f 72 3c 2f 73 70 61 6e 3e 0a 3d 20 2a 3d 20 2a 25 3d 20 2a 7c 3d 20 2f 3d 20 25 3d 20 2b 3d | >or</span>.=.*=.*%=.*|=./=.%=.+= |
| 25340 | 20 2b 25 3d 20 2b 7c 3d 20 2d 3d 20 2d 25 3d 20 2d 7c 3d 20 26 6c 74 3b 26 6c 74 3b 3d 20 26 6c | .+%=.+|=.-=.-%=.-|=.<<=.&l |
| 25360 | 74 3b 26 6c 74 3b 7c 3d 20 26 67 74 3b 26 67 74 3b 3d 20 26 61 6d 70 3b 3d 20 5e 3d 20 7c 3d 3c | t;<|=.>>=.&=.^=.|=< |
| 25380 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | /code></pre>.................... |
| 253a0 | 20 3c 68 32 20 69 64 3d 22 41 72 72 61 79 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 | .<h2.id="Arrays"><a.href="#toc-A |
| 253c0 | 72 72 61 79 73 22 3e 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 | rrays">Arrays</a>.<a.class="hdr" |
| 253e0 | 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 | .href="#Arrays">..</a></h2>..... |
| 25400 | 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 |
| 25420 | 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 61 | g-cap"><cite.class="file">test_a |
| 25440 | 72 72 61 79 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 | rrays.zig</cite></figcaption><pr |
| 25460 | 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 |
| 25480 | 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=" |
| 254a0 | 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 |
| 254c0 | 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" |
| 254e0 | 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 | ;</span>).testing.expect;.<span. |
| 25500 | 63 6c 61 73 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 | class="tok-kw">const</span>.asse |
| 25520 | 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 40 | rt.=.<span.class="tok-builtin">@ |
| 25540 | 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 |
| 25560 | 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 |
| 25580 | 67 2e 61 73 73 65 72 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | g.assert;.<span.class="tok-kw">c |
| 255a0 | 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 22 74 | onst</span>.mem.=.<span.class="t |
| 255c0 | 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 |
| 255e0 | 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" |
| 25600 | 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 6b 2d | </span>).mem;..<span.class="tok- |
| 25620 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 72 72 61 79 20 6c 69 74 65 72 61 6c 3c 2f 73 70 61 6e 3e | comment">//.array.literal</span> |
| 25640 | 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 |
| 25660 | 6e 3e 20 6d 65 73 73 61 67 65 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>.message.=.[_]<span.class="tok |
| 25680 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -type">u8</span>{.<span.class="t |
| 256a0 | 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 73 3d | ok-str">'h'</span>,.<span.class= |
| 256c0 | 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 61 73 | "tok-str">'e'</span>,.<span.clas |
| 256e0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | s="tok-str">'l'</span>,.<span.cl |
| 25700 | 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. |
| 25720 | 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 0a 3c | class="tok-str">'o'</span>.};..< |
| 25740 | 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 6c 74 65 | span.class="tok-comment">//.alte |
| 25760 | 72 6e 61 74 69 76 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 75 73 69 6e 67 20 72 65 73 | rnative.initialization.using.res |
| 25780 | 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ult.location</span>.<span.class= |
| 257a0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 74 5f 6d 65 73 73 61 67 | "tok-kw">const</span>.alt_messag |
| 257c0 | 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 35 3c 2f | e:.[<span.class="tok-number">5</ |
| 257e0 | 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< |
| 25800 | 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 73 74 72 | /span>.=..{.<span.class="tok-str |
| 25820 | 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | ">'h'</span>,.<span.class="tok-s |
| 25840 | 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tr">'e'</span>,.<span.class="tok |
| 25860 | 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -str">'l'</span>,.<span.class="t |
| 25880 | 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ok-str">'l'</span>,.<span.class= |
| 258a0 | 22 74 6f 6b 2d 73 74 72 22 3e 27 6f 27 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 3c 73 70 61 6e 20 63 | "tok-str">'o'</span>.};..<span.c |
| 258c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a | lass="tok-kw">comptime</span>.{. |
| 258e0 | 20 20 20 20 61 73 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 | ....assert(mem.eql(<span.class=" |
| 25900 | 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 6d 65 73 73 61 67 | tok-type">u8</span>,.&messag |
| 25920 | 65 2c 20 26 61 6d 70 3b 61 6c 74 5f 6d 65 73 73 61 67 65 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | e,.&alt_message));.}..<span. |
| 25940 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 67 65 74 20 74 68 65 20 73 | class="tok-comment">//.get.the.s |
| 25960 | 69 7a 65 20 6f 66 20 61 6e 20 61 72 72 61 79 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | ize.of.an.array</span>.<span.cla |
| 25980 | 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>.{... |
| 259a0 | 20 20 61 73 73 65 72 74 28 6d 65 73 73 61 67 65 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | ..assert(message.len.==.<span.cl |
| 259c0 | 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 3c | ass="tok-number">5</span>);.}..< |
| 259e0 | 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 73 74 | span.class="tok-comment">//.A.st |
| 25a00 | 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 69 73 20 61 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f | ring.literal.is.a.single-item.po |
| 25a20 | 69 6e 74 65 72 20 74 6f 20 61 6e 20 61 72 72 61 79 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | inter.to.an.array.</span>.<span. |
| 25a40 | 63 6c 61 73 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 61 6d 65 | class="tok-kw">const</span>.same |
| 25a60 | 5f 6d 65 73 73 61 67 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 | _message.=.<span.class="tok-str" |
| 25a80 | 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 0a 3c 73 70 61 | >"hello"</span>;..<spa |
| 25aa0 | 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> |
| 25ac0 | 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 20 63 6c 61 73 | .{.....assert(mem.eql(<span.clas |
| 25ae0 | 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 70 3b 6d 65 73 | s="tok-type">u8</span>,.&mes |
| 25b00 | 73 61 67 65 2c 20 73 61 6d 65 5f 6d 65 73 73 61 67 65 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | sage,.same_message));.}..<span.c |
| 25b20 | 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. |
| 25b40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 74 65 72 61 74 65 20 6f 76 | class="tok-str">"iterate.ov |
| 25b60 | 65 72 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 20 20 20 3c | er.an.array"</span>.{.....< |
| 25b80 | 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 |
| 25ba0 | 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 7a 65 | um:.<span.class="tok-type">usize |
| 25bc0 | 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 |
| 25be0 | 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 |
| 25c00 | 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 6d 65 73 73 61 67 65 29 20 7c 62 79 74 65 | k-kw">for</span>.(message).|byte |
| 25c20 | 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 62 79 74 65 3b 0a 20 20 20 20 7d 0a 20 | |.{.........sum.+=.byte;.....}.. |
| 25c40 | 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 |
| 25c60 | 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 3d 22 74 6f | n>.expect(sum.==.<span.class="to |
| 25c80 | 6b 2d 73 74 72 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-str">'h'</span>.+.<span.class= |
| 25ca0 | 22 74 6f 6b 2d 73 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 20 2b 20 3c 73 70 61 6e 20 63 6c 61 | "tok-str">'e'</span>.+.<span.cla |
| 25cc0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 20 2a 20 3c 73 70 61 6e 20 | ss="tok-str">'l'</span>.*.<span. |
| 25ce0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 2b 20 3c 73 | class="tok-number">2</span>.+.<s |
| 25d00 | 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 3e 29 3b | pan.class="tok-str">'o'</span>); |
| 25d20 | 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">// |
| 25d40 | 20 6d 6f 64 69 66 69 61 62 6c 65 20 61 72 72 61 79 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | .modifiable.array</span>.<span.c |
| 25d60 | 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 6f 6d 65 5f 69 6e | lass="tok-kw">var</span>.some_in |
| 25d80 | 74 65 67 65 72 73 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 | tegers:.[<span.class="tok-number |
| 25da0 | 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 74 6f 6b 2d 74 79 | ">100</span>]<span.class="tok-ty |
| 25dc0 | 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pe">i32</span>.=.<span.class="to |
| 25de0 | 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e | k-null">undefined</span>;..<span |
| 25e00 | 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 |
| 25e20 | 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 6f 64 69 66 79 20 61 | n.class="tok-str">"modify.a |
| 25e40 | 6e 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 3c 73 70 61 6e | n.array"</span>.{.....<span |
| 25e60 | 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 26 61 6d 70 | .class="tok-kw">for</span>.(& |
| 25e80 | 3b 73 6f 6d 65 5f 69 6e 74 65 67 65 72 73 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ;some_integers,.<span.class="tok |
| 25ea0 | 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 29 20 7c 2a 69 74 65 6d 2c 20 69 7c 20 | -number">0</span>..).|*item,.i|. |
| 25ec0 | 7b 0a 20 20 20 20 20 20 20 20 69 74 65 6d 2e 2a 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | {.........item.*.=.<span.class=" |
| 25ee0 | 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 69 29 3b | tok-builtin">@intCast</span>(i); |
| 25f00 | 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"> |
| 25f20 | 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 6f 6d 65 5f 69 6e 74 65 67 65 72 73 5b | try</span>.expect(some_integers[ |
| 25f40 | 3c 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 |
| 25f60 | 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"> |
| 25f80 | 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 6b | 10</span>);.....<span.class="tok |
| 25fa0 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 6f 6d 65 5f 69 6e 74 65 | -kw">try</span>.expect(some_inte |
| 25fc0 | 67 65 72 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 | gers[<span.class="tok-number">99 |
| 25fe0 | 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 |
| 26000 | 62 65 72 22 3e 39 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ber">99</span>);.}..<span.class= |
| 26020 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 72 72 61 79 20 63 6f 6e 63 61 74 65 6e 61 | "tok-comment">//.array.concatena |
| 26040 | 74 69 6f 6e 20 77 6f 72 6b 73 20 69 66 20 74 68 65 20 76 61 6c 75 65 73 20 61 72 65 20 6b 6e 6f | tion.works.if.the.values.are.kno |
| 26060 | 77 6e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | wn</span>.<span.class="tok-comme |
| 26080 | 6e 74 22 3e 2f 2f 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 3c 2f 73 70 61 6e 3e 0a 3c 73 | nt">//.at.compile.time</span>.<s |
| 260a0 | 70 61 6e 20 63 6c 61 73 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>. |
| 260c0 | 70 61 72 74 5f 6f 6e 65 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | part_one.=.[_]<span.class="tok-t |
| 260e0 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ype">i32</span>{.<span.class="to |
| 26100 | 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= |
| 26120 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | "tok-number">2</span>,.<span.cla |
| 26140 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ss="tok-number">3</span>,.<span. |
| 26160 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 3c | class="tok-number">4</span>.};.< |
| 26180 | 73 70 61 6e 20 63 6c 61 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> |
| 261a0 | 20 70 61 72 74 5f 74 77 6f 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .part_two.=.[_]<span.class="tok- |
| 261c0 | 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 |
| 261e0 | 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 |
| 26200 | 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 6c | ="tok-number">6</span>,.<span.cl |
| 26220 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | ass="tok-number">7</span>,.<span |
| 26240 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 20 7d 3b 0a | .class="tok-number">8</span>.};. |
| 26260 | 3c 73 70 61 6e 20 63 6c 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 |
| 26280 | 3e 20 61 6c 6c 5f 6f 66 5f 69 74 20 3d 20 70 61 72 74 5f 6f 6e 65 20 2b 2b 20 70 61 72 74 5f 74 | >.all_of_it.=.part_one.++.part_t |
| 262a0 | 77 6f 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d | wo;.<span.class="tok-kw">comptim |
| 262c0 | 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 |
| 262e0 | 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 2c | pan.class="tok-type">i32</span>, |
| 26300 | 20 26 61 6d 70 3b 61 6c 6c 5f 6f 66 5f 69 74 2c 20 26 61 6d 70 3b 5b 5f 5d 3c 73 70 61 6e 20 63 | .&all_of_it,.&[_]<span.c |
| 26320 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 | lass="tok-type">i32</span>{.<spa |
| 26340 | 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>,.< |
| 26360 | 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> |
| 26380 | 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 |
| 263a0 | 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< |
| 263c0 | 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" |
| 263e0 | 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 |
| 26400 | 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 |
| 26420 | 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 |
| 26440 | 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 20 7d 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e | k-number">8</span>.}));.}..<span |
| 26460 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 72 65 6d 65 6d 62 65 72 | .class="tok-comment">//.remember |
| 26480 | 20 74 68 61 74 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 61 72 65 20 61 72 72 61 79 73 | .that.string.literals.are.arrays |
| 264a0 | 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 6e | </span>.<span.class="tok-kw">con |
| 264c0 | 73 74 3c 2f 73 70 61 6e 3e 20 68 65 6c 6c 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | st</span>.hello.=.<span.class="t |
| 264e0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | ok-str">"hello"</span> |
| 26500 | 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 |
| 26520 | 61 6e 3e 20 77 6f 72 6c 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | an>.world.=.<span.class="tok-str |
| 26540 | 22 3e 26 71 75 6f 74 3b 77 6f 72 6c 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 | ">"world"</span>;.<spa |
| 26560 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 65 | n.class="tok-kw">const</span>.he |
| 26580 | 6c 6c 6f 5f 77 6f 72 6c 64 20 3d 20 68 65 6c 6c 6f 20 2b 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | llo_world.=.hello.++.<span.class |
| 265a0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 20 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | ="tok-str">"."</span>. |
| 265c0 | 2b 2b 20 77 6f 72 6c 64 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ++.world;.<span.class="tok-kw">c |
| 265e0 | 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 6d 2e | omptime</span>.{.....assert(mem. |
| 26600 | 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 | eql(<span.class="tok-type">u8</s |
| 26620 | 70 61 6e 3e 2c 20 68 65 6c 6c 6f 5f 77 6f 72 6c 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>,.hello_world,.<span.class=" |
| 26640 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 20 77 6f 72 6c 64 26 71 75 6f 74 3b | tok-str">"hello.world" |
| 26660 | 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 |
| 26680 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2a 2a 20 64 6f 65 73 20 72 65 70 65 61 74 69 6e 67 20 70 61 74 | omment">//.**.does.repeating.pat |
| 266a0 | 74 65 72 6e 73 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | terns</span>.<span.class="tok-kw |
| 266c0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 61 74 74 65 72 6e 20 3d 20 3c 73 70 61 6e 20 63 | ">const</span>.pattern.=.<span.c |
| 266e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 62 26 71 75 6f 74 3b 3c 2f 73 | lass="tok-str">"ab"</s |
| 26700 | 70 61 6e 3e 20 2a 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | pan>.**.<span.class="tok-number" |
| 26720 | 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >3</span>;.<span.class="tok-kw"> |
| 26740 | 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 6d | comptime</span>.{.....assert(mem |
| 26760 | 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f | .eql(<span.class="tok-type">u8</ |
| 26780 | 73 70 61 6e 3e 2c 20 70 61 74 74 65 72 6e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>,.pattern,.<span.class="tok |
| 267a0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 62 61 62 61 62 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | -str">"ababab"</span>) |
| 267c0 | 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"> |
| 267e0 | 2f 2f 20 69 6e 69 74 69 61 6c 69 7a 65 20 61 6e 20 61 72 72 61 79 20 74 6f 20 7a 65 72 6f 3c 2f | //.initialize.an.array.to.zero</ |
| 26800 | 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 |
| 26820 | 3c 2f 73 70 61 6e 3e 20 61 6c 6c 5f 7a 65 72 6f 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 | </span>.all_zero.=.[_]<span.clas |
| 26840 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c | s="tok-type">u16</span>{<span.cl |
| 26860 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 7d 20 2a 2a 20 3c 73 | ass="tok-number">0</span>}.**.<s |
| 26880 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e | pan.class="tok-number">10</span> |
| 268a0 | 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 65 | ;..<span.class="tok-kw">comptime |
| 268c0 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 61 6c 6c 5f 7a 65 72 6f 2e 6c 65 | </span>.{.....assert(all_zero.le |
| 268e0 | 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 | n.==.<span.class="tok-number">10 |
| 26900 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 61 6c 6c 5f 7a 65 72 6f 5b 3c 73 | </span>);.....assert(all_zero[<s |
| 26920 | 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>] |
| 26940 | 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</ |
| 26960 | 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 |
| 26980 | 65 6e 74 22 3e 2f 2f 20 75 73 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 63 6f 64 65 20 74 6f | ent">//.use.compile-time.code.to |
| 269a0 | 20 69 6e 69 74 69 61 6c 69 7a 65 20 61 6e 20 61 72 72 61 79 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | .initialize.an.array</span>.<spa |
| 269c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 61 6e 63 | n.class="tok-kw">var</span>.fanc |
| 269e0 | 79 5f 61 72 72 61 79 20 3d 20 69 6e 69 74 3a 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | y_array.=.init:.{.....<span.clas |
| 26a00 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 6e 69 74 69 61 6c 5f 76 61 | s="tok-kw">var</span>.initial_va |
| 26a20 | 6c 75 65 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | lue:.[<span.class="tok-number">1 |
| 26a40 | 30 3c 2f 73 70 61 6e 3e 5d 50 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | 0</span>]Point.=.<span.class="to |
| 26a60 | 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 |
| 26a80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 26 | pan.class="tok-kw">for</span>.(& |
| 26aa0 | 61 6d 70 3b 69 6e 69 74 69 61 6c 5f 76 61 6c 75 65 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | amp;initial_value,.<span.class=" |
| 26ac0 | 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 70 74 2c 20 69 7c | tok-number">0</span>..).|*pt,.i| |
| 26ae0 | 20 7b 0a 20 20 20 20 20 20 20 20 70 74 2e 2a 20 3d 20 50 6f 69 6e 74 7b 0a 20 20 20 20 20 20 20 | .{.........pt.*.=.Point{........ |
| 26b00 | 20 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 62 75 69 6c 74 | ......x.=.<span.class="tok-built |
| 26b20 | 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 69 29 2c 0a 20 20 20 20 20 20 20 20 | in">@intCast</span>(i),......... |
| 26b40 | 20 20 20 20 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | .....y.=.<span.class="tok-builti |
| 26b60 | 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 69 20 2a 20 3c 73 70 61 6e 20 63 6c 61 | n">@intCast</span>(i.*.<span.cla |
| 26b80 | 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 2c 0a 20 20 20 20 20 | ss="tok-number">2</span>),...... |
| 26ba0 | 20 20 20 7d 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ...};.....}.....<span.class="tok |
| 26bc0 | 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 69 6e 69 74 20 69 6e 69 74 69 61 6c 5f | -kw">break</span>.:init.initial_ |
| 26be0 | 76 61 6c 75 65 3b 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | value;.};.<span.class="tok-kw">c |
| 26c00 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | onst</span>.Point.=.<span.class= |
| 26c20 | 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 78 3a 20 | "tok-kw">struct</span>.{.....x:. |
| 26c40 | 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 |
| 26c60 | 3e 2c 0a 20 20 20 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | >,.....y:.<span.class="tok-type" |
| 26c80 | 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >i32</span>,.};..<span.class="to |
| 26ca0 | 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 |
| 26cc0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 61 72 72 61 79 | ok-str">"compile-time.array |
| 26ce0 | 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | .initialization"</span>.{.. |
| 26d00 | 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 |
| 26d20 | 6e 3e 20 65 78 70 65 63 74 28 66 61 6e 63 79 5f 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 | n>.expect(fancy_array[<span.clas |
| 26d40 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 2e 78 20 3d 3d 20 3c 73 | s="tok-number">4</span>].x.==.<s |
| 26d60 | 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 29 | pan.class="tok-number">4</span>) |
| 26d80 | 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</ |
| 26da0 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 61 6e 63 79 5f 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 | span>.expect(fancy_array[<span.c |
| 26dc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 2e 79 20 3d 3d | lass="tok-number">4</span>].y.== |
| 26de0 | 20 3c 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 |
| 26e00 | 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 | n>);.}..<span.class="tok-comment |
| 26e20 | 22 3e 2f 2f 20 63 61 6c 6c 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 69 6e 69 74 69 61 6c 69 | ">//.call.a.function.to.initiali |
| 26e40 | 7a 65 20 61 6e 20 61 72 72 61 79 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ze.an.array</span>.<span.class=" |
| 26e60 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6d 6f 72 65 5f 70 6f 69 6e 74 73 20 3d | tok-kw">var</span>.more_points.= |
| 26e80 | 20 5b 5f 5d 50 6f 69 6e 74 7b 6d 61 6b 65 50 6f 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .[_]Point{makePoint(<span.class= |
| 26ea0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 7d 20 2a 2a 20 3c 73 70 61 6e | "tok-number">3</span>)}.**.<span |
| 26ec0 | 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 3c | .class="tok-number">10</span>;.< |
| 26ee0 | 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 |
| 26f00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 6b 65 50 6f 69 6e 74 3c 2f 73 70 | pan.class="tok-fn">makePoint</sp |
| 26f20 | 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 | an>(x:.<span.class="tok-type">i3 |
| 26f40 | 32 3c 2f 73 70 61 6e 3e 29 20 50 6f 69 6e 74 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | 2</span>).Point.{.....<span.clas |
| 26f60 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 7b 0a | s="tok-kw">return</span>.Point{. |
| 26f80 | 20 20 20 20 20 20 20 20 2e 78 20 3d 20 78 2c 0a 20 20 20 20 20 20 20 20 2e 79 20 3d 20 78 20 2a | .........x.=.x,..........y.=.x.* |
| 26fa0 | 20 3c 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 |
| 26fc0 | 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n>,.....};.}.<span.class="tok-kw |
| 26fe0 | 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 |
| 27000 | 74 72 22 3e 26 71 75 6f 74 3b 61 72 72 61 79 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 77 | tr">"array.initialization.w |
| 27020 | 69 74 68 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | ith.function.calls"</span>. |
| 27040 | 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</ |
| 27060 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 6f 72 65 5f 70 6f 69 6e 74 73 5b 3c 73 70 61 6e 20 63 | span>.expect(more_points[<span.c |
| 27080 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 2e 78 20 3d 3d | lass="tok-number">4</span>].x.== |
| 270a0 | 20 3c 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 |
| 270c0 | 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | n>);.....<span.class="tok-kw">tr |
| 270e0 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 6f 72 65 5f 70 6f 69 6e 74 73 5b 3c 73 70 61 | y</span>.expect(more_points[<spa |
| 27100 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 2e 79 | n.class="tok-number">4</span>].y |
| 27120 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f | .==.<span.class="tok-number">6</ |
| 27140 | 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" |
| 27160 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 6f 72 65 5f 70 6f 69 6e 74 73 2e 6c | >try</span>.expect(more_points.l |
| 27180 | 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | en.==.<span.class="tok-number">1 |
| 271a0 | 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 75 72 | 0</span>);.}</code></pre></figur |
| 271c0 | 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 |
| 271e0 | 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>< |
| 27200 | 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 72 72 61 79 73 | samp>$.<kbd>zig.test.test_arrays |
| 27220 | 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 34 20 74 65 73 74 5f 61 72 72 61 79 73 2e 74 65 73 74 2e | .zig</kbd>.1/4.test_arrays.test. |
| 27240 | 69 74 65 72 61 74 65 20 6f 76 65 72 20 61 6e 20 61 72 72 61 79 2e 2e 2e 4f 4b 0a 32 2f 34 20 74 | iterate.over.an.array...OK.2/4.t |
| 27260 | 65 73 74 5f 61 72 72 61 79 73 2e 74 65 73 74 2e 6d 6f 64 69 66 79 20 61 6e 20 61 72 72 61 79 2e | est_arrays.test.modify.an.array. |
| 27280 | 2e 2e 4f 4b 0a 33 2f 34 20 74 65 73 74 5f 61 72 72 61 79 73 2e 74 65 73 74 2e 63 6f 6d 70 69 6c | ..OK.3/4.test_arrays.test.compil |
| 272a0 | 65 2d 74 69 6d 65 20 61 72 72 61 79 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 2e 2e 2e 4f 4b | e-time.array.initialization...OK |
| 272c0 | 0a 34 2f 34 20 74 65 73 74 5f 61 72 72 61 79 73 2e 74 65 73 74 2e 61 72 72 61 79 20 69 6e 69 74 | .4/4.test_arrays.test.array.init |
| 272e0 | 69 61 6c 69 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 2e 2e | ialization.with.function.calls.. |
| 27300 | 2e 4f 4b 0a 41 6c 6c 20 34 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.4.tests.passed..</samp>< |
| 27320 | 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 61 6c 73 | /pre></figure>........<p>See.als |
| 27340 | 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 66 6f 72 22 3e 66 6f | o:</p><ul>.<li><a.href="#for">fo |
| 27360 | 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 53 6c 69 63 65 73 22 | r</a></li>.<li><a.href="#Slices" |
| 27380 | 3e 53 6c 69 63 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 | >Slices</a></li>.</ul>.........< |
| 273a0 | 68 33 20 69 64 3d 22 4d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 2d 41 72 72 61 79 73 22 3e | h3.id="Multidimensional-Arrays"> |
| 273c0 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 2d 41 | <a.href="#toc-Multidimensional-A |
| 273e0 | 72 72 61 79 73 22 3e 4d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 41 72 72 61 79 73 3c 2f | rrays">Multidimensional.Arrays</ |
| 27400 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4d 75 6c 74 69 64 69 | a>.<a.class="hdr".href="#Multidi |
| 27420 | 6d 65 6e 73 69 6f 6e 61 6c 2d 41 72 72 61 79 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 | mensional-Arrays">..</a></h3>... |
| 27440 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 | .....<p>.......Multidimensional. |
| 27460 | 61 72 72 61 79 73 20 63 61 6e 20 62 65 20 63 72 65 61 74 65 64 20 62 79 20 6e 65 73 74 69 6e 67 | arrays.can.be.created.by.nesting |
| 27480 | 20 61 72 72 61 79 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 | .arrays:.......</p>.......<figur |
| 274a0 | 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 |
| 274c0 | 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 6d 75 6c 74 69 64 69 6d 65 6e | ite.class="file">test_multidimen |
| 274e0 | 73 69 6f 6e 61 6c 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 | sional_arrays.zig</cite></figcap |
| 27500 | 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 |
| 27520 | 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 |
| 27540 | 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> |
| 27560 | 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 |
| 27580 | 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 |
| 275a0 | 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 |
| 275c0 | 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 |
| 275e0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 61 74 34 78 34 20 3d 20 5b 3c 73 70 61 | -kw">const</span>.mat4x4.=.[<spa |
| 27600 | 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 5b 3c | n.class="tok-number">4</span>][< |
| 27620 | 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> |
| 27640 | 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 |
| 27660 | 6e 3e 7b 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 | n>{.....[_]<span.class="tok-type |
| 27680 | 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 |
| 276a0 | 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 73 3d 22 | umber">1.0</span>,.<span.class=" |
| 276c0 | 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 |
| 276e0 | 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 |
| 27700 | 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> |
| 27720 | 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 |
| 27740 | 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 |
| 27760 | 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=" |
| 27780 | 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 |
| 277a0 | 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 |
| 277c0 | 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> |
| 277e0 | 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 |
| 27800 | 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 |
| 27820 | 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=" |
| 27840 | 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 |
| 27860 | 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 3c 73 70 | ass="tok-number">1.0</span>,.<sp |
| 27880 | 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> |
| 278a0 | 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 |
| 278c0 | 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 |
| 278e0 | 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=" |
| 27900 | 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 |
| 27920 | 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 |
| 27940 | 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> |
| 27960 | 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 3e 74 65 73 74 | .},.};.<span.class="tok-kw">test |
| 27980 | 3c 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 |
| 279a0 | 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 26 71 75 6f 74 | uot;multidimensional.arrays" |
| 279c0 | 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- |
| 279e0 | 63 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 | comment">//.Access.the.2D.array. |
| 27a00 | 62 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 | by.indexing.the.outer.array,.and |
| 27a20 | 20 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 | .then.the.inner.array.</span>... |
| 27a40 | 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 |
| 27a60 | 3e 20 65 78 70 65 63 74 28 6d 61 74 34 78 34 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >.expect(mat4x4[<span.class="tok |
| 27a80 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -number">1</span>][<span.class=" |
| 27aa0 | 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 |
| 27ac0 | 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 29 3b 0a 0a | lass="tok-number">1.0</span>);.. |
| 27ae0 | 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">// |
| 27b00 | 20 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 | .Here.we.iterate.with.for.loops. |
| 27b20 | 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" |
| 27b40 | 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 6d 61 74 34 78 34 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | >for</span>.(mat4x4,.<span.class |
| 27b60 | 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 72 6f 77 2c 20 | ="tok-number">0</span>..).|row,. |
| 27b80 | 72 6f 77 5f 69 6e 64 65 78 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | row_index|.{.........<span.class |
| 27ba0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 72 6f 77 2c 20 3c 73 70 61 6e | ="tok-kw">for</span>.(row,.<span |
| 27bc0 | 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>..). |
| 27be0 | 7c 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 | |cell,.column_index|.{.......... |
| 27c00 | 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 |
| 27c20 | 3e 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 | >.(row_index.==.column_index).{. |
| 27c40 | 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 6b | ................<span.class="tok |
| 27c60 | 2d 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 | -kw">try</span>.expect(cell.==.< |
| 27c80 | 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 |
| 27ca0 | 6e 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 | n>);.............}.........}.... |
| 27cc0 | 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 |
| 27ce0 | 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"> |
| 27d00 | 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>$.< |
| 27d20 | 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 73 69 6f 6e | kbd>zig.test.test_multidimension |
| 27d40 | 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 5f 6d 75 6c | al_arrays.zig</kbd>.1/1.test_mul |
| 27d60 | 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 6c 74 69 64 | tidimensional_arrays.test.multid |
| 27d80 | 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 20 74 65 73 | imensional.arrays...OK.All.1.tes |
| 27da0 | 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 |
| 27dc0 | 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 74 69 6e 65 | >................<h3.id="Sentine |
| 27de0 | 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 41 72 72 61 79 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | l-Terminated-Arrays"><a.href="#t |
| 27e00 | 6f 63 2d 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 41 72 72 61 79 73 22 3e 53 | oc-Sentinel-Terminated-Arrays">S |
| 27e20 | 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 41 72 72 61 79 73 3c 2f 61 3e 20 3c 61 | entinel-Terminated.Arrays</a>.<a |
| 27e40 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 | .class="hdr".href="#Sentinel-Ter |
| 27e60 | 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 0a 20 20 20 | minated-Arrays">..</a></h3>..... |
| 27e80 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 73 79 6e 74 61 78 20 3c 63 6f 64 65 3e 5b 4e | ...<p>.......The.syntax.<code>[N |
| 27ea0 | 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 61 79 20 77 | :x]T</code>.describes.an.array.w |
| 27ec0 | 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 6f 66 20 76 | hich.has.a.sentinel.element.of.v |
| 27ee0 | 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 20 20 20 20 | alue.<code>x</code>.at.the...... |
| 27f00 | 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 6c 65 6e 67 | .index.corresponding.to.the.leng |
| 27f20 | 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 3e 0a 20 20 | th.<code>N</code>........</p>... |
| 27f40 | 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 |
| 27f60 | 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_ |
| 27f80 | 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 69 74 65 3e | null_terminated_array.zig</cite> |
| 27fa0 | 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 |
| 27fc0 | 61 73 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.=. |
| 27fe0 | 3c 73 70 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 |
| 28000 | 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">& |
| 28020 | 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 |
| 28040 | 61 73 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 |
| 28060 | 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 |
| 28080 | 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 |
| 280a0 | 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 6e 61 74 65 | lass="tok-str">"0-terminate |
| 280c0 | 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 3e 20 7b 0a | d.sentinel.array"</span>.{. |
| 280e0 | 20 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</ |
| 28100 | 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 3d 22 74 6f | span>.array.=.[_:<span.class="to |
| 28120 | 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=" |
| 28140 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-type">u8</span>{.<span.class |
| 28160 | 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 6c | ="tok-number">1</span>,.<span.cl |
| 28180 | 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 6e | ass="tok-number">2</span>,.<span |
| 281a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | .class="tok-number">3</span>,.<s |
| 281c0 | 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 20 | pan.class="tok-number">4</span>. |
| 281e0 | 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 3e 74 72 79 | };......<span.class="tok-kw">try |
| 28200 | 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- |
| 28220 | 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 29 20 3d | builtin">@TypeOf</span>(array).= |
| 28240 | 3d 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 | =.[<span.class="tok-number">4</s |
| 28260 | 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 22 3e 30 3c | pan>:<span.class="tok-number">0< |
| 28280 | 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 |
| 282a0 | 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 |
| 282c0 | 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 65 6e 20 3d | w">try</span>.expect(array.len.= |
| 282e0 | 3d 20 3c 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 |
| 28300 | 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 |
| 28320 | 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 20 63 6c 61 | ry</span>.expect(array[<span.cla |
| 28340 | 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 20 3c 73 70 | ss="tok-number">4</span>].==.<sp |
| 28360 | 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>); |
| 28380 | 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 |
| 283a0 | 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">" |
| 283c0 | 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 6e 74 69 6e | ;extra.0s.in.0-terminated.sentin |
| 283e0 | 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 3c 73 70 61 | el.array"</span>.{.....<spa |
| 28400 | 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 73 65 6e | n.class="tok-comment">//.The.sen |
| 28420 | 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 65 72 2c 20 | tinel.value.may.appear.earlier,. |
| 28440 | 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 6f 6d 70 69 | but.does.not.influence.the.compi |
| 28460 | 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 70 61 6e 20 | le-time.'len'.</span>.....<span. |
| 28480 | 63 6c 61 73 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 | class="tok-kw">const</span>.arra |
| 284a0 | 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 65 72 22 3e | y.=.[_:<span.class="tok-number"> |
| 284c0 | 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 22 3e | 0</span>]<span.class="tok-type"> |
| 284e0 | 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 62 | u8</span>{.<span.class="tok-numb |
| 28500 | 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 |
| 28520 | 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 6f | umber">0</span>,.<span.class="to |
| 28540 | 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 3d | k-number">0</span>,.<span.class= |
| 28560 | 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 20 20 3c 73 | "tok-number">4</span>.};......<s |
| 28580 | 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 |
| 285a0 | 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | pect(<span.class="tok-builtin">@ |
| 285c0 | 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 61 6e 20 63 | TypeOf</span>(array).==.[<span.c |
| 285e0 | 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 73 70 61 6e | lass="tok-number">4</span>:<span |
| 28600 | 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 73 70 | .class="tok-number">0</span>]<sp |
| 28620 | 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 3b 0a | an.class="tok-type">u8</span>);. |
| 28640 | 20 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 |
| 28660 | 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 6e 20 63 6c | an>.expect(array.len.==.<span.cl |
| 28680 | 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 20 20 | ass="tok-number">4</span>);..... |
| 286a0 | 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>. |
| 286c0 | 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 |
| 286e0 | 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | mber">4</span>].==.<span.class=" |
| 28700 | 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 64 65 3e 3c | tok-number">0</span>);.}</code>< |
| 28720 | 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 |
| 28740 | 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 |
| 28760 | 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 |
| 28780 | 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 7a 69 67 3c | .test_null_terminated_array.zig< |
| 287a0 | 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 65 64 5f 61 | /kbd>.1/2.test_null_terminated_a |
| 287c0 | 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 6e 65 6c 20 | rray.test.0-terminated.sentinel. |
| 287e0 | 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 6d 69 6e 61 | array...OK.2/2.test_null_termina |
| 28800 | 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 2d 74 65 72 | ted_array.test.extra.0s.in.0-ter |
| 28820 | 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 41 6c 6c 20 | minated.sentinel.array...OK.All. |
| 28840 | 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 |
| 28860 | 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 3c 75 | igure>........<p>See.also:</p><u |
| 28880 | 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 72 6d 69 6e | l>.<li><a.href="#Sentinel-Termin |
| 288a0 | 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 69 6e 61 74 | ated-Pointers">Sentinel-Terminat |
| 288c0 | 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 68 72 65 66 | ed.Pointers</a></li>.<li><a.href |
| 288e0 | 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 53 6c 69 63 65 73 22 3e 53 | ="#Sentinel-Terminated-Slices">S |
| 28900 | 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 53 6c 69 63 65 73 3c 2f 61 3e 3c 2f 6c | entinel-Terminated.Slices</a></l |
| 28920 | 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c | i>.</ul>.......................< |
| 28940 | 68 32 20 69 64 3d 22 56 65 63 74 6f 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 56 65 | h2.id="Vectors"><a.href="#toc-Ve |
| 28960 | 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | ctors">Vectors</a>.<a.class="hdr |
| 28980 | 22 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 | ".href="#Vectors">..</a></h2>... |
| 289a0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 76 65 63 74 6f 72 20 69 73 20 61 20 67 72 6f | .....<p>.......A.vector.is.a.gro |
| 289c0 | 75 70 20 6f 66 20 62 6f 6f 6c 65 61 6e 73 2c 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 | up.of.booleans,.<a.href="#Intege |
| 289e0 | 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 | rs">Integers</a>,.<a.href="#Floa |
| 28a00 | 74 73 22 3e 46 6c 6f 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 | ts">Floats</a>,.or.......<a.href |
| 28a20 | 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 77 68 69 63 68 20 | ="#Pointers">Pointers</a>.which. |
| 28a40 | 61 72 65 20 6f 70 65 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 | are.operated.on.in.parallel,.usi |
| 28a60 | 6e 67 20 53 49 4d 44 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 | ng.SIMD.instructions.if.possible |
| 28a80 | 2e 0a 20 20 20 20 20 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 | ........Vector.types.are.created |
| 28aa0 | 20 77 69 74 68 20 74 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 | .with.the.builtin.function.<a.hr |
| 28ac0 | 65 66 3d 22 23 56 65 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 | ef="#Vector">@Vector</a>........ |
| 28ae0 | 3c 2f 70 3e 0a 20 20 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 | </p>.......<p>.......Vectors.sup |
| 28b00 | 70 6f 72 74 20 74 68 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 | port.the.same.builtin.operators. |
| 28b20 | 61 73 20 74 68 65 69 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 | as.their.underlying.base.types.. |
| 28b40 | 20 20 20 20 20 20 54 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 | ......These.operations.are.perfo |
| 28b60 | 72 6d 65 64 20 65 6c 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 | rmed.element-wise,.and.return.a. |
| 28b80 | 76 65 63 74 6f 72 20 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 | vector.of.the.same.length....... |
| 28ba0 | 61 73 20 74 68 65 20 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 | as.the.input.vectors..This.inclu |
| 28bc0 | 64 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | des:.......</p>.......<ul>...... |
| 28be0 | 20 20 20 20 20 3c 6c 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 | .....<li>Arithmetic.(<code>+</co |
| 28c00 | 64 65 3e 2c 20 3c 63 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 | de>,.<code>-</code>,.<code>/</co |
| 28c20 | 64 65 3e 2c 20 3c 63 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 | de>,.<code>*</code>,............ |
| 28c40 | 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 73 3d | ..............<code><span.class= |
| 28c60 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 73 70 61 6e 3e 3c 2f | "tok-builtin">@divFloor</span></ |
| 28c80 | 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 62 75 | code>,.<code><span.class="tok-bu |
| 28ca0 | 69 6c 74 69 6e 22 3e 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 | iltin">@sqrt</span></code>,.<cod |
| 28cc0 | 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 65 69 | e><span.class="tok-builtin">@cei |
| 28ce0 | 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | l</span></code>,................ |
| 28d00 | 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 |
| 28d20 | 2d 62 75 69 6c 74 69 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 | -builtin">@log</span></code>,.et |
| 28d40 | 63 2e 29 3c 2f 6c 69 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 | c.)</li>...........<li>Bitwise.o |
| 28d60 | 70 65 72 61 74 6f 72 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 | perators.(<code>>></code>, |
| 28d80 | 20 3c 63 6f 64 65 3e 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 | .<code><<</code>,.<code>&a |
| 28da0 | 6d 70 3b 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 | mp;</code>,..................... |
| 28dc0 | 20 20 20 20 20 20 20 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 | .............<code>|</code>,.<co |
| 28de0 | 64 65 3e 7e 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 20 20 | de>~</code>,.etc.)</li>......... |
| 28e00 | 20 20 3c 6c 69 3e 43 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 | ..<li>Comparison.operators.(<cod |
| 28e20 | 65 3e 26 6c 74 3b 3c 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 | e><</code>,.<code>></code> |
| 28e40 | 2c 20 3c 63 6f 64 65 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 | ,.<code>==</code>,.etc.)</li>... |
| 28e60 | 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 49 74 20 69 73 20 | ....</ul>.......<p>.......It.is. |
| 28e80 | 70 72 6f 68 69 62 69 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 | prohibited.to.use.a.math.operato |
| 28ea0 | 72 20 6f 6e 20 61 20 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 | r.on.a.mixture.of.scalars.(indiv |
| 28ec0 | 69 64 75 61 6c 20 6e 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 | idual.numbers).......and.vectors |
| 28ee0 | 2e 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 73 70 6c | ..Zig.provides.the.<a.href="#spl |
| 28f00 | 61 74 22 3e 40 73 70 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 | at">@splat</a>.builtin.to.easily |
| 28f20 | 20 63 6f 6e 76 65 72 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 | .convert.from.scalars.......to.v |
| 28f40 | 65 63 74 6f 72 73 2c 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 | ectors,.and.it.supports.<a.href= |
| 28f60 | 22 23 72 65 64 75 63 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 | "#reduce">@reduce</a>.and.array. |
| 28f80 | 69 6e 64 65 78 69 6e 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 | indexing.syntax.to.convert...... |
| 28fa0 | 20 66 72 6f 6d 20 76 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 | .from.vectors.to.scalars..Vector |
| 28fc0 | 73 20 61 6c 73 6f 20 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 | s.also.support.assignment.to.and |
| 28fe0 | 20 66 72 6f 6d 20 66 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 | .from.fixed-length.......arrays. |
| 29000 | 77 69 74 68 20 63 6f 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 | with.comptime-known.length...... |
| 29020 | 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 72 65 61 72 72 | ..</p>.......<p>.......For.rearr |
| 29040 | 61 6e 67 69 6e 67 20 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 | anging.elements.within.and.betwe |
| 29060 | 65 6e 20 76 65 63 74 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 | en.vectors,.Zig.provides.the.<a. |
| 29080 | 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 2f 61 3e 20 61 6e 64 | href="#shuffle">@shuffle</a>.and |
| 290a0 | 20 3c 61 20 68 72 65 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 | .<a.href="#select">@select</a>.f |
| 290c0 | 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 20 20 3c 70 3e 0a 20 | unctions........</p>.......<p>.. |
| 290e0 | 20 20 20 20 20 4f 70 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 | .....Operations.on.vectors.short |
| 29100 | 65 72 20 74 68 61 6e 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 | er.than.the.target.machine's.nat |
| 29120 | 69 76 65 20 53 49 4d 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 | ive.SIMD.size.will.typically.com |
| 29140 | 70 69 6c 65 20 74 6f 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 | pile.to.single.SIMD.......instru |
| 29160 | 63 74 69 6f 6e 73 2c 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 | ctions,.while.vectors.longer.tha |
| 29180 | 6e 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 | n.the.target.machine's.native.SI |
| 291a0 | 4d 44 20 73 69 7a 65 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 | MD.size.will.compile.to.multiple |
| 291c0 | 20 53 49 4d 44 0a 20 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 | .SIMD.......instructions..If.a.g |
| 291e0 | 69 76 65 6e 20 6f 70 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 | iven.operation.doesn't.have.SIMD |
| 29200 | 20 73 75 70 70 6f 72 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 | .support.on.the.target.architect |
| 29220 | 75 72 65 2c 20 74 68 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 | ure,.the.compiler.will.default.. |
| 29240 | 20 20 20 20 20 74 6f 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 | .....to.operating.on.each.vector |
| 29260 | 20 65 6c 65 6d 65 6e 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 | .element.one.at.a.time..Zig.supp |
| 29280 | 6f 72 74 73 20 61 6e 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 | orts.any.comptime-known.vector.l |
| 292a0 | 65 6e 67 74 68 20 75 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 | ength.up.to.2^32-1,.......althou |
| 292c0 | 67 68 20 73 6d 61 6c 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 | gh.small.powers.of.two.(2-64).ar |
| 292e0 | 65 20 6d 6f 73 74 20 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 | e.most.typical..Note.that.excess |
| 29300 | 69 76 65 6c 79 20 6c 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 | ively.long.vector.lengths.(e.g.. |
| 29320 | 32 5e 32 30 29 20 6d 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 | 2^20).may.......result.in.compil |
| 29340 | 65 72 20 63 72 61 73 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 | er.crashes.on.current.versions.o |
| 29360 | 66 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 | f.Zig........</p>.......<figure> |
| 29380 | 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 |
| 293a0 | 65 20 63 6c 61 73 73 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 | e.class="file">test_vector.zig</ |
| 293c0 | 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 |
| 293e0 | 61 6e 20 63 6c 61 73 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 |
| 29400 | 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">@ |
| 29420 | 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 |
| 29440 | 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 |
| 29460 | 61 6e 20 63 6c 61 73 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 |
| 29480 | 78 70 65 63 74 45 71 75 61 6c 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 45 | xpectEqual.=.std.testing.expectE |
| 294a0 | 71 75 61 6c 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | qual;..<span.class="tok-kw">test |
| 294c0 | 3c 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 |
| 294e0 | 75 6f 74 3b 42 61 73 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 | uot;Basic.vector.usage"</sp |
| 29500 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | an>.{.....<span.class="tok-comme |
| 29520 | 6e 74 22 3e 2f 2f 20 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 | nt">//.Vectors.have.a.compile-ti |
| 29540 | 6d 65 20 6b 6e 6f 77 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 | me.known.length.and.base.type.</ |
| 29560 | 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 |
| 29580 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | onst</span>.a.=.<span.class="tok |
| 295a0 | 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 63 | -builtin">@Vector</span>(<span.c |
| 295c0 | 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 61 | lass="tok-number">4</span>,.<spa |
| 295e0 | 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 20 | n.class="tok-type">i32</span>){. |
| 29600 | 3c 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 |
| 29620 | 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 |
| 29640 | 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 |
| 29660 | 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 |
| 29680 | 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 |
| 296a0 | 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 |
| 296c0 | 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> |
| 296e0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 | (<span.class="tok-number">4</spa |
| 29700 | 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 69 33 32 3c 2f | n>,.<span.class="tok-type">i32</ |
| 29720 | 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 6e 75 6d 62 65 72 22 | span>){.<span.class="tok-number" |
| 29740 | 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 |
| 29760 | 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 |
| 29780 | 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 |
| 297a0 | 6b 2d 6e 75 6d 62 65 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 | k-number">8</span>.};......<span |
| 297c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4d 61 74 68 20 6f 70 65 | .class="tok-comment">//.Math.ope |
| 297e0 | 72 61 74 69 6f 6e 73 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 | rations.take.place.element-wise. |
| 29800 | 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" |
| 29820 | 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 0a 20 20 20 20 3c 73 | >const</span>.c.=.a.+.b;......<s |
| 29840 | 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 64 69 76 | pan.class="tok-comment">//.Indiv |
| 29860 | 69 64 75 61 6c 20 76 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 | idual.vector.elements.can.be.acc |
| 29880 | 65 73 73 65 64 20 75 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 | essed.using.array.indexing.synta |
| 298a0 | 78 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 | x.</span>.....<span.class="tok-k |
| 298c0 | 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 70 61 6e 20 | w">try</span>.expectEqual(<span. |
| 298e0 | 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 63 5b 3c | class="tok-number">6</span>,.c[< |
| 29900 | 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> |
| 29920 | 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 |
| 29940 | 3c 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 | </span>.expectEqual(<span.class= |
| 29960 | 22 74 6f 6b 2d 6e 75 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 | "tok-number">8</span>,.c[<span.c |
| 29980 | 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>]);... |
| 299a0 | 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 |
| 299c0 | 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 74 6f 6b 2d 6e | >.expectEqual(<span.class="tok-n |
| 299e0 | 75 6d 62 65 72 22 3e 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 | umber">10</span>,.c[<span.class= |
| 29a00 | 22 74 6f 6b 2d 6e 75 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 | "tok-number">2</span>]);.....<sp |
| 29a20 | 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 |
| 29a40 | 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 |
| 29a60 | 22 3e 31 32 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 | ">12</span>,.c[<span.class="tok- |
| 29a80 | 6e 75 6d 62 65 72 22 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 | number">3</span>]);.}..<span.cla |
| 29aa0 | 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 |
| 29ac0 | 61 73 73 3d 22 74 6f 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 | ass="tok-str">"Conversion.b |
| 29ae0 | 65 74 77 65 65 6e 20 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 | etween.vectors,.arrays,.and.slic |
| 29b00 | 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 73 | es"</span>.{.....<span.clas |
| 29b20 | 73 3d 22 74 6f 6b 2d 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 | s="tok-comment">//.Vectors.and.f |
| 29b40 | 69 78 65 64 2d 6c 65 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 | ixed-length.arrays.can.be.automa |
| 29b60 | 74 69 63 61 6c 6c 79 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 | tically.assigned.back.and.forth< |
| 29b80 | 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"> |
| 29ba0 | 63 6f 6e 73 74 3c 2f 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 | const</span>.arr1:.[<span.class= |
| 29bc0 | 22 74 6f 6b 2d 6e 75 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 | "tok-number">4</span>]<span.clas |
| 29be0 | 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 5b 5f 5d 3c 73 70 | s="tok-type">f32</span>.=.[_]<sp |
| 29c00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 7b 20 | an.class="tok-type">f32</span>{. |
| 29c20 | 3c 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 31 3c 2f 73 70 | <span.class="tok-number">1.1</sp |
| 29c40 | 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 2e | an>,.<span.class="tok-number">3. |
| 29c60 | 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 |
| 29c80 | 72 22 3e 34 2e 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 | r">4.5</span>,.<span.class="tok- |
| 29ca0 | 6e 75 6d 62 65 72 22 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 | number">5.6</span>.};.....<span. |
| 29cc0 | 63 6c 61 73 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 3a | class="tok-kw">const</span>.vec: |
| 29ce0 | 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 74 | .<span.class="tok-builtin">@Vect |
| 29d00 | 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 65 | or</span>(<span.class="tok-numbe |
| 29d20 | 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 74 79 | r">4</span>,.<span.class="tok-ty |
| 29d40 | 70 65 22 3e 66 33 32 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 | pe">f32</span>).=.arr1;.....<spa |
| 29d60 | 6e 20 63 6c 61 73 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 | n.class="tok-kw">const</span>.ar |
| 29d80 | 72 32 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 | r2:.[<span.class="tok-number">4< |
| 29da0 | 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 66 33 | /span>]<span.class="tok-type">f3 |
| 29dc0 | 32 3c 2f 73 70 61 6e 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 | 2</span>.=.vec;.....<span.class= |
| 29de0 | 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 28 | "tok-kw">try</span>.expectEqual( |
| 29e00 | 61 72 72 31 2c 20 61 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 | arr1,.arr2);......<span.class="t |
| 29e20 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 59 6f 75 20 63 61 6e 20 61 6c 73 6f 20 61 73 73 69 | ok-comment">//.You.can.also.assi |
| 29e40 | 67 6e 20 66 72 6f 6d 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 | gn.from.a.slice.with.comptime-kn |
| 29e60 | 6f 77 6e 20 6c 65 6e 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 | own.length.to.a.vector.using..*< |
| 29e80 | 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"> |
| 29ea0 | 63 6f 6e 73 74 3c 2f 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 | const</span>.vec2:.<span.class=" |
| 29ec0 | 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 |
| 29ee0 | 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>,.< |
| 29f00 | 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> |
| 29f20 | 29 20 3d 20 61 72 72 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 | ).=.arr1[<span.class="tok-number |
| 29f40 | 22 3e 31 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ">1</span>..<span.class="tok-num |
| 29f60 | 62 65 72 22 3e 33 3c 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 | ber">3</span>].*;......<span.cla |
| 29f80 | 73 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 3a 20 | ss="tok-kw">const</span>.slice:. |
| 29fa0 | 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 |
| 29fc0 | 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 66 33 32 3c 2f | an>.<span.class="tok-type">f32</ |
| 29fe0 | 73 70 61 6e 3e 20 3d 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 | span>.=.&arr1;.....<span.cla |
| 2a000 | 73 73 3d 22 74 6f 6b 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 | ss="tok-kw">var</span>.offset:.< |
| 2a020 | 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> |
| 2a040 | 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 |
| 2a060 | 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 3e | pan>;.<span.class="tok-comment"> |
| 2a080 | 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 6e 3c | //.var.to.make.it.runtime-known< |
| 2a0a0 | 2f 73 70 61 6e 3e 0a 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 | /span>....._.=.&offset;.<spa |
| 2a0c0 | 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 |
| 2a0e0 | 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</ |
| 2a100 | 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 |
| 2a120 | 6e 74 22 3e 2f 2f 20 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 | nt">//.To.extract.a.comptime-kno |
| 2a140 | 77 6e 20 6c 65 6e 67 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 | wn.length.from.a.runtime-known.o |
| 2a160 | 66 66 73 65 74 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ffset,</span>.....<span.class="t |
| 2a180 | 6f 6b 2d 63 6f 6d 6d 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 | ok-comment">//.first.extract.a.n |
| 2a1a0 | 65 77 20 73 6c 69 63 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 | ew.slice.from.the.starting.offse |
| 2a1c0 | 74 2c 20 74 68 65 6e 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 | t,.then.an.array.of</span>.....< |
| 2a1e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 6f 6d 70 | span.class="tok-comment">//.comp |
| 2a200 | 74 69 6d 65 2d 6b 6e 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 | time-known.length</span>.....<sp |
| 2a220 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 | an.class="tok-kw">const</span>.v |
| 2a240 | 65 63 33 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 | ec3:.<span.class="tok-builtin">@ |
| 2a260 | 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 |
| 2a280 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | umber">2</span>,.<span.class="to |
| 2a2a0 | 6b 2d 74 79 70 65 22 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 | k-type">f32</span>).=.slice[offs |
| 2a2c0 | 65 74 2e 2e 5d 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | et..][<span.class="tok-number">0 |
| 2a2e0 | 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 |
| 2a300 | 22 3e 32 3c 2f 73 70 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 | ">2</span>].*;.....<span.class=" |
| 2a320 | 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 28 73 | tok-kw">try</span>.expectEqual(s |
| 2a340 | 6c 69 63 65 5b 6f 66 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 | lice[offset],.vec2[<span.class=" |
| 2a360 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 29 3b 0a 20 20 20 20 3c 73 70 61 | tok-number">0</span>]);.....<spa |
| 2a380 | 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 |
| 2a3a0 | 63 74 45 71 75 61 6c 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 | ctEqual(slice[offset.+.<span.cla |
| 2a3c0 | 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 2c 20 76 65 63 32 5b | ss="tok-number">1</span>],.vec2[ |
| 2a3e0 | 3c 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 |
| 2a400 | 3e 5d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | >]);.....<span.class="tok-kw">tr |
| 2a420 | 79 3c 2f 73 70 61 6e 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 | y</span>.expectEqual(vec2,.vec3) |
| 2a440 | 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 |
| 2a460 | 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 |
| 2a480 | 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 |
| 2a4a0 | 62 64 3e 7a 69 67 20 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 | bd>zig.test.test_vector.zig</kbd |
| 2a4c0 | 3e 0a 31 2f 32 20 74 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 | >.1/2.test_vector.test.Basic.vec |
| 2a4e0 | 74 6f 72 20 75 73 61 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 | tor.usage...OK.2/2.test_vector.t |
| 2a500 | 65 73 74 2e 43 6f 6e 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 | est.Conversion.between.vectors,. |
| 2a520 | 61 72 72 61 79 73 2c 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 | arrays,.and.slices...OK.All.2.te |
| 2a540 | 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 |
| 2a560 | 65 3e 0a 0a 20 20 20 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 | e>........<p>.......TODO.talk.ab |
| 2a580 | 6f 75 74 20 43 20 41 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 | out.C.ABI.interop<br/>.......TOD |
| 2a5a0 | 4f 20 63 6f 6e 73 69 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 | O.consider.suggesting.std.MultiA |
| 2a5c0 | 72 72 61 79 4c 69 73 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 | rrayList.......</p>.......<p>See |
| 2a5e0 | 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 73 70 6c | .also:</p><ul>.<li><a.href="#spl |
| 2a600 | 61 74 22 3e 40 73 70 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 | at">@splat</a></li>.<li><a.href= |
| 2a620 | 22 23 73 68 75 66 66 6c 65 22 3e 40 73 68 75 66 66 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 | "#shuffle">@shuffle</a></li>.<li |
| 2a640 | 3e 3c 61 20 68 72 65 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 | ><a.href="#select">@select</a></ |
| 2a660 | 6c 69 3e 0a 3c 6c 69 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 | li>.<li><a.href="#reduce">@reduc |
| 2a680 | 65 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 20 20 20 20 20 | e</a></li>.</ul>................ |
| 2a6a0 | 20 3c 68 32 20 69 64 3d 22 50 6f 69 6e 74 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | .<h2.id="Pointers"><a.href="#toc |
| 2a6c0 | 2d 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | -Pointers">Pointers</a>.<a.class |
| 2a6e0 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f | ="hdr".href="#Pointers">..</a></ |
| 2a700 | 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 68 61 73 20 74 77 6f | h2>........<p>.......Zig.has.two |
| 2a720 | 20 6b 69 6e 64 73 20 6f 66 20 70 6f 69 6e 74 65 72 73 3a 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 | .kinds.of.pointers:.single-item. |
| 2a740 | 61 6e 64 20 6d 61 6e 79 2d 69 74 65 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | and.many-item........</p>....... |
| 2a760 | 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 2a 54 3c 2f 63 6f 64 | <ul>...........<li><code>*T</cod |
| 2a780 | 65 3e 20 2d 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 20 74 6f 20 65 78 61 63 | e>.-.single-item.pointer.to.exac |
| 2a7a0 | 74 6c 79 20 6f 6e 65 20 69 74 65 6d 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | tly.one.item..............<ul>.. |
| 2a7c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 64 65 72 65 66 20 | .............<li>Supports.deref. |
| 2a7e0 | 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 3e 70 74 72 2e 2a 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a | syntax:.<code>ptr.*</code></li>. |
| 2a800 | 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 6c 69 | ............</ul>...........</li |
| 2a820 | 3e 0a 20 20 20 20 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 | >...........<li><code>[*]T</code |
| 2a840 | 3e 20 2d 20 6d 61 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 | >.-.many-item.pointer.to.unknown |
| 2a860 | 20 6e 75 6d 62 65 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 | .number.of.items..............<u |
| 2a880 | 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 74 73 20 69 6e | l>...............<li>Supports.in |
| 2a8a0 | 64 65 78 20 73 79 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 | dex.syntax:.<code>ptr[i]</code>< |
| 2a8c0 | 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 74 73 20 | /li>...............<li>Supports. |
| 2a8e0 | 73 6c 69 63 65 20 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 | slice.syntax:.<code>ptr[start..e |
| 2a900 | 6e 64 5d 3c 2f 63 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 | nd]</code>.and.<code>ptr[start.. |
| 2a920 | 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> |
| 2a940 | 53 75 70 70 6f 72 74 73 20 70 6f 69 6e 74 65 72 20 61 72 69 74 68 6d 65 74 69 63 3a 20 3c 63 6f | Supports.pointer.arithmetic:.<co |
| 2a960 | 64 65 3e 70 74 72 20 2b 20 78 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 70 74 72 20 2d 20 78 | de>ptr.+.x</code>,.<code>ptr.-.x |
| 2a980 | 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 3c | </code></li>...............<li>< |
| 2a9a0 | 63 6f 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 | code>T</code>.must.have.a.known. |
| 2a9c0 | 73 69 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 | size,.which.means.that.it.cannot |
| 2a9e0 | 20 62 65 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 | .be...............<code><span.cl |
| 2aa00 | 61 73 73 3d 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 | ass="tok-type">anyopaque</span>< |
| 2aa20 | 2f 63 6f 64 65 3e 20 6f 72 20 61 6e 79 20 6f 74 68 65 72 20 3c 61 20 68 72 65 66 3d 22 23 6f 70 | /code>.or.any.other.<a.href="#op |
| 2aa40 | 61 71 75 65 22 3e 6f 70 61 71 75 65 20 74 79 70 65 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 | aque">opaque.type</a>.</li>..... |
| 2aa60 | 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 | ........</ul>...........</li>... |
| 2aa80 | 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 73 65 20 74 79 70 65 73 20 61 | ....</ul>.......<p>These.types.a |
| 2aaa0 | 72 65 20 63 6c 6f 73 65 6c 79 20 72 65 6c 61 74 65 64 20 74 6f 20 3c 61 20 68 72 65 66 3d 22 23 | re.closely.related.to.<a.href="# |
| 2aac0 | 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 | Arrays">Arrays</a>.and.<a.href=" |
| 2aae0 | 23 53 6c 69 63 65 73 22 3e 53 6c 69 63 65 73 3c 2f 61 3e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 20 | #Slices">Slices</a>:</p>........ |
| 2ab00 | 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 3e 2a 5b 4e 5d | .<ul>.............<li><code>*[N] |
| 2ab20 | 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 6d 73 2c 20 73 | T</code>.-.pointer.to.N.items,.s |
| 2ab40 | 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 74 6f 20 61 6e | ame.as.single-item.pointer.to.an |
| 2ab60 | 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 20 20 20 20 20 | .array..............<ul>........ |
| 2ab80 | 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 6e 74 | .........<li>Supports.index.synt |
| 2aba0 | 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 65 3e 3c 2f 6c | ax:.<code>array_ptr[i]</code></l |
| 2abc0 | 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 73 20 | i>.................<li>Supports. |
| 2abe0 | 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 74 72 5b 73 74 | slice.syntax:.<code>array_ptr[st |
| 2ac00 | 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 20 20 20 20 20 | art..end]</code></li>........... |
| 2ac20 | 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 65 72 74 79 3a | ......<li>Supports.len.property: |
| 2ac40 | 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 3c 2f 6c 69 3e | .<code>array_ptr.len</code></li> |
| 2ac60 | 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 20 20 3c | .............</ul>.............< |
| 2ac80 | 2f 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 | /li>.........</ul>.........<ul>. |
| 2aca0 | 20 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 | ............<li><code>[]T</code> |
| 2acc0 | 20 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 | .-.is.a.slice.(a.fat.pointer,.wh |
| 2ace0 | 69 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 | ich.contains.a.pointer.of.type.< |
| 2ad00 | 63 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 | code>[*]T</code>.and.a.length).. |
| 2ad20 | 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>................ |
| 2ad40 | 20 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 | .<li>Supports.index.syntax:.<cod |
| 2ad60 | 65 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 | e>slice[i]</code></li>.......... |
| 2ad80 | 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 73 6c 69 63 65 20 73 79 6e 74 61 78 | .......<li>Supports.slice.syntax |
| 2ada0 | 3a 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 | :.<code>slice[start..end]</code> |
| 2adc0 | 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 |
| 2ade0 | 74 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 | ts.len.property:.<code>slice.len |
| 2ae00 | 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 | </code></li>.............</ul>.. |
| 2ae20 | 20 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 | ...........</li>.........</ul>.. |
| 2ae40 | 20 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 | .......<p>Use.<code>&x</code |
| 2ae60 | 3e 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 | >.to.obtain.a.single-item.pointe |
| 2ae80 | 72 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 | r:</p>.......<figure><figcaption |
| 2aea0 | 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 |
| 2aec0 | 6c 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 | le">test_single_item_pointer.zig |
| 2aee0 | 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>< |
| 2af00 | 73 70 61 6e 20 63 6c 61 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> |
| 2af20 | 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 74 | .expect.=.<span.class="tok-built |
| 2af40 | 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=" |
| 2af60 | 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>) |
| 2af80 | 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 |
| 2afa0 | 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=" |
| 2afc0 | 74 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 | tok-str">"address.of.syntax |
| 2afe0 | 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= |
| 2b000 | 22 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 | "tok-comment">//.Get.the.address |
| 2b020 | 20 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 | .of.a.variable:</span>.....<span |
| 2b040 | 20 63 6c 61 73 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:. |
| 2b060 | 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 |
| 2b080 | 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 | >.=.<span.class="tok-number">123 |
| 2b0a0 | 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 6f 6b 2d 6b | 4</span>;.....<span.class="tok-k |
| 2b0c0 | 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 61 6d 70 3b 78 3b 0a | w">const</span>.x_ptr.=.&x;. |
| 2b0e0 | 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">/ |
| 2b100 | 2f 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 | /.Dereference.a.pointer:</span>. |
| 2b120 | 20 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 |
| 2b140 | 61 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 | an>.expect(x_ptr.*.==.<span.clas |
| 2b160 | 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 0a 20 20 | s="tok-number">1234</span>);.... |
| 2b180 | 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 57 | ..<span.class="tok-comment">//.W |
| 2b1a0 | 68 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 | hen.you.get.the.address.of.a.con |
| 2b1c0 | 73 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 | st.variable,.you.get.a.const.sin |
| 2b1e0 | 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 73 70 | gle-item.pointer.</span>.....<sp |
| 2b200 | 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 |
| 2b220 | 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 |
| 2b240 | 79 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 | ypeOf</span>(x_ptr).==.*<span.cl |
| 2b260 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ass="tok-kw">const</span>.<span. |
| 2b280 | 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 0a 20 | class="tok-type">i32</span>);... |
| 2b2a0 | 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">//. |
| 2b2c0 | 49 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 | If.you.want.to.mutate.the.value, |
| 2b2e0 | 20 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 | .you'd.need.an.address.of.a.muta |
| 2b300 | 62 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 | ble.variable:</span>.....<span.c |
| 2b320 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 | lass="tok-kw">var</span>.y:.<spa |
| 2b340 | 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>.=. |
| 2b360 | 3c 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 | <span.class="tok-number">5678</s |
| 2b380 | 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | pan>;.....<span.class="tok-kw">c |
| 2b3a0 | 6f 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 | onst</span>.y_ptr.=.&y;..... |
| 2b3c0 | 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>. |
| 2b3e0 | 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | expect(<span.class="tok-builtin" |
| 2b400 | 3e 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 | >@TypeOf</span>(y_ptr).==.*<span |
| 2b420 | 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>);.. |
| 2b440 | 20 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 | ...y_ptr.*.+=.<span.class="tok-n |
| 2b460 | 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 |
| 2b480 | 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 5f 70 74 | ="tok-kw">try</span>.expect(y_pt |
| 2b4a0 | 72 2e 2a 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | r.*.==.<span.class="tok-number"> |
| 2b4c0 | 35 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 | 5679</span>);.}..<span.class="to |
| 2b4e0 | 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 |
| 2b500 | 6f 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 | ok-str">"pointer.array.acce |
| 2b520 | 73 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 | ss"</span>.{.....<span.clas |
| 2b540 | 73 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 | s="tok-comment">//.Taking.an.add |
| 2b560 | 72 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 | ress.of.an.individual.element.gi |
| 2b580 | 76 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 | ves.a</span>.....<span.class="to |
| 2b5a0 | 6b 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 | k-comment">//.single-item.pointe |
| 2b5c0 | 72 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 | r..This.kind.of.pointer</span>.. |
| 2b5e0 | 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">//. |
| 2b600 | 64 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 | does.not.support.pointer.arithme |
| 2b620 | 74 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 | tic.</span>.....<span.class="tok |
| 2b640 | 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 70 61 6e | -kw">var</span>.array.=.[_]<span |
| 2b660 | 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 20 3c 73 70 | .class="tok-type">u8</span>{.<sp |
| 2b680 | 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 20 | an.class="tok-number">1</span>,. |
| 2b6a0 | 3c 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 |
| 2b6c0 | 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 73 | >,.<span.class="tok-number">3</s |
| 2b6e0 | 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 34 | pan>,.<span.class="tok-number">4 |
| 2b700 | 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 |
| 2b720 | 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 6d | ">5</span>,.<span.class="tok-num |
| 2b740 | 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ber">6</span>,.<span.class="tok- |
| 2b760 | 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 74 | number">7</span>,.<span.class="t |
| 2b780 | 6f 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 | ok-number">8</span>,.<span.class |
| 2b7a0 | 3d 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 | ="tok-number">9</span>,.<span.cl |
| 2b7c0 | 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 20 7d 3b 0a 20 20 | ass="tok-number">10</span>.};... |
| 2b7e0 | 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 |
| 2b800 | 61 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 | an>.ptr.=.&array[<span.class |
| 2b820 | 3d 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 | ="tok-number">2</span>];.....<sp |
| 2b840 | 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 |
| 2b860 | 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 |
| 2b880 | 79 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 | ypeOf</span>(ptr).==.*<span.clas |
| 2b8a0 | 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 0a 20 20 20 20 3c 73 | s="tok-type">u8</span>);......<s |
| 2b8c0 | 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 |
| 2b8e0 | 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 6d 62 | pect(array[<span.class="tok-numb |
| 2b900 | 65 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 | er">2</span>].==.<span.class="to |
| 2b920 | 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 70 74 72 2e 2a 20 2b | k-number">3</span>);.....ptr.*.+ |
| 2b940 | 3d 20 3c 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 |
| 2b960 | 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 72 | an>;.....<span.class="tok-kw">tr |
| 2b980 | 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 20 63 6c 61 73 | y</span>.expect(array[<span.clas |
| 2b9a0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 | s="tok-number">2</span>].==.<spa |
| 2b9c0 | 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>);. |
| 2b9e0 | 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>< |
| 2ba00 | 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 |
| 2ba20 | 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 |
| 2ba40 | 3e 7a 69 67 20 74 65 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 | >zig.test.test_single_item_point |
| 2ba60 | 65 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 73 69 6e 67 6c 65 5f 69 74 65 | er.zig</kbd>.1/2.test_single_ite |
| 2ba80 | 6d 5f 70 6f 69 6e 74 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 | m_pointer.test.address.of.syntax |
| 2baa0 | 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 73 69 6e 67 6c 65 5f 69 74 65 6d 5f 70 6f 69 6e 74 | ...OK.2/2.test_single_item_point |
| 2bac0 | 65 72 2e 74 65 73 74 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 | er.test.pointer.array.access...O |
| 2bae0 | 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 3e 3c 2f 70 | K.All.2.tests.passed..</samp></p |
| 2bb00 | 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 20 5a | re></figure>........<p>........Z |
| 2bb20 | 69 67 20 73 75 70 70 6f 72 74 73 20 70 6f 69 6e 74 65 72 20 61 72 69 74 68 6d 65 74 69 63 2e 20 | ig.supports.pointer.arithmetic.. |
| 2bb40 | 49 74 27 73 20 62 65 74 74 65 72 20 74 6f 20 61 73 73 69 67 6e 20 74 68 65 20 70 6f 69 6e 74 65 | It's.better.to.assign.the.pointe |
| 2bb60 | 72 20 74 6f 20 3c 63 6f 64 65 3e 5b 2a 5d 54 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 69 6e 63 72 65 | r.to.<code>[*]T</code>.and.incre |
| 2bb80 | 6d 65 6e 74 20 74 68 61 74 20 76 61 72 69 61 62 6c 65 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c | ment.that.variable..For.example, |
| 2bba0 | 20 64 69 72 65 63 74 6c 79 20 69 6e 63 72 65 6d 65 6e 74 69 6e 67 20 74 68 65 20 70 6f 69 6e 74 | .directly.incrementing.the.point |
| 2bbc0 | 65 72 20 66 72 6f 6d 20 61 20 73 6c 69 63 65 20 77 69 6c 6c 20 63 6f 72 72 75 70 74 20 69 74 2e | er.from.a.slice.will.corrupt.it. |
| 2bbe0 | 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 |
| 2bc00 | 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 |
| 2bc20 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 70 6f 69 6e 74 65 72 5f 61 72 69 74 68 6d 65 74 69 63 | s="file">test_pointer_arithmetic |
| 2bc40 | 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 |
| 2bc60 | 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 |
| 2bc80 | 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | pan>.expect.=.<span.class="tok-b |
| 2bca0 | 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 |
| 2bcc0 | 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 |
| 2bce0 | 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | an>).testing.expect;..<span.clas |
| 2bd00 | 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 |
| 2bd20 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 61 72 69 74 68 | ss="tok-str">"pointer.arith |
| 2bd40 | 6d 65 74 69 63 20 77 69 74 68 20 6d 61 6e 79 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 26 71 75 6f | metic.with.many-item.pointer&quo |
| 2bd60 | 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 |
| 2bd80 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 20 3d 20 5b 5f 5d 3c 73 70 | -kw">const</span>.array.=.[_]<sp |
| 2bda0 | 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>{. |
| 2bdc0 | 3c 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 |
| 2bde0 | 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 |
| 2be00 | 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 |
| 2be20 | 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 |
| 2be40 | 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 |
| 2be60 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 74 72 3a 20 5b 2a 5d 3c 73 70 61 6e 20 | ok-kw">var</span>.ptr:.[*]<span. |
| 2be80 | 63 6c 61 73 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 |
| 2bea0 | 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>.=. |
| 2bec0 | 26 61 6d 70 3b 61 72 72 61 79 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | &array;......<span.class="to |
| 2bee0 | 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 5b 3c 73 70 61 | k-kw">try</span>.expect(ptr[<spa |
| 2bf00 | 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 3d | n.class="tok-number">0</span>].= |
| 2bf20 | 3d 20 3c 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 |
| 2bf40 | 61 6e 3e 29 3b 0a 20 20 20 20 70 74 72 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>);.....ptr.+=.<span.class="to |
| 2bf60 | 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 6c | k-number">1</span>;.....<span.cl |
| 2bf80 | 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 |
| 2bfa0 | 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 3e 30 3c 2f 73 | tr[<span.class="tok-number">0</s |
| 2bfc0 | 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 |
| 2bfe0 | 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 3d 22 74 | ">2</span>);......<span.class="t |
| 2c000 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 73 6c 69 63 69 6e 67 20 61 20 6d 61 6e 79 2d 69 74 | ok-comment">//.slicing.a.many-it |
| 2c020 | 65 6d 20 70 6f 69 6e 74 65 72 20 77 69 74 68 6f 75 74 20 61 6e 20 65 6e 64 20 69 73 20 65 71 75 | em.pointer.without.an.end.is.equ |
| 2c040 | 69 76 61 6c 65 6e 74 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 | ivalent.to</span>.....<span.clas |
| 2c060 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 70 6f 69 6e 74 65 72 20 61 72 69 74 68 | s="tok-comment">//.pointer.arith |
| 2c080 | 6d 65 74 69 63 3a 20 60 70 74 72 5b 73 74 61 72 74 2e 2e 5d 20 3d 3d 20 70 74 72 20 2b 20 73 74 | metic:.`ptr[start..].==.ptr.+.st |
| 2c0a0 | 61 72 74 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 | art`</span>.....<span.class="tok |
| 2c0c0 | 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 5b 3c 73 70 61 6e | -kw">try</span>.expect(ptr[<span |
| 2c0e0 | 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 5d 20 | .class="tok-number">1</span>..]. |
| 2c100 | 3d 3d 20 70 74 72 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 | ==.ptr.+.<span.class="tok-number |
| 2c120 | 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">1</span>);.}..<span.class="tok |
| 2c140 | 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 |
| 2c160 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 61 72 69 74 68 6d 65 74 69 63 20 | k-str">"pointer.arithmetic. |
| 2c180 | 77 69 74 68 20 73 6c 69 63 65 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | with.slices"</span>.{.....< |
| 2c1a0 | 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 |
| 2c1c0 | 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" |
| 2c1e0 | 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 |
| 2c200 | 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 |
| 2c220 | 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=" |
| 2c240 | 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 |
| 2c260 | 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>.};.....< |
| 2c280 | 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 6c | span.class="tok-kw">var</span>.l |
| 2c2a0 | 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 |
| 2c2c0 | 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 |
| 2c2e0 | 6d 62 65 72 22 3e 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 | mber">0</span>;.<span.class="tok |
| 2c300 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 61 72 20 74 6f 20 6d 61 6b 65 20 69 74 20 72 75 6e 74 | -comment">//.var.to.make.it.runt |
| 2c320 | 69 6d 65 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 6c 65 | ime-known</span>....._.=.&le |
| 2c340 | 6e 67 74 68 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 | ngth;.<span.class="tok-comment"> |
| 2c360 | 2f 2f 20 73 75 70 70 72 65 73 73 20 27 76 61 72 20 69 73 20 6e 65 76 65 72 20 6d 75 74 61 74 65 | //.suppress.'var.is.never.mutate |
| 2c380 | 64 27 20 65 72 72 6f 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 | d'.error</span>.....<span.class= |
| 2c3a0 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 61 72 72 61 | "tok-kw">var</span>.slice.=.arra |
| 2c3c0 | 79 5b 6c 65 6e 67 74 68 2e 2e 61 72 72 61 79 2e 6c 65 6e 5d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e | y[length..array.len];......<span |
| 2c3e0 | 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 |
| 2c400 | 74 28 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 | t(slice[<span.class="tok-number" |
| 2c420 | 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 6e | >0</span>].==.<span.class="tok-n |
| 2c440 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | umber">1</span>);.....<span.clas |
| 2c460 | 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 |
| 2c480 | 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 75 6d 62 65 | ce.len.==.<span.class="tok-numbe |
| 2c4a0 | 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 73 6c 69 63 65 2e 70 74 72 20 2b 3d 20 | r">4</span>);......slice.ptr.+=. |
| 2c4c0 | 3c 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 |
| 2c4e0 | 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 | >;.....<span.class="tok-comment" |
| 2c500 | 3e 2f 2f 20 6e 6f 77 20 74 68 65 20 73 6c 69 63 65 20 69 73 20 69 6e 20 61 6e 20 62 61 64 20 73 | >//.now.the.slice.is.in.an.bad.s |
| 2c520 | 74 61 74 65 20 73 69 6e 63 65 20 6c 65 6e 20 68 61 73 20 6e 6f 74 20 62 65 65 6e 20 75 70 64 61 | tate.since.len.has.not.been.upda |
| 2c540 | 74 65 64 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 | ted</span>......<span.class="tok |
| 2c560 | 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 3c 73 70 | -kw">try</span>.expect(slice[<sp |
| 2c580 | 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>]. |
| 2c5a0 | 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 | ==.<span.class="tok-number">2</s |
| 2c5c0 | 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"> |
| 2c5e0 | 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 3d 20 3c | try</span>.expect(slice.len.==.< |
| 2c600 | 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> |
| 2c620 | 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 |
| 2c640 | 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"> |
| 2c660 | 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>$.< |
| 2c680 | 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 61 72 69 74 68 6d | kbd>zig.test.test_pointer_arithm |
| 2c6a0 | 65 74 69 63 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 | etic.zig</kbd>.1/2.test_pointer_ |
| 2c6c0 | 61 72 69 74 68 6d 65 74 69 63 2e 74 65 73 74 2e 70 6f 69 6e 74 65 72 20 61 72 69 74 68 6d 65 74 | arithmetic.test.pointer.arithmet |
| 2c6e0 | 69 63 20 77 69 74 68 20 6d 61 6e 79 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 2e 2e 2e 4f 4b 0a 32 | ic.with.many-item.pointer...OK.2 |
| 2c700 | 2f 32 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 74 65 73 74 2e | /2.test_pointer_arithmetic.test. |
| 2c720 | 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 63 65 73 2e 2e | pointer.arithmetic.with.slices.. |
| 2c740 | 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 3e 3c | .OK.All.2.tests.passed..</samp>< |
| 2c760 | 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>....... |
| 2c780 | 20 20 49 6e 20 5a 69 67 2c 20 77 65 20 67 65 6e 65 72 61 6c 6c 79 20 70 72 65 66 65 72 20 3c 61 | ..In.Zig,.we.generally.prefer.<a |
| 2c7a0 | 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 20 72 61 74 68 65 | .href="#Slices">Slices</a>.rathe |
| 2c7c0 | 72 20 74 68 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e | r.than.<a.href="#Sentinel-Termin |
| 2c7e0 | 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 69 6e 61 74 | ated-Pointers">Sentinel-Terminat |
| 2c800 | 65 64 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 59 6f 75 20 63 61 6e | ed.Pointers</a>..........You.can |
| 2c820 | 20 74 75 72 6e 20 61 6e 20 61 72 72 61 79 20 6f 72 20 70 6f 69 6e 74 65 72 20 69 6e 74 6f 20 61 | .turn.an.array.or.pointer.into.a |
| 2c840 | 20 73 6c 69 63 65 20 75 73 69 6e 67 20 73 6c 69 63 65 20 73 79 6e 74 61 78 2e 0a 20 20 20 20 20 | .slice.using.slice.syntax....... |
| 2c860 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 53 6c 69 63 65 73 20 68 | .</p>.......<p>.........Slices.h |
| 2c880 | 61 76 65 20 62 6f 75 6e 64 73 20 63 68 65 63 6b 69 6e 67 20 61 6e 64 20 61 72 65 20 74 68 65 72 | ave.bounds.checking.and.are.ther |
| 2c8a0 | 65 66 6f 72 65 20 70 72 6f 74 65 63 74 65 64 0a 20 20 20 20 20 20 20 20 61 67 61 69 6e 73 74 20 | efore.protected.........against. |
| 2c8c0 | 74 68 69 73 20 6b 69 6e 64 20 6f 66 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 2e | this.kind.of.undefined.behavior. |
| 2c8e0 | 20 54 68 69 73 20 69 73 20 6f 6e 65 20 72 65 61 73 6f 6e 0a 20 20 20 20 20 20 20 20 77 65 20 70 | .This.is.one.reason.........we.p |
| 2c900 | 72 65 66 65 72 20 73 6c 69 63 65 73 20 74 6f 20 70 6f 69 6e 74 65 72 73 2e 0a 20 20 20 20 20 20 | refer.slices.to.pointers........ |
| 2c920 | 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 |
| 2c940 | 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 |
| 2c960 | 22 3e 74 65 73 74 5f 73 6c 69 63 65 5f 62 6f 75 6e 64 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | ">test_slice_bounds.zig</cite></ |
| 2c980 | 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 |
| 2c9a0 | 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.= |
| 2c9c0 | 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 |
| 2c9e0 | 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"> |
| 2ca00 | 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. |
| 2ca20 | 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 |
| 2ca40 | 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"> |
| 2ca60 | 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 73 6c 69 63 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 | "pointer.slicing"</spa |
| 2ca80 | 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 |
| 2caa0 | 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 73 73 3d | r</span>.array.=.[_]<span.class= |
| 2cac0 | 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 73 | "tok-type">u8</span>{.<span.clas |
| 2cae0 | 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 |
| 2cb00 | 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 |
| 2cb20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c | n.class="tok-number">3</span>,.< |
| 2cb40 | 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> |
| 2cb60 | 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 70 | ,.<span.class="tok-number">5</sp |
| 2cb80 | 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 3c | an>,.<span.class="tok-number">6< |
| 2cba0 | 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" |
| 2cbc0 | 3e 37 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | >7</span>,.<span.class="tok-numb |
| 2cbe0 | 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | er">8</span>,.<span.class="tok-n |
| 2cc00 | 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | umber">9</span>,.<span.class="to |
| 2cc20 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e | k-number">10</span>.};.....<span |
| 2cc40 | 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 72 74 | .class="tok-kw">var</span>.start |
| 2cc60 | 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</ |
| 2cc80 | 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" |
| 2cca0 | 3e 32 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 | >2</span>;.<span.class="tok-comm |
| 2ccc0 | 65 6e 74 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 | ent">//.var.to.make.it.runtime-k |
| 2cce0 | 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 73 74 61 72 74 3b 20 | nown</span>....._.=.&start;. |
| 2cd00 | 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 73 75 70 | <span.class="tok-comment">//.sup |
| 2cd20 | 70 72 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 | press.'var.is.never.mutated'.err |
| 2cd40 | 6f 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 6b 2d 6b | or</span>.....<span.class="tok-k |
| 2cd60 | 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 5b 73 74 | w">const</span>.slice.=.array[st |
| 2cd80 | 61 72 74 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 34 3c | art..<span.class="tok-number">4< |
| 2cda0 | 2f 73 70 61 6e 3e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>];.....<span.class="tok-kw |
| 2cdc0 | 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 3d | ">try</span>.expect(slice.len.== |
| 2cde0 | 20 3c 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 |
| 2ce00 | 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 22 3e 74 | n>);......<span.class="tok-kw">t |
| 2ce20 | 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 20 63 6c 61 | ry</span>.expect(array[<span.cla |
| 2ce40 | 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 20 3c 73 70 | ss="tok-number">3</span>].==.<sp |
| 2ce60 | 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 29 3b | an.class="tok-number">4</span>); |
| 2ce80 | 0a 20 20 20 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | .....slice[<span.class="tok-numb |
| 2cea0 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | er">1</span>].+=.<span.class="to |
| 2cec0 | 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 6c | k-number">1</span>;.....<span.cl |
| 2cee0 | 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 61 | ass="tok-kw">try</span>.expect(a |
| 2cf00 | 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 33 3c | rray[<span.class="tok-number">3< |
| 2cf20 | 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 |
| 2cf40 | 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 | er">5</span>);.}</code></pre></f |
| 2cf60 | 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= |
| 2cf80 | 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 |
| 2cfa0 | 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 73 6c | re><samp>$.<kbd>zig.test.test_sl |
| 2cfc0 | 69 63 65 5f 62 6f 75 6e 64 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 6c | ice_bounds.zig</kbd>.1/1.test_sl |
| 2cfe0 | 69 63 65 5f 62 6f 75 6e 64 73 2e 74 65 73 74 2e 70 6f 69 6e 74 65 72 20 73 6c 69 63 69 6e 67 2e | ice_bounds.test.pointer.slicing. |
| 2d000 | 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> |
| 2d020 | 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 50 6f 69 6e 74 65 | </pre></figure>........<p>Pointe |
| 2d040 | 72 73 20 77 6f 72 6b 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 74 6f 6f 2c 20 61 73 20 | rs.work.at.compile-time.too,.as. |
| 2d060 | 6c 6f 6e 67 20 61 73 20 74 68 65 20 63 6f 64 65 20 64 6f 65 73 20 6e 6f 74 20 64 65 70 65 6e 64 | long.as.the.code.does.not.depend |
| 2d080 | 20 6f 6e 0a 20 20 20 20 20 20 61 6e 20 75 6e 64 65 66 69 6e 65 64 20 6d 65 6d 6f 72 79 20 6c 61 | .on.......an.undefined.memory.la |
| 2d0a0 | 79 6f 75 74 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 | yout:</p>.......<figure><figcapt |
| 2d0c0 | 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= |
| 2d0e0 | 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 70 6f 69 6e 74 65 72 73 2e 7a 69 | "file">test_comptime_pointers.zi |
| 2d100 | 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> |
| 2d120 | 3c 73 70 61 6e 20 63 6c 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 |
| 2d140 | 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 |
| 2d160 | 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= |
| 2d180 | 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> |
| 2d1a0 | 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=" |
| 2d1c0 | 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= |
| 2d1e0 | 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 70 6f 69 6e 74 65 72 | "tok-str">"comptime.pointer |
| 2d200 | 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 |
| 2d220 | 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>.{..... |
| 2d240 | 20 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 |
| 2d260 | 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 |
| 2d280 | 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 |
| 2d2a0 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | er">1</span>;.........<span.clas |
| 2d2c0 | 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 |
| 2d2e0 | 6d 70 3b 78 3b 0a 20 20 20 20 20 20 20 20 70 74 72 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 | mp;x;.........ptr.*.+=.<span.cla |
| 2d300 | 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 20 20 | ss="tok-number">1</span>;....... |
| 2d320 | 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | ..x.+=.<span.class="tok-number"> |
| 2d340 | 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | 1</span>;.........<span.class="t |
| 2d360 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 74 72 2e 2a 20 3d | ok-kw">try</span>.expect(ptr.*.= |
| 2d380 | 3d 20 3c 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 |
| 2d3a0 | 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 69 67 75 | an>);.....}.}</code></pre></figu |
| 2d3c0 | 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 |
| 2d3e0 | 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> |
| 2d400 | 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 74 | <samp>$.<kbd>zig.test.test_compt |
| 2d420 | 69 6d 65 5f 70 6f 69 6e 74 65 72 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f | ime_pointers.zig</kbd>.1/1.test_ |
| 2d440 | 63 6f 6d 70 74 69 6d 65 5f 70 6f 69 6e 74 65 72 73 2e 74 65 73 74 2e 63 6f 6d 70 74 69 6d 65 20 | comptime_pointers.test.comptime. |
| 2d460 | 70 6f 69 6e 74 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 | pointers...OK.All.1.tests.passed |
| 2d480 | 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>........ |
| 2d4a0 | 3c 70 3e 54 6f 20 63 6f 6e 76 65 72 74 20 61 6e 20 69 6e 74 65 67 65 72 20 61 64 64 72 65 73 73 | <p>To.convert.an.integer.address |
| 2d4c0 | 20 69 6e 74 6f 20 61 20 70 6f 69 6e 74 65 72 2c 20 75 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | .into.a.pointer,.use.<code><span |
| 2d4e0 | 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 74 | .class="tok-builtin">@ptrFromInt |
| 2d500 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 54 6f 20 63 6f 6e 76 65 72 74 | </span></code>........To.convert |
| 2d520 | 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 6e 20 69 6e 74 65 67 65 72 2c 20 75 73 65 20 3c 63 | .a.pointer.to.an.integer,.use.<c |
| 2d540 | 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 69 | ode><span.class="tok-builtin">@i |
| 2d560 | 6e 74 46 72 6f 6d 50 74 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3a 3c 2f 70 3e 0a 20 20 20 | ntFromPtr</span></code>:</p>.... |
| 2d580 | 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 |
| 2d5a0 | 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 |
| 2d5c0 | 6e 74 65 67 65 72 5f 70 6f 69 6e 74 65 72 5f 63 6f 6e 76 65 72 73 69 6f 6e 2e 7a 69 67 3c 2f 63 | nteger_pointer_conversion.zig</c |
| 2d5e0 | 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 |
| 2d600 | 6e 20 63 6c 61 73 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 |
| 2d620 | 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | pect.=.<span.class="tok-builtin" |
| 2d640 | 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 |
| 2d660 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 | -str">"std"</span>).te |
| 2d680 | 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- |
| 2d6a0 | 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 |
| 2d6c0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 69 6e 74 46 72 6f 6d 50 74 72 20 61 6e 64 20 40 70 74 72 | -str">"@intFromPtr.and.@ptr |
| 2d6e0 | 46 72 6f 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 | FromInt"</span>.{.....<span |
| 2d700 | 20 63 6c 61 73 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 |
| 2d720 | 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | :.*<span.class="tok-type">i32</s |
| 2d740 | 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 6e 22 | pan>.=.<span.class="tok-builtin" |
| 2d760 | 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 61 73 73 3d | >@ptrFromInt</span>(<span.class= |
| 2d780 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 64 65 61 64 62 65 65 30 3c 2f 73 70 61 6e 3e 29 3b | "tok-number">0xdeadbee0</span>); |
| 2d7a0 | 0a 20 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< |
| 2d7c0 | 2f 73 70 61 6e 3e 20 61 64 64 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | /span>.addr.=.<span.class="tok-b |
| 2d7e0 | 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 70 74 72 29 3b | uiltin">@intFromPtr</span>(ptr); |
| 2d800 | 0a 20 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 |
| 2d820 | 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 |
| 2d840 | 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 64 64 72 29 20 3d 3d 20 3c 73 | ltin">@TypeOf</span>(addr).==.<s |
| 2d860 | 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 |
| 2d880 | 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 |
| 2d8a0 | 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 64 64 72 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | </span>.expect(addr.==.<span.cla |
| 2d8c0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 64 65 61 64 62 65 65 30 3c 2f 73 70 61 6e | ss="tok-number">0xdeadbee0</span |
| 2d8e0 | 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 |
| 2d900 | 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" |
| 2d920 | 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>$. |
| 2d940 | 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 70 6f 69 6e 74 | <kbd>zig.test.test_integer_point |
| 2d960 | 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 20 74 65 73 74 | er_conversion.zig</kbd>.1/1.test |
| 2d980 | 5f 69 6e 74 65 67 65 72 5f 70 6f 69 6e 74 65 72 5f 63 6f 6e 76 65 72 73 69 6f 6e 2e 74 65 73 74 | _integer_pointer_conversion.test |
| 2d9a0 | 2e 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 2e 2e 2e 4f | .@intFromPtr.and.@ptrFromInt...O |
| 2d9c0 | 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 |
| 2d9e0 | 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 5a 69 67 20 69 73 20 61 62 | re></figure>........<p>Zig.is.ab |
| 2da00 | 6c 65 20 74 6f 20 70 72 65 73 65 72 76 65 20 6d 65 6d 6f 72 79 20 61 64 64 72 65 73 73 65 73 20 | le.to.preserve.memory.addresses. |
| 2da20 | 69 6e 20 63 6f 6d 70 74 69 6d 65 20 63 6f 64 65 2c 20 61 73 20 6c 6f 6e 67 20 61 73 0a 20 20 20 | in.comptime.code,.as.long.as.... |
| 2da40 | 20 20 20 74 68 65 20 70 6f 69 6e 74 65 72 20 69 73 20 6e 65 76 65 72 20 64 65 72 65 66 65 72 65 | ...the.pointer.is.never.derefere |
| 2da60 | 6e 63 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 63 61 70 74 | nced:</p>.......<figure><figcapt |
| 2da80 | 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= |
| 2daa0 | 22 66 69 6c 65 22 3e 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 | "file">test_comptime_pointer_con |
| 2dac0 | 76 65 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 6e 3e 3c | version.zig</cite></figcaption>< |
| 2dae0 | 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 |
| 2db00 | 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 |
| 2db20 | 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 |
| 2db40 | 70 61 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 |
| 2db60 | 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 |
| 2db80 | 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 |
| 2dba0 | 70 61 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 |
| 2dbc0 | 6d 65 20 40 70 74 72 46 72 6f 6d 49 6e 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | me.@ptrFromInt"</span>.{... |
| 2dbe0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c | ..<span.class="tok-kw">comptime< |
| 2dc00 | 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 |
| 2dc20 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 5a 69 67 20 69 73 20 61 62 6c 65 20 74 6f 20 64 6f 20 | k-comment">//.Zig.is.able.to.do. |
| 2dc40 | 74 68 69 73 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 61 73 20 6c 6f 6e 67 20 61 73 | this.at.compile-time,.as.long.as |
| 2dc60 | 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 6b | </span>.........<span.class="tok |
| 2dc80 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 70 74 72 20 69 73 20 6e 65 76 65 72 20 64 65 72 65 66 65 | -comment">//.ptr.is.never.derefe |
| 2dca0 | 72 65 6e 63 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | renced.</span>.........<span.cla |
| 2dcc0 | 73 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 3a 20 2a 3c | ss="tok-kw">const</span>.ptr:.*< |
| 2dce0 | 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> |
| 2dd00 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 | .=.<span.class="tok-builtin">@pt |
| 2dd20 | 72 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | rFromInt</span>(<span.class="tok |
| 2dd40 | 2d 6e 75 6d 62 65 72 22 3e 30 78 64 65 61 64 62 65 65 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | -number">0xdeadbee0</span>);.... |
| 2dd60 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | .....<span.class="tok-kw">const< |
| 2dd80 | 2f 73 70 61 6e 3e 20 61 64 64 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | /span>.addr.=.<span.class="tok-b |
| 2dda0 | 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 70 74 72 29 3b | uiltin">@intFromPtr</span>(ptr); |
| 2ddc0 | 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 |
| 2dde0 | 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 |
| 2de00 | 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 64 64 72 29 20 3d | -builtin">@TypeOf</span>(addr).= |
| 2de20 | 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</ |
| 2de40 | 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 |
| 2de60 | 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 72 20 3d 3d 20 3c | -kw">try</span>.expect(addr.==.< |
| 2de80 | 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 64 65 61 64 62 65 | span.class="tok-number">0xdeadbe |
| 2dea0 | 65 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | e0</span>);.....}.}</code></pre> |
| 2dec0 | 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 |
| 2dee0 | 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 |
| 2df00 | 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 |
| 2df20 | 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 67 | _comptime_pointer_conversion.zig |
| 2df40 | 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 6f 69 6e 74 65 72 | </kbd>.1/1.test_comptime_pointer |
| 2df60 | 5f 63 6f 6e 76 65 72 73 69 6f 6e 2e 74 65 73 74 2e 63 6f 6d 70 74 69 6d 65 20 40 70 74 72 46 72 | _conversion.test.comptime.@ptrFr |
| 2df80 | 6f 6d 49 6e 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 | omInt...OK.All.1.tests.passed..< |
| 2dfa0 | 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> |
| 2dfc0 | 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="# |
| 2dfe0 | 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 69 6e | Optional-Pointers">Optional.Poin |
| 2e000 | 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 70 74 72 46 | ters</a></li>.<li><a.href="#ptrF |
| 2e020 | 72 6f 6d 49 6e 74 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 | romInt">@ptrFromInt</a></li>.<li |
| 2e040 | 3e 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 6d 50 | ><a.href="#intFromPtr">@intFromP |
| 2e060 | 74 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 43 2d 50 6f 69 6e | tr</a></li>.<li><a.href="#C-Poin |
| 2e080 | 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 2f 75 6c 3e 0a | ters">C.Pointers</a></li>.</ul>. |
| 2e0a0 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 76 6f 6c 61 74 69 6c 65 22 3e 3c 61 20 68 72 65 66 | .......<h3.id="volatile"><a.href |
| 2e0c0 | 3d 22 23 74 6f 63 2d 76 6f 6c 61 74 69 6c 65 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 61 3e 20 3c 61 | ="#toc-volatile">volatile</a>.<a |
| 2e0e0 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 76 6f 6c 61 74 69 6c 65 22 3e c2 a7 | .class="hdr".href="#volatile">.. |
| 2e100 | 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 4c 6f 61 64 73 20 61 6e 64 20 73 74 | </a></h3>........<p>Loads.and.st |
| 2e120 | 6f 72 65 73 20 61 72 65 20 61 73 73 75 6d 65 64 20 74 6f 20 6e 6f 74 20 68 61 76 65 20 73 69 64 | ores.are.assumed.to.not.have.sid |
| 2e140 | 65 20 65 66 66 65 63 74 73 2e 20 49 66 20 61 20 67 69 76 65 6e 20 6c 6f 61 64 20 6f 72 20 73 74 | e.effects..If.a.given.load.or.st |
| 2e160 | 6f 72 65 0a 20 20 20 20 20 20 73 68 6f 75 6c 64 20 68 61 76 65 20 73 69 64 65 20 65 66 66 65 63 | ore.......should.have.side.effec |
| 2e180 | 74 73 2c 20 73 75 63 68 20 61 73 20 4d 65 6d 6f 72 79 20 4d 61 70 70 65 64 20 49 6e 70 75 74 2f | ts,.such.as.Memory.Mapped.Input/ |
| 2e1a0 | 4f 75 74 70 75 74 20 28 4d 4d 49 4f 29 2c 20 75 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | Output.(MMIO),.use.<code><span.c |
| 2e1c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | lass="tok-kw">volatile</span></c |
| 2e1e0 | 6f 64 65 3e 2e 0a 20 20 20 20 20 20 49 6e 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 64 | ode>........In.the.following.cod |
| 2e200 | 65 2c 20 6c 6f 61 64 73 20 61 6e 64 20 73 74 6f 72 65 73 20 77 69 74 68 20 3c 63 6f 64 65 3e 6d | e,.loads.and.stores.with.<code>m |
| 2e220 | 6d 69 6f 5f 70 74 72 3c 2f 63 6f 64 65 3e 20 61 72 65 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f | mio_ptr</code>.are.guaranteed.to |
| 2e240 | 20 61 6c 6c 20 68 61 70 70 65 6e 0a 20 20 20 20 20 20 61 6e 64 20 69 6e 20 74 68 65 20 73 61 6d | .all.happen.......and.in.the.sam |
| 2e260 | 65 20 6f 72 64 65 72 20 61 73 20 69 6e 20 73 6f 75 72 63 65 20 63 6f 64 65 3a 3c 2f 70 3e 0a 20 | e.order.as.in.source.code:</p>.. |
| 2e280 | 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=" |
| 2e2a0 | 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 |
| 2e2c0 | 5f 76 6f 6c 61 74 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 | _volatile.zig</cite></figcaption |
| 2e2e0 | 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" |
| 2e300 | 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 |
| 2e320 | 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>( |
| 2e340 | 3c 73 70 61 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& |
| 2e360 | 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;..< |
| 2e380 | 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>. |
| 2e3a0 | 3c 73 70 61 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 6f 6c 61 | <span.class="tok-str">"vola |
| 2e3c0 | 74 69 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 | tile"</span>.{.....<span.cl |
| 2e3e0 | 61 73 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 6d 69 6f 5f 70 | ass="tok-kw">const</span>.mmio_p |
| 2e400 | 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 76 6f 6c 61 74 69 | tr:.*<span.class="tok-kw">volati |
| 2e420 | 6c 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | le</span>.<span.class="tok-type" |
| 2e440 | 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 62 75 | >u8</span>.=.<span.class="tok-bu |
| 2e460 | 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 28 3c 73 70 61 6e 20 | iltin">@ptrFromInt</span>(<span. |
| 2e480 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 33 34 35 36 37 38 3c 2f 73 | class="tok-number">0x12345678</s |
| 2e4a0 | 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"> |
| 2e4c0 | 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 |
| 2e4e0 | 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 6d 69 6f 5f | ok-builtin">@TypeOf</span>(mmio_ |
| 2e500 | 70 74 72 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 3e 76 6f | ptr).==.*<span.class="tok-kw">vo |
| 2e520 | 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | latile</span>.<span.class="tok-t |
| 2e540 | 79 70 65 22 3e 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 | ype">u8</span>);.}</code></pre>< |
| 2e560 | 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 |
| 2e580 | 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> |
| 2e5a0 | 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_ |
| 2e5c0 | 76 6f 6c 61 74 69 6c 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 76 6f 6c 61 | volatile.zig</kbd>.1/1.test_vola |
| 2e5e0 | 74 69 6c 65 2e 74 65 73 74 2e 76 6f 6c 61 74 69 6c 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 | tile.test.volatile...OK.All.1.te |
| 2e600 | 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 |
| 2e620 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 3c 63 | e>........<p>.......Note.that.<c |
| 2e640 | 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 6c | ode><span.class="tok-kw">volatil |
| 2e660 | 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 75 6e 72 65 6c 61 74 65 64 20 74 6f 20 | e</span></code>.is.unrelated.to. |
| 2e680 | 63 6f 6e 63 75 72 72 65 6e 63 79 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 41 74 6f 6d 69 63 | concurrency.and.<a.href="#Atomic |
| 2e6a0 | 73 22 3e 41 74 6f 6d 69 63 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 49 66 20 79 6f 75 20 73 65 65 | s">Atomics</a>........If.you.see |
| 2e6c0 | 20 63 6f 64 65 20 74 68 61 74 20 69 73 20 75 73 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | .code.that.is.using.<code><span. |
| 2e6e0 | 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></ |
| 2e700 | 63 6f 64 65 3e 20 66 6f 72 20 73 6f 6d 65 74 68 69 6e 67 20 6f 74 68 65 72 20 74 68 61 6e 20 4d | code>.for.something.other.than.M |
| 2e720 | 65 6d 6f 72 79 20 4d 61 70 70 65 64 0a 20 20 20 20 20 20 49 6e 70 75 74 2f 4f 75 74 70 75 74 2c | emory.Mapped.......Input/Output, |
| 2e740 | 20 69 74 20 69 73 20 70 72 6f 62 61 62 6c 79 20 61 20 62 75 67 2e 0a 20 20 20 20 20 20 3c 2f 70 | .it.is.probably.a.bug........</p |
| 2e760 | 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 3c 61 20 68 72 65 66 | >..............<p>.......<a.href |
| 2e780 | 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 76 65 72 74 | ="#ptrCast">@ptrCast</a>.convert |
| 2e7a0 | 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 6f 20 61 6e | s.a.pointer's.element.type.to.an |
| 2e7c0 | 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 6e 65 77 20 | other..This.......creates.a.new. |
| 2e7e0 | 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 65 63 74 61 | pointer.that.can.cause.undetecta |
| 2e800 | 62 6c 65 20 69 6c 6c 65 67 61 6c 20 62 65 68 61 76 69 6f 72 0a 20 20 20 20 20 20 64 65 70 65 6e | ble.illegal.behavior.......depen |
| 2e820 | 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 20 74 68 61 | ding.on.the.loads.and.stores.tha |
| 2e840 | 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 2c 20 6f 74 | t.pass.through.it..Generally,.ot |
| 2e860 | 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 65 72 73 69 | her.......kinds.of.type.conversi |
| 2e880 | 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 3c 63 6f 64 | ons.are.preferable.to.......<cod |
| 2e8a0 | 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 70 74 72 | e><span.class="tok-builtin">@ptr |
| 2e8c0 | 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 6c 65 2e 0a | Cast</span></code>.if.possible.. |
| 2e8e0 | 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 |
| 2e900 | 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 |
| 2e920 | 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 2e 7a 69 67 | ="file">test_pointer_casting.zig |
| 2e940 | 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>< |
| 2e960 | 73 70 61 6e 20 63 6c 61 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> |
| 2e980 | 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" |
| 2e9a0 | 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 |
| 2e9c0 | 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>);.< |
| 2e9e0 | 73 70 61 6e 20 63 6c 61 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> |
| 2ea00 | 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;..< |
| 2ea20 | 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>. |
| 2ea40 | 3c 73 70 61 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 |
| 2ea60 | 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 20 20 20 3c | ter.casting"</span>.{.....< |
| 2ea80 | 73 70 61 6e 20 63 6c 61 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> |
| 2eaa0 | 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 61 6c 69 67 | .bytes.<span.class="tok-kw">alig |
| 2eac0 | 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | n</span>(<span.class="tok-builti |
| 2eae0 | 6e 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n">@alignOf</span>(<span.class=" |
| 2eb00 | 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 3c 73 70 61 | tok-type">u32</span>)).=.[_]<spa |
| 2eb20 | 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 20 3c 73 | n.class="tok-type">u8</span>{.<s |
| 2eb40 | 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 |
| 2eb60 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 | n>,.<span.class="tok-number">0x1 |
| 2eb80 | 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 |
| 2eba0 | 72 22 3e 30 78 31 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | r">0x12</span>,.<span.class="tok |
| 2ebc0 | 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 3c 73 70 61 | -number">0x12</span>.};.....<spa |
| 2ebe0 | 6e 20 63 6c 61 73 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 33 | n.class="tok-kw">const</span>.u3 |
| 2ec00 | 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 3e 63 6f 6e | 2_ptr:.*<span.class="tok-kw">con |
| 2ec20 | 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" |
| 2ec40 | 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 62 | >u32</span>.=.<span.class="tok-b |
| 2ec60 | 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 3b 62 79 74 | uiltin">@ptrCast</span>(&byt |
| 2ec80 | 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 22 3e 74 72 | es);.....<span.class="tok-kw">tr |
| 2eca0 | 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 20 3c 73 70 | y</span>.expect(u32_ptr.*.==.<sp |
| 2ecc0 | 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 31 32 31 32 | an.class="tok-number">0x12121212 |
| 2ece0 | 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- |
| 2ed00 | 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 65 20 69 73 | comment">//.Even.this.example.is |
| 2ed20 | 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 72 20 77 61 | .contrived.-.there.are.better.wa |
| 2ed40 | 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 6e 3e 0a 20 | ys.to.do.the.above.than</span>.. |
| 2ed60 | 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">//. |
| 2ed80 | 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 2c 20 75 73 | pointer.casting..For.example,.us |
| 2eda0 | 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 2f 73 70 61 | ing.a.slice.narrowing.cast:</spa |
| 2edc0 | 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | n>.....<span.class="tok-kw">cons |
| 2ede0 | 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 2e 62 79 74 | t</span>.u32_value.=.std.mem.byt |
| 2ee00 | 65 73 41 73 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | esAsSlice(<span.class="tok-type" |
| 2ee20 | 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 73 73 3d 22 | >u32</span>,.bytes[<span.class=" |
| 2ee40 | 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 61 6e 20 63 | tok-number">0</span>..])[<span.c |
| 2ee60 | 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 20 20 | lass="tok-number">0</span>];.... |
| 2ee80 | 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> |
| 2eea0 | 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 6c 61 73 73 | .expect(u32_value.==.<span.class |
| 2eec0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 31 32 31 32 31 32 3c 2f 73 70 61 6e 3e 29 | ="tok-number">0x12121212</span>) |
| 2eee0 | 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" |
| 2ef00 | 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 65 20 6d 6f | >//.And.even.another.way,.the.mo |
| 2ef20 | 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 20 69 74 3a | st.straightforward.way.to.do.it: |
| 2ef40 | 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" |
| 2ef60 | 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=" |
| 2ef80 | 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 |
| 2efa0 | 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 |
| 2efc0 | 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 3c 2f 73 | .class="tok-builtin">@bitCast</s |
| 2efe0 | 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 22 74 6f 6b | pan>(bytes)).==.<span.class="tok |
| 2f000 | 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 0a 7d 0a 0a | -number">0x12121212</span>);.}.. |
| 2f020 | 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> |
| 2f040 | 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 6f 69 | .<span.class="tok-str">"poi |
| 2f060 | 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 20 7b 0a 20 | nter.child.type"</span>.{.. |
| 2f080 | 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">//. |
| 2f0a0 | 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 20 66 69 65 | pointer.types.have.a.`child`.fie |
| 2f0c0 | 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 74 68 65 79 | ld.which.tells.you.the.type.they |
| 2f0e0 | 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 63 6c 61 73 | .point.to.</span>.....<span.clas |
| 2f100 | 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 |
| 2f120 | 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 |
| 2f140 | 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | </span>(*<span.class="tok-type"> |
| 2f160 | 75 33 32 3c 2f 73 70 61 6e 3e 29 2e 50 6f 69 6e 74 65 72 2e 63 68 69 6c 64 20 3d 3d 20 3c 73 70 | u32</span>).Pointer.child.==.<sp |
| 2f180 | 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 3b | an.class="tok-type">u32</span>); |
| 2f1a0 | 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> |
| 2f1c0 | 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 |
| 2f1e0 | 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 |
| 2f200 | 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 69 6e 67 2e | d>zig.test.test_pointer_casting. |
| 2f220 | 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 61 73 74 69 | zig</kbd>.1/2.test_pointer_casti |
| 2f240 | 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 0a 32 2f 32 | ng.test.pointer.casting...OK.2/2 |
| 2f260 | 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 6f 69 6e 74 | .test_pointer_casting.test.point |
| 2f280 | 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 74 73 20 70 | er.child.type...OK.All.2.tests.p |
| 2f2a0 | 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>... |
| 2f2c0 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 41 6c 69 67 6e 6d 65 6e 74 22 3e 3c 61 20 68 72 65 66 3d | .....<h3.id="Alignment"><a.href= |
| 2f2e0 | 22 23 74 6f 63 2d 41 6c 69 67 6e 6d 65 6e 74 22 3e 41 6c 69 67 6e 6d 65 6e 74 3c 2f 61 3e 20 3c | "#toc-Alignment">Alignment</a>.< |
| 2f300 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 6c 69 67 6e 6d 65 6e 74 22 3e | a.class="hdr".href="#Alignment"> |
| 2f320 | 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 45 61 63 | ..</a></h3>........<p>.......Eac |
| 2f340 | 68 20 74 79 70 65 20 68 61 73 20 61 6e 20 3c 73 74 72 6f 6e 67 3e 61 6c 69 67 6e 6d 65 6e 74 3c | h.type.has.an.<strong>alignment< |
| 2f360 | 2f 73 74 72 6f 6e 67 3e 20 2d 20 61 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 73 75 63 | /strong>.-.a.number.of.bytes.suc |
| 2f380 | 68 20 74 68 61 74 2c 0a 20 20 20 20 20 20 77 68 65 6e 20 61 20 76 61 6c 75 65 20 6f 66 20 74 68 | h.that,.......when.a.value.of.th |
| 2f3a0 | 65 20 74 79 70 65 20 69 73 20 6c 6f 61 64 65 64 20 66 72 6f 6d 20 6f 72 20 73 74 6f 72 65 64 20 | e.type.is.loaded.from.or.stored. |
| 2f3c0 | 74 6f 20 6d 65 6d 6f 72 79 2c 0a 20 20 20 20 20 20 74 68 65 20 6d 65 6d 6f 72 79 20 61 64 64 72 | to.memory,.......the.memory.addr |
| 2f3e0 | 65 73 73 20 6d 75 73 74 20 62 65 20 65 76 65 6e 6c 79 20 64 69 76 69 73 69 62 6c 65 20 62 79 20 | ess.must.be.evenly.divisible.by. |
| 2f400 | 74 68 69 73 20 6e 75 6d 62 65 72 2e 20 59 6f 75 20 63 61 6e 20 75 73 65 0a 20 20 20 20 20 20 3c | this.number..You.can.use.......< |
| 2f420 | 61 20 68 72 65 66 3d 22 23 61 6c 69 67 6e 4f 66 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 61 3e 20 74 | a.href="#alignOf">@alignOf</a>.t |
| 2f440 | 6f 20 66 69 6e 64 20 6f 75 74 20 74 68 69 73 20 76 61 6c 75 65 20 66 6f 72 20 61 6e 79 20 74 79 | o.find.out.this.value.for.any.ty |
| 2f460 | 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 41 | pe........</p>.......<p>.......A |
| 2f480 | 6c 69 67 6e 6d 65 6e 74 20 64 65 70 65 6e 64 73 20 6f 6e 20 74 68 65 20 43 50 55 20 61 72 63 68 | lignment.depends.on.the.CPU.arch |
| 2f4a0 | 69 74 65 63 74 75 72 65 2c 20 62 75 74 20 69 73 20 61 6c 77 61 79 73 20 61 20 70 6f 77 65 72 20 | itecture,.but.is.always.a.power. |
| 2f4c0 | 6f 66 20 74 77 6f 2c 20 61 6e 64 0a 20 20 20 20 20 20 6c 65 73 73 20 74 68 61 6e 20 3c 63 6f 64 | of.two,.and.......less.than.<cod |
| 2f4e0 | 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 31 3c 2f 73 70 | e><span.class="tok-number">1</sp |
| 2f500 | 61 6e 3e 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 75 | an>.<<.<span.class="tok-nu |
| 2f520 | 6d 62 65 72 22 3e 32 39 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f | mber">29</span></code>........</ |
| 2f540 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 5a 69 67 2c 20 61 20 70 6f 69 | p>.......<p>.......In.Zig,.a.poi |
| 2f560 | 6e 74 65 72 20 74 79 70 65 20 68 61 73 20 61 6e 20 61 6c 69 67 6e 6d 65 6e 74 20 76 61 6c 75 65 | nter.type.has.an.alignment.value |
| 2f580 | 2e 20 49 66 20 74 68 65 20 76 61 6c 75 65 20 69 73 20 65 71 75 61 6c 20 74 6f 20 74 68 65 0a 20 | ..If.the.value.is.equal.to.the.. |
| 2f5a0 | 20 20 20 20 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 66 20 74 68 65 20 75 6e 64 65 72 6c 79 69 6e 67 | .....alignment.of.the.underlying |
| 2f5c0 | 20 74 79 70 65 2c 20 69 74 20 63 61 6e 20 62 65 20 6f 6d 69 74 74 65 64 20 66 72 6f 6d 20 74 68 | .type,.it.can.be.omitted.from.th |
| 2f5e0 | 65 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 | e.type:.......</p>.......<figure |
| 2f600 | 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 |
| 2f620 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 76 61 72 69 61 62 6c 65 5f 61 6c | te.class="file">test_variable_al |
| 2f640 | 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 6f 6e 3e 3c | ignment.zig</cite></figcaption>< |
| 2f660 | 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 |
| 2f680 | 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 |
| 2f6a0 | 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 |
| 2f6c0 | 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" |
| 2f6e0 | 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 |
| 2f700 | 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 |
| 2f720 | 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>(< |
| 2f740 | 73 70 61 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 |
| 2f760 | 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 |
| 2f780 | 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 |
| 2f7a0 | 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 |
| 2f7c0 | 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=" |
| 2f7e0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 72 69 61 62 6c 65 20 61 6c 69 67 6e 6d 65 6e | tok-str">"variable.alignmen |
| 2f800 | 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 |
| 2f820 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c | ="tok-kw">var</span>.x:.<span.cl |
| 2f840 | 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 |
| 2f860 | 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> |
| 2f880 | 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 |
| 2f8a0 | 3c 2f 73 70 61 6e 3e 20 61 6c 69 67 6e 5f 6f 66 5f 69 33 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | </span>.align_of_i32.=.<span.cla |
| 2f8c0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 73 70 61 6e 3e | ss="tok-builtin">@alignOf</span> |
| 2f8e0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 | (<span.class="tok-builtin">@Type |
| 2f900 | 4f 66 3c 2f 73 70 61 6e 3e 28 78 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | Of</span>(x));.....<span.class=" |
| 2f920 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 | tok-kw">try</span>.expect(<span. |
| 2f940 | 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 |
| 2f960 | 6e 3e 28 26 61 6d 70 3b 78 29 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | n>(&x).==.*<span.class="tok- |
| 2f980 | 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 6c 61 | type">i32</span>);.....<span.cla |
| 2f9a0 | 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 2a 3c | ss="tok-kw">try</span>.expect(*< |
| 2f9c0 | 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> |
| 2f9e0 | 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c | .==.*<span.class="tok-kw">align< |
| 2fa00 | 2f 73 70 61 6e 3e 28 61 6c 69 67 6e 5f 6f 66 5f 69 33 32 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | /span>(align_of_i32).<span.class |
| 2fa20 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 | ="tok-type">i32</span>);.....<sp |
| 2fa40 | 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 |
| 2fa60 | 6c 74 69 6e 2e 74 61 72 67 65 74 2e 63 70 75 2e 61 72 63 68 20 3d 3d 20 2e 78 38 36 5f 36 34 29 | ltin.target.cpu.arch.==..x86_64) |
| 2fa80 | 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"> |
| 2faa0 | 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 |
| 2fac0 | 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 2a 3c 73 | ok-builtin">@typeInfo</span>(*<s |
| 2fae0 | 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>) |
| 2fb00 | 2e 50 6f 69 6e 74 65 72 2e 61 6c 69 67 6e 6d 65 6e 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | .Pointer.alignment.==.<span.clas |
| 2fb20 | 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 20 20 7d 0a | s="tok-number">4</span>);.....}. |
| 2fb40 | 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>< |
| 2fb60 | 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 |
| 2fb80 | 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 |
| 2fba0 | 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 76 61 72 69 61 62 6c 65 5f 61 6c 69 67 6e 6d 65 6e | >zig.test.test_variable_alignmen |
| 2fbc0 | 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 76 61 72 69 61 62 6c 65 5f 61 6c | t.zig</kbd>.1/1.test_variable_al |
| 2fbe0 | 69 67 6e 6d 65 6e 74 2e 74 65 73 74 2e 76 61 72 69 61 62 6c 65 20 61 6c 69 67 6e 6d 65 6e 74 2e | ignment.test.variable.alignment. |
| 2fc00 | 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> |
| 2fc20 | 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 74 68 65 | </pre></figure>........<p>In.the |
| 2fc40 | 20 73 61 6d 65 20 77 61 79 20 74 68 61 74 20 61 20 3c 63 6f 64 65 3e 2a 3c 73 70 61 6e 20 63 6c | .same.way.that.a.<code>*<span.cl |
| 2fc60 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-type">i32</span></code> |
| 2fc80 | 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" |
| 2fca0 | 3e 63 6f 65 72 63 65 64 3c 2f 61 3e 20 74 6f 20 61 0a 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 | >coerced</a>.to.a...........<cod |
| 2fcc0 | 65 3e 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 | e>*<span.class="tok-kw">const</s |
| 2fce0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | pan>.<span.class="tok-type">i32< |
| 2fd00 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 20 70 6f 69 6e 74 65 72 20 77 69 74 68 20 61 20 | /span></code>,.a.pointer.with.a. |
| 2fd20 | 6c 61 72 67 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 63 61 6e 20 62 65 20 69 6d 70 6c 69 63 69 74 | larger.alignment.can.be.implicit |
| 2fd40 | 6c 79 0a 20 20 20 20 20 20 63 61 73 74 20 74 6f 20 61 20 70 6f 69 6e 74 65 72 20 77 69 74 68 20 | ly.......cast.to.a.pointer.with. |
| 2fd60 | 61 20 73 6d 61 6c 6c 65 72 20 61 6c 69 67 6e 6d 65 6e 74 2c 20 62 75 74 20 6e 6f 74 20 76 69 63 | a.smaller.alignment,.but.not.vic |
| 2fd80 | 65 20 76 65 72 73 61 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 | e.versa........</p>.......<p>... |
| 2fda0 | 20 20 20 20 59 6f 75 20 63 61 6e 20 73 70 65 63 69 66 79 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 6e | ....You.can.specify.alignment.on |
| 2fdc0 | 20 76 61 72 69 61 62 6c 65 73 20 61 6e 64 20 66 75 6e 63 74 69 6f 6e 73 2e 20 49 66 20 79 6f 75 | .variables.and.functions..If.you |
| 2fde0 | 20 64 6f 20 74 68 69 73 2c 20 74 68 65 6e 0a 20 20 20 20 20 20 70 6f 69 6e 74 65 72 73 20 74 6f | .do.this,.then.......pointers.to |
| 2fe00 | 20 74 68 65 6d 20 67 65 74 20 74 68 65 20 73 70 65 63 69 66 69 65 64 20 61 6c 69 67 6e 6d 65 6e | .them.get.the.specified.alignmen |
| 2fe20 | 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 3e 3c 66 69 67 | t:.......</p>.......<figure><fig |
| 2fe40 | 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 |
| 2fe60 | 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 76 61 72 69 61 62 6c 65 5f 66 75 6e 63 5f 61 6c | ass="file">test_variable_func_al |
| 2fe80 | 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 6f 6e 3e 3c | ignment.zig</cite></figcaption>< |
| 2fea0 | 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 |
| 2fec0 | 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 |
| 2fee0 | 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 |
| 2ff00 | 70 61 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 |
| 2ff20 | 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 |
| 2ff40 | 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 66 6f 6f | an.class="tok-kw">var</span>.foo |
| 2ff60 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | :.<span.class="tok-type">u8</spa |
| 2ff80 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 | n>.<span.class="tok-kw">align</s |
| 2ffa0 | 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 3c | pan>(<span.class="tok-number">4< |
| 2ffc0 | 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 75 6d 62 65 | /span>).=.<span.class="tok-numbe |
| 2ffe0 | 72 22 3e 31 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 | r">100</span>;..<span.class="tok |
| 30000 | 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 |
| 30020 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 20 61 6c 69 | k-str">"global.variable.ali |
| 30040 | 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. |
| 30060 | 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 |
| 30080 | 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 |
| 300a0 | 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 69 | Info</span>(<span.class="tok-bui |
| 300c0 | 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 66 6f 6f 29 29 2e | ltin">@TypeOf</span>(&foo)). |
| 300e0 | 50 6f 69 6e 74 65 72 2e 61 6c 69 67 6e 6d 65 6e 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | Pointer.alignment.==.<span.class |
| 30100 | 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 20 20 3c 73 70 | ="tok-number">4</span>);.....<sp |
| 30120 | 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 |
| 30140 | 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 |
| 30160 | 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 66 6f 6f 29 20 3d 3d 20 2a 3c 73 70 61 6e | ypeOf</span>(&foo).==.*<span |
| 30180 | 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 73 70 | .class="tok-kw">align</span>(<sp |
| 301a0 | 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 29 20 | an.class="tok-number">4</span>). |
| 301c0 | 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> |
| 301e0 | 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 |
| 30200 | 74 3c 2f 73 70 61 6e 3e 20 61 73 5f 70 6f 69 6e 74 65 72 5f 74 6f 5f 61 72 72 61 79 3a 20 2a 3c | t</span>.as_pointer_to_array:.*< |
| 30220 | 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 3e | span.class="tok-kw">align</span> |
| 30240 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 | (<span.class="tok-number">4</spa |
| 30260 | 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 31 3c | n>).[<span.class="tok-number">1< |
| 30280 | 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 |
| 302a0 | 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 66 6f 6f 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | </span>.=.&foo;.....<span.cl |
| 302c0 | 61 73 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 5f 73 6c 69 | ass="tok-kw">const</span>.as_sli |
| 302e0 | 63 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 61 6c 69 67 6e | ce:.[]<span.class="tok-kw">align |
| 30300 | 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" |
| 30320 | 3e 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | >4</span>).<span.class="tok-type |
| 30340 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 61 73 5f 70 6f 69 6e 74 65 72 5f 74 6f 5f 61 72 72 61 | ">u8</span>.=.as_pointer_to_arra |
| 30360 | 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 63 6f 6e 73 | y;.....<span.class="tok-kw">cons |
| 30380 | 74 3c 2f 73 70 61 6e 3e 20 61 73 5f 75 6e 61 6c 69 67 6e 65 64 5f 73 6c 69 63 65 3a 20 5b 5d 3c | t</span>.as_unaligned_slice:.[]< |
| 303a0 | 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>. |
| 303c0 | 3d 20 61 73 5f 73 6c 69 63 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | =.as_slice;.....<span.class="tok |
| 303e0 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 73 5f 75 6e 61 6c 69 67 | -kw">try</span>.expect(as_unalig |
| 30400 | 6e 65 64 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 | ned_slice[<span.class="tok-numbe |
| 30420 | 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 6b | r">0</span>].==.<span.class="tok |
| 30440 | 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | -number">100</span>);.}..<span.c |
| 30460 | 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 |
| 30480 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 65 72 70 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e | ass="tok-fn">derp</span>().<span |
| 304a0 | 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 73 70 | .class="tok-kw">align</span>(<sp |
| 304c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f | an.class="tok-builtin">@sizeOf</ |
| 304e0 | 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 73 69 | span>(<span.class="tok-type">usi |
| 30500 | 7a 65 3c 2f 73 70 61 6e 3e 29 20 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ze</span>).*.<span.class="tok-nu |
| 30520 | 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | mber">2</span>).<span.class="tok |
| 30540 | 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 6c | -type">i32</span>.{.....<span.cl |
| 30560 | 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 |
| 30580 | 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 3b | .class="tok-number">1234</span>; |
| 305a0 | 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 |
| 305c0 | 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 31 3c 2f 73 70 | >.<span.class="tok-fn">noop1</sp |
| 305e0 | 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e | an>().<span.class="tok-kw">align |
| 30600 | 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" |
| 30620 | 3e 31 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | >1</span>).<span.class="tok-type |
| 30640 | 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">void</span>.{}.<span.class="to |
| 30660 | 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 |
| 30680 | 2d 66 6e 22 3e 6e 6f 6f 70 34 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -fn">noop4</span>().<span.class= |
| 306a0 | 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | "tok-kw">align</span>(<span.clas |
| 306c0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 | s="tok-number">4</span>).<span.c |
| 306e0 | 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 7d 0a 0a | lass="tok-type">void</span>.{}.. |
| 30700 | 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> |
| 30720 | 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 66 75 6e | .<span.class="tok-str">"fun |
| 30740 | 63 74 69 6f 6e 20 61 6c 69 67 6e 6d 65 6e 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | ction.alignment"</span>.{.. |
| 30760 | 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 |
| 30780 | 6e 3e 20 65 78 70 65 63 74 28 64 65 72 70 28 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | n>.expect(derp().==.<span.class= |
| 307a0 | 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 3c | "tok-number">1234</span>);.....< |
| 307c0 | 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 |
| 307e0 | 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"> |
| 30800 | 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 64 65 72 70 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | @TypeOf</span>(derp).==.<span.cl |
| 30820 | 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. |
| 30840 | 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>);... |
| 30860 | 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 |
| 30880 | 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 |
| 308a0 | 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 64 65 72 70 29 20 3d 3d 20 | n">@TypeOf</span>(&derp).==. |
| 308c0 | 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 61 | *<span.class="tok-kw">align</spa |
| 308e0 | 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 73 69 | n>(<span.class="tok-builtin">@si |
| 30900 | 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 79 70 | zeOf</span>(<span.class="tok-typ |
| 30920 | 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | e">usize</span>).*.<span.class=" |
| 30940 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-number">2</span>).<span.clas |
| 30960 | 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 |
| 30980 | 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. |
| 309a0 | 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 0a 20 | class="tok-type">i32</span>);... |
| 309c0 | 20 20 20 6e 6f 6f 70 31 28 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ...noop1();.....<span.class="tok |
| 309e0 | 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 |
| 30a00 | 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>( |
| 30a20 | 6e 6f 6f 70 31 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | noop1).==.<span.class="tok-kw">f |
| 30a40 | 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 6b 2d 74 79 70 | n</span>.().<span.class="tok-typ |
| 30a60 | 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | e">void</span>);.....<span.class |
| 30a80 | 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 |
| 30aa0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 | n.class="tok-builtin">@TypeOf</s |
| 30ac0 | 70 61 6e 3e 28 26 61 6d 70 3b 6e 6f 6f 70 31 29 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 | pan>(&noop1).==.*<span.class |
| 30ae0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ="tok-kw">align</span>(<span.cla |
| 30b00 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 | ss="tok-number">1</span>).<span. |
| 30b20 | 63 6c 61 73 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 |
| 30b40 | 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 29 20 3c 73 | n.class="tok-kw">fn</span>.().<s |
| 30b60 | 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> |
| 30b80 | 29 3b 0a 0a 20 20 20 20 6e 6f 6f 70 34 28 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | );......noop4();.....<span.class |
| 30ba0 | 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 |
| 30bc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 | n.class="tok-builtin">@TypeOf</s |
| 30be0 | 70 61 6e 3e 28 6e 6f 6f 70 34 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>(noop4).==.<span.class="tok- |
| 30c00 | 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 |
| 30c20 | 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | k-type">void</span>);.....<span. |
| 30c40 | 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 |
| 30c60 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 | (<span.class="tok-builtin">@Type |
| 30c80 | 4f 66 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 6e 6f 6f 70 34 29 20 3d 3d 20 2a 3c 73 70 61 6e 20 | Of</span>(&noop4).==.*<span. |
| 30ca0 | 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 |
| 30cc0 | 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>).< |
| 30ce0 | 73 70 61 6e 20 63 6c 61 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> |
| 30d00 | 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>. |
| 30d20 | 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</ |
| 30d40 | 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>< |
| 30d60 | 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- |
| 30d80 | 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 |
| 30da0 | 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 62 6c 65 5f | p>$.<kbd>zig.test.test_variable_ |
| 30dc0 | 66 75 6e 63 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 | func_alignment.zig</kbd>.1/2.tes |
| 30de0 | 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 74 65 73 74 2e 67 | t_variable_func_alignment.test.g |
| 30e00 | 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 20 61 6c 69 67 6e 6d 65 6e 74 2e 2e 2e 4f 4b 0a 32 2f | lobal.variable.alignment...OK.2/ |
| 30e20 | 32 20 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 74 | 2.test_variable_func_alignment.t |
| 30e40 | 65 73 74 2e 66 75 6e 63 74 69 6f 6e 20 61 6c 69 67 6e 6d 65 6e 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 | est.function.alignment...OK.All. |
| 30e60 | 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 |
| 30e80 | 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 66 20 79 6f 75 20 68 | igure>........<p>.......If.you.h |
| 30ea0 | 61 76 65 20 61 20 70 6f 69 6e 74 65 72 20 6f 72 20 61 20 73 6c 69 63 65 20 74 68 61 74 20 68 61 | ave.a.pointer.or.a.slice.that.ha |
| 30ec0 | 73 20 61 20 73 6d 61 6c 6c 20 61 6c 69 67 6e 6d 65 6e 74 2c 20 62 75 74 20 79 6f 75 20 6b 6e 6f | s.a.small.alignment,.but.you.kno |
| 30ee0 | 77 20 74 68 61 74 20 69 74 20 61 63 74 75 61 6c 6c 79 0a 20 20 20 20 20 20 68 61 73 20 61 20 62 | w.that.it.actually.......has.a.b |
| 30f00 | 69 67 67 65 72 20 61 6c 69 67 6e 6d 65 6e 74 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 61 | igger.alignment,.use.<a.href="#a |
| 30f20 | 6c 69 67 6e 43 61 73 74 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 61 3e 20 74 6f 20 63 68 61 6e | lignCast">@alignCast</a>.to.chan |
| 30f40 | 67 65 20 74 68 65 0a 20 20 20 20 20 20 70 6f 69 6e 74 65 72 20 69 6e 74 6f 20 61 20 6d 6f 72 65 | ge.the.......pointer.into.a.more |
| 30f60 | 20 61 6c 69 67 6e 65 64 20 70 6f 69 6e 74 65 72 2e 20 54 68 69 73 20 69 73 20 61 20 6e 6f 2d 6f | .aligned.pointer..This.is.a.no-o |
| 30f80 | 70 20 61 74 20 72 75 6e 74 69 6d 65 2c 20 62 75 74 20 69 6e 73 65 72 74 73 20 61 0a 20 20 20 20 | p.at.runtime,.but.inserts.a..... |
| 30fa0 | 20 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 | ..<a.href="#Incorrect-Pointer-Al |
| 30fc0 | 69 67 6e 6d 65 6e 74 22 3e 73 61 66 65 74 79 20 63 68 65 63 6b 3c 2f 61 3e 3a 0a 20 20 20 20 20 | ignment">safety.check</a>:...... |
| 30fe0 | 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. |
| 31000 | 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 |
| 31020 | 65 22 3e 74 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 | e">test_incorrect_pointer_alignm |
| 31040 | 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> |
| 31060 | 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 |
| 31080 | 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 |
| 310a0 | 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 |
| 310c0 | 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 |
| 310e0 | 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 |
| 31100 | 3c 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 |
| 31120 | 75 6f 74 3b 70 6f 69 6e 74 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 73 61 66 65 74 79 26 71 75 6f | uot;pointer.alignment.safety&quo |
| 31140 | 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 |
| 31160 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 20 3c 73 70 61 6e 20 63 6c 61 73 | -kw">var</span>.array.<span.clas |
| 31180 | 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 |
| 311a0 | 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 20 5b 5f 5d | ass="tok-number">4</span>).=.[_] |
| 311c0 | 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 |
| 311e0 | 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 78 31 31 | >{.<span.class="tok-number">0x11 |
| 31200 | 31 31 31 31 31 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 | 111111</span>,.<span.class="tok- |
| 31220 | 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 20 7d 3b 0a 20 20 20 | number">0x11111111</span>.};.... |
| 31240 | 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 |
| 31260 | 6e 3e 20 62 79 74 65 73 20 3d 20 73 74 64 2e 6d 65 6d 2e 73 6c 69 63 65 41 73 42 79 74 65 73 28 | n>.bytes.=.std.mem.sliceAsBytes( |
| 31280 | 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 30 | array[<span.class="tok-number">0 |
| 312a0 | 3c 2f 73 70 61 6e 3e 2e 2e 5d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>..]);.....<span.class="to |
| 312c0 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 | k-kw">try</span>.std.testing.exp |
| 312e0 | 65 63 74 28 66 6f 6f 28 62 79 74 65 73 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ect(foo(bytes).==.<span.class="t |
| 31300 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 31 31 31 31 31 31 31 3c 2f 73 70 61 6e 3e 29 3b 0a 7d | ok-number">0x11111111</span>);.} |
| 31320 | 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>. |
| 31340 | 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 28 | <span.class="tok-fn">foo</span>( |
| 31360 | 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 22 3e | bytes:.[]<span.class="tok-type"> |
| 31380 | 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 |
| 313a0 | 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">u32</span>.{.....<span.class=" |
| 313c0 | 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 62 79 | tok-kw">const</span>.slice4.=.by |
| 313e0 | 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 3c 2f | tes[<span.class="tok-number">1</ |
| 31400 | 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"> |
| 31420 | 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 6b 2d | 5</span>];.....<span.class="tok- |
| 31440 | 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 73 74 64 | kw">const</span>.int_slice.=.std |
| 31460 | 2e 6d 65 6d 2e 62 79 74 65 73 41 73 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .mem.bytesAsSlice(<span.class="t |
| 31480 | 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-type">u32</span>,.<span.class |
| 314a0 | 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 5b 5d 3c 73 70 61 | ="tok-builtin">@as</span>([]<spa |
| 314c0 | 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 73 | n.class="tok-kw">align</span>(<s |
| 314e0 | 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 29 | pan.class="tok-number">4</span>) |
| 31500 | 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 |
| 31520 | 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 61 6c | >,.<span.class="tok-builtin">@al |
| 31540 | 69 67 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 | ignCast</span>(slice4)));.....<s |
| 31560 | 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> |
| 31580 | 20 69 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 | .int_slice[<span.class="tok-numb |
| 315a0 | 65 72 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 | er">0</span>];.}</code></pre></f |
| 315c0 | 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= |
| 315e0 | 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 |
| 31600 | 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 69 6e | re><samp>$.<kbd>zig.test.test_in |
| 31620 | 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 6b | correct_pointer_alignment.zig</k |
| 31640 | 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f 69 6e 74 65 72 5f 61 | bd>.1/1.test_incorrect_pointer_a |
| 31660 | 6c 69 67 6e 6d 65 6e 74 2e 74 65 73 74 2e 70 6f 69 6e 74 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 | lignment.test.pointer.alignment. |
| 31680 | 73 61 66 65 74 79 2e 2e 2e 74 68 72 65 61 64 20 33 35 36 38 38 32 33 20 70 61 6e 69 63 3a 20 69 | safety...thread.3568823.panic:.i |
| 316a0 | 6e 63 6f 72 72 65 63 74 20 61 6c 69 67 6e 6d 65 6e 74 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ncorrect.alignment.<span.class=" |
| 316c0 | 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c | sgr-1m">/home/andy/src/zig/doc/l |
| 316e0 | 61 6e 67 72 65 66 2f 74 65 73 74 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f 69 6e 74 65 72 5f 61 6c | angref/test_incorrect_pointer_al |
| 31700 | 69 67 6e 6d 65 6e 74 2e 7a 69 67 3a 31 30 3a 36 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | ignment.zig:10:68</span>:.<span. |
| 31720 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 64 31 33 61 20 69 6e 20 66 6f 6f 20 | class="sgr-2m">0x103d13a.in.foo. |
| 31740 | 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 5f 73 6c 69 63 | (test)</span>.....const.int_slic |
| 31760 | 65 20 3d 20 73 74 64 2e 6d 65 6d 2e 62 79 74 65 73 41 73 53 6c 69 63 65 28 75 33 32 2c 20 40 61 | e.=.std.mem.bytesAsSlice(u32,.@a |
| 31780 | 73 28 5b 5d 61 6c 69 67 6e 28 34 29 20 75 38 2c 20 40 61 6c 69 67 6e 43 61 73 74 28 73 6c 69 63 | s([]align(4).u8,.@alignCast(slic |
| 317a0 | 65 34 29 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | e4)));.......................... |
| 317c0 | 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 | ................................ |
| 317e0 | 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"> |
| 31800 | 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 |
| 31820 | 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 | ome/andy/src/zig/doc/langref/tes |
| 31840 | 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 |
| 31860 | 67 3a 36 3a 33 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 | g:6:31</span>:.<span.class="sgr- |
| 31880 | 32 6d 22 3e 30 78 31 30 33 63 66 64 37 20 69 6e 20 74 65 73 74 2e 70 6f 69 6e 74 65 72 20 61 6c | 2m">0x103cfd7.in.test.pointer.al |
| 318a0 | 69 67 6e 6d 65 6e 74 20 73 61 66 65 74 79 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | ignment.safety.(test)</span>.... |
| 318c0 | 20 74 72 79 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 28 66 6f 6f 28 62 79 74 65 | .try.std.testing.expect(foo(byte |
| 318e0 | 73 29 20 3d 3d 20 30 78 31 31 31 31 31 31 31 31 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | s).==.0x11111111);.............. |
| 31900 | 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 |
| 31920 | 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 |
| 31940 | 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 | -1m">/home/andy/src/zig/lib/comp |
| 31960 | 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 31 35 37 3a 32 35 3c 2f 73 70 61 | iler/test_runner.zig:157:25</spa |
| 31980 | 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 37 66 | n>:.<span.class="sgr-2m">0x1047f |
| 319a0 | 31 30 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 | 10.in.mainTerminal.(test)</span> |
| 319c0 | 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()).|_| |
| 319e0 | 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 |
| 31a00 | 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. |
| 31a20 | 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 73 72 63 2f 7a 69 | class="sgr-1m">/home/andy/src/zi |
| 31a40 | 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 33 | g/lib/compiler/test_runner.zig:3 |
| 31a60 | 37 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 | 7:28</span>:.<span.class="sgr-2m |
| 31a80 | 22 3e 30 78 31 30 33 65 32 38 62 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e | ">0x103e28b.in.main.(test)</span |
| 31aa0 | 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(); |
| 31ac0 | 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 |
| 31ae0 | 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 |
| 31b00 | 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 73 72 63 2f 7a | .class="sgr-1m">/home/andy/src/z |
| 31b20 | 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 3c 2f 73 70 61 | ig/lib/std/start.zig:514:22</spa |
| 31b40 | 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 33 64 36 | n>:.<span.class="sgr-2m">0x103d6 |
| 31b60 | 30 39 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 | 09.in.posixCallMainAndExit.(test |
| 31b80 | 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() |
| 31ba0 | 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 |
| 31bc0 | 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 |
| 31be0 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 | s="sgr-1m">/home/andy/src/zig/li |
| 31c00 | 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 36 36 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | b/std/start.zig:266:5</span>:.<s |
| 31c20 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 64 31 37 31 20 69 6e 20 | pan.class="sgr-2m">0x103d171.in. |
| 31c40 | 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 |
| 31c60 | 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).{... |
| 31c80 | 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> |
| 31ca0 | 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 |
| 31cc0 | 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 |
| 31ce0 | 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 |
| 31d00 | 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 |
| 31d20 | 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 63 37 | ome/andy/src/zig/.zig-cache/o/c7 |
| 31d40 | 37 31 37 30 35 36 37 37 63 30 64 32 64 66 32 34 65 30 30 32 36 39 61 39 31 38 39 66 39 37 2f 74 | 71705677c0d2df24e00269a9189f97/t |
| 31d60 | 65 73 74 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 | est.</samp></pre></figure>...... |
| 31d80 | 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 61 6c 6c 6f 77 7a 65 72 6f 22 3e 3c 61 20 | ..........<h3.id="allowzero"><a. |
| 31da0 | 68 72 65 66 3d 22 23 74 6f 63 2d 61 6c 6c 6f 77 7a 65 72 6f 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c | href="#toc-allowzero">allowzero< |
| 31dc0 | 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 6c 6f 77 7a | /a>.<a.class="hdr".href="#allowz |
| 31de0 | 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 0a 20 20 20 20 | ero">..</a></h3>........<p>..... |
| 31e00 | 20 20 54 68 69 73 20 70 6f 69 6e 74 65 72 20 61 74 74 72 69 62 75 74 65 20 61 6c 6c 6f 77 73 20 | ..This.pointer.attribute.allows. |
| 31e20 | 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 20 7a 65 72 6f 2e 20 | a.pointer.to.have.address.zero.. |
| 31e40 | 54 68 69 73 20 69 73 20 6f 6e 6c 79 20 65 76 65 72 20 6e 65 65 64 65 64 20 6f 6e 20 74 68 65 0a | This.is.only.ever.needed.on.the. |
| 31e60 | 20 20 20 20 20 20 66 72 65 65 73 74 61 6e 64 69 6e 67 20 4f 53 20 74 61 72 67 65 74 2c 20 77 68 | ......freestanding.OS.target,.wh |
| 31e80 | 65 72 65 20 74 68 65 20 61 64 64 72 65 73 73 20 7a 65 72 6f 20 69 73 20 6d 61 70 70 61 62 6c 65 | ere.the.address.zero.is.mappable |
| 31ea0 | 2e 20 49 66 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 72 65 70 72 65 73 65 6e 74 20 6e 75 6c 6c 20 | ..If.you.want.to.represent.null. |
| 31ec0 | 70 6f 69 6e 74 65 72 73 2c 20 75 73 65 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 | pointers,.use.......<a.href="#Op |
| 31ee0 | 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 69 6e 74 65 | tional-Pointers">Optional.Pointe |
| 31f00 | 72 73 3c 2f 61 3e 20 69 6e 73 74 65 61 64 2e 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e | rs</a>.instead..<a.href="#Option |
| 31f20 | 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e 4f 70 74 69 6f 6e 61 6c 20 50 6f 69 6e 74 65 72 73 3c 2f | al-Pointers">Optional.Pointers</ |
| 31f40 | 61 3e 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 6b | a>.with.<code><span.class="tok-k |
| 31f60 | 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 0a 20 20 20 20 20 | w">allowzero</span></code>...... |
| 31f80 | 20 61 72 65 20 6e 6f 74 20 74 68 65 20 73 61 6d 65 20 73 69 7a 65 20 61 73 20 70 6f 69 6e 74 65 | .are.not.the.same.size.as.pointe |
| 31fa0 | 72 73 2e 20 49 6e 20 74 68 69 73 20 63 6f 64 65 20 65 78 61 6d 70 6c 65 2c 20 69 66 20 74 68 65 | rs..In.this.code.example,.if.the |
| 31fc0 | 20 70 6f 69 6e 74 65 72 0a 20 20 20 20 20 20 64 69 64 20 6e 6f 74 20 68 61 76 65 20 74 68 65 20 | .pointer.......did.not.have.the. |
| 31fe0 | 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 6c 6c 6f 77 | <code><span.class="tok-kw">allow |
| 32000 | 7a 65 72 6f 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 74 74 72 69 62 75 74 65 2c 20 74 68 | zero</span></code>.attribute,.th |
| 32020 | 69 73 20 77 6f 75 6c 64 20 62 65 20 61 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 50 6f | is.would.be.a.......<a.href="#Po |
| 32040 | 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 69 6e 74 65 72 | inter-Cast-Invalid-Null">Pointer |
| 32060 | 20 43 61 73 74 20 49 6e 76 61 6c 69 64 20 4e 75 6c 6c 3c 2f 61 3e 20 70 61 6e 69 63 3a 0a 20 20 | .Cast.Invalid.Null</a>.panic:... |
| 32080 | 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 |
| 320a0 | 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=" |
| 320c0 | 66 69 6c 65 22 3e 74 65 73 74 5f 61 6c 6c 6f 77 7a 65 72 6f 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c | file">test_allowzero.zig</cite>< |
| 320e0 | 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 |
| 32100 | 73 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.=.< |
| 32120 | 73 70 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 |
| 32140 | 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 |
| 32160 | 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 |
| 32180 | 73 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. |
| 321a0 | 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 |
| 321c0 | 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 |
| 321e0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 6c 6c 6f 77 7a 65 72 6f 26 71 75 | ass="tok-str">"allowzero&qu |
| 32200 | 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 |
| 32220 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 7a 65 72 6f 3a 20 3c 73 70 61 6e 20 63 6c 61 | k-kw">var</span>.zero:.<span.cla |
| 32240 | 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 70 | ss="tok-type">usize</span>.=.<sp |
| 32260 | 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 20 | an.class="tok-number">0</span>;. |
| 32280 | 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 72 | <span.class="tok-comment">//.var |
| 322a0 | 20 74 6f 20 6d 61 6b 65 20 74 6f 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 3c 2f 73 70 61 6e 3e | .to.make.to.runtime-known</span> |
| 322c0 | 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 7a 65 72 6f 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ....._.=.&zero;.<span.class= |
| 322e0 | 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 69 | "tok-comment">//.suppress.'var.i |
| 32300 | 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 20 | s.never.mutated'.error</span>... |
| 32320 | 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 |
| 32340 | 61 6e 3e 20 70 74 72 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 | an>.ptr:.*<span.class="tok-kw">a |
| 32360 | 6c 6c 6f 77 7a 65 72 6f 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | llowzero</span>.<span.class="tok |
| 32380 | 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= |
| 323a0 | 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 61 6e 3e | "tok-builtin">@ptrFromInt</span> |
| 323c0 | 28 7a 65 72 6f 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | (zero);.....<span.class="tok-kw" |
| 323e0 | 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=" |
| 32400 | 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>( |
| 32420 | 70 74 72 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | ptr).==.<span.class="tok-number" |
| 32440 | 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 75 | >0</span>);.}</code></pre></figu |
| 32460 | 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 |
| 32480 | 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> |
| 324a0 | 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 6c 6c 6f 77 | <samp>$.<kbd>zig.test.test_allow |
| 324c0 | 7a 65 72 6f 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 61 6c 6c 6f 77 7a 65 72 | zero.zig</kbd>.1/1.test_allowzer |
| 324e0 | 6f 2e 74 65 73 74 2e 61 6c 6c 6f 77 7a 65 72 6f 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 | o.test.allowzero...OK.All.1.test |
| 32500 | 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> |
| 32520 | 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 74 69 6e 65 6c | ................<h3.id="Sentinel |
| 32540 | 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 | -Terminated-Pointers"><a.href="# |
| 32560 | 74 6f 63 2d 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 | toc-Sentinel-Terminated-Pointers |
| 32580 | 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 50 6f 69 6e 74 65 72 73 3c 2f | ">Sentinel-Terminated.Pointers</ |
| 325a0 | 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 65 6e 74 69 6e 65 | a>.<a.class="hdr".href="#Sentine |
| 325c0 | 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | l-Terminated-Pointers">..</a></h |
| 325e0 | 33 3e 0a 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 | 3>........<p>.......The.syntax.< |
| 32600 | 63 6f 64 65 3e 5b 2a 3a 78 5d 54 3c 2f 63 6f 64 65 3e 20 64 65 73 63 72 69 62 65 73 20 61 20 70 | code>[*:x]T</code>.describes.a.p |
| 32620 | 6f 69 6e 74 65 72 20 74 68 61 74 0a 20 20 20 20 20 20 68 61 73 20 61 20 6c 65 6e 67 74 68 20 64 | ointer.that.......has.a.length.d |
| 32640 | 65 74 65 72 6d 69 6e 65 64 20 62 79 20 61 20 73 65 6e 74 69 6e 65 6c 20 76 61 6c 75 65 2e 20 54 | etermined.by.a.sentinel.value..T |
| 32660 | 68 69 73 20 70 72 6f 76 69 64 65 73 20 70 72 6f 74 65 63 74 69 6f 6e 0a 20 20 20 20 20 20 61 67 | his.provides.protection.......ag |
| 32680 | 61 69 6e 73 74 20 62 75 66 66 65 72 20 6f 76 65 72 66 6c 6f 77 20 61 6e 64 20 6f 76 65 72 72 65 | ainst.buffer.overflow.and.overre |
| 326a0 | 61 64 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 3c 66 | ads........</p>.......<figure><f |
| 326c0 | 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. |
| 326e0 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 65 6e 74 69 6e 65 6c 2d 74 65 72 6d 69 6e 61 74 65 64 | class="file">sentinel-terminated |
| 32700 | 5f 70 6f 69 6e 74 65 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 | _pointer.zig</cite></figcaption> |
| 32720 | 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"> |
| 32740 | 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=" |
| 32760 | 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 |
| 32780 | 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" |
| 327a0 | 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 63 6f 6d | ;</span>);..<span.class="tok-com |
| 327c0 | 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 69 73 20 61 6c 73 6f 20 61 76 61 69 6c 61 62 6c 65 20 | ment">//.This.is.also.available. |
| 327e0 | 61 73 20 60 73 74 64 2e 63 2e 70 72 69 6e 74 66 60 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | as.`std.c.printf`.</span>.<span. |
| 32800 | 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. |
| 32820 | 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 |
| 32840 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 26 71 75 6f 74 3b | an.class="tok-str">"c" |
| 32860 | 3c 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< |
| 32880 | 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 72 69 6e | /span>.<span.class="tok-fn">prin |
| 328a0 | 74 66 3c 2f 73 70 61 6e 3e 28 66 6f 72 6d 61 74 3a 20 5b 2a 3a 3c 73 70 61 6e 20 63 6c 61 73 73 | tf</span>(format:.[*:<span.class |
| 328c0 | 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 |
| 328e0 | 73 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 |
| 32900 | 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 2e 2e 2e 29 20 | lass="tok-type">u8</span>,....). |
| 32920 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 69 6e 74 3c 2f 73 70 | <span.class="tok-type">c_int</sp |
| 32940 | 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f | an>;..<span.class="tok-kw">pub</ |
| 32960 | 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 |
| 32980 | 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</ |
| 329a0 | 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 61 | span>().<span.class="tok-type">a |
| 329c0 | 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | nyerror</span>!<span.class="tok- |
| 329e0 | 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 70 72 69 6e | type">void</span>.{....._.=.prin |
| 32a00 | 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 48 | tf(<span.class="tok-str">"H |
| 32a20 | 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 20 3c 73 | ello,.world!\n"</span>);.<s |
| 32a40 | 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 4f 4b 3c 2f 73 | pan.class="tok-comment">//.OK</s |
| 32a60 | 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 63 | pan>......<span.class="tok-kw">c |
| 32a80 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 73 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | onst</span>.msg.=.<span.class="t |
| 32aa0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 5c 6e 26 71 75 | ok-str">"Hello,.world!\n&qu |
| 32ac0 | 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 |
| 32ae0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 6f 6e 5f 6e 75 6c 6c 5f 74 65 72 6d 69 | -kw">const</span>.non_null_termi |
| 32b00 | 6e 61 74 65 64 5f 6d 73 67 3a 20 5b 6d 73 67 2e 6c 65 6e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | nated_msg:.[msg.len]<span.class= |
| 32b20 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 6d 73 67 2e 2a 3b 0a 20 20 | "tok-type">u8</span>.=.msg.*;... |
| 32b40 | 20 20 5f 20 3d 20 70 72 69 6e 74 66 28 26 61 6d 70 3b 6e 6f 6e 5f 6e 75 6c 6c 5f 74 65 72 6d 69 | .._.=.printf(&non_null_termi |
| 32b60 | 6e 61 74 65 64 5f 6d 73 67 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | nated_msg);.}</code></pre></figu |
| 32b80 | 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 |
| 32ba0 | 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> |
| 32bc0 | 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 65 6e 74 69 | <samp>$.<kbd>zig.build-exe.senti |
| 32be0 | 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 20 2d 6c 63 3c 2f | nel-terminated_pointer.zig.-lc</ |
| 32c00 | 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/ |
| 32c20 | 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 73 65 6e 74 69 6e 65 | andy/src/zig/doc/langref/sentine |
| 32c40 | 6c 2d 74 65 72 6d 69 6e 61 74 65 64 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 3a 31 31 3a 31 36 3a 20 | l-terminated_pointer.zig:11:16:. |
| 32c60 | 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 |
| 32c80 | 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"> |
| 32ca0 | 65 78 70 65 63 74 65 64 20 74 79 70 65 20 27 5b 2a 3a 30 5d 63 6f 6e 73 74 20 75 38 27 2c 20 66 | expected.type.'[*:0]const.u8',.f |
| 32cc0 | 6f 75 6e 64 20 27 2a 63 6f 6e 73 74 20 5b 31 34 5d 75 38 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 | ound.'*const.[14]u8'.</span>.... |
| 32ce0 | 5f 20 3d 20 70 72 69 6e 74 66 28 26 61 6d 70 3b 6e 6f 6e 5f 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 | _.=.printf(&non_null_termina |
| 32d00 | 74 65 64 5f 6d 73 67 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ted_msg);................<span.c |
| 32d20 | 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 7e 7e | lass="sgr-32m">^~~~~~~~~~~~~~~~~ |
| 32d40 | 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 2d | ~~~~~~~.</span><span.class="sgr- |
| 32d60 | 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 | 1m">/home/andy/src/zig/doc/langr |
| 32d80 | 65 66 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 | ef/sentinel-terminated_pointer.z |
| 32da0 | 69 67 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 | ig:11:16:.</span><span.class="sg |
| 32dc0 | 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 3d | r-36m">note:.</span><span.class= |
| 32de0 | 22 73 67 72 2d 31 6d 22 3e 64 65 73 74 69 6e 61 74 69 6f 6e 20 70 6f 69 6e 74 65 72 20 72 65 71 | "sgr-1m">destination.pointer.req |
| 32e00 | 75 69 72 65 73 20 27 30 27 20 73 65 6e 74 69 6e 65 6c 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | uires.'0'.sentinel.</span><span. |
| 32e20 | 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 73 72 63 2f 7a 69 | class="sgr-1m">/home/andy/src/zi |
| 32e40 | 67 2f 64 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 | g/doc/langref/sentinel-terminate |
| 32e60 | 64 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 3a 34 3a 33 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | d_pointer.zig:4:35:.</span><span |
| 32e80 | 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 |
| 32ea0 | 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 74 79 70 | pan.class="sgr-1m">parameter.typ |
| 32ec0 | 65 20 64 65 63 6c 61 72 65 64 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 70 75 62 20 65 78 74 65 72 | e.declared.here.</span>pub.exter |
| 32ee0 | 6e 20 26 71 75 6f 74 3b 63 26 71 75 6f 74 3b 20 66 6e 20 70 72 69 6e 74 66 28 66 6f 72 6d 61 74 | n."c".fn.printf(format |
| 32f00 | 3a 20 5b 2a 3a 30 5d 63 6f 6e 73 74 20 75 38 2c 20 2e 2e 2e 29 20 63 5f 69 6e 74 3b 0a 20 20 20 | :.[*:0]const.u8,....).c_int;.... |
| 32f20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 | ..............................<s |
| 32f40 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 7e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e | pan.class="sgr-32m">~^~~~~~~~~~~ |
| 32f60 | 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 3e 72 65 | ~.</span><span.class="sgr-2m">re |
| 32f80 | 66 65 72 65 6e 63 65 64 20 62 79 3a 0a 20 20 20 20 63 61 6c 6c 4d 61 69 6e 3a 20 2f 68 6f 6d 65 | ferenced.by:.....callMain:./home |
| 32fa0 | 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a | /andy/src/zig/lib/std/start.zig: |
| 32fc0 | 35 32 34 3a 33 32 0a 20 20 20 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 3a 20 2f 68 6f | 524:32.....callMainWithArgs:./ho |
| 32fe0 | 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | me/andy/src/zig/lib/std/start.zi |
| 33000 | 67 3a 34 38 32 3a 31 32 0a 20 20 20 20 72 65 6d 61 69 6e 69 6e 67 20 72 65 66 65 72 65 6e 63 65 | g:482:12.....remaining.reference |
| 33020 | 20 74 72 61 63 65 73 20 68 69 64 64 65 6e 3b 20 75 73 65 20 27 2d 66 72 65 66 65 72 65 6e 63 65 | .traces.hidden;.use.'-freference |
| 33040 | 2d 74 72 61 63 65 27 20 74 6f 20 73 65 65 20 61 6c 6c 20 72 65 66 65 72 65 6e 63 65 20 74 72 61 | -trace'.to.see.all.reference.tra |
| 33060 | 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 3c 2f 66 69 67 75 72 | ces.</span>.</samp></pre></figur |
| 33080 | 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 0a 3c | e>........<p>See.also:</p><ul>.< |
| 330a0 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 | li><a.href="#Sentinel-Terminated |
| 330c0 | 2d 53 6c 69 63 65 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 53 6c 69 | -Slices">Sentinel-Terminated.Sli |
| 330e0 | 63 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 53 65 6e 74 69 | ces</a></li>.<li><a.href="#Senti |
| 33100 | 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 41 72 72 61 79 73 22 3e 53 65 6e 74 69 6e 65 6c 2d | nel-Terminated-Arrays">Sentinel- |
| 33120 | 54 65 72 6d 69 6e 61 74 65 64 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e | Terminated.Arrays</a></li>.</ul> |
| 33140 | 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 53 | .......................<h2.id="S |
| 33160 | 6c 69 63 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 6c 69 63 65 73 22 3e 53 6c 69 | lices"><a.href="#toc-Slices">Sli |
| 33180 | 63 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 53 6c | ces</a>.<a.class="hdr".href="#Sl |
| 331a0 | 69 63 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | ices">..</a></h2>........<p>.... |
| 331c0 | 20 20 20 41 20 73 6c 69 63 65 20 69 73 20 61 20 70 6f 69 6e 74 65 72 20 61 6e 64 20 61 20 6c 65 | ...A.slice.is.a.pointer.and.a.le |
| 331e0 | 6e 67 74 68 2e 20 54 68 65 20 64 69 66 66 65 72 65 6e 63 65 20 62 65 74 77 65 65 6e 20 61 6e 20 | ngth..The.difference.between.an. |
| 33200 | 61 72 72 61 79 20 61 6e 64 0a 20 20 20 20 20 20 61 20 73 6c 69 63 65 20 69 73 20 74 68 61 74 20 | array.and.......a.slice.is.that. |
| 33220 | 74 68 65 20 61 72 72 61 79 27 73 20 6c 65 6e 67 74 68 20 69 73 20 70 61 72 74 20 6f 66 20 74 68 | the.array's.length.is.part.of.th |
| 33240 | 65 20 74 79 70 65 20 61 6e 64 20 6b 6e 6f 77 6e 20 61 74 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c | e.type.and.known.at.......compil |
| 33260 | 65 2d 74 69 6d 65 2c 20 77 68 65 72 65 61 73 20 74 68 65 20 73 6c 69 63 65 27 73 20 6c 65 6e 67 | e-time,.whereas.the.slice's.leng |
| 33280 | 74 68 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 72 75 6e 74 69 6d 65 2e 0a 20 20 20 20 20 20 42 6f | th.is.known.at.runtime........Bo |
| 332a0 | 74 68 20 63 61 6e 20 62 65 20 61 63 63 65 73 73 65 64 20 77 69 74 68 20 74 68 65 20 60 6c 65 6e | th.can.be.accessed.with.the.`len |
| 332c0 | 60 20 66 69 65 6c 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 | `.field........</p>.......<figur |
| 332e0 | 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 |
| 33300 | 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 62 61 73 69 63 5f 73 6c 69 63 | ite.class="file">test_basic_slic |
| 33320 | 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 3c | es.zig</cite></figcaption><pre>< |
| 33340 | 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< |
| 33360 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>.expect.=.<span.class="tok |
| 33380 | 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 |
| 333a0 | 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"</ |
| 333c0 | 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 61 | span>).testing.expect;.<span.cla |
| 333e0 | 73 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 |
| 33400 | 71 75 61 6c 53 6c 69 63 65 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | qualSlices.=.<span.class="tok-bu |
| 33420 | 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 |
| 33440 | 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 |
| 33460 | 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 45 71 75 61 6c 53 6c 69 63 65 73 3b 0a 0a | n>).testing.expectEqualSlices;.. |
| 33480 | 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> |
| 334a0 | 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 62 61 73 | .<span.class="tok-str">"bas |
| 334c0 | 69 63 20 73 6c 69 63 65 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | ic.slices"</span>.{.....<sp |
| 334e0 | 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 72 | an.class="tok-kw">var</span>.arr |
| 33500 | 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 3e 69 | ay.=.[_]<span.class="tok-type">i |
| 33520 | 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 6d 62 | 32</span>{.<span.class="tok-numb |
| 33540 | 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 |
| 33560 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | umber">2</span>,.<span.class="to |
| 33580 | 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 3d | k-number">3</span>,.<span.class= |
| 335a0 | 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 73 70 | "tok-number">4</span>.};.....<sp |
| 335c0 | 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 6b 6e 6f | an.class="tok-kw">var</span>.kno |
| 335e0 | 77 6e 5f 61 74 5f 72 75 6e 74 69 6d 65 5f 7a 65 72 6f 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | wn_at_runtime_zero:.<span.class= |
| 33600 | 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 20 | "tok-type">usize</span>.=.<span. |
| 33620 | 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 20 | class="tok-number">0</span>;.... |
| 33640 | 20 5f 20 3d 20 26 61 6d 70 3b 6b 6e 6f 77 6e 5f 61 74 5f 72 75 6e 74 69 6d 65 5f 7a 65 72 6f 3b | ._.=.&known_at_runtime_zero; |
| 33660 | 0a 20 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< |
| 33680 | 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 61 72 72 61 79 5b 6b 6e 6f 77 6e 5f 61 74 5f 72 75 | /span>.slice.=.array[known_at_ru |
| 336a0 | 6e 74 69 6d 65 5f 7a 65 72 6f 2e 2e 61 72 72 61 79 2e 6c 65 6e 5d 3b 0a 0a 20 20 20 20 3c 73 70 | ntime_zero..array.len];......<sp |
| 336c0 | 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 6c 74 65 72 6e | an.class="tok-comment">//.altern |
| 336e0 | 61 74 69 76 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 75 73 69 6e 67 20 72 65 73 75 6c | ative.initialization.using.resul |
| 33700 | 74 20 6c 6f 63 61 74 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 | t.location</span>.....<span.clas |
| 33720 | 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 74 5f 73 6c 69 63 | s="tok-kw">const</span>.alt_slic |
| 33740 | 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< |
| 33760 | 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 69 33 | /span>.<span.class="tok-type">i3 |
| 33780 | 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 2e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 2</span>.=.&.{.<span.class=" |
| 337a0 | 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 73 | tok-number">1</span>,.<span.clas |
| 337c0 | 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 6e 20 63 | s="tok-number">2</span>,.<span.c |
| 337e0 | 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 |
| 33800 | 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 7d 3b | n.class="tok-number">4</span>.}; |
| 33820 | 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</ |
| 33840 | 73 70 61 6e 3e 20 65 78 70 65 63 74 45 71 75 61 6c 53 6c 69 63 65 73 28 3c 73 70 61 6e 20 63 6c | span>.expectEqualSlices(<span.cl |
| 33860 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 65 | ass="tok-type">i32</span>,.slice |
| 33880 | 2c 20 61 6c 74 5f 73 6c 69 63 65 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ,.alt_slice);......<span.class=" |
| 338a0 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 | tok-kw">try</span>.expect(<span. |
| 338c0 | 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 |
| 338e0 | 6e 3e 28 73 6c 69 63 65 29 20 3d 3d 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | n>(slice).==.[]<span.class="tok- |
| 33900 | 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 6c 61 | type">i32</span>);.....<span.cla |
| 33920 | 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 26 61 | ss="tok-kw">try</span>.expect(&a |
| 33940 | 6d 70 3b 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 | mp;slice[<span.class="tok-number |
| 33960 | 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 26 61 6d 70 3b 61 72 72 61 79 5b 3c 73 70 61 6e 20 | ">0</span>].==.&array[<span. |
| 33980 | 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 3b 0a 20 | class="tok-number">0</span>]);.. |
| 339a0 | 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 |
| 339c0 | 6e 3e 20 65 78 70 65 63 74 28 73 6c 69 63 65 2e 6c 65 6e 20 3d 3d 20 61 72 72 61 79 2e 6c 65 6e | n>.expect(slice.len.==.array.len |
| 339e0 | 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 |
| 33a00 | 22 3e 2f 2f 20 49 66 20 79 6f 75 20 73 6c 69 63 65 20 77 69 74 68 20 63 6f 6d 70 74 69 6d 65 2d | ">//.If.you.slice.with.comptime- |
| 33a20 | 6b 6e 6f 77 6e 20 73 74 61 72 74 20 61 6e 64 20 65 6e 64 20 70 6f 73 69 74 69 6f 6e 73 2c 20 74 | known.start.and.end.positions,.t |
| 33a40 | 68 65 20 72 65 73 75 6c 74 20 69 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | he.result.is</span>.....<span.cl |
| 33a60 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 20 70 6f 69 6e 74 65 72 20 74 | ass="tok-comment">//.a.pointer.t |
| 33a80 | 6f 20 61 6e 20 61 72 72 61 79 2c 20 72 61 74 68 65 72 20 74 68 61 6e 20 61 20 73 6c 69 63 65 2e | o.an.array,.rather.than.a.slice. |
| 33aa0 | 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" |
| 33ac0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 5f 70 74 72 20 3d 20 61 72 72 61 79 5b | >const</span>.array_ptr.=.array[ |
| 33ae0 | 3c 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 |
| 33b00 | 3e 2e 2e 61 72 72 61 79 2e 6c 65 6e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >..array.len];.....<span.class=" |
| 33b20 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 | tok-kw">try</span>.expect(<span. |
| 33b40 | 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 |
| 33b60 | 6e 3e 28 61 72 72 61 79 5f 70 74 72 29 20 3d 3d 20 2a 5b 61 72 72 61 79 2e 6c 65 6e 5d 3c 73 70 | n>(array_ptr).==.*[array.len]<sp |
| 33b80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b | an.class="tok-type">i32</span>); |
| 33ba0 | 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"> |
| 33bc0 | 2f 2f 20 59 6f 75 20 63 61 6e 20 70 65 72 66 6f 72 6d 20 61 20 73 6c 69 63 65 2d 62 79 2d 6c 65 | //.You.can.perform.a.slice-by-le |
| 33be0 | 6e 67 74 68 20 62 79 20 73 6c 69 63 69 6e 67 20 74 77 69 63 65 2e 20 54 68 69 73 20 61 6c 6c 6f | ngth.by.slicing.twice..This.allo |
| 33c00 | 77 73 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | ws.the.compiler</span>.....<span |
| 33c20 | 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 70 65 72 66 6f | .class="tok-comment">//.to.perfo |
| 33c40 | 72 6d 20 73 6f 6d 65 20 6f 70 74 69 6d 69 73 61 74 69 6f 6e 73 20 6c 69 6b 65 20 72 65 63 6f 67 | rm.some.optimisations.like.recog |
| 33c60 | 6e 69 73 69 6e 67 20 61 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 6c 65 6e 67 74 68 20 77 | nising.a.comptime-known.length.w |
| 33c80 | 68 65 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | hen</span>.....<span.class="tok- |
| 33ca0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 73 74 61 72 74 20 70 6f 73 69 74 69 6f 6e 20 69 | comment">//.the.start.position.i |
| 33cc0 | 73 20 6f 6e 6c 79 20 6b 6e 6f 77 6e 20 61 74 20 72 75 6e 74 69 6d 65 2e 3c 2f 73 70 61 6e 3e 0a | s.only.known.at.runtime.</span>. |
| 33ce0 | 20 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 |
| 33d00 | 61 6e 3e 20 72 75 6e 74 69 6d 65 5f 73 74 61 72 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | an>.runtime_start:.<span.class=" |
| 33d20 | 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | tok-type">usize</span>.=.<span.c |
| 33d40 | 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>;..... |
| 33d60 | 5f 20 3d 20 26 61 6d 70 3b 72 75 6e 74 69 6d 65 5f 73 74 61 72 74 3b 0a 20 20 20 20 3c 73 70 61 | _.=.&runtime_start;.....<spa |
| 33d80 | 6e 20 63 6c 61 73 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 65 | n.class="tok-kw">const</span>.le |
| 33da0 | 6e 67 74 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 | ngth.=.<span.class="tok-number"> |
| 33dc0 | 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | 2</span>;.....<span.class="tok-k |
| 33de0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 5f 70 74 72 5f 6c 65 6e 20 3d 20 | w">const</span>.array_ptr_len.=. |
| 33e00 | 61 72 72 61 79 5b 72 75 6e 74 69 6d 65 5f 73 74 61 72 74 2e 2e 5d 5b 3c 73 70 61 6e 20 63 6c 61 | array[runtime_start..][<span.cla |
| 33e20 | 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 6c 65 6e 67 74 68 | ss="tok-number">0</span>..length |
| 33e40 | 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 79 3c | ];.....<span.class="tok-kw">try< |
| 33e60 | 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 |
| 33e80 | 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 74 72 | uiltin">@TypeOf</span>(array_ptr |
| 33ea0 | 5f 6c 65 6e 29 20 3d 3d 20 2a 5b 6c 65 6e 67 74 68 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | _len).==.*[length]<span.class="t |
| 33ec0 | 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 6e | ok-type">i32</span>);......<span |
| 33ee0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 55 73 69 6e 67 20 74 68 | .class="tok-comment">//.Using.th |
| 33f00 | 65 20 61 64 64 72 65 73 73 2d 6f 66 20 6f 70 65 72 61 74 6f 72 20 6f 6e 20 61 20 73 6c 69 63 65 | e.address-of.operator.on.a.slice |
| 33f20 | 20 67 69 76 65 73 20 61 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 2e 3c 2f 73 | .gives.a.single-item.pointer.</s |
| 33f40 | 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 |
| 33f60 | 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 |
| 33f80 | 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 73 6c | -builtin">@TypeOf</span>(&sl |
| 33fa0 | 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f | ice[<span.class="tok-number">0</ |
| 33fc0 | 73 70 61 6e 3e 5d 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 | span>]).==.*<span.class="tok-typ |
| 33fe0 | 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= |
| 34000 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 55 73 69 6e 67 20 74 68 65 20 60 70 74 72 60 | "tok-comment">//.Using.the.`ptr` |
| 34020 | 20 66 69 65 6c 64 20 67 69 76 65 73 20 61 20 6d 61 6e 79 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 | .field.gives.a.many-item.pointer |
| 34040 | 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 |
| 34060 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">try</span>.expect(<span.class= |
| 34080 | 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 73 6c 69 | "tok-builtin">@TypeOf</span>(sli |
| 340a0 | 63 65 2e 70 74 72 29 20 3d 3d 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ce.ptr).==.[*]<span.class="tok-t |
| 340c0 | 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 6c 61 73 | ype">i32</span>);.....<span.clas |
| 340e0 | 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 |
| 34100 | 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 50 | an.class="tok-builtin">@intFromP |
| 34120 | 74 72 3c 2f 73 70 61 6e 3e 28 73 6c 69 63 65 2e 70 74 72 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | tr</span>(slice.ptr).==.<span.cl |
| 34140 | 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 2f 73 | ass="tok-builtin">@intFromPtr</s |
| 34160 | 70 61 6e 3e 28 26 61 6d 70 3b 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>(&slice[<span.class="tok |
| 34180 | 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e | -number">0</span>]));......<span |
| 341a0 | 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 6c 69 63 65 73 20 68 | .class="tok-comment">//.Slices.h |
| 341c0 | 61 76 65 20 61 72 72 61 79 20 62 6f 75 6e 64 73 20 63 68 65 63 6b 69 6e 67 2e 20 49 66 20 79 6f | ave.array.bounds.checking..If.yo |
| 341e0 | 75 20 74 72 79 20 74 6f 20 61 63 63 65 73 73 20 73 6f 6d 65 74 68 69 6e 67 20 6f 75 74 3c 2f 73 | u.try.to.access.something.out</s |
| 34200 | 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 |
| 34220 | 74 22 3e 2f 2f 20 6f 66 20 62 6f 75 6e 64 73 2c 20 79 6f 75 27 6c 6c 20 67 65 74 20 61 20 73 61 | t">//.of.bounds,.you'll.get.a.sa |
| 34240 | 66 65 74 79 20 63 68 65 63 6b 20 66 61 69 6c 75 72 65 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 | fety.check.failure:</span>.....s |
| 34260 | 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 31 30 | lice[<span.class="tok-number">10 |
| 34280 | 3c 2f 73 70 61 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 | </span>].+=.<span.class="tok-num |
| 342a0 | 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ber">1</span>;......<span.class= |
| 342c0 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 6f 74 65 20 74 68 61 74 20 60 73 6c 69 63 | "tok-comment">//.Note.that.`slic |
| 342e0 | 65 2e 70 74 72 60 20 64 6f 65 73 20 6e 6f 74 20 69 6e 76 6f 6b 65 20 73 61 66 65 74 79 20 63 68 | e.ptr`.does.not.invoke.safety.ch |
| 34300 | 65 63 6b 69 6e 67 2c 20 77 68 69 6c 65 20 60 26 61 6d 70 3b 73 6c 69 63 65 5b 30 5d 60 3c 2f 73 | ecking,.while.`&slice[0]`</s |
| 34320 | 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 |
| 34340 | 74 22 3e 2f 2f 20 61 73 73 65 72 74 73 20 74 68 61 74 20 74 68 65 20 73 6c 69 63 65 20 68 61 73 | t">//.asserts.that.the.slice.has |
| 34360 | 20 6c 65 6e 20 26 67 74 3b 20 30 2e 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | .len.>.0.</span>.}</code></pr |
| 34380 | 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 |
| 343a0 | 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 |
| 343c0 | 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 |
| 343e0 | 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 2f 31 20 74 65 | st_basic_slices.zig</kbd>.1/1.te |
| 34400 | 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 73 6c 69 63 65 | st_basic_slices.test.basic.slice |
| 34420 | 73 2e 2e 2e 74 68 72 65 61 64 20 33 35 37 31 37 32 32 20 70 61 6e 69 63 3a 20 69 6e 64 65 78 20 | s...thread.3571722.panic:.index. |
| 34440 | 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 20 34 0a 3c | out.of.bounds:.index.10,.len.4.< |
| 34460 | 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 73 | span.class="sgr-1m">/home/andy/s |
| 34480 | 72 63 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 63 5f 73 6c | rc/zig/doc/langref/test_basic_sl |
| 344a0 | 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 20 63 6c 61 | ices.zig:41:10</span>:.<span.cla |
| 344c0 | 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 66 39 35 35 20 69 6e 20 74 65 73 74 2e 62 61 | ss="sgr-2m">0x103f955.in.test.ba |
| 344e0 | 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 20 73 6c 69 | sic.slices.(test)</span>.....sli |
| 34500 | 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 63 6c 61 73 | ce[10].+=.1;..........<span.clas |
| 34520 | 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 |
| 34540 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 | ="sgr-1m">/home/andy/src/zig/lib |
| 34560 | 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 31 35 37 3a 32 35 | /compiler/test_runner.zig:157:25 |
| 34580 | 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 |
| 345a0 | 31 30 34 63 38 30 30 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 | 104c800.in.mainTerminal.(test)</ |
| 345c0 | 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 28 29 | span>.........if.(test_fn.func() |
| 345e0 | 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 20 20 | ).|_|.{......................... |
| 34600 | 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>.< |
| 34620 | 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 73 | span.class="sgr-1m">/home/andy/s |
| 34640 | 72 63 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 72 2e | rc/zig/lib/compiler/test_runner. |
| 34660 | 7a 69 67 3a 33 37 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 | zig:37:28</span>:.<span.class="s |
| 34680 | 67 72 2d 32 6d 22 3e 30 78 31 30 34 32 31 30 62 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c | gr-2m">0x104210b.in.main.(test)< |
| 346a0 | 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 69 6e | /span>.........return.mainTermin |
| 346c0 | 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 20 20 | al();........................... |
| 346e0 | 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>. |
| 34700 | 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/ |
| 34720 | 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 | src/zig/lib/std/start.zig:514:22 |
| 34740 | 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 |
| 34760 | 31 30 33 66 65 34 39 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 | 103fe49.in.posixCallMainAndExit. |
| 34780 | 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d | (test)</span>.............root.m |
| 347a0 | 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | ain();......................<spa |
| 347c0 | 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 |
| 347e0 | 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 73 72 63 2f 7a | .class="sgr-1m">/home/andy/src/z |
| 34800 | 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 36 36 3a 35 3c 2f 73 70 61 6e | ig/lib/std/start.zig:266:5</span |
| 34820 | 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 33 66 39 62 | >:.<span.class="sgr-2m">0x103f9b |
| 34840 | 31 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 61 73 | 1.in._start.(test)</span>.....as |
| 34860 | 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 68 29 | m.volatile.(switch.(native_arch) |
| 34880 | 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 3c 2f | .{.....<span.class="sgr-32m">^</ |
| 348a0 | 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 3a 3f | span>.<span.class="sgr-1m">???:? |
| 348c0 | 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 22 3e | :?</span>:.<span.class="sgr-2m"> |
| 348e0 | 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 20 74 | 0x0.in.???.(???)</span>.error:.t |
| 34900 | 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 65 73 74 20 63 6f 6d 6d 61 6e 64 20 63 72 61 73 68 65 | he.following.test.command.crashe |
| 34920 | 64 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 | d:./home/andy/src/zig/.zig-cache |
| 34940 | 2f 6f 2f 33 63 33 39 31 64 37 35 63 39 33 39 63 65 39 38 33 35 36 62 39 38 64 64 38 31 32 35 30 | /o/3c391d75c939ce98356b98dd81250 |
| 34960 | 33 62 31 2f 74 65 73 74 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a | 3b1/test.</samp></pre></figure>. |
| 34980 | 0a 20 20 20 20 20 20 3c 70 3e 54 68 69 73 20 69 73 20 6f 6e 65 20 72 65 61 73 6f 6e 20 77 65 20 | .......<p>This.is.one.reason.we. |
| 349a0 | 70 72 65 66 65 72 20 73 6c 69 63 65 73 20 74 6f 20 70 6f 69 6e 74 65 72 73 2e 3c 2f 70 3e 0a 20 | prefer.slices.to.pointers.</p>.. |
| 349c0 | 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=" |
| 349e0 | 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 |
| 34a00 | 5f 73 6c 69 63 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 | _slices.zig</cite></figcaption>< |
| 34a20 | 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 |
| 34a40 | 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 |
| 34a60 | 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 |
| 34a80 | 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" |
| 34aa0 | 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 |
| 34ac0 | 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 |
| 34ae0 | 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 |
| 34b00 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 73 74 64 2e 6d 65 6d 3b 0a 3c 73 70 61 6e 20 | nst</span>.mem.=.std.mem;.<span. |
| 34b20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 6d 74 20 | class="tok-kw">const</span>.fmt. |
| 34b40 | 3d 20 73 74 64 2e 66 6d 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | =.std.fmt;..<span.class="tok-kw" |
| 34b60 | 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 |
| 34b80 | 72 22 3e 26 71 75 6f 74 3b 75 73 69 6e 67 20 73 6c 69 63 65 73 20 66 6f 72 20 73 74 72 69 6e 67 | r">"using.slices.for.string |
| 34ba0 | 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 |
| 34bc0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 5a 69 67 20 68 61 73 20 6e 6f 20 63 6f 6e | ="tok-comment">//.Zig.has.no.con |
| 34be0 | 63 65 70 74 20 6f 66 20 73 74 72 69 6e 67 73 2e 20 53 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 | cept.of.strings..String.literals |
| 34c00 | 20 61 72 65 20 63 6f 6e 73 74 20 70 6f 69 6e 74 65 72 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | .are.const.pointers</span>.....< |
| 34c20 | 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 6e | span.class="tok-comment">//.to.n |
| 34c40 | 75 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 61 72 72 61 79 73 20 6f 66 20 75 38 2c 20 61 6e 64 | ull-terminated.arrays.of.u8,.and |
| 34c60 | 20 62 79 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 70 61 72 61 6d 65 74 65 72 73 3c 2f 73 70 61 6e 3e | .by.convention.parameters</span> |
| 34c80 | 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">/ |
| 34ca0 | 2f 20 74 68 61 74 20 61 72 65 20 26 71 75 6f 74 3b 73 74 72 69 6e 67 73 26 71 75 6f 74 3b 20 61 | /.that.are."strings".a |
| 34cc0 | 72 65 20 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 20 55 54 46 2d 38 20 65 6e 63 6f 64 65 64 20 | re.expected.to.be.UTF-8.encoded. |
| 34ce0 | 73 6c 69 63 65 73 20 6f 66 20 75 38 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | slices.of.u8.</span>.....<span.c |
| 34d00 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 48 65 72 65 20 77 65 20 63 6f | lass="tok-comment">//.Here.we.co |
| 34d20 | 65 72 63 65 20 2a 63 6f 6e 73 74 20 5b 35 3a 30 5d 75 38 20 61 6e 64 20 2a 63 6f 6e 73 74 20 5b | erce.*const.[5:0]u8.and.*const.[ |
| 34d40 | 36 3a 30 5d 75 38 20 74 6f 20 5b 5d 63 6f 6e 73 74 20 75 38 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | 6:0]u8.to.[]const.u8</span>..... |
| 34d60 | 3c 73 70 61 6e 20 63 6c 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 |
| 34d80 | 3e 20 68 65 6c 6c 6f 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >.hello:.[]<span.class="tok-kw"> |
| 34da0 | 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 |
| 34dc0 | 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 |
| 34de0 | 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 0a | -str">"hello"</span>;. |
| 34e00 | 20 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</ |
| 34e20 | 73 70 61 6e 3e 20 77 6f 72 6c 64 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>.world:.[]<span.class="tok- |
| 34e40 | 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 |
| 34e60 | 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 3d | k-type">u8</span>.=.<span.class= |
| 34e80 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b e4 b8 96 e7 95 8c 26 71 75 6f 74 3b 3c 2f 73 70 | "tok-str">"......"</sp |
| 34ea0 | 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | an>;......<span.class="tok-kw">v |
| 34ec0 | 61 72 3c 2f 73 70 61 6e 3e 20 61 6c 6c 5f 74 6f 67 65 74 68 65 72 3a 20 5b 3c 73 70 61 6e 20 63 | ar</span>.all_together:.[<span.c |
| 34ee0 | 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 73 70 | lass="tok-number">100</span>]<sp |
| 34f00 | 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>.=. |
| 34f20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 | <span.class="tok-null">undefined |
| 34f40 | 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 63 6f | </span>;.....<span.class="tok-co |
| 34f60 | 6d 6d 65 6e 74 22 3e 2f 2f 20 59 6f 75 20 63 61 6e 20 75 73 65 20 73 6c 69 63 65 20 73 79 6e 74 | mment">//.You.can.use.slice.synt |
| 34f80 | 61 78 20 77 69 74 68 20 61 74 20 6c 65 61 73 74 20 6f 6e 65 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f | ax.with.at.least.one.runtime-kno |
| 34fa0 | 77 6e 20 69 6e 64 65 78 20 6f 6e 20 61 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | wn.index.on.an</span>.....<span. |
| 34fc0 | 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 74 6f 20 | class="tok-comment">//.array.to. |
| 34fe0 | 63 6f 6e 76 65 72 74 20 61 6e 20 61 72 72 61 79 20 69 6e 74 6f 20 61 20 73 6c 69 63 65 2e 3c 2f | convert.an.array.into.a.slice.</ |
| 35000 | 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 76 | span>.....<span.class="tok-kw">v |
| 35020 | 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 61 73 73 3d 22 74 6f | ar</span>.start:.<span.class="to |
| 35040 | 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 |
| 35060 | 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 5f 20 | ss="tok-number">0</span>;....._. |
| 35080 | 3d 20 26 61 6d 70 3b 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 | =.&start;.....<span.class="t |
| 350a0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 6c 5f 74 6f 67 65 74 68 65 72 | ok-kw">const</span>.all_together |
| 350c0 | 5f 73 6c 69 63 65 20 3d 20 61 6c 6c 5f 74 6f 67 65 74 68 65 72 5b 73 74 61 72 74 2e 2e 5d 3b 0a | _slice.=.all_together[start..];. |
| 350e0 | 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">// |
| 35100 | 20 53 74 72 69 6e 67 20 63 6f 6e 63 61 74 65 6e 61 74 69 6f 6e 20 65 78 61 6d 70 6c 65 2e 3c 2f | .String.concatenation.example.</ |
| 35120 | 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 |
| 35140 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 65 6c 6c 6f 5f 77 6f 72 6c 64 20 3d 20 3c 73 70 61 6e 20 | onst</span>.hello_world.=.<span. |
| 35160 | 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 6d 74 2e 62 75 | class="tok-kw">try</span>.fmt.bu |
| 35180 | 66 50 72 69 6e 74 28 61 6c 6c 5f 74 6f 67 65 74 68 65 72 5f 73 6c 69 63 65 2c 20 3c 73 70 61 6e | fPrint(all_together_slice,.<span |
| 351a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 73 7d 20 7b 73 7d 26 71 | .class="tok-str">"{s}.{s}&q |
| 351c0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 20 68 65 6c 6c 6f 2c 20 77 6f 72 6c 64 20 7d 29 3b | uot;</span>,..{.hello,.world.}); |
| 351e0 | 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"> |
| 35200 | 2f 2f 20 47 65 6e 65 72 61 6c 6c 79 2c 20 79 6f 75 20 63 61 6e 20 75 73 65 20 55 54 46 2d 38 20 | //.Generally,.you.can.use.UTF-8. |
| 35220 | 61 6e 64 20 6e 6f 74 20 77 6f 72 72 79 20 61 62 6f 75 74 20 77 68 65 74 68 65 72 20 73 6f 6d 65 | and.not.worry.about.whether.some |
| 35240 | 74 68 69 6e 67 20 69 73 20 61 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | thing.is.a</span>.....<span.clas |
| 35260 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 73 74 72 69 6e 67 2e 20 49 66 20 79 6f | s="tok-comment">//.string..If.yo |
| 35280 | 75 20 64 6f 6e 27 74 20 6e 65 65 64 20 74 6f 20 64 65 61 6c 20 77 69 74 68 20 69 6e 64 69 76 69 | u.don't.need.to.deal.with.indivi |
| 352a0 | 64 75 61 6c 20 63 68 61 72 61 63 74 65 72 73 2c 20 6e 6f 20 6e 65 65 64 3c 2f 73 70 61 6e 3e 0a | dual.characters,.no.need</span>. |
| 352c0 | 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">// |
| 352e0 | 20 74 6f 20 64 65 63 6f 64 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | .to.decode.</span>.....<span.cla |
| 35300 | 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 6d 65 | ss="tok-kw">try</span>.expect(me |
| 35320 | 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c | m.eql(<span.class="tok-type">u8< |
| 35340 | 2f 73 70 61 6e 3e 2c 20 68 65 6c 6c 6f 5f 77 6f 72 6c 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | /span>,.hello_world,.<span.class |
| 35360 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 20 e4 b8 96 e7 95 8c 26 71 75 | ="tok-str">"hello.......&qu |
| 35380 | 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ot;</span>));.}..<span.class="to |
| 353a0 | 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 |
| 353c0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 6c 69 63 65 20 70 6f 69 6e 74 65 72 26 71 75 6f 74 | ok-str">"slice.pointer" |
| 353e0 | 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- |
| 35400 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 | kw">var</span>.array:.[<span.cla |
| 35420 | 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 20 | ss="tok-number">10</span>]<span. |
| 35440 | 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 70 | class="tok-type">u8</span>.=.<sp |
| 35460 | 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 |
| 35480 | 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | pan>;.....<span.class="tok-kw">c |
| 354a0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 26 61 6d 70 3b 61 72 72 61 79 3b 0a 20 20 | onst</span>.ptr.=.&array;... |
| 354c0 | 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 |
| 354e0 | 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 |
| 35500 | 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 70 74 72 29 20 3d 3d 20 2a 5b 3c 73 70 61 | n">@TypeOf</span>(ptr).==.*[<spa |
| 35520 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 5d 3c | n.class="tok-number">10</span>]< |
| 35540 | 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>) |
| 35560 | 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" |
| 35580 | 3e 2f 2f 20 41 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 6e 20 61 72 72 61 79 20 63 61 6e 20 62 65 | >//.A.pointer.to.an.array.can.be |
| 355a0 | 20 73 6c 69 63 65 64 20 6a 75 73 74 20 6c 69 6b 65 20 61 6e 20 61 72 72 61 79 3a 3c 2f 73 70 61 | .sliced.just.like.an.array:</spa |
| 355c0 | 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< |
| 355e0 | 2f 73 70 61 6e 3e 20 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 | /span>.start:.<span.class="tok-t |
| 35600 | 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= |
| 35620 | 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 |
| 35640 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 65 6e 64 3a 20 | .class="tok-kw">var</span>.end:. |
| 35660 | 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 |
| 35680 | 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 35 | an>.=.<span.class="tok-number">5 |
| 356a0 | 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 2e 7b 20 26 61 6d 70 3b 73 74 61 72 74 2c 20 | </span>;....._.=..{.&start,. |
| 356c0 | 26 61 6d 70 3b 65 6e 64 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | &end.};.....<span.class="tok |
| 356e0 | 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 70 74 72 5b 73 74 | -kw">const</span>.slice.=.ptr[st |
| 35700 | 61 72 74 2e 2e 65 6e 64 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | art..end];.....<span.class="tok- |
| 35720 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 73 6c 69 63 65 20 69 73 20 6d 75 74 61 62 6c 65 | comment">//.The.slice.is.mutable |
| 35740 | 20 62 65 63 61 75 73 65 20 77 65 20 73 6c 69 63 65 64 20 61 20 6d 75 74 61 62 6c 65 20 70 6f 69 | .because.we.sliced.a.mutable.poi |
| 35760 | 6e 74 65 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | nter.</span>.....<span.class="to |
| 35780 | 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 |
| 357a0 | 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> |
| 357c0 | 28 73 6c 69 63 65 29 20 3d 3d 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | (slice).==.[]<span.class="tok-ty |
| 357e0 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 | pe">u8</span>);.....slice[<span. |
| 35800 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 20 3d 20 3c | class="tok-number">2</span>].=.< |
| 35820 | 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> |
| 35840 | 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</ |
| 35860 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>.expect(array[<span.class=" |
| 35880 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 | tok-number">2</span>].==.<span.c |
| 358a0 | 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 20 20 | lass="tok-number">3</span>);.... |
| 358c0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 | ..<span.class="tok-comment">//.A |
| 358e0 | 67 61 69 6e 2c 20 73 6c 69 63 69 6e 67 20 77 69 74 68 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 | gain,.slicing.with.comptime-know |
| 35900 | 6e 20 69 6e 64 65 78 65 73 20 77 69 6c 6c 20 70 72 6f 64 75 63 65 20 61 6e 6f 74 68 65 72 20 70 | n.indexes.will.produce.another.p |
| 35920 | 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 73 73 3d 22 74 | ointer</span>.....<span.class="t |
| 35940 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 6f 20 61 6e 20 61 72 72 61 79 3a 3c 2f 73 70 61 | ok-comment">//.to.an.array:</spa |
| 35960 | 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | n>.....<span.class="tok-kw">cons |
| 35980 | 74 3c 2f 73 70 61 6e 3e 20 70 74 72 32 20 3d 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 | t</span>.ptr2.=.slice[<span.clas |
| 359a0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 | s="tok-number">2</span>..<span.c |
| 359c0 | 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 3b 0a 20 20 20 | lass="tok-number">3</span>];.... |
| 359e0 | 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> |
| 35a00 | 20 65 78 70 65 63 74 28 70 74 72 32 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .expect(ptr2.len.==.<span.class= |
| 35a20 | 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 70 61 | "tok-number">1</span>);.....<spa |
| 35a40 | 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 |
| 35a60 | 63 74 28 70 74 72 32 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | ct(ptr2[<span.class="tok-number" |
| 35a80 | 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 6e | >0</span>].==.<span.class="tok-n |
| 35aa0 | 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | umber">3</span>);.....<span.clas |
| 35ac0 | 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 |
| 35ae0 | 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</ |
| 35b00 | 73 70 61 6e 3e 28 70 74 72 32 29 20 3d 3d 20 2a 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>(ptr2).==.*[<span.class="to |
| 35b20 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-number">1</span>]<span.class=" |
| 35b40 | 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 63 6f 64 65 3e 3c 2f | tok-type">u8</span>);.}</code></ |
| 35b60 | 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 |
| 35b80 | 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 |
| 35ba0 | 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. |
| 35bc0 | 74 65 73 74 5f 73 6c 69 63 65 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 73 | test_slices.zig</kbd>.1/2.test_s |
| 35be0 | 6c 69 63 65 73 2e 74 65 73 74 2e 75 73 69 6e 67 20 73 6c 69 63 65 73 20 66 6f 72 20 73 74 72 69 | lices.test.using.slices.for.stri |
| 35c00 | 6e 67 73 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 73 6c 69 63 65 73 2e 74 65 73 74 2e 73 6c | ngs...OK.2/2.test_slices.test.sl |
| 35c20 | 69 63 65 20 70 6f 69 6e 74 65 72 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 | ice.pointer...OK.All.2.tests.pas |
| 35c40 | 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>..... |
| 35c60 | 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 |
| 35c80 | 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 3c 2f 6c 69 | ref="#Pointers">Pointers</a></li |
| 35ca0 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 | >.<li><a.href="#for">for</a></li |
| 35cc0 | 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 72 61 79 73 3c 2f | >.<li><a.href="#Arrays">Arrays</ |
| 35ce0 | 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 69 64 3d 22 53 65 | a></li>.</ul>.........<h3.id="Se |
| 35d00 | 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 3c 61 20 68 72 65 | ntinel-Terminated-Slices"><a.hre |
| 35d20 | 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 53 6c 69 63 | f="#toc-Sentinel-Terminated-Slic |
| 35d40 | 65 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 53 6c 69 63 65 73 3c 2f | es">Sentinel-Terminated.Slices</ |
| 35d60 | 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 65 6e 74 69 6e 65 | a>.<a.class="hdr".href="#Sentine |
| 35d80 | 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 53 6c 69 63 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e | l-Terminated-Slices">..</a></h3> |
| 35da0 | 0a 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 | ........<p>.......The.syntax.<co |
| 35dc0 | 64 65 3e 5b 3a 78 5d 54 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 73 6c 69 63 65 20 77 68 69 63 68 | de>[:x]T</code>.is.a.slice.which |
| 35de0 | 20 68 61 73 20 61 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 20 6c 65 6e 67 74 68 0a 20 20 20 20 | .has.a.runtime-known.length..... |
| 35e00 | 20 20 61 6e 64 20 61 6c 73 6f 20 67 75 61 72 61 6e 74 65 65 73 20 61 20 73 65 6e 74 69 6e 65 6c | ..and.also.guarantees.a.sentinel |
| 35e20 | 20 76 61 6c 75 65 20 61 74 20 74 68 65 20 65 6c 65 6d 65 6e 74 20 69 6e 64 65 78 65 64 20 62 79 | .value.at.the.element.indexed.by |
| 35e40 | 20 74 68 65 20 6c 65 6e 67 74 68 2e 20 54 68 65 20 74 79 70 65 20 64 6f 65 73 20 6e 6f 74 0a 20 | .the.length..The.type.does.not.. |
| 35e60 | 20 20 20 20 20 67 75 61 72 61 6e 74 65 65 20 74 68 61 74 20 74 68 65 72 65 20 61 72 65 20 6e 6f | .....guarantee.that.there.are.no |
| 35e80 | 20 73 65 6e 74 69 6e 65 6c 20 65 6c 65 6d 65 6e 74 73 20 62 65 66 6f 72 65 20 74 68 61 74 2e 20 | .sentinel.elements.before.that.. |
| 35ea0 | 53 65 6e 74 69 6e 65 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 6c 69 63 65 73 20 61 6c 6c 6f 77 | Sentinel-terminated.slices.allow |
| 35ec0 | 20 65 6c 65 6d 65 6e 74 0a 20 20 20 20 20 20 61 63 63 65 73 73 20 74 6f 20 74 68 65 20 3c 63 6f | .element.......access.to.the.<co |
| 35ee0 | 64 65 3e 6c 65 6e 3c 2f 63 6f 64 65 3e 20 69 6e 64 65 78 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | de>len</code>.index........</p>. |
| 35f00 | 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= |
| 35f20 | 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 |
| 35f40 | 74 5f 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 73 6c 69 63 65 2e 7a 69 67 3c 2f 63 69 74 | t_null_terminated_slice.zig</cit |
| 35f60 | 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. |
| 35f80 | 63 6c 61 73 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. |
| 35fa0 | 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 |
| 35fc0 | 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" |
| 35fe0 | 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. |
| 36000 | 63 6c 61 73 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 |
| 36020 | 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. |
| 36040 | 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 |
| 36060 | 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 6e 61 | .class="tok-str">"0-termina |
| 36080 | 74 65 64 20 73 6c 69 63 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | ted.slice"</span>.{.....<sp |
| 360a0 | 61 6e 20 63 6c 61 73 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 |
| 360c0 | 6c 69 63 65 3a 20 5b 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | lice:.[:<span.class="tok-number" |
| 360e0 | 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 63 | >0</span>]<span.class="tok-kw">c |
| 36100 | 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 |
| 36120 | 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- |
| 36140 | 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 0a | str">"hello"</span>;.. |
| 36160 | 20 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 |
| 36180 | 61 6e 3e 20 65 78 70 65 63 74 28 73 6c 69 63 65 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | an>.expect(slice.len.==.<span.cl |
| 361a0 | 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 20 20 20 20 | ass="tok-number">5</span>);..... |
| 361c0 | 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>. |
| 361e0 | 65 78 70 65 63 74 28 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | expect(slice[<span.class="tok-nu |
| 36200 | 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | mber">5</span>].==.<span.class=" |
| 36220 | 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 64 65 3e 3c | tok-number">0</span>);.}</code>< |
| 36240 | 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 |
| 36260 | 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 |
| 36280 | 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 |
| 362a0 | 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 65 2e 7a 69 67 3c | .test_null_terminated_slice.zig< |
| 362c0 | 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 74 65 64 5f 73 | /kbd>.1/1.test_null_terminated_s |
| 362e0 | 6c 69 63 65 2e 74 65 73 74 2e 30 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 6c 69 63 65 2e 2e 2e 4f | lice.test.0-terminated.slice...O |
| 36300 | 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 |
| 36320 | 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 53 65 | re></figure>........<p>.......Se |
| 36340 | 6e 74 69 6e 65 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 6c 69 63 65 73 20 63 61 6e 20 61 6c 73 | ntinel-terminated.slices.can.als |
| 36360 | 6f 20 62 65 20 63 72 65 61 74 65 64 20 75 73 69 6e 67 20 61 20 76 61 72 69 61 74 69 6f 6e 20 6f | o.be.created.using.a.variation.o |
| 36380 | 66 20 74 68 65 20 73 6c 69 63 65 20 73 79 6e 74 61 78 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 64 | f.the.slice.syntax.......<code>d |
| 363a0 | 61 74 61 5b 73 74 61 72 74 2e 2e 65 6e 64 20 3a 78 5d 3c 2f 63 6f 64 65 3e 2c 20 77 68 65 72 65 | ata[start..end.:x]</code>,.where |
| 363c0 | 20 3c 63 6f 64 65 3e 64 61 74 61 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 6d 61 6e 79 2d 69 74 65 | .<code>data</code>.is.a.many-ite |
| 363e0 | 6d 20 70 6f 69 6e 74 65 72 2c 0a 20 20 20 20 20 20 61 72 72 61 79 20 6f 72 20 73 6c 69 63 65 20 | m.pointer,.......array.or.slice. |
| 36400 | 61 6e 64 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 74 68 65 20 73 65 6e 74 69 6e | and.<code>x</code>.is.the.sentin |
| 36420 | 65 6c 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 66 69 67 75 | el.value........</p>.......<figu |
| 36440 | 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">< |
| 36460 | 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 6d | cite.class="file">test_null_term |
| 36480 | 69 6e 61 74 65 64 5f 73 6c 69 63 69 6e 67 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | inated_slicing.zig</cite></figca |
| 364a0 | 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 |
| 364c0 | 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 |
| 364e0 | 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 |
| 36500 | 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 |
| 36520 | 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 |
| 36540 | 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. |
| 36560 | 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 |
| 36580 | 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 |
| 365a0 | 6f 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 69 | ok-str">"0-terminated.slici |
| 365c0 | 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ng"</span>.{.....<span.clas |
| 365e0 | 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 5f | s="tok-kw">var</span>.array.=.[_ |
| 36600 | 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 |
| 36620 | 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 33 3c 2f 73 | >{.<span.class="tok-number">3</s |
| 36640 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 | pan>,.<span.class="tok-number">2 |
| 36660 | 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 |
| 36680 | 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 |
| 366a0 | 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 6f 6b 2d | ber">0</span>,.<span.class="tok- |
| 366c0 | 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 |
| 366e0 | 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 |
| 36700 | 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 6c | ="tok-number">1</span>,.<span.cl |
| 36720 | 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 3b 0a 20 20 20 | ass="tok-number">0</span>.};.... |
| 36740 | 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> |
| 36760 | 20 72 75 6e 74 69 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 | .runtime_length:.<span.class="to |
| 36780 | 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 |
| 367a0 | 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 5f 20 | ss="tok-number">3</span>;....._. |
| 367c0 | 3d 20 26 61 6d 70 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 | =.&runtime_length;.....<span |
| 367e0 | 20 63 6c 61 73 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 |
| 36800 | 63 65 20 3d 20 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 | ce.=.array[<span.class="tok-numb |
| 36820 | 65 72 22 3e 30 3c 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 | er">0</span>..runtime_length.:<s |
| 36840 | 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>] |
| 36860 | 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c | ;......<span.class="tok-kw">try< |
| 36880 | 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 |
| 368a0 | 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).== |
| 368c0 | 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 22 3e 30 3c 2f 73 | .[:<span.class="tok-number">0</s |
| 368e0 | 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</ |
| 36900 | 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" |
| 36920 | 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 3d 20 | >try</span>.expect(slice.len.==. |
| 36940 | 3c 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 |
| 36960 | 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 |
| 36980 | 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" |
| 369a0 | 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>$. |
| 369c0 | 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 | <kbd>zig.test.test_null_terminat |
| 369e0 | 65 64 5f 73 6c 69 63 69 6e 67 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 6e 75 | ed_slicing.zig</kbd>.1/1.test_nu |
| 36a00 | 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 73 6c 69 63 69 6e 67 2e 74 65 73 74 2e 30 2d 74 65 72 | ll_terminated_slicing.test.0-ter |
| 36a20 | 6d 69 6e 61 74 65 64 20 73 6c 69 63 69 6e 67 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 | minated.slicing...OK.All.1.tests |
| 36a40 | 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>. |
| 36a60 | 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 6d 69 6e | .......<p>.......Sentinel-termin |
| 36a80 | 61 74 65 64 20 73 6c 69 63 69 6e 67 20 61 73 73 65 72 74 73 20 74 68 61 74 20 74 68 65 20 65 6c | ated.slicing.asserts.that.the.el |
| 36aa0 | 65 6d 65 6e 74 20 69 6e 20 74 68 65 20 73 65 6e 74 69 6e 65 6c 20 70 6f 73 69 74 69 6f 6e 20 6f | ement.in.the.sentinel.position.o |
| 36ac0 | 66 20 74 68 65 20 62 61 63 6b 69 6e 67 20 64 61 74 61 20 69 73 0a 20 20 20 20 20 20 61 63 74 75 | f.the.backing.data.is.......actu |
| 36ae0 | 61 6c 6c 79 20 74 68 65 20 73 65 6e 74 69 6e 65 6c 20 76 61 6c 75 65 2e 20 49 66 20 74 68 69 73 | ally.the.sentinel.value..If.this |
| 36b00 | 20 69 73 20 6e 6f 74 20 74 68 65 20 63 61 73 65 2c 20 73 61 66 65 74 79 2d 70 72 6f 74 65 63 74 | .is.not.the.case,.safety-protect |
| 36b20 | 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 | ed.<a.href="#Undefined-Behavior" |
| 36b40 | 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 20 72 65 73 75 6c 74 73 2e | >Undefined.Behavior</a>.results. |
| 36b60 | 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 |
| 36b80 | 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 |
| 36ba0 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 65 6e 74 69 6e 65 6c 5f 6d 69 73 6d 61 74 63 68 2e | s="file">test_sentinel_mismatch. |
| 36bc0 | 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 |
| 36be0 | 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 |
| 36c00 | 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 |
| 36c20 | 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=" |
| 36c40 | 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>) |
| 36c60 | 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 |
| 36c80 | 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; |
| 36ca0 | 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 |
| 36cc0 | 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 |
| 36ce0 | 65 6e 74 69 6e 65 6c 20 6d 69 73 6d 61 74 63 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | entinel.mismatch"</span>.{. |
| 36d00 | 20 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 |
| 36d20 | 61 6e 3e 20 61 72 72 61 79 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | an>.array.=.[_]<span.class="tok- |
| 36d40 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | type">u8</span>{.<span.class="to |
| 36d60 | 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 3d | k-number">3</span>,.<span.class= |
| 36d80 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | "tok-number">2</span>,.<span.cla |
| 36da0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ss="tok-number">1</span>,.<span. |
| 36dc0 | 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 3b 0a 0a | class="tok-number">0</span>.};.. |
| 36de0 | 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">// |
| 36e00 | 20 43 72 65 61 74 69 6e 67 20 61 20 73 65 6e 74 69 6e 65 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 | .Creating.a.sentinel-terminated. |
| 36e20 | 73 6c 69 63 65 20 66 72 6f 6d 20 74 68 65 20 61 72 72 61 79 20 77 69 74 68 20 61 20 6c 65 6e 67 | slice.from.the.array.with.a.leng |
| 36e40 | 74 68 20 6f 66 20 32 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 | th.of.2</span>.....<span.class=" |
| 36e60 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 77 69 6c 6c 20 72 65 73 75 6c 74 20 69 6e 20 74 | tok-comment">//.will.result.in.t |
| 36e80 | 68 65 20 76 61 6c 75 65 20 60 31 60 20 6f 63 63 75 70 79 69 6e 67 20 74 68 65 20 73 65 6e 74 69 | he.value.`1`.occupying.the.senti |
| 36ea0 | 6e 65 6c 20 65 6c 65 6d 65 6e 74 20 70 6f 73 69 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | nel.element.position.</span>.... |
| 36ec0 | 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 |
| 36ee0 | 69 73 20 64 6f 65 73 20 6e 6f 74 20 6d 61 74 63 68 20 74 68 65 20 69 6e 64 69 63 61 74 65 64 20 | is.does.not.match.the.indicated. |
| 36f00 | 73 65 6e 74 69 6e 65 6c 20 76 61 6c 75 65 20 6f 66 20 60 30 60 20 61 6e 64 20 77 69 6c 6c 20 6c | sentinel.value.of.`0`.and.will.l |
| 36f20 | 65 61 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ead</span>.....<span.class="tok- |
| 36f40 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 6f 20 61 20 72 75 6e 74 69 6d 65 20 70 61 6e 69 63 2e 3c | comment">//.to.a.runtime.panic.< |
| 36f60 | 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"> |
| 36f80 | 76 61 72 3c 2f 73 70 61 6e 3e 20 72 75 6e 74 69 6d 65 5f 6c 65 6e 67 74 68 3a 20 3c 73 70 61 6e | var</span>.runtime_length:.<span |
| 36fa0 | 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 3d | .class="tok-type">usize</span>.= |
| 36fc0 | 20 3c 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 |
| 36fe0 | 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 72 75 6e 74 69 6d 65 5f 6c 65 6e 67 74 68 3b | n>;....._.=.&runtime_length; |
| 37000 | 0a 20 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< |
| 37020 | 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 | /span>.slice.=.array[<span.class |
| 37040 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 72 75 6e 74 69 6d 65 5f | ="tok-number">0</span>..runtime_ |
| 37060 | 6c 65 6e 67 74 68 20 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 | length.:<span.class="tok-number" |
| 37080 | 3e 30 3c 2f 73 70 61 6e 3e 5d 3b 0a 0a 20 20 20 20 5f 20 3d 20 73 6c 69 63 65 3b 0a 7d 3c 2f 63 | >0</span>];......_.=.slice;.}</c |
| 370a0 | 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 |
| 370c0 | 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</ |
| 370e0 | 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 |
| 37100 | 20 74 65 73 74 20 74 65 73 74 5f 73 65 6e 74 69 6e 65 6c 5f 6d 69 73 6d 61 74 63 68 2e 7a 69 67 | .test.test_sentinel_mismatch.zig |
| 37120 | 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 65 6e 74 69 6e 65 6c 5f 6d 69 73 6d 61 74 63 | </kbd>.1/1.test_sentinel_mismatc |
| 37140 | 68 2e 74 65 73 74 2e 73 65 6e 74 69 6e 65 6c 20 6d 69 73 6d 61 74 63 68 2e 2e 2e 74 68 72 65 61 | h.test.sentinel.mismatch...threa |
| 37160 | 64 20 33 35 37 39 38 30 37 20 70 61 6e 69 63 3a 20 73 65 6e 74 69 6e 65 6c 20 6d 69 73 6d 61 74 | d.3579807.panic:.sentinel.mismat |
| 37180 | 63 68 3a 20 65 78 70 65 63 74 65 64 20 30 2c 20 66 6f 75 6e 64 20 31 0a 3c 73 70 61 6e 20 63 6c | ch:.expected.0,.found.1.<span.cl |
| 371a0 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f | ass="sgr-1m">/home/andy/src/zig/ |
| 371c0 | 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 73 65 6e 74 69 6e 65 6c 5f 6d 69 73 6d 61 74 | doc/langref/test_sentinel_mismat |
| 371e0 | 63 68 2e 7a 69 67 3a 31 33 3a 32 34 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ch.zig:13:24</span>:.<span.class |
| 37200 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 63 66 31 36 20 69 6e 20 74 65 73 74 2e 73 65 6e 74 | ="sgr-2m">0x103cf16.in.test.sent |
| 37220 | 69 6e 65 6c 20 6d 69 73 6d 61 74 63 68 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | inel.mismatch.(test)</span>..... |
| 37240 | 63 6f 6e 73 74 20 73 6c 69 63 65 20 3d 20 61 72 72 61 79 5b 30 2e 2e 72 75 6e 74 69 6d 65 5f 6c | const.slice.=.array[0..runtime_l |
| 37260 | 65 6e 67 74 68 20 3a 30 5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ength.:0];...................... |
| 37280 | 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> |
| 372a0 | 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 |
| 372c0 | 2f 73 72 63 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 | /src/zig/lib/compiler/test_runne |
| 372e0 | 72 2e 7a 69 67 3a 31 35 37 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:157:25</span>:.<span.class |
| 37300 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 38 61 61 30 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 | ="sgr-2m">0x1048aa0.in.mainTermi |
| 37320 | 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 |
| 37340 | 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()).|_|.{............. |
| 37360 | 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 |
| 37380 | 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"> |
| 373a0 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f | /home/andy/src/zig/lib/compiler/ |
| 373c0 | 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 33 37 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | test_runner.zig:37:28</span>:.<s |
| 373e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 65 61 62 62 20 69 6e 20 | pan.class="sgr-2m">0x103eabb.in. |
| 37400 | 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 |
| 37420 | 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();............... |
| 37440 | 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 |
| 37460 | 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" |
| 37480 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 | >/home/andy/src/zig/lib/std/star |
| 374a0 | 74 2e 7a 69 67 3a 35 31 34 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:514:22</span>:.<span.class |
| 374c0 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 64 34 66 39 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c | ="sgr-2m">0x103d4f9.in.posixCall |
| 374e0 | 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>....... |
| 37500 | 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();.............. |
| 37520 | 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">^< |
| 37540 | 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 |
| 37560 | 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 | e/andy/src/zig/lib/std/start.zig |
| 37580 | 3a 32 36 36 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 | :266:5</span>:.<span.class="sgr- |
| 375a0 | 32 6d 22 3e 30 78 31 30 33 64 30 36 31 20 69 6e 20 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f | 2m">0x103d061.in._start.(test)</ |
| 375c0 | 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.( |
| 375e0 | 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=" |
| 37600 | 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 |
| 37620 | 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 |
| 37640 | 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 |
| 37660 | 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 |
| 37680 | 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 73 72 63 2f 7a 69 | mmand.crashed:./home/andy/src/zi |
| 376a0 | 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 32 61 66 38 64 61 30 64 33 34 64 33 39 36 66 62 62 | g/.zig-cache/o/2af8da0d34d396fbb |
| 376c0 | 35 30 66 61 35 31 35 63 65 66 31 30 63 37 32 2f 74 65 73 74 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 | 50fa515cef10c72/test.</samp></pr |
| 376e0 | 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:< |
| 37700 | 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 | /p><ul>.<li><a.href="#Sentinel-T |
| 37720 | 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 | erminated-Pointers">Sentinel-Ter |
| 37740 | 6d 69 6e 61 74 65 64 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 | minated.Pointers</a></li>.<li><a |
| 37760 | 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 61 | .href="#Sentinel-Terminated-Arra |
| 37780 | 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 2f | ys">Sentinel-Terminated.Arrays</ |
| 377a0 | 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 | a></li>.</ul>................... |
| 377c0 | 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 6f | ....<h2.id="struct"><a.href="#to |
| 377e0 | 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 68 | c-struct">struct</a>.<a.class="h |
| 37800 | 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 0a | dr".href="#struct">..</a></h2>.. |
| 37820 | 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= |
| 37840 | 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 |
| 37860 | 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 6e | t_structs.zig</cite></figcaption |
| 37880 | 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 6d | ><pre><code><span.class="tok-com |
| 378a0 | 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 6e | ment">//.Declare.a.struct.</span |
| 378c0 | 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 5a | >.<span.class="tok-comment">//.Z |
| 378e0 | 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 65 | ig.gives.no.guarantees.about.the |
| 37900 | 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 66 | .order.of.fields.and.the.size.of |
| 37920 | 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 |
| 37940 | 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 61 | ">//.the.struct.but.the.fields.a |
| 37960 | 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 2e | re.guaranteed.to.be.ABI-aligned. |
| 37980 | 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 6e | </span>.<span.class="tok-kw">con |
| 379a0 | 73 74 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | st</span>.Point.=.<span.class="t |
| 379c0 | 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 73 | ok-kw">struct</span>.{.....x:.<s |
| 379e0 | 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>, |
| 37a00 | 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 66 | .....y:.<span.class="tok-type">f |
| 37a20 | 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 2d | 32</span>,.};..<span.class="tok- |
| 37a40 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4d 61 79 62 65 20 77 65 20 77 61 6e 74 20 74 6f 20 70 61 73 | comment">//.Maybe.we.want.to.pas |
| 37a60 | 73 20 69 74 20 74 6f 20 4f 70 65 6e 47 4c 20 73 6f 20 77 65 20 77 61 6e 74 20 74 6f 20 62 65 20 | s.it.to.OpenGL.so.we.want.to.be. |
| 37a80 | 70 61 72 74 69 63 75 6c 61 72 20 61 62 6f 75 74 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | particular.about</span>.<span.cl |
| 37aa0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 68 6f 77 20 74 68 65 20 62 79 74 | ass="tok-comment">//.how.the.byt |
| 37ac0 | 65 73 20 61 72 65 20 61 72 72 61 6e 67 65 64 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | es.are.arranged.</span>.<span.cl |
| 37ae0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 32 | ass="tok-kw">const</span>.Point2 |
| 37b00 | 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</ |
| 37b20 | 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 |
| 37b40 | 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | t</span>.{.....x:.<span.class="t |
| 37b60 | 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 79 3a 20 3c 73 70 61 | ok-type">f32</span>,.....y:.<spa |
| 37b80 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d | n.class="tok-type">f32</span>,.} |
| 37ba0 | 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | ;..<span.class="tok-comment">//. |
| 37bc0 | 44 65 63 6c 61 72 65 20 61 6e 20 69 6e 73 74 61 6e 63 65 20 6f 66 20 61 20 73 74 72 75 63 74 2e | Declare.an.instance.of.a.struct. |
| 37be0 | 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 6e | </span>.<span.class="tok-kw">con |
| 37c00 | 73 74 3c 2f 73 70 61 6e 3e 20 70 20 3d 20 50 6f 69 6e 74 7b 0a 20 20 20 20 2e 78 20 3d 20 3c 73 | st</span>.p.=.Point{......x.=.<s |
| 37c20 | 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 3c 2f 73 70 61 | pan.class="tok-number">0.12</spa |
| 37c40 | 6e 3e 2c 0a 20 20 20 20 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | n>,......y.=.<span.class="tok-nu |
| 37c60 | 6d 62 65 72 22 3e 30 2e 33 34 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | mber">0.34</span>,.};..<span.cla |
| 37c80 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4d 61 79 62 65 20 77 65 27 72 65 20 | ss="tok-comment">//.Maybe.we're. |
| 37ca0 | 6e 6f 74 20 72 65 61 64 79 20 74 6f 20 66 69 6c 6c 20 6f 75 74 20 73 6f 6d 65 20 6f 66 20 74 68 | not.ready.to.fill.out.some.of.th |
| 37cc0 | 65 20 66 69 65 6c 64 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | e.fields.</span>.<span.class="to |
| 37ce0 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 32 20 3d 20 50 6f 69 6e 74 7b 0a 20 20 20 | k-kw">var</span>.p2.=.Point{.... |
| 37d00 | 20 2e 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | ..x.=.<span.class="tok-number">0 |
| 37d20 | 2e 31 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .12</span>,......y.=.<span.class |
| 37d40 | 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 2c 0a 7d 3b | ="tok-null">undefined</span>,.}; |
| 37d60 | 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 |
| 37d80 | 74 72 75 63 74 73 20 63 61 6e 20 68 61 76 65 20 6d 65 74 68 6f 64 73 3c 2f 73 70 61 6e 3e 0a 3c | tructs.can.have.methods</span>.< |
| 37da0 | 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 75 | span.class="tok-comment">//.Stru |
| 37dc0 | 63 74 20 6d 65 74 68 6f 64 73 20 61 72 65 20 6e 6f 74 20 73 70 65 63 69 61 6c 2c 20 74 68 65 79 | ct.methods.are.not.special,.they |
| 37de0 | 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 3e 0a 3c 73 70 61 | .are.only.namespaced</span>.<spa |
| 37e00 | 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 75 6e 63 74 69 6f | n.class="tok-comment">//.functio |
| 37e20 | 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 64 6f 74 20 73 79 | ns.that.you.can.call.with.dot.sy |
| 37e40 | 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 77 | ntax.</span>.<span.class="tok-kw |
| 37e60 | 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 73 | ">const</span>.Vec3.=.<span.clas |
| 37e80 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 78 | s="tok-kw">struct</span>.{.....x |
| 37ea0 | 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 |
| 37ec0 | 61 6e 3e 2c 0a 20 20 20 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | an>,.....y:.<span.class="tok-typ |
| 37ee0 | 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 73 | e">f32</span>,.....z:.<span.clas |
| 37f00 | 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 73 | s="tok-type">f32</span>,......<s |
| 37f20 | 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 |
| 37f40 | 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 |
| 37f60 | 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 3a | an.class="tok-fn">init</span>(x: |
| 37f80 | 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 61 | .<span.class="tok-type">f32</spa |
| 37fa0 | 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 33 | n>,.y:.<span.class="tok-type">f3 |
| 37fc0 | 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 79 | 2</span>,.z:.<span.class="tok-ty |
| 37fe0 | 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 3c | pe">f32</span>).Vec3.{.........< |
| 38000 | 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 |
| 38020 | 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 20 | >.Vec3{..............x.=.x,..... |
| 38040 | 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 3d | .........y.=.y,..............z.= |
| 38060 | 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 20 | .z,.........};.....}......<span. |
| 38080 | 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. |
| 380a0 | 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 |
| 380c0 | 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 56 | lass="tok-fn">dot</span>(self:.V |
| 380e0 | 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 74 | ec3,.other:.Vec3).<span.class="t |
| 38100 | 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 73 | ok-type">f32</span>.{.........<s |
| 38120 | 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> |
| 38140 | 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 68 | .self.x.*.other.x.+.self.y.*.oth |
| 38160 | 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 7d | er.y.+.self.z.*.other.z;.....}.} |
| 38180 | 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 |
| 381a0 | 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | pan>.expect.=.<span.class="tok-b |
| 381c0 | 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 |
| 381e0 | 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 |
| 38200 | 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 61 73 73 | an>).testing.expect;.<span.class |
| 38220 | 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 |
| 38240 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 6f 74 20 70 72 6f 64 75 63 74 26 71 75 | s="tok-str">"dot.product&qu |
| 38260 | 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 |
| 38280 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 31 20 3d 20 56 65 63 33 2e 69 6e 69 | k-kw">const</span>.v1.=.Vec3.ini |
| 382a0 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 30 3c 2f | t(<span.class="tok-number">1.0</ |
| 382c0 | 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"> |
| 382e0 | 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 75 6d | 0.0</span>,.<span.class="tok-num |
| 38300 | 62 65 72 22 3e 30 2e 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 | ber">0.0</span>);.....<span.clas |
| 38320 | 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 32 20 3d 20 56 65 63 | s="tok-kw">const</span>.v2.=.Vec |
| 38340 | 33 2e 69 6e 69 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | 3.init(<span.class="tok-number"> |
| 38360 | 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 75 6d | 0.0</span>,.<span.class="tok-num |
| 38380 | 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 73 3d 22 74 6f | ber">1.0</span>,.<span.class="to |
| 383a0 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e | k-number">0.0</span>);.....<span |
| 383c0 | 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 |
| 383e0 | 74 28 76 31 2e 64 6f 74 28 76 32 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | t(v1.dot(v2).==.<span.class="tok |
| 38400 | 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e | -number">0.0</span>);......<span |
| 38420 | 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 74 68 65 72 20 74 68 | .class="tok-comment">//.Other.th |
| 38440 | 61 6e 20 62 65 69 6e 67 20 61 76 61 69 6c 61 62 6c 65 20 74 6f 20 63 61 6c 6c 20 77 69 74 68 20 | an.being.available.to.call.with. |
| 38460 | 64 6f 74 20 73 79 6e 74 61 78 2c 20 73 74 72 75 63 74 20 6d 65 74 68 6f 64 73 20 61 72 65 3c 2f | dot.syntax,.struct.methods.are</ |
| 38480 | 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 |
| 384a0 | 6e 74 22 3e 2f 2f 20 6e 6f 74 20 73 70 65 63 69 61 6c 2e 20 59 6f 75 20 63 61 6e 20 72 65 66 65 | nt">//.not.special..You.can.refe |
| 384c0 | 72 65 6e 63 65 20 74 68 65 6d 20 61 73 20 61 6e 79 20 6f 74 68 65 72 20 64 65 63 6c 61 72 61 74 | rence.them.as.any.other.declarat |
| 384e0 | 69 6f 6e 20 69 6e 73 69 64 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ion.inside</span>.....<span.clas |
| 38500 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 73 74 72 75 63 74 3a 3c 2f | s="tok-comment">//.the.struct:</ |
| 38520 | 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 74 | span>.....<span.class="tok-kw">t |
| 38540 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 56 65 63 33 2e 64 6f 74 28 76 31 2c 20 76 32 | ry</span>.expect(Vec3.dot(v1,.v2 |
| 38560 | 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 2e | ).==.<span.class="tok-number">0. |
| 38580 | 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | 0</span>);.}..<span.class="tok-c |
| 385a0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 72 75 63 74 73 20 63 61 6e 20 68 61 76 65 20 64 65 63 6c | omment">//.Structs.can.have.decl |
| 385c0 | 61 72 61 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 74 6f | arations.</span>.<span.class="to |
| 385e0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 72 75 63 74 73 20 63 61 6e 20 68 61 76 65 20 30 | k-comment">//.Structs.can.have.0 |
| 38600 | 20 66 69 65 6c 64 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .fields.</span>.<span.class="tok |
| 38620 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 45 6d 70 74 79 20 3d 20 3c 73 70 61 6e 20 | -kw">const</span>.Empty.=.<span. |
| 38640 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | class="tok-kw">struct</span>.{.. |
| 38660 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 | ...<span.class="tok-kw">pub</spa |
| 38680 | 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 |
| 386a0 | 70 61 6e 3e 20 50 49 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 | pan>.PI.=.<span.class="tok-numbe |
| 386c0 | 72 22 3e 33 2e 31 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | r">3.14</span>;.};.<span.class=" |
| 386e0 | 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= |
| 38700 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 72 75 63 74 20 6e 61 6d 65 73 70 61 63 65 | "tok-str">"struct.namespace |
| 38720 | 64 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 20 20 3c 73 | d.variable"</span>.{.....<s |
| 38740 | 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 |
| 38760 | 70 65 63 74 28 45 6d 70 74 79 2e 50 49 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pect(Empty.PI.==.<span.class="to |
| 38780 | 6b 2d 6e 75 6d 62 65 72 22 3e 33 2e 31 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 | k-number">3.14</span>);.....<spa |
| 387a0 | 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 |
| 387c0 | 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 73 69 | ct(<span.class="tok-builtin">@si |
| 387e0 | 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 45 6d 70 74 79 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | zeOf</span>(Empty).==.<span.clas |
| 38800 | 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 20 20 20 20 3c | s="tok-number">0</span>);......< |
| 38820 | 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 79 6f 75 20 | span.class="tok-comment">//.you. |
| 38840 | 63 61 6e 20 73 74 69 6c 6c 20 69 6e 73 74 61 6e 74 69 61 74 65 20 61 6e 20 65 6d 70 74 79 20 73 | can.still.instantiate.an.empty.s |
| 38860 | 74 72 75 63 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | truct</span>.....<span.class="to |
| 38880 | 6b 2d 6b 77 22 3e 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 20 | k-kw">const</span>.does_nothing. |
| 388a0 | 3d 20 45 6d 70 74 79 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 | =.Empty{};......_.=.does_nothing |
| 388c0 | 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f | ;.}..<span.class="tok-comment">/ |
| 388e0 | 2f 20 73 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 | /.struct.field.order.is.determin |
| 38900 | 65 64 20 62 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 66 6f 72 20 6f 70 74 69 6d 61 6c 20 70 | ed.by.the.compiler.for.optimal.p |
| 38920 | 65 72 66 6f 72 6d 61 6e 63 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | erformance.</span>.<span.class=" |
| 38940 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 68 6f 77 65 76 65 72 2c 20 79 6f 75 20 63 61 6e | tok-comment">//.however,.you.can |
| 38960 | 20 73 74 69 6c 6c 20 63 61 6c 63 75 6c 61 74 65 20 61 20 73 74 72 75 63 74 20 62 61 73 65 20 70 | .still.calculate.a.struct.base.p |
| 38980 | 6f 69 6e 74 65 72 20 67 69 76 65 6e 20 61 20 66 69 65 6c 64 20 70 6f 69 6e 74 65 72 3a 3c 2f 73 | ointer.given.a.field.pointer:</s |
| 389a0 | 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 |
| 389c0 | 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 65 74 59 42 61 73 | an>.<span.class="tok-fn">setYBas |
| 389e0 | 65 64 4f 6e 58 3c 2f 73 70 61 6e 3e 28 78 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | edOnX</span>(x:.*<span.class="to |
| 38a00 | 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 | k-type">f32</span>,.y:.<span.cla |
| 38a20 | 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 3c 73 70 61 6e 20 | ss="tok-type">f32</span>).<span. |
| 38a40 | 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>.{.. |
| 38a60 | 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 |
| 38a80 | 70 61 6e 3e 20 70 6f 69 6e 74 3a 20 2a 50 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | pan>.point:.*Point.=.<span.class |
| 38aa0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 3c 2f | ="tok-builtin">@fieldParentPtr</ |
| 38ac0 | 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 |
| 38ae0 | 74 3b 78 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 78 29 3b 0a 20 20 20 20 70 6f 69 6e 74 2e | t;x"</span>,.x);.....point. |
| 38b00 | 79 20 3d 20 79 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 | y.=.y;.}.<span.class="tok-kw">te |
| 38b20 | 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"> |
| 38b40 | 26 71 75 6f 74 3b 66 69 65 6c 64 20 70 61 72 65 6e 74 20 70 6f 69 6e 74 65 72 26 71 75 6f 74 3b | "field.parent.pointer" |
| 38b60 | 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 |
| 38b80 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 6f 69 6e 74 20 3d 20 50 6f 69 6e 74 7b 0a 20 20 20 | w">var</span>.point.=.Point{.... |
| 38ba0 | 20 20 20 20 20 2e 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ......x.=.<span.class="tok-numbe |
| 38bc0 | 72 22 3e 30 2e 31 32 33 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 79 20 3d 20 3c | r">0.1234</span>,..........y.=.< |
| 38be0 | 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 35 36 37 38 3c 2f | span.class="tok-number">0.5678</ |
| 38c00 | 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 73 65 74 59 42 61 73 65 64 4f 6e 58 28 26 | span>,.....};.....setYBasedOnX(& |
| 38c20 | 61 6d 70 3b 70 6f 69 6e 74 2e 78 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | amp;point.x,.<span.class="tok-nu |
| 38c40 | 6d 62 65 72 22 3e 30 2e 39 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | mber">0.9</span>);.....<span.cla |
| 38c60 | 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 6f | ss="tok-kw">try</span>.expect(po |
| 38c80 | 69 6e 74 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 | int.y.==.<span.class="tok-number |
| 38ca0 | 22 3e 30 2e 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 | ">0.9</span>);.}..<span.class="t |
| 38cc0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 59 6f 75 20 63 61 6e 20 72 65 74 75 72 6e 20 61 20 | ok-comment">//.You.can.return.a. |
| 38ce0 | 73 74 72 75 63 74 20 66 72 6f 6d 20 61 20 66 75 6e 63 74 69 6f 6e 2e 20 54 68 69 73 20 69 73 20 | struct.from.a.function..This.is. |
| 38d00 | 68 6f 77 20 77 65 20 64 6f 20 67 65 6e 65 72 69 63 73 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | how.we.do.generics</span>.<span. |
| 38d20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6e 20 5a 69 67 3a 3c 2f | class="tok-comment">//.in.Zig:</ |
| 38d40 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 | span>.<span.class="tok-kw">fn</s |
| 38d60 | 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 6e 6b 65 64 | pan>.<span.class="tok-fn">Linked |
| 38d80 | 4c 69 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 | List</span>(<span.class="tok-kw" |
| 38da0 | 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= |
| 38dc0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | "tok-type">type</span>).<span.cl |
| 38de0 | 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 20 | ass="tok-type">type</span>.{.... |
| 38e00 | 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 |
| 38e20 | 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 74 3c | an>.<span.class="tok-kw">struct< |
| 38e40 | 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 |
| 38e60 | 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 |
| 38e80 | 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 6e 20 | k-kw">const</span>.Node.=.<span. |
| 38ea0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | class="tok-kw">struct</span>.{.. |
| 38ec0 | 20 20 20 20 20 20 20 20 20 20 20 70 72 65 76 3a 20 3f 2a 4e 6f 64 65 2c 0a 20 20 20 20 20 20 20 | ...........prev:.?*Node,........ |
| 38ee0 | 20 20 20 20 20 6e 65 78 74 3a 20 3f 2a 4e 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 64 | .....next:.?*Node,.............d |
| 38f00 | 61 74 61 3a 20 54 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a 0a 20 20 20 20 20 20 20 20 66 69 72 73 | ata:.T,.........};..........firs |
| 38f20 | 74 3a 20 3f 2a 4e 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 6c 61 73 74 3a 20 3f 2a 4e 6f 64 65 2c | t:.?*Node,.........last:.?*Node, |
| 38f40 | 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 6f 6b 2d 74 | .........len:.<span.class="tok-t |
| 38f60 | 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 0a 3c 73 70 | ype">usize</span>,.....};.}..<sp |
| 38f80 | 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 |
| 38fa0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6c 69 6e 6b 65 64 | pan.class="tok-str">"linked |
| 38fc0 | 20 6c 69 73 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 | .list"</span>.{.....<span.c |
| 38fe0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 75 6e 63 74 69 6f 6e 73 20 | lass="tok-comment">//.Functions. |
| 39000 | 63 61 6c 6c 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 61 72 65 20 6d 65 6d 6f 69 | called.at.compile-time.are.memoi |
| 39020 | 7a 65 64 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 79 6f 75 20 63 61 6e 3c 2f 73 70 61 6e 3e 0a 20 | zed..This.means.you.can</span>.. |
| 39040 | 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">//. |
| 39060 | 64 6f 20 74 68 69 73 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 | do.this:</span>.....<span.class= |
| 39080 | 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 6e 6b 65 | "tok-kw">try</span>.expect(Linke |
| 390a0 | 64 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | dList(<span.class="tok-type">i32 |
| 390c0 | 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 4c 69 6e 6b 65 64 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 | </span>).==.LinkedList(<span.cla |
| 390e0 | 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 3b 0a 0a 20 20 20 | ss="tok-type">i32</span>));..... |
| 39100 | 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 |
| 39120 | 6e 3e 20 6c 69 73 74 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 | n>.list.=.LinkedList(<span.class |
| 39140 | 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>){........ |
| 39160 | 20 2e 66 69 72 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 | ..first.=.<span.class="tok-null" |
| 39180 | 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 6c 61 73 74 20 3d 20 3c 73 | >null</span>,..........last.=.<s |
| 391a0 | 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> |
| 391c0 | 2c 0a 20 20 20 20 20 20 20 20 2e 6c 65 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ,..........len.=.<span.class="to |
| 391e0 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c | k-number">0</span>,.....};.....< |
| 39200 | 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 |
| 39220 | 78 70 65 63 74 28 6c 69 73 74 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | xpect(list.len.==.<span.class="t |
| 39240 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e | ok-number">0</span>);......<span |
| 39260 | 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 69 6e 63 65 20 74 79 | .class="tok-comment">//.Since.ty |
| 39280 | 70 65 73 20 61 72 65 20 66 69 72 73 74 20 63 6c 61 73 73 20 76 61 6c 75 65 73 20 79 6f 75 20 63 | pes.are.first.class.values.you.c |
| 392a0 | 61 6e 20 69 6e 73 74 61 6e 74 69 61 74 65 20 74 68 65 20 74 79 70 65 3c 2f 73 70 61 6e 3e 0a 20 | an.instantiate.the.type</span>.. |
| 392c0 | 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">//. |
| 392e0 | 62 79 20 61 73 73 69 67 6e 69 6e 67 20 69 74 20 74 6f 20 61 20 76 61 72 69 61 62 6c 65 3a 3c 2f | by.assigning.it.to.a.variable:</ |
| 39300 | 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 |
| 39320 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4c 69 73 74 4f 66 49 6e 74 73 20 3d 20 4c 69 6e 6b 65 64 4c | onst</span>.ListOfInts.=.LinkedL |
| 39340 | 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | ist(<span.class="tok-type">i32</ |
| 39360 | 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" |
| 39380 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 4c 69 73 74 4f 66 49 6e 74 73 20 3d 3d | >try</span>.expect(ListOfInts.== |
| 393a0 | 20 4c 69 6e 6b 65 64 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | .LinkedList(<span.class="tok-typ |
| 393c0 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | e">i32</span>));......<span.clas |
| 393e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6e 6f 64 65 20 3d 20 4c 69 73 | s="tok-kw">var</span>.node.=.Lis |
| 39400 | 74 4f 66 49 6e 74 73 2e 4e 6f 64 65 7b 0a 20 20 20 20 20 20 20 20 2e 70 72 65 76 20 3d 20 3c 73 | tOfInts.Node{..........prev.=.<s |
| 39420 | 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> |
| 39440 | 2c 0a 20 20 20 20 20 20 20 20 2e 6e 65 78 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ,..........next.=.<span.class="t |
| 39460 | 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 64 | ok-null">null</span>,..........d |
| 39480 | 61 74 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 | ata.=.<span.class="tok-number">1 |
| 394a0 | 32 33 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 20 63 6c 61 | 234</span>,.....};.....<span.cla |
| 394c0 | 73 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 73 74 32 20 3d | ss="tok-kw">const</span>.list2.= |
| 394e0 | 20 4c 69 6e 6b 65 64 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | .LinkedList(<span.class="tok-typ |
| 39500 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 7b 0a 20 20 20 20 20 20 20 20 2e 66 69 72 73 74 20 3d | e">i32</span>){..........first.= |
| 39520 | 20 26 61 6d 70 3b 6e 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 2e 6c 61 73 74 20 3d 20 26 61 6d 70 | .&node,..........last.=.& |
| 39540 | 3b 6e 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 2e 6c 65 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ;node,..........len.=.<span.clas |
| 39560 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a | s="tok-number">1</span>,.....};. |
| 39580 | 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">/ |
| 395a0 | 2f 20 57 68 65 6e 20 75 73 69 6e 67 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 73 74 72 75 | /.When.using.a.pointer.to.a.stru |
| 395c0 | 63 74 2c 20 66 69 65 6c 64 73 20 63 61 6e 20 62 65 20 61 63 63 65 73 73 65 64 20 64 69 72 65 63 | ct,.fields.can.be.accessed.direc |
| 395e0 | 74 6c 79 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tly,</span>.....<span.class="tok |
| 39600 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 77 69 74 68 6f 75 74 20 65 78 70 6c 69 63 69 74 6c 79 20 | -comment">//.without.explicitly. |
| 39620 | 64 65 72 65 66 65 72 65 6e 63 69 6e 67 20 74 68 65 20 70 6f 69 6e 74 65 72 2e 3c 2f 73 70 61 6e | dereferencing.the.pointer.</span |
| 39640 | 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"> |
| 39660 | 2f 2f 20 53 6f 20 79 6f 75 20 63 61 6e 20 64 6f 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | //.So.you.can.do</span>.....<spa |
| 39680 | 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 |
| 396a0 | 63 74 28 6c 69 73 74 32 2e 66 69 72 73 74 2e 3f 2e 64 61 74 61 20 3d 3d 20 3c 73 70 61 6e 20 63 | ct(list2.first.?.data.==.<span.c |
| 396c0 | 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 0a | lass="tok-number">1234</span>);. |
| 396e0 | 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">// |
| 39700 | 20 69 6e 73 74 65 61 64 20 6f 66 20 74 72 79 20 65 78 70 65 63 74 28 6c 69 73 74 32 2e 66 69 72 | .instead.of.try.expect(list2.fir |
| 39720 | 73 74 2e 3f 2e 2a 2e 64 61 74 61 20 3d 3d 20 31 32 33 34 29 3b 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f | st.?.*.data.==.1234);</span>.}</ |
| 39740 | 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 |
| 39760 | 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< |
| 39780 | 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 |
| 397a0 | 67 20 74 65 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 | g.test.test_structs.zig</kbd>.1/ |
| 397c0 | 34 20 74 65 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 | 4.test_structs.test.dot.product. |
| 397e0 | 2e 2e 4f 4b 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 | ..OK.2/4.test_structs.test.struc |
| 39800 | 74 20 6e 61 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 | t.namespaced.variable...OK.3/4.t |
| 39820 | 65 73 74 5f 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 | est_structs.test.field.parent.po |
| 39840 | 69 6e 74 65 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 | inter...OK.4/4.test_structs.test |
| 39860 | 2e 6c 69 6e 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 | .linked.list...OK.All.4.tests.pa |
| 39880 | 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 0a 20 | ssed..</samp></pre></figure>.... |
| 398a0 | 20 20 20 20 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 | .....<h3.id="Default-Field-Value |
| 398c0 | 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 46 69 65 6c 64 2d 56 | s"><a.href="#toc-Default-Field-V |
| 398e0 | 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 20 | alues">Default.Field.Values</a>. |
| 39900 | 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 46 69 | <a.class="hdr".href="#Default-Fi |
| 39920 | 65 6c 64 2d 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 | eld-Values">..</a></h3>........< |
| 39940 | 70 3e 0a 20 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 | p>.......Each.struct.field.may.h |
| 39960 | 61 76 65 20 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 | ave.an.expression.indicating.the |
| 39980 | 20 64 65 66 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 | .default.field.......value..Such |
| 399a0 | 20 65 78 70 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 | .expressions.are.executed.at.<a. |
| 399c0 | 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2c 20 61 | href="#comptime">comptime</a>,.a |
| 399e0 | 6e 64 20 61 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 | nd.allow.the.......field.to.be.o |
| 39a00 | 6d 69 74 74 65 64 20 69 6e 20 61 20 73 74 72 75 63 74 20 6c 69 74 65 72 61 6c 20 65 78 70 72 65 | mitted.in.a.struct.literal.expre |
| 39a20 | 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 67 75 72 65 3e | ssion:.......</p>.......<figure> |
| 39a40 | 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 |
| 39a60 | 65 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 66 69 | e.class="file">struct_default_fi |
| 39a80 | 65 6c 64 5f 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 | eld_values.zig</cite></figcaptio |
| 39aa0 | 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 |
| 39ac0 | 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 |
| 39ae0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 3a | ="tok-kw">struct</span>.{.....a: |
| 39b00 | 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 |
| 39b20 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 | n>.=.<span.class="tok-number">12 |
| 39b40 | 33 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | 34</span>,.....b:.<span.class="t |
| 39b60 | 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 |
| 39b80 | 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. |
| 39ba0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 65 66 61 75 6c 74 20 73 74 | class="tok-str">"default.st |
| 39bc0 | 72 75 63 74 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 66 69 65 6c 64 73 26 71 75 6f 74 3b | ruct.initialization.fields" |
| 39be0 | 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 |
| 39c00 | 77 22 3e 63 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 | w">const</span>.x:.Foo.=..{..... |
| 39c20 | 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 2d 6e 75 6d 62 65 72 | .....b.=.<span.class="tok-number |
| 39c40 | 22 3e 35 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ">5</span>,.....};.....<span.cla |
| 39c60 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 78 2e 61 20 2b 20 78 2e 62 | ss="tok-kw">if</span>.(x.a.+.x.b |
| 39c80 | 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 22 3e 31 32 33 | .!=.<span.class="tok-number">123 |
| 39ca0 | 39 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 | 9</span>).{.........<span.class= |
| 39cc0 | 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 |
| 39ce0 | 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> |
| 39d00 | 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>< |
| 39d20 | 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- |
| 39d40 | 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 |
| 39d60 | 70 3e 24 20 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 | p>$.<kbd>zig.test.struct_default |
| 39d80 | 5f 66 69 65 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 | _field_values.zig</kbd>.1/1.stru |
| 39da0 | 63 74 5f 64 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 | ct_default_field_values.test.def |
| 39dc0 | 61 75 6c 74 20 73 74 72 75 63 74 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 66 69 65 6c 64 | ault.struct.initialization.field |
| 39de0 | 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 61 6d | s...OK.All.1.tests.passed..</sam |
| 39e00 | 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>.... |
| 39e20 | 20 20 20 44 65 66 61 75 6c 74 20 66 69 65 6c 64 20 76 61 6c 75 65 73 20 61 72 65 20 6f 6e 6c 79 | ...Default.field.values.are.only |
| 39e40 | 20 61 70 70 72 6f 70 72 69 61 74 65 20 77 68 65 6e 20 74 68 65 20 64 61 74 61 20 69 6e 76 61 72 | .appropriate.when.the.data.invar |
| 39e60 | 69 61 6e 74 73 20 6f 66 20 61 20 73 74 72 75 63 74 0a 20 20 20 20 20 20 63 61 6e 6e 6f 74 20 62 | iants.of.a.struct.......cannot.b |
| 39e80 | 65 20 76 69 6f 6c 61 74 65 64 20 62 79 20 6f 6d 69 74 74 69 6e 67 20 74 68 61 74 20 66 69 65 6c | e.violated.by.omitting.that.fiel |
| 39ea0 | 64 20 66 72 6f 6d 20 61 6e 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 | d.from.an.initialization........ |
| 39ec0 | 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 65 | </p>.......<p>.......For.example |
| 39ee0 | 2c 20 68 65 72 65 20 69 73 20 61 6e 20 69 6e 61 70 70 72 6f 70 72 69 61 74 65 20 75 73 65 20 6f | ,.here.is.an.inappropriate.use.o |
| 39f00 | 66 20 64 65 66 61 75 6c 74 20 73 74 72 75 63 74 20 66 69 65 6c 64 20 69 6e 69 74 69 61 6c 69 7a | f.default.struct.field.initializ |
| 39f20 | 61 74 69 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e | ation:.......</p>.......<figure> |
| 39f40 | 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 |
| 39f60 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 62 61 64 5f 64 65 66 61 75 6c 74 5f 76 61 6c 75 65 | e.class="file">bad_default_value |
| 39f80 | 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 |
| 39fa0 | 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 |
| 39fc0 | 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 74 6f | pan>.Threshold.=.<span.class="to |
| 39fe0 | 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 6d 75 | k-kw">struct</span>.{.....minimu |
| 3a000 | 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 2f 73 | m:.<span.class="tok-type">f32</s |
| 3a020 | 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"> |
| 3a040 | 30 2e 32 35 3c 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 | 0.25</span>,.....maximum:.<span. |
| 3a060 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 | class="tok-type">f32</span>.=.<s |
| 3a080 | 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 3c 2f 73 70 61 | pan.class="tok-number">0.75</spa |
| 3a0a0 | 6e 3e 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | n>,......<span.class="tok-kw">co |
| 3a0c0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 61 74 65 67 6f 72 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | nst</span>.Category.=.<span.clas |
| 3a0e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 20 6c 6f 77 2c 20 6d 65 | s="tok-kw">enum</span>.{.low,.me |
| 3a100 | 64 69 75 6d 2c 20 68 69 67 68 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | dium,.high.};......<span.class=" |
| 3a120 | 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 |
| 3a140 | 6f 6b 2d 66 6e 22 3e 63 61 74 65 67 6f 72 69 7a 65 3c 2f 73 70 61 6e 3e 28 74 3a 20 54 68 72 65 | ok-fn">categorize</span>(t:.Thre |
| 3a160 | 73 68 6f 6c 64 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 74 | shold,.value:.<span.class="tok-t |
| 3a180 | 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 29 20 43 61 74 65 67 6f 72 79 20 7b 0a 20 20 20 20 | ype">f32</span>).Category.{..... |
| 3a1a0 | 20 20 20 20 61 73 73 65 72 74 28 74 2e 6d 61 78 69 6d 75 6d 20 26 67 74 3b 3d 20 74 2e 6d 69 6e | ....assert(t.maximum.>=.t.min |
| 3a1c0 | 69 6d 75 6d 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 | imum);.........<span.class="tok- |
| 3a1e0 | 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 76 61 6c 75 65 20 26 6c 74 3b 20 74 2e 6d 69 6e 69 | kw">if</span>.(value.<.t.mini |
| 3a200 | 6d 75 6d 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 | mum).<span.class="tok-kw">return |
| 3a220 | 3c 2f 73 70 61 6e 3e 20 2e 6c 6f 77 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | </span>..low;.........<span.clas |
| 3a240 | 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 65 20 26 67 74 3b | s="tok-kw">if</span>.(value.> |
| 3a260 | 20 74 2e 6d 61 78 69 6d 75 6d 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .t.maximum).<span.class="tok-kw" |
| 3a280 | 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 2e 68 69 67 68 3b 0a 20 20 20 20 20 20 20 20 3c 73 | >return</span>..high;.........<s |
| 3a2a0 | 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> |
| 3a2c0 | 20 2e 6d 65 64 69 75 6d 3b 0a 20 20 20 20 7d 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ..medium;.....}.};..<span.class= |
| 3a2e0 | 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= |
| 3a300 | 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=" |
| 3a320 | 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 | tok-fn">main</span>().!<span.cla |
| 3a340 | 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>.{..... |
| 3a360 | 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>. |
| 3a380 | 74 68 72 65 73 68 6f 6c 64 3a 20 54 68 72 65 73 68 6f 6c 64 20 3d 20 2e 7b 0a 20 20 20 20 20 20 | threshold:.Threshold.=..{....... |
| 3a3a0 | 20 20 2e 6d 61 78 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 | ...maximum.=.<span.class="tok-nu |
| 3a3c0 | 6d 62 65 72 22 3e 30 2e 32 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 | mber">0.20</span>,.....};.....<s |
| 3a3e0 | 70 61 6e 20 63 6c 61 73 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>. |
| 3a400 | 63 61 74 65 67 6f 72 79 20 3d 20 74 68 72 65 73 68 6f 6c 64 2e 63 61 74 65 67 6f 72 69 7a 65 28 | category.=.threshold.categorize( |
| 3a420 | 3c 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 30 3c 2f 73 | <span.class="tok-number">0.90</s |
| 3a440 | 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"> |
| 3a460 | 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 69 6f 2e 67 65 74 53 74 64 4f 75 74 28 29 2e 77 72 | try</span>.std.io.getStdOut().wr |
| 3a480 | 69 74 65 41 6c 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 22 | iteAll(<span.class="tok-builtin" |
| 3a4a0 | 3e 40 74 61 67 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 63 61 74 65 67 6f 72 79 29 29 3b 0a 7d 0a 0a | >@tagName</span>(category));.}.. |
| 3a4c0 | 3c 73 70 61 6e 20 63 6c 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 |
| 3a4e0 | 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 |
| 3a500 | 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 |
| 3a520 | 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>);. |
| 3a540 | 3c 73 70 61 6e 20 63 6c 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 |
| 3a560 | 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 3c 2f 63 6f | >.assert.=.std.debug.assert;</co |
| 3a580 | 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 |
| 3a5a0 | 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 |
| 3a5c0 | 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. |
| 3a5e0 | 62 75 69 6c 64 2d 65 78 65 20 62 61 64 5f 64 65 66 61 75 6c 74 5f 76 61 6c 75 65 2e 7a 69 67 3c | build-exe.bad_default_value.zig< |
| 3a600 | 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 62 61 64 5f 64 65 66 61 75 6c 74 5f 76 61 6c 75 65 | /kbd>.$.<kbd>./bad_default_value |
| 3a620 | 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 33 35 37 30 33 31 39 20 70 61 6e 69 63 3a 20 72 65 61 | </kbd>.thread.3570319.panic:.rea |
| 3a640 | 63 68 65 64 20 75 6e 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 0a 3c 73 70 61 6e 20 63 6c 61 73 | ched.unreachable.code.<span.clas |
| 3a660 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 | s="sgr-1m">/home/andy/src/zig/li |
| 3a680 | 62 2f 73 74 64 2f 64 65 62 75 67 2e 7a 69 67 3a 34 31 32 3a 31 34 3c 2f 73 70 61 6e 3e 3a 20 3c | b/std/debug.zig:412:14</span>:.< |
| 3a6a0 | 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 37 61 36 64 20 69 6e | span.class="sgr-2m">0x1037a6d.in |
| 3a6c0 | 20 61 73 73 65 72 74 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 | .assert.(bad_default_value)</spa |
| 3a6e0 | 6e 3e 0a 20 20 20 20 69 66 20 28 21 6f 6b 29 20 75 6e 72 65 61 63 68 61 62 6c 65 3b 20 2f 2f 20 | n>.....if.(!ok).unreachable;.//. |
| 3a700 | 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 20 3c | assertion.failure..............< |
| 3a720 | 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 |
| 3a740 | 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 73 72 | pan.class="sgr-1m">/home/andy/sr |
| 3a760 | 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 62 61 64 5f 64 65 66 61 75 6c 74 5f 76 61 | c/zig/doc/langref/bad_default_va |
| 3a780 | 6c 75 65 2e 7a 69 67 3a 38 3a 31 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | lue.zig:8:15</span>:.<span.class |
| 3a7a0 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 34 66 35 39 20 69 6e 20 63 61 74 65 67 6f 72 69 7a | ="sgr-2m">0x1034f59.in.categoriz |
| 3a7c0 | 65 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 20 20 20 | e.(bad_default_value)</span>.... |
| 3a7e0 | 20 20 20 20 20 61 73 73 65 72 74 28 74 2e 6d 61 78 69 6d 75 6d 20 26 67 74 3b 3d 20 74 2e 6d 69 | .....assert(t.maximum.>=.t.mi |
| 3a800 | 6e 69 6d 75 6d 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 | nimum);...............<span.clas |
| 3a820 | 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 |
| 3a840 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 | ="sgr-1m">/home/andy/src/zig/doc |
| 3a860 | 2f 6c 61 6e 67 72 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 31 | /langref/bad_default_value.zig:1 |
| 3a880 | 39 3a 34 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 | 9:42</span>:.<span.class="sgr-2m |
| 3a8a0 | 22 3e 30 78 31 30 33 34 65 38 61 20 69 6e 20 6d 61 69 6e 20 28 62 61 64 5f 64 65 66 61 75 6c 74 | ">0x1034e8a.in.main.(bad_default |
| 3a8c0 | 5f 76 61 6c 75 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 63 61 74 65 67 6f 72 | _value)</span>.....const.categor |
| 3a8e0 | 79 20 3d 20 74 68 72 65 73 68 6f 6c 64 2e 63 61 74 65 67 6f 72 69 7a 65 28 30 2e 39 30 29 3b 0a | y.=.threshold.categorize(0.90);. |
| 3a900 | 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 | ................................ |
| 3a920 | 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">^ |
| 3a940 | 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 |
| 3a960 | 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | me/andy/src/zig/lib/std/start.zi |
| 3a980 | 67 3a 35 32 34 3a 33 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | g:524:37</span>:.<span.class="sg |
| 3a9a0 | 72 2d 32 6d 22 3e 30 78 31 30 33 34 64 61 35 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e | r-2m">0x1034da5.in.posixCallMain |
| 3a9c0 | 41 6e 64 45 78 69 74 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 | AndExit.(bad_default_value)</spa |
| 3a9e0 | 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 72 65 73 75 6c 74 20 3d 20 72 6f | n>.............const.result.=.ro |
| 3aa00 | 6f 74 2e 6d 61 69 6e 28 29 20 63 61 74 63 68 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 | ot.main().catch.|err|.{......... |
| 3aa20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | ............................<spa |
| 3aa40 | 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 |
| 3aa60 | 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 73 72 63 2f 7a | .class="sgr-1m">/home/andy/src/z |
| 3aa80 | 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 36 36 3a 35 3c 2f 73 70 61 6e | ig/lib/std/start.zig:266:5</span |
| 3aaa0 | 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 33 34 38 63 | >:.<span.class="sgr-2m">0x10348c |
| 3aac0 | 31 20 69 6e 20 5f 73 74 61 72 74 20 28 62 61 64 5f 64 65 66 61 75 6c 74 5f 76 61 6c 75 65 29 3c | 1.in._start.(bad_default_value)< |
| 3aae0 | 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. |
| 3ab00 | 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= |
| 3ab20 | 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=" |
| 3ab40 | 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 |
| 3ab60 | 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 |
| 3ab80 | 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e | pan>.(process.terminated.by.sign |
| 3aba0 | 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 20 20 20 | al).</samp></pre></figure>...... |
| 3abc0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 62 6f 76 65 20 79 6f 75 20 63 61 6e 20 73 65 65 20 74 68 | ..<p>.......Above.you.can.see.th |
| 3abe0 | 65 20 64 61 6e 67 65 72 20 6f 66 20 69 67 6e 6f 72 69 6e 67 20 74 68 69 73 20 70 72 69 6e 63 69 | e.danger.of.ignoring.this.princi |
| 3ac00 | 70 6c 65 2e 20 54 68 65 20 64 65 66 61 75 6c 74 0a 20 20 20 20 20 20 66 69 65 6c 64 20 76 61 6c | ple..The.default.......field.val |
| 3ac20 | 75 65 73 20 63 61 75 73 65 64 20 74 68 65 20 64 61 74 61 20 69 6e 76 61 72 69 61 6e 74 20 74 6f | ues.caused.the.data.invariant.to |
| 3ac40 | 20 62 65 20 76 69 6f 6c 61 74 65 64 2c 20 63 61 75 73 69 6e 67 20 69 6c 6c 65 67 61 6c 0a 20 20 | .be.violated,.causing.illegal... |
| 3ac60 | 20 20 20 20 62 65 68 61 76 69 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | ....behavior........</p>.......< |
| 3ac80 | 70 3e 0a 20 20 20 20 20 20 54 6f 20 66 69 78 20 74 68 69 73 2c 20 72 65 6d 6f 76 65 20 74 68 65 | p>.......To.fix.this,.remove.the |
| 3aca0 | 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 73 20 66 72 6f 6d 20 61 6c 6c 20 74 68 65 20 73 74 72 | .default.values.from.all.the.str |
| 3acc0 | 75 63 74 20 66 69 65 6c 64 73 2c 20 61 6e 64 20 70 72 6f 76 69 64 65 0a 20 20 20 20 20 20 61 20 | uct.fields,.and.provide.......a. |
| 3ace0 | 6e 61 6d 65 64 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | named.default.value:.......</p>. |
| 3ad00 | 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= |
| 3ad20 | 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 72 | "zig-cap"><cite.class="file">str |
| 3ad40 | 75 63 74 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 69 | uct_default_value.zig</cite></fi |
| 3ad60 | 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= |
| 3ad80 | 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 20 | "tok-kw">const</span>.Threshold. |
| 3ada0 | 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 |
| 3adc0 | 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 3d | pan>.{.....minimum:.<span.class= |
| 3ade0 | 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 6d 61 78 69 6d | "tok-type">f32</span>,.....maxim |
| 3ae00 | 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 2f | um:.<span.class="tok-type">f32</ |
| 3ae20 | 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>,......<span.class="tok-kw" |
| 3ae40 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 65 66 61 75 6c 74 3a 20 54 68 72 65 73 68 6f 6c 64 | >const</span>.default:.Threshold |
| 3ae60 | 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 2e 6d 69 6e 69 6d 75 6d 20 3d 20 3c 73 70 61 6e 20 63 | .=..{..........minimum.=.<span.c |
| 3ae80 | 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>,.. |
| 3aea0 | 20 20 20 20 20 20 20 2e 6d 61 78 69 6d 75 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ........maximum.=.<span.class="t |
| 3aec0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 37 35 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 7d | ok-number">0.75</span>,.....};.} |
| 3aee0 | 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>........< |
| 3af00 | 70 3e 49 66 20 61 20 73 74 72 75 63 74 20 76 61 6c 75 65 20 72 65 71 75 69 72 65 73 20 61 20 72 | p>If.a.struct.value.requires.a.r |
| 3af20 | 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 20 76 61 6c 75 65 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 62 | untime-known.value.in.order.to.b |
| 3af40 | 65 20 69 6e 69 74 69 61 6c 69 7a 65 64 0a 20 20 20 20 20 20 77 69 74 68 6f 75 74 20 76 69 6f 6c | e.initialized.......without.viol |
| 3af60 | 61 74 69 6e 67 20 64 61 74 61 20 69 6e 76 61 72 69 61 6e 74 73 2c 20 74 68 65 6e 20 75 73 65 20 | ating.data.invariants,.then.use. |
| 3af80 | 61 6e 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 6d 65 74 68 6f 64 20 74 68 61 74 20 61 63 | an.initialization.method.that.ac |
| 3afa0 | 63 65 70 74 73 0a 20 20 20 20 20 20 74 68 6f 73 65 20 72 75 6e 74 69 6d 65 20 76 61 6c 75 65 73 | cepts.......those.runtime.values |
| 3afc0 | 2c 20 61 6e 64 20 70 6f 70 75 6c 61 74 65 73 20 74 68 65 20 72 65 6d 61 69 6e 69 6e 67 20 66 69 | ,.and.populates.the.remaining.fi |
| 3afe0 | 65 6c 64 73 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 64 3d 22 | elds.</p>...............<h3.id=" |
| 3b000 | 65 78 74 65 72 6e 2d 73 74 72 75 63 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 74 | extern-struct"><a.href="#toc-ext |
| 3b020 | 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 20 3c 61 | ern-struct">extern.struct</a>.<a |
| 3b040 | 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 73 74 72 75 63 | .class="hdr".href="#extern-struc |
| 3b060 | 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 6e 20 3c 63 6f 64 | t">..</a></h3>........<p>An.<cod |
| 3b080 | 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 |
| 3b0a0 | 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 74 | pan>.<span.class="tok-kw">struct |
| 3b0c0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c 61 79 | </span></code>.has.in-memory.lay |
| 3b0e0 | 6f 75 74 20 6d 61 74 63 68 69 6e 67 0a 20 20 20 20 20 20 74 68 65 20 43 20 41 42 49 20 66 6f 72 | out.matching.......the.C.ABI.for |
| 3b100 | 20 74 68 65 20 74 61 72 67 65 74 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 49 66 20 77 65 6c | .the.target.</p>.......<p>If.wel |
| 3b120 | 6c 2d 64 65 66 69 6e 65 64 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 20 69 73 20 6e 6f | l-defined.in-memory.layout.is.no |
| 3b140 | 74 20 72 65 71 75 69 72 65 64 2c 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 73 74 | t.required,.<a.href="#struct">st |
| 3b160 | 72 75 63 74 3c 2f 61 3e 20 69 73 20 61 20 62 65 74 74 65 72 20 63 68 6f 69 63 65 0a 20 20 20 20 | ruct</a>.is.a.better.choice..... |
| 3b180 | 20 20 62 65 63 61 75 73 65 20 69 74 20 70 6c 61 63 65 73 20 66 65 77 65 72 20 72 65 73 74 72 69 | ..because.it.places.fewer.restri |
| 3b1a0 | 63 74 69 6f 6e 73 20 6f 6e 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 2e 3c 2f 70 3e 0a 20 20 20 20 | ctions.on.the.compiler.</p>..... |
| 3b1c0 | 20 20 3c 70 3e 53 65 65 20 3c 61 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 | ..<p>See.<a.href="#packed-struct |
| 3b1e0 | 22 3e 70 61 63 6b 65 64 20 73 74 72 75 63 74 3c 2f 61 3e 20 66 6f 72 20 61 20 73 74 72 75 63 74 | ">packed.struct</a>.for.a.struct |
| 3b200 | 20 74 68 61 74 20 68 61 73 20 74 68 65 20 41 42 49 20 6f 66 20 69 74 73 20 62 61 63 6b 69 6e 67 | .that.has.the.ABI.of.its.backing |
| 3b220 | 20 69 6e 74 65 67 65 72 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 63 61 6e 20 62 65 20 75 73 65 | .integer,.......which.can.be.use |
| 3b240 | 66 75 6c 20 66 6f 72 20 6d 6f 64 65 6c 69 6e 67 20 66 6c 61 67 73 2e 3c 2f 70 3e 0a 20 20 20 20 | ful.for.modeling.flags.</p>..... |
| 3b260 | 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 |
| 3b280 | 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 3c | ef="#extern-union">extern.union< |
| 3b2a0 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d 65 6e | /a></li>.<li><a.href="#extern-en |
| 3b2c0 | 75 6d 22 3e 65 78 74 65 72 6e 20 65 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a | um">extern.enum</a></li>.</ul>.. |
| 3b2e0 | 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 70 61 63 6b 65 64 2d 73 74 72 | ..............<h3.id="packed-str |
| 3b300 | 75 63 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 61 63 6b 65 64 2d 73 74 72 75 63 74 | uct"><a.href="#toc-packed-struct |
| 3b320 | 22 3e 70 61 63 6b 65 64 20 73 74 72 75 63 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | ">packed.struct</a>.<a.class="hd |
| 3b340 | 72 22 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e c2 a7 3c 2f 61 3e 3c | r".href="#packed-struct">..</a>< |
| 3b360 | 2f 68 33 3e 0a 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 | /h3>........<p>.......Unlike.nor |
| 3b380 | 6d 61 6c 20 73 74 72 75 63 74 73 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | mal.structs,.<code><span.class=" |
| 3b3a0 | 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 74 72 | tok-kw">packed</span></code>.str |
| 3b3c0 | 75 63 74 73 20 68 61 76 65 20 67 75 61 72 61 6e 74 65 65 64 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c | ucts.have.guaranteed.in-memory.l |
| 3b3e0 | 61 79 6f 75 74 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 | ayout:.......</p>.......<ul>.... |
| 3b400 | 20 20 20 20 20 3c 6c 69 3e 46 69 65 6c 64 73 20 72 65 6d 61 69 6e 20 69 6e 20 74 68 65 20 6f 72 | .....<li>Fields.remain.in.the.or |
| 3b420 | 64 65 72 20 64 65 63 6c 61 72 65 64 2c 20 6c 65 61 73 74 20 74 6f 20 6d 6f 73 74 20 73 69 67 6e | der.declared,.least.to.most.sign |
| 3b440 | 69 66 69 63 61 6e 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 68 65 72 65 20 | ificant.</li>.........<li>There. |
| 3b460 | 69 73 20 6e 6f 20 70 61 64 64 69 6e 67 20 62 65 74 77 65 65 6e 20 66 69 65 6c 64 73 2e 3c 2f 6c | is.no.padding.between.fields.</l |
| 3b480 | 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 5a 69 67 20 73 75 70 70 6f 72 74 73 20 61 72 62 69 | i>.........<li>Zig.supports.arbi |
| 3b4a0 | 74 72 61 72 79 20 77 69 64 74 68 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e | trary.width.<a.href="#Integers"> |
| 3b4c0 | 49 6e 74 65 67 65 72 73 3c 2f 61 3e 20 61 6e 64 20 61 6c 74 68 6f 75 67 68 20 6e 6f 72 6d 61 6c | Integers</a>.and.although.normal |
| 3b4e0 | 6c 79 2c 20 69 6e 74 65 67 65 72 73 20 77 69 74 68 20 66 65 77 65 72 0a 20 20 20 20 20 20 20 20 | ly,.integers.with.fewer......... |
| 3b500 | 74 68 61 6e 20 38 20 62 69 74 73 20 77 69 6c 6c 20 73 74 69 6c 6c 20 75 73 65 20 31 20 62 79 74 | than.8.bits.will.still.use.1.byt |
| 3b520 | 65 20 6f 66 20 6d 65 6d 6f 72 79 2c 20 69 6e 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 2c 20 | e.of.memory,.in.packed.structs,. |
| 3b540 | 74 68 65 79 20 75 73 65 0a 20 20 20 20 20 20 20 20 65 78 61 63 74 6c 79 20 74 68 65 69 72 20 62 | they.use.........exactly.their.b |
| 3b560 | 69 74 20 77 69 64 74 68 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | it.width..........</li>......... |
| 3b580 | 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 22 | <li><code><span.class="tok-type" |
| 3b5a0 | 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 69 65 6c 64 73 20 75 73 65 20 65 | >bool</span></code>.fields.use.e |
| 3b5c0 | 78 61 63 74 6c 79 20 31 20 62 69 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 | xactly.1.bit.</li>.........<li>A |
| 3b5e0 | 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 66 69 65 6c 64 | n.<a.href="#enum">enum</a>.field |
| 3b600 | 20 75 73 65 73 20 65 78 61 63 74 6c 79 20 74 68 65 20 62 69 74 20 77 69 64 74 68 20 6f 66 20 69 | .uses.exactly.the.bit.width.of.i |
| 3b620 | 74 73 20 69 6e 74 65 67 65 72 20 74 61 67 20 74 79 70 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ts.integer.tag.type.</li>....... |
| 3b640 | 20 20 3c 6c 69 3e 41 20 3c 61 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 75 6e 69 6f 6e 22 3e | ..<li>A.<a.href="#packed-union"> |
| 3b660 | 70 61 63 6b 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 20 66 69 65 6c 64 20 75 73 65 73 20 65 78 61 63 | packed.union</a>.field.uses.exac |
| 3b680 | 74 6c 79 20 74 68 65 20 62 69 74 20 77 69 64 74 68 20 6f 66 20 74 68 65 20 75 6e 69 6f 6e 20 66 | tly.the.bit.width.of.the.union.f |
| 3b6a0 | 69 65 6c 64 20 77 69 74 68 0a 20 20 20 20 20 20 20 20 74 68 65 20 6c 61 72 67 65 73 74 20 62 69 | ield.with.........the.largest.bi |
| 3b6c0 | 74 20 77 69 64 74 68 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 | t.width.</li>.......</ul>....... |
| 3b6e0 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 61 20 3c 63 6f 64 | <p>.......This.means.that.a.<cod |
| 3b700 | 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 |
| 3b720 | 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 74 | pan>.<span.class="tok-kw">struct |
| 3b740 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 70 61 72 74 69 63 69 70 61 74 65 0a 20 | </span></code>.can.participate.. |
| 3b760 | 20 20 20 20 20 69 6e 20 61 20 3c 61 20 68 72 65 66 3d 22 23 62 69 74 43 61 73 74 22 3e 40 62 69 | .....in.a.<a.href="#bitCast">@bi |
| 3b780 | 74 43 61 73 74 3c 2f 61 3e 20 6f 72 20 61 20 3c 61 20 68 72 65 66 3d 22 23 70 74 72 43 61 73 74 | tCast</a>.or.a.<a.href="#ptrCast |
| 3b7a0 | 22 3e 40 70 74 72 43 61 73 74 3c 2f 61 3e 20 74 6f 20 72 65 69 6e 74 65 72 70 72 65 74 20 6d 65 | ">@ptrCast</a>.to.reinterpret.me |
| 3b7c0 | 6d 6f 72 79 2e 0a 20 20 20 20 20 20 54 68 69 73 20 65 76 65 6e 20 77 6f 72 6b 73 20 61 74 20 3c | mory........This.even.works.at.< |
| 3b7e0 | 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 3a | a.href="#comptime">comptime</a>: |
| 3b800 | 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 |
| 3b820 | 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 |
| 3b840 | 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 73 2e 7a 69 67 | s="file">test_packed_structs.zig |
| 3b860 | 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>< |
| 3b880 | 73 70 61 6e 20 63 6c 61 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> |
| 3b8a0 | 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" |
| 3b8c0 | 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 |
| 3b8e0 | 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>);.< |
| 3b900 | 73 70 61 6e 20 63 6c 61 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> |
| 3b920 | 20 6e 61 74 69 76 65 5f 65 6e 64 69 61 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .native_endian.=.<span.class="to |
| 3b940 | 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. |
| 3b960 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 | class="tok-str">"builtin&qu |
| 3b980 | 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 2e 65 6e 64 69 | ot;</span>).target.cpu.arch.endi |
| 3b9a0 | 61 6e 28 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 |
| 3b9c0 | 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 |
| 3b9e0 | 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 74 | ect;..<span.class="tok-kw">const |
| 3ba00 | 3c 2f 73 70 61 6e 3e 20 46 75 6c 6c 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | </span>.Full.=.<span.class="tok- |
| 3ba20 | 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 61 73 73 3d 22 74 | kw">packed</span>.<span.class="t |
| 3ba40 | 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 6e 75 6d 62 65 | ok-kw">struct</span>.{.....numbe |
| 3ba60 | 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 31 36 3c 2f 73 | r:.<span.class="tok-type">u16</s |
| 3ba80 | 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 63 6f | pan>,.};.<span.class="tok-kw">co |
| 3baa0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 44 69 76 69 64 65 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | nst</span>.Divided.=.<span.class |
| 3bac0 | 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 |
| 3bae0 | 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>.{.... |
| 3bb00 | 20 68 61 6c 66 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 | .half1:.<span.class="tok-type">u |
| 3bb20 | 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 71 75 61 72 74 65 72 33 3a 20 3c 73 70 61 6e 20 63 6c | 8</span>,.....quarter3:.<span.cl |
| 3bb40 | 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 20 20 20 20 71 75 | ass="tok-type">u4</span>,.....qu |
| 3bb60 | 61 72 74 65 72 34 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 | arter4:.<span.class="tok-type">u |
| 3bb80 | 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 2d 6b | 4</span>,.};..<span.class="tok-k |
| 3bba0 | 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- |
| 3bbc0 | 73 74 72 22 3e 26 71 75 6f 74 3b 40 62 69 74 43 61 73 74 20 62 65 74 77 65 65 6e 20 70 61 63 6b | str">"@bitCast.between.pack |
| 3bbe0 | 65 64 20 73 74 72 75 63 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | ed.structs"</span>.{.....<s |
| 3bc00 | 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 64 6f | pan.class="tok-kw">try</span>.do |
| 3bc20 | 54 68 65 54 65 73 74 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 | TheTest();.....<span.class="tok- |
| 3bc40 | 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- |
| 3bc60 | 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 64 6f 54 68 65 54 65 73 74 28 29 3b | kw">comptime</span>.doTheTest(); |
| 3bc80 | 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 |
| 3bca0 | 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 54 68 65 54 65 73 | n>.<span.class="tok-fn">doTheTes |
| 3bcc0 | 74 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | t</span>().!<span.class="tok-typ |
| 3bce0 | 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 |
| 3bd00 | 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 |
| 3bd20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 | n.class="tok-builtin">@sizeOf</s |
| 3bd40 | 70 61 6e 3e 28 46 75 6c 6c 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | pan>(Full).==.<span.class="tok-n |
| 3bd60 | 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 6e 20 63 6c 61 73 | umber">2</span>);.....<span.clas |
| 3bd80 | 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 |
| 3bda0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f | an.class="tok-builtin">@sizeOf</ |
| 3bdc0 | 73 70 61 6e 3e 28 44 69 76 69 64 65 64 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | span>(Divided).==.<span.class="t |
| 3bde0 | 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 6e 20 | ok-number">2</span>);.....<span. |
| 3be00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 75 6c 6c | class="tok-kw">const</span>.full |
| 3be20 | 20 3d 20 46 75 6c 6c 7b 20 2e 6e 75 6d 62 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .=.Full{..number.=.<span.class=" |
| 3be40 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 33 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 | tok-number">0x1234</span>.};.... |
| 3be60 | 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 |
| 3be80 | 6e 3e 20 64 69 76 69 64 65 64 3a 20 44 69 76 69 64 65 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | n>.divided:.Divided.=.<span.clas |
| 3bea0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 | s="tok-builtin">@bitCast</span>( |
| 3bec0 | 66 75 6c 6c 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 | full);.....<span.class="tok-kw"> |
| 3bee0 | 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 64 69 76 69 64 65 64 2e 68 61 6c 66 31 20 | try</span>.expect(divided.half1. |
| 3bf00 | 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 33 34 | ==.<span.class="tok-number">0x34 |
| 3bf20 | 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 |
| 3bf40 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 64 69 76 69 64 65 64 2e 71 75 61 | w">try</span>.expect(divided.qua |
| 3bf60 | 72 74 65 72 33 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 | rter3.==.<span.class="tok-number |
| 3bf80 | 22 3e 30 78 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 | ">0x2</span>);.....<span.class=" |
| 3bfa0 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 64 69 76 69 64 65 | tok-kw">try</span>.expect(divide |
| 3bfc0 | 64 2e 71 75 61 72 74 65 72 34 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | d.quarter4.==.<span.class="tok-n |
| 3bfe0 | 75 6d 62 65 72 22 3e 30 78 31 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | umber">0x1</span>);......<span.c |
| 3c000 | 6c 61 73 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 64 65 72 | lass="tok-kw">const</span>.order |
| 3c020 | 65 64 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 | ed:.[<span.class="tok-number">2< |
| 3c040 | 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 |
| 3c060 | 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 |
| 3c080 | 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);.....< |
| 3c0a0 | 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 |
| 3c0c0 | 3e 20 28 6e 61 74 69 76 65 5f 65 6e 64 69 61 6e 29 20 7b 0a 20 20 20 20 20 20 20 20 2e 62 69 67 | >.(native_endian).{..........big |
| 3c0e0 | 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .=>.{.............<span.class |
| 3c100 | 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 6f 72 64 65 | ="tok-kw">try</span>.expect(orde |
| 3c120 | 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 65 72 22 3e 30 3c 2f | red[<span.class="tok-number">0</ |
| 3c140 | 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | span>].==.<span.class="tok-numbe |
| 3c160 | 72 22 3e 30 78 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | r">0x12</span>);.............<sp |
| 3c180 | 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 |
| 3c1a0 | 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 74 6f 6b 2d 6e 75 6d | ect(ordered[<span.class="tok-num |
| 3c1c0 | 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 73 3d 22 74 | ber">1</span>].==.<span.class="t |
| 3c1e0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 | ok-number">0x34</span>);........ |
| 3c200 | 20 7d 2c 0a 20 20 20 20 20 20 20 20 2e 6c 69 74 74 6c 65 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 | .},..........little.=>.{..... |
| 3c220 | 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 |
| 3c240 | 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 61 | </span>.expect(ordered[<span.cla |
| 3c260 | 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 |
| 3c280 | 61 6e 20 63 6c 61 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 | an.class="tok-number">0x34</span |
| 3c2a0 | 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 6b | >);.............<span.class="tok |
| 3c2c0 | 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 3c | -kw">try</span>.expect(ordered[< |
| 3c2e0 | 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> |
| 3c300 | 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 78 | ].==.<span.class="tok-number">0x |
| 3c320 | 31 32 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 7d 0a 7d 3c 2f | 12</span>);.........},.....}.}</ |
| 3c340 | 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 |
| 3c360 | 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< |
| 3c380 | 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 |
| 3c3a0 | 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 73 2e 7a 69 67 3c 2f | g.test.test_packed_structs.zig</ |
| 3c3c0 | 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 70 61 63 6b 65 64 5f 73 74 72 75 63 74 73 2e 74 65 73 | kbd>.1/1.test_packed_structs.tes |
| 3c3e0 | 74 2e 40 62 69 74 43 61 73 74 20 62 65 74 77 65 65 6e 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 | t.@bitCast.between.packed.struct |
| 3c400 | 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 61 6d | s...OK.All.1.tests.passed..</sam |
| 3c420 | 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>.... |
| 3c440 | 20 20 20 54 68 65 20 62 61 63 6b 69 6e 67 20 69 6e 74 65 67 65 72 20 69 73 20 69 6e 66 65 72 72 | ...The.backing.integer.is.inferr |
| 3c460 | 65 64 20 66 72 6f 6d 20 74 68 65 20 66 69 65 6c 64 73 27 20 74 6f 74 61 6c 20 62 69 74 20 77 69 | ed.from.the.fields'.total.bit.wi |
| 3c480 | 64 74 68 2e 0a 20 20 20 20 20 20 4f 70 74 69 6f 6e 61 6c 6c 79 2c 20 69 74 20 63 61 6e 20 62 65 | dth........Optionally,.it.can.be |
| 3c4a0 | 20 65 78 70 6c 69 63 69 74 6c 79 20 70 72 6f 76 69 64 65 64 20 61 6e 64 20 65 6e 66 6f 72 63 65 | .explicitly.provided.and.enforce |
| 3c4c0 | 64 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | d.at.compile.time:.......</p>... |
| 3c4e0 | 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 |
| 3c500 | 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_ |
| 3c520 | 6d 69 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 63 69 74 65 | missized_packed_struct.zig</cite |
| 3c540 | 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 |
| 3c560 | 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. |
| 3c580 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 69 73 73 69 7a 65 64 20 70 | class="tok-str">"missized.p |
| 3c5a0 | 61 63 6b 65 64 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 | acked.struct"</span>.{..... |
| 3c5c0 | 3c 73 70 61 6e 20 63 6c 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 |
| 3c5e0 | 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 70 61 63 6b 65 | >.S.=.<span.class="tok-kw">packe |
| 3c600 | 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 | d</span>.<span.class="tok-kw">st |
| 3c620 | 72 75 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 74 79 70 | ruct</span>(<span.class="tok-typ |
| 3c640 | 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 7b 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e">u32</span>).{.a:.<span.class= |
| 3c660 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 | "tok-type">u16</span>,.b:.<span. |
| 3c680 | 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 7d 3b 0a 20 20 | class="tok-type">u8</span>.};... |
| 3c6a0 | 20 20 5f 20 3d 20 53 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 | .._.=.S{..a.=.<span.class="tok-n |
| 3c6c0 | 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 2e 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | umber">4</span>,..b.=.<span.clas |
| 3c6e0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 7d 3c 2f 63 6f | s="tok-number">2</span>.};.}</co |
| 3c700 | 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 |
| 3c720 | 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 |
| 3c740 | 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. |
| 3c760 | 74 65 73 74 20 74 65 73 74 5f 6d 69 73 73 69 7a 65 64 5f 70 61 63 6b 65 64 5f 73 74 72 75 63 74 | test.test_missized_packed_struct |
| 3c780 | 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"> |
| 3c7a0 | 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 70 61 63 6b 65 64 | doc/langref/test_missized_packed |
| 3c7c0 | 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 3c 73 70 61 6e 20 63 | _struct.zig:2:29:.</span><span.c |
| 3c7e0 | 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 |
| 3c800 | 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 20 69 6e 74 65 67 65 | an.class="sgr-1m">backing.intege |
| 3c820 | 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 20 33 32 20 62 75 74 | r.type.'u32'.has.bit.size.32.but |
| 3c840 | 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 20 74 6f 74 61 6c 20 | .the.struct.fields.have.a.total. |
| 3c860 | 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 20 63 6f 6e 73 74 20 | bit.size.of.24.</span>....const. |
| 3c880 | 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 61 3a 20 75 31 36 2c | S.=.packed.struct(u32).{.a:.u16, |
| 3c8a0 | 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 20 20 20 20 20 20 20 | .b:.u8.};....................... |
| 3c8c0 | 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 0a | ......<span.class="sgr-32m">^~~. |
| 3c8e0 | 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>.. |
| 3c900 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 61 6c 6c 6f 77 73 20 74 68 65 20 61 | ......<p>.......Zig.allows.the.a |
| 3c920 | 64 64 72 65 73 73 20 74 6f 20 62 65 20 74 61 6b 65 6e 20 6f 66 20 61 20 6e 6f 6e 2d 62 79 74 65 | ddress.to.be.taken.of.a.non-byte |
| 3c940 | 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | -aligned.field:.......</p>...... |
| 3c960 | 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- |
| 3c980 | 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 70 6f 69 | cap"><cite.class="file">test_poi |
| 3c9a0 | 6e 74 65 72 5f 74 6f 5f 6e 6f 6e 2d 62 79 74 65 5f 61 6c 69 67 6e 65 64 5f 66 69 65 6c 64 2e 7a | nter_to_non-byte_aligned_field.z |
| 3c9c0 | 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 |
| 3c9e0 | 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 |
| 3ca00 | 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 |
| 3ca20 | 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 |
| 3ca40 | 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>); |
| 3ca60 | 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 |
| 3ca80 | 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;. |
| 3caa0 | 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 |
| 3cac0 | 6e 3e 20 42 69 74 46 69 65 6c 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | n>.BitField.=.<span.class="tok-k |
| 3cae0 | 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 |
| 3cb00 | 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 |
| 3cb20 | 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>,.. |
| 3cb40 | 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 75 33 3c | ...b:.<span.class="tok-type">u3< |
| 3cb60 | 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 6f 6b 2d | /span>,.....c:.<span.class="tok- |
| 3cb80 | 74 79 70 65 22 3e 75 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | type">u2</span>,.};..<span.class |
| 3cba0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 6f 6f 20 3d 20 42 69 74 46 69 | ="tok-kw">var</span>.foo.=.BitFi |
| 3cbc0 | 65 6c 64 7b 0a 20 20 20 20 2e 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | eld{......a.=.<span.class="tok-n |
| 3cbe0 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 2e 62 20 3d 20 3c 73 70 61 6e 20 | umber">1</span>,......b.=.<span. |
| 3cc00 | 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 0a 20 20 20 | class="tok-number">2</span>,.... |
| 3cc20 | 20 2e 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 | ..c.=.<span.class="tok-number">3 |
| 3cc40 | 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | </span>,.};..<span.class="tok-kw |
| 3cc60 | 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 |
| 3cc80 | 74 72 22 3e 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 74 6f 20 6e 6f 6e 2d 62 79 74 65 2d 61 6c | tr">"pointer.to.non-byte-al |
| 3cca0 | 69 67 6e 65 64 20 66 69 65 6c 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | igned.field"</span>.{.....< |
| 3ccc0 | 73 70 61 6e 20 63 6c 61 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> |
| 3cce0 | 20 70 74 72 20 3d 20 26 61 6d 70 3b 66 6f 6f 2e 62 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | .ptr.=.&foo.b;.....<span.cla |
| 3cd00 | 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 |
| 3cd20 | 72 2e 2a 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | r.*.==.<span.class="tok-number"> |
| 3cd40 | 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 69 67 75 72 | 2</span>);.}</code></pre></figur |
| 3cd60 | 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 |
| 3cd80 | 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>< |
| 3cda0 | 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 6f 69 6e 74 65 | samp>$.<kbd>zig.test.test_pointe |
| 3cdc0 | 72 5f 74 6f 5f 6e 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 | r_to_non-byte_aligned_field.zig< |
| 3cde0 | 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 70 6f 69 6e 74 65 72 5f 74 6f 5f 6e 6f 6e 2d 62 79 | /kbd>.1/1.test_pointer_to_non-by |
| 3ce00 | 74 65 5f 61 6c 69 67 6e 65 64 5f 66 69 65 6c 64 2e 74 65 73 74 2e 70 6f 69 6e 74 65 72 20 74 6f | te_aligned_field.test.pointer.to |
| 3ce20 | 20 6e 6f 6e 2d 62 79 74 65 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 2e 2e 2e 4f 4b 0a 41 6c 6c | .non-byte-aligned.field...OK.All |
| 3ce40 | 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></ |
| 3ce60 | 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 6f 77 65 76 65 72 | figure>........<p>.......However |
| 3ce80 | 2c 20 74 68 65 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 6e 6f 6e 2d 62 79 74 65 2d 61 6c 69 67 | ,.the.pointer.to.a.non-byte-alig |
| 3cea0 | 6e 65 64 20 66 69 65 6c 64 20 68 61 73 20 73 70 65 63 69 61 6c 20 70 72 6f 70 65 72 74 69 65 73 | ned.field.has.special.properties |
| 3cec0 | 20 61 6e 64 20 63 61 6e 6e 6f 74 0a 20 20 20 20 20 20 62 65 20 70 61 73 73 65 64 20 77 68 65 6e | .and.cannot.......be.passed.when |
| 3cee0 | 20 61 20 6e 6f 72 6d 61 6c 20 70 6f 69 6e 74 65 72 20 69 73 20 65 78 70 65 63 74 65 64 3a 0a 20 | .a.normal.pointer.is.expected:.. |
| 3cf00 | 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 |
| 3cf20 | 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= |
| 3cf40 | 22 66 69 6c 65 22 3e 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 | "file">test_misaligned_pointer.z |
| 3cf60 | 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 |
| 3cf80 | 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 |
| 3cfa0 | 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 |
| 3cfc0 | 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 |
| 3cfe0 | 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>); |
| 3d000 | 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 |
| 3d020 | 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;. |
| 3d040 | 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 |
| 3d060 | 6e 3e 20 42 69 74 46 69 65 6c 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | n>.BitField.=.<span.class="tok-k |
| 3d080 | 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 |
| 3d0a0 | 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 |
| 3d0c0 | 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>,.. |
| 3d0e0 | 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 75 33 3c | ...b:.<span.class="tok-type">u3< |
| 3d100 | 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 6f 6b 2d | /span>,.....c:.<span.class="tok- |
| 3d120 | 74 79 70 65 22 3e 75 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | type">u2</span>,.};..<span.class |
| 3d140 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 69 74 5f 66 69 65 6c 64 20 3d | ="tok-kw">var</span>.bit_field.= |
| 3d160 | 20 42 69 74 46 69 65 6c 64 7b 0a 20 20 20 20 2e 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .BitField{......a.=.<span.class= |
| 3d180 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 2e 62 20 3d 20 | "tok-number">1</span>,......b.=. |
| 3d1a0 | 3c 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 |
| 3d1c0 | 3e 2c 0a 20 20 20 20 2e 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | >,......c.=.<span.class="tok-num |
| 3d1e0 | 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ber">3</span>,.};..<span.class=" |
| 3d200 | 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= |
| 3d220 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 74 6f 20 6e 6f 6e 2d 62 | "tok-str">"pointer.to.non-b |
| 3d240 | 79 74 65 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | yte-aligned.field"</span>.{ |
| 3d260 | 0a 20 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 |
| 3d280 | 70 61 6e 3e 20 65 78 70 65 63 74 28 62 61 72 28 26 61 6d 70 3b 62 69 74 5f 66 69 65 6c 64 2e 62 | pan>.expect(bar(&bit_field.b |
| 3d2a0 | 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 3c | ).==.<span.class="tok-number">2< |
| 3d2c0 | 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" |
| 3d2e0 | 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"> |
| 3d300 | 62 61 72 3c 2f 73 70 61 6e 3e 28 78 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | bar</span>(x:.*<span.class="tok- |
| 3d320 | 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 |
| 3d340 | 6b 2d 74 79 70 65 22 3e 75 33 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-type">u3</span>).<span.class=" |
| 3d360 | 74 6f 6b 2d 74 79 70 65 22 3e 75 33 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | tok-type">u3</span>.{.....<span. |
| 3d380 | 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 78 2e 2a | class="tok-kw">return</span>.x.* |
| 3d3a0 | 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 |
| 3d3c0 | 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 |
| 3d3e0 | 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 |
| 3d400 | 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 6d 69 73 61 6c 69 67 6e 65 64 5f 70 6f 69 6e | bd>zig.test.test_misaligned_poin |
| 3d420 | 74 65 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 | ter.zig</kbd>.<span.class="sgr-1 |
| 3d440 | 6d 22 3e 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 | m">doc/langref/test_misaligned_p |
| 3d460 | 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 70 61 6e 20 63 | ointer.zig:17:20:.</span><span.c |
| 3d480 | 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 |
| 3d4a0 | 61 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 | an.class="sgr-1m">expected.type. |
| 3d4c0 | 27 2a 63 6f 6e 73 74 20 75 33 27 2c 20 66 6f 75 6e 64 20 27 2a 61 6c 69 67 6e 28 31 3a 33 3a 31 | '*const.u3',.found.'*align(1:3:1 |
| 3d4e0 | 29 20 75 33 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 74 72 79 20 65 78 70 65 63 74 28 62 61 72 28 | ).u3'.</span>....try.expect(bar( |
| 3d500 | 26 61 6d 70 3b 62 69 74 5f 66 69 65 6c 64 2e 62 29 20 3d 3d 20 32 29 3b 0a 20 20 20 20 20 20 20 | &bit_field.b).==.2);........ |
| 3d520 | 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 |
| 3d540 | 22 3e 5e 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 | ">^~~~~~~~~~~~.</span><span.clas |
| 3d560 | 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6d 69 73 61 | s="sgr-1m">doc/langref/test_misa |
| 3d580 | 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 61 6e | ligned_pointer.zig:17:20:.</span |
| 3d5a0 | 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 |
| 3d5c0 | 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 6f 69 6e 74 65 72 | pan><span.class="sgr-1m">pointer |
| 3d5e0 | 20 68 6f 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 | .host.size.'1'.cannot.cast.into. |
| 3d600 | 70 6f 69 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 | pointer.host.size.'0'.</span><sp |
| 3d620 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 | an.class="sgr-1m">doc/langref/te |
| 3d640 | 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 3a 31 37 3a 32 30 3a | st_misaligned_pointer.zig:17:20: |
| 3d660 | 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 |
| 3d680 | 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"> |
| 3d6a0 | 70 6f 69 6e 74 65 72 20 62 69 74 20 6f 66 66 73 65 74 20 27 33 27 20 63 61 6e 6e 6f 74 20 63 61 | pointer.bit.offset.'3'.cannot.ca |
| 3d6c0 | 73 74 20 69 6e 74 6f 20 70 6f 69 6e 74 65 72 20 62 69 74 20 6f 66 66 73 65 74 20 27 30 27 0a 3c | st.into.pointer.bit.offset.'0'.< |
| 3d6e0 | 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 64 6f 63 2f 6c | /span><span.class="sgr-1m">doc/l |
| 3d700 | 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 72 2e 7a | angref/test_misaligned_pointer.z |
| 3d720 | 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 22 73 67 | ig:20:11:.</span><span.class="sg |
| 3d740 | 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 3d | r-36m">note:.</span><span.class= |
| 3d760 | 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 72 65 64 | "sgr-1m">parameter.type.declared |
| 3d780 | 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 20 75 33 | .here.</span>fn.bar(x:.*const.u3 |
| 3d7a0 | 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 22 73 67 | ).u3.{...........<span.class="sg |
| 3d7c0 | 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 6d 70 3e | r-32m">^~~~~~~~~.</span>.</samp> |
| 3d7e0 | 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>...... |
| 3d800 | 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 63 6f 64 | .In.this.case,.the.function.<cod |
| 3d820 | 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 20 62 65 | e>bar</code>.cannot.be.called.be |
| 3d840 | 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 65 20 6e | cause.the.pointer.......to.the.n |
| 3d860 | 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 20 74 68 | on-ABI-aligned.field.mentions.th |
| 3d880 | 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 6e 20 65 | e.bit.offset,.but.the.function.e |
| 3d8a0 | 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 2e 0a 20 | xpects.an.ABI-aligned.pointer... |
| 3d8c0 | 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 6e 74 65 | .....</p>.......<p>.......Pointe |
| 3d8e0 | 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 73 68 61 | rs.to.non-ABI-aligned.fields.sha |
| 3d900 | 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 68 65 72 | re.the.same.address.as.the.other |
| 3d920 | 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 65 67 65 | .fields.within.their.host.intege |
| 3d940 | 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 66 69 67 | r:.......</p>.......<figure><fig |
| 3d960 | 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 |
| 3d980 | 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 5f 66 69 | ass="file">test_packed_struct_fi |
| 3d9a0 | 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 70 74 69 | eld_address.zig</cite></figcapti |
| 3d9c0 | 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 |
| 3d9e0 | 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 |
| 3da00 | 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>(< |
| 3da20 | 73 70 61 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 |
| 3da40 | 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 |
| 3da60 | 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 |
| 3da80 | 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 |
| 3daa0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 69 74 46 69 65 6c 64 20 3d 20 3c 73 70 61 6e | w">const</span>.BitField.=.<span |
| 3dac0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 20 3c 73 | .class="tok-kw">packed</span>.<s |
| 3dae0 | 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> |
| 3db00 | 20 7b 0a 20 20 20 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | .{.....a:.<span.class="tok-type" |
| 3db20 | 3e 75 33 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >u3</span>,.....b:.<span.class=" |
| 3db40 | 74 6f 6b 2d 74 79 70 65 22 3e 75 33 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 63 3a 20 3c 73 70 61 | tok-type">u3</span>,.....c:.<spa |
| 3db60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b | n.class="tok-type">u2</span>,.}; |
| 3db80 | 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e | ..<span.class="tok-kw">var</span |
| 3dba0 | 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 61 20 3d | >.bit_field.=.BitField{......a.= |
| 3dbc0 | 20 3c 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 |
| 3dbe0 | 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 2d 6e 75 | n>,......b.=.<span.class="tok-nu |
| 3dc00 | 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 6e 20 63 | mber">2</span>,......c.=.<span.c |
| 3dc20 | 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 3b 0a 0a | lass="tok-number">3</span>,.};.. |
| 3dc40 | 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> |
| 3dc60 | 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 6f 69 | .<span.class="tok-str">"poi |
| 3dc80 | 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 73 | nters.of.sub-byte-aligned.fields |
| 3dca0 | 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 20 7b 0a | .share.addresses"</span>.{. |
| 3dcc0 | 20 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 |
| 3dce0 | 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 |
| 3dd00 | 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 62 69 74 | tin">@intFromPtr</span>(&bit |
| 3dd20 | 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 2d 62 75 | _field.a).==.<span.class="tok-bu |
| 3dd40 | 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 62 | iltin">@intFromPtr</span>(&b |
| 3dd60 | 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 3d 22 74 | it_field.b));.....<span.class="t |
| 3dd80 | 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 |
| 3dda0 | 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 2f | lass="tok-builtin">@intFromPtr</ |
| 3ddc0 | 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 70 61 6e | span>(&bit_field.a).==.<span |
| 3dde0 | 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 |
| 3de00 | 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 3c 2f 63 | </span>(&bit_field.c));.}</c |
| 3de20 | 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 |
| 3de40 | 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</ |
| 3de60 | 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 |
| 3de80 | 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 64 5f 61 | .test.test_packed_struct_field_a |
| 3dea0 | 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 6b 65 64 | ddress.zig</kbd>.1/1.test_packed |
| 3dec0 | 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 69 6e 74 | _struct_field_address.test.point |
| 3dee0 | 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 73 20 73 | ers.of.sub-byte-aligned.fields.s |
| 3df00 | 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 74 73 20 | hare.addresses...OK.All.1.tests. |
| 3df20 | 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>.. |
| 3df40 | 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 62 73 65 | ......<p>.......This.can.be.obse |
| 3df60 | 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 4f 66 22 | rved.with.<a.href="#bitOffsetOf" |
| 3df80 | 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 3d 22 23 | >@bitOffsetOf</a>.and.<a.href="# |
| 3dfa0 | 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 20 3c 2f | offsetOf">offsetOf</a>:.......</ |
| 3dfc0 | 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 |
| 3dfe0 | 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"> |
| 3e000 | 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 3c 2f 63 | test_bitOffsetOf_offsetOf.zig</c |
| 3e020 | 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 |
| 3e040 | 6e 20 63 6c 61 73 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 |
| 3e060 | 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 |
| 3e080 | 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 |
| 3e0a0 | 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 |
| 3e0c0 | 6e 20 63 6c 61 73 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 |
| 3e0e0 | 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 |
| 3e100 | 6e 20 63 6c 61 73 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 | n.class="tok-kw">const</span>.Bi |
| 3e120 | 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 3e 70 61 | tField.=.<span.class="tok-kw">pa |
| 3e140 | 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" |
| 3e160 | 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 20 63 6c | >struct</span>.{.....a:.<span.cl |
| 3e180 | 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 20 62 3a | ass="tok-type">u3</span>,.....b: |
| 3e1a0 | 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 70 61 6e | .<span.class="tok-type">u3</span |
| 3e1c0 | 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 70 65 22 | >,.....c:.<span.class="tok-type" |
| 3e1e0 | 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 74 6f 6b | >u2</span>,.};..<span.class="tok |
| 3e200 | 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 |
| 3e220 | 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 79 74 65 | k-str">"offsets.of.non-byte |
| 3e240 | 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 7b 0a 20 | -aligned.fields"</span>.{.. |
| 3e260 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 | ...<span.class="tok-kw">comptime |
| 3e280 | 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 |
| 3e2a0 | 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 |
| 3e2c0 | 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 4f 66 3c | lass="tok-builtin">@bitOffsetOf< |
| 3e2e0 | 2f 73 70 61 6e 3e 28 42 69 74 46 69 65 6c 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | /span>(BitField,.<span.class="to |
| 3e300 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 | k-str">"a"</span>).==. |
| 3e320 | 3c 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 |
| 3e340 | 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | >);.........<span.class="tok-kw" |
| 3e360 | 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=" |
| 3e380 | 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 61 6e 3e | tok-builtin">@bitOffsetOf</span> |
| 3e3a0 | 28 42 69 74 46 69 65 6c 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | (BitField,.<span.class="tok-str" |
| 3e3c0 | 3e 26 71 75 6f 74 3b 62 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 | >"b"</span>).==.<span. |
| 3e3e0 | 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 20 20 | class="tok-number">3</span>);... |
| 3e400 | 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</ |
| 3e420 | 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 |
| 3e440 | 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 74 46 69 | iltin">@bitOffsetOf</span>(BitFi |
| 3e460 | 65 6c 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | eld,.<span.class="tok-str">" |
| 3e480 | 3b 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ;c"</span>).==.<span.class= |
| 3e4a0 | 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 20 20 20 | "tok-number">6</span>);......... |
| 3e4c0 | 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> |
| 3e4e0 | 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 |
| 3e500 | 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 3c 73 70 | ">@offsetOf</span>(BitField,.<sp |
| 3e520 | 61 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" |
| 3e540 | 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | </span>).==.<span.class="tok-num |
| 3e560 | 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 20 63 6c | ber">0</span>);.........<span.cl |
| 3e580 | 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(< |
| 3e5a0 | 73 70 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 73 65 74 | span.class="tok-builtin">@offset |
| 3e5c0 | 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= |
| 3e5e0 | 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 3e 29 20 | "tok-str">"b"</span>). |
| 3e600 | 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 |
| 3e620 | 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- |
| 3e640 | 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 |
| 3e660 | 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 61 6e 3e | s="tok-builtin">@offsetOf</span> |
| 3e680 | 28 42 69 74 46 69 65 6c 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | (BitField,.<span.class="tok-str" |
| 3e6a0 | 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 61 6e 20 | >"c"</span>).==.<span. |
| 3e6c0 | 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>);... |
| 3e6e0 | 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 |
| 3e700 | 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" |
| 3e720 | 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>$. |
| 3e740 | 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 66 5f 6f | <kbd>zig.test.test_bitOffsetOf_o |
| 3e760 | 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 74 4f 66 | ffsetOf.zig</kbd>.1/1.test_bitOf |
| 3e780 | 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 6f 66 20 | fsetOf_offsetOf.test.offsets.of. |
| 3e7a0 | 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 41 6c 6c | non-byte-aligned.fields...OK.All |
| 3e7c0 | 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></ |
| 3e7e0 | 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 65 64 20 | figure>........<p>.......Packed. |
| 3e800 | 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 6e 74 20 | structs.have.the.same.alignment. |
| 3e820 | 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 65 76 65 | as.their.backing.integer,.howeve |
| 3e840 | 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 20 74 6f | r,.overaligned.......pointers.to |
| 3e860 | 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 74 68 69 | .packed.structs.can.override.thi |
| 3e880 | 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 |
| 3e8a0 | 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 |
| 3e8c0 | 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 61 63 6b | ass="file">test_overaligned_pack |
| 3e8e0 | 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 6e | ed_struct.zig</cite></figcaption |
| 3e900 | 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" |
| 3e920 | 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= |
| 3e940 | 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 |
| 3e960 | 61 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 |
| 3e980 | 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" |
| 3e9a0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 | >const</span>.expect.=.std.testi |
| 3e9c0 | 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ng.expect;..<span.class="tok-kw" |
| 3e9e0 | 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 3d 22 74 | >const</span>.S.=.<span.class="t |
| 3ea00 | 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 61 73 73 | ok-kw">packed</span>.<span.class |
| 3ea20 | 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 3a | ="tok-kw">struct</span>.{.....a: |
| 3ea40 | 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 |
| 3ea60 | 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 79 70 65 | n>,.....b:.<span.class="tok-type |
| 3ea80 | 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 22 74 6f | ">u32</span>,.};.<span.class="to |
| 3eaa0 | 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 |
| 3eac0 | 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 6e 74 65 | ok-str">"overaligned.pointe |
| 3eae0 | 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 6e 3e 20 | r.to.packed.struct"</span>. |
| 3eb00 | 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</ |
| 3eb20 | 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 2d 6b 77 | span>.foo:.S.<span.class="tok-kw |
| 3eb40 | 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- |
| 3eb60 | 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 73 70 61 | number">4</span>).=..{..a.=.<spa |
| 3eb80 | 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>,.. |
| 3eba0 | 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 32 3c 2f | b.=.<span.class="tok-number">2</ |
| 3ebc0 | 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 6b 77 | span>.};.....<span.class="tok-kw |
| 3ebe0 | 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 |
| 3ec00 | 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ="tok-kw">align</span>(<span.cla |
| 3ec20 | 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 20 26 61 | ss="tok-number">4</span>).S.=.&a |
| 3ec40 | 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 6b 77 22 | mp;foo;.....<span.class="tok-kw" |
| 3ec60 | 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 6e 20 63 | >const</span>.ptr_to_b:.*<span.c |
| 3ec80 | 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 26 61 6d | lass="tok-type">u32</span>.=.&am |
| 3eca0 | 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 2d 6b 77 | p;ptr.b;.....<span.class="tok-kw |
| 3ecc0 | 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 2a 20 3d | ">try</span>.expect(ptr_to_b.*.= |
| 3ece0 | 3d 20 3c 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 |
| 3ed00 | 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 |
| 3ed20 | 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 |
| 3ed40 | 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> |
| 3ed60 | 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 6e 65 64 | $.<kbd>zig.test.test_overaligned |
| 3ed80 | 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 74 65 73 | _packed_struct.zig</kbd>.1/1.tes |
| 3eda0 | 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 65 73 74 | t_overaligned_packed_struct.test |
| 3edc0 | 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 64 20 73 | .overaligned.pointer.to.packed.s |
| 3ede0 | 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 2e 0a 3c | truct...OK.All.1.tests.passed..< |
| 3ee00 | 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> |
| 3ee20 | 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 73 65 74 | .......It's.also.possible.to.set |
| 3ee40 | 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 20 20 20 | .alignment.of.struct.fields:.... |
| 3ee60 | 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 |
| 3ee80 | 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 |
| 3eea0 | 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 64 73 2e | ile">test_aligned_struct_fields. |
| 3eec0 | 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 |
| 3eee0 | 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 |
| 3ef00 | 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 |
| 3ef20 | 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=" |
| 3ef40 | 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>) |
| 3ef60 | 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 |
| 3ef80 | 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 2e 65 78 | an>.expectEqual.=.std.testing.ex |
| 3efa0 | 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 6b 77 22 | pectEqual;..<span.class="tok-kw" |
| 3efc0 | 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 |
| 3efe0 | 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 73 26 71 | r">"aligned.struct.fields&q |
| 3f000 | 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 |
| 3f020 | 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 63 6c | ok-kw">const</span>.S.=.<span.cl |
| 3f040 | 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>.{.... |
| 3f060 | 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 22 3e 75 | .....a:.<span.class="tok-type">u |
| 3f080 | 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 22 3e 61 | 32</span>.<span.class="tok-kw">a |
| 3f0a0 | 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 6d | lign</span>(<span.class="tok-num |
| 3f0c0 | 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 70 61 6e | ber">2</span>),.........b:.<span |
| 3f0e0 | 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 3c 73 70 | .class="tok-type">u32</span>.<sp |
| 3f100 | 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>(< |
| 3f120 | 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 70 61 6e | span.class="tok-number">64</span |
| 3f140 | 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 6f 6b 2d | >),.....};.....<span.class="tok- |
| 3f160 | 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 3c 73 70 | kw">var</span>.foo.=.S{..a.=.<sp |
| 3f180 | 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 20 | an.class="tok-number">1</span>,. |
| 3f1a0 | 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 32 3c | .b.=.<span.class="tok-number">2< |
| 3f1c0 | 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>.};......<span.class="tok- |
| 3f1e0 | 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 70 61 6e | kw">try</span>.expectEqual(<span |
| 3f200 | 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 2c 20 3c | .class="tok-number">64</span>,.< |
| 3f220 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 4f | span.class="tok-builtin">@alignO |
| 3f240 | 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 3d 22 74 | f</span>(S));.....<span.class="t |
| 3f260 | 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 2a 3c | ok-kw">try</span>.expectEqual(*< |
| 3f280 | 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 3e | span.class="tok-kw">align</span> |
| 3f2a0 | 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 |
| 3f2c0 | 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 32 3c 2f | n>).<span.class="tok-type">u32</ |
| 3f2e0 | 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 69 6e 22 | span>,.<span.class="tok-builtin" |
| 3f300 | 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 0a 20 20 | >@TypeOf</span>(&foo.a));... |
| 3f320 | 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 |
| 3f340 | 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 6f 6b 2d | >.expectEqual(*<span.class="tok- |
| 3f360 | 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 |
| 3f380 | 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 61 73 73 | k-number">64</span>).<span.class |
| 3f3a0 | 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 20 63 6c | ="tok-type">u32</span>,.<span.cl |
| 3f3c0 | 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> |
| 3f3e0 | 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 3c 2f 66 | (&foo.b));.}</code></pre></f |
| 3f400 | 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= |
| 3f420 | 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 |
| 3f440 | 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 61 6c | re><samp>$.<kbd>zig.test.test_al |
| 3f460 | 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 0a 31 2f | igned_struct_fields.zig</kbd>.1/ |
| 3f480 | 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 74 65 73 | 1.test_aligned_struct_fields.tes |
| 3f4a0 | 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 41 6c 6c | t.aligned.struct.fields...OK.All |
| 3f4c0 | 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></ |
| 3f4e0 | 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 67 20 70 | figure>........<p>.......Using.p |
| 3f500 | 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 76 6f 6c | acked.structs.with.<a.href="#vol |
| 3f520 | 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 6d 61 74 | atile">volatile</a>.is.problemat |
| 3f540 | 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 72 20 69 | ic,.and.may.be.a.compile.error.i |
| 3f560 | 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 6c 73 20 | n.the.future........For.details. |
| 3f580 | 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 20 68 72 | on.this.subscribe.to.......<a.hr |
| 3f5a0 | 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a | ef="https://github.com/ziglang/z |
| 3f5c0 | 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 3e 2e 0a | ig/issues/1761">this.issue</a>.. |
| 3f5e0 | 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 77 69 74 | ......TODO.update.these.docs.wit |
| 3f600 | 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 75 73 65 | h.a.recommendation.on.how.to.use |
| 3f620 | 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 20 20 20 | .packed.structs.with.MMIO....... |
| 3f640 | 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 63 6b 65 | (the.use.case.for.volatile.packe |
| 3f660 | 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 20 72 65 | d.structs).once.this.issue.is.re |
| 3f680 | 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 65 72 65 | solved........Don't.worry,.there |
| 3f6a0 | 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 74 68 69 | .will.be.a.good.solution.for.thi |
| 3f6c0 | 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 0a 20 20 | s.use.case.in.zig........</p>... |
| 3f6e0 | 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 6d 69 6e | ............<h3.id="Struct-Namin |
| 3f700 | 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 67 22 3e | g"><a.href="#toc-Struct-Naming"> |
| 3f720 | 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 64 72 22 | Struct.Naming</a>.<a.class="hdr" |
| 3f740 | 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 3c 2f 68 | .href="#Struct-Naming">..</a></h |
| 3f760 | 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 73 20 61 | 3>........<p>Since.all.structs.a |
| 3f780 | 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 74 79 70 | re.anonymous,.Zig.infers.the.typ |
| 3f7a0 | 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 2f 70 3e | e.name.based.on.a.few.rules.</p> |
| 3f7c0 | 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 74 68 65 | .......<ul>...........<li>If.the |
| 3f7e0 | 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 69 6f 6e | .struct.is.in.the.initialization |
| 3f800 | 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 20 67 65 | .expression.of.a.variable,.it.ge |
| 3f820 | 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 20 76 61 | ts.named.after...........that.va |
| 3f840 | 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 20 74 68 | riable.</li>...........<li>If.th |
| 3f860 | 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 6e 20 63 | e.struct.is.in.the.<code><span.c |
| 3f880 | 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 63 6f 64 | lass="tok-kw">return</span></cod |
| 3f8a0 | 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 61 66 74 | e>.expression,.it.gets.named.aft |
| 3f8c0 | 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 69 73 20 | er...........the.function.it.is. |
| 3f8e0 | 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 6d 65 74 | returning.from,.with.the.paramet |
| 3f900 | 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 20 20 20 | er.values.serialized.</li>...... |
| 3f920 | 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 74 20 67 | .....<li>Otherwise,.the.struct.g |
| 3f940 | 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 65 6e 61 | ets.a.name.such.as.<code>(filena |
| 3f960 | 6d 65 2e 66 75 6e 63 6e 61 6d 65 2e 5f 5f 73 74 72 75 63 74 5f 49 44 29 3c 2f 63 6f 64 65 3e 2e | me.funcname.__struct_ID)</code>. |
| 3f980 | 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 75 63 | </li>...........<li>If.the.struc |
| 3f9a0 | 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 74 72 | t.is.declared.inside.another.str |
| 3f9c0 | 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 74 68 | uct,.it.gets.named.after.both.th |
| 3f9e0 | 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 74 68 | e.parent...........struct.and.th |
| 3fa00 | 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 73 20 | e.name.inferred.by.the.previous. |
| 3fa20 | 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 3e 0a | rules,.separated.by.a.dot.</li>. |
| 3fa40 | 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 63 61 | ......</ul>.......<figure><figca |
| 3fa60 | 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 |
| 3fa80 | 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 3e 3c | s="file">struct_name.zig</cite>< |
| 3faa0 | 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 |
| 3fac0 | 73 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.=.< |
| 3fae0 | 73 70 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 |
| 3fb00 | 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 |
| 3fb20 | 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c | uot;std"</span>);..<span.cl |
| 3fb40 | 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 |
| 3fb60 | 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 |
| 3fb80 | 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. |
| 3fba0 | 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>.{.. |
| 3fbc0 | 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 |
| 3fbe0 | 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.Foo.=.<span.class="tok-kw"> |
| 3fc00 | 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 67 2e | struct</span>.{};.....std.debug. |
| 3fc20 | 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 |
| 3fc40 | 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 2c 20 | t;variable:.{s}\n"</span>,. |
| 3fc60 | 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 79 70 | .{<span.class="tok-builtin">@typ |
| 3fc80 | 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 65 62 | eName</span>(Foo)});.....std.deb |
| 3fca0 | 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | ug.print(<span.class="tok-str">& |
| 3fcc0 | 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 70 61 | quot;anonymous:.{s}\n"</spa |
| 3fce0 | 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"> |
| 3fd00 | 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 74 6f | @typeName</span>(<span.class="to |
| 3fd20 | 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 20 73 | k-kw">struct</span>.{})});.....s |
| 3fd40 | 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- |
| 3fd60 | 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 74 3b | str">"function:.{s}\n" |
| 3fd80 | 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 69 6c | </span>,..{<span.class="tok-buil |
| 3fda0 | 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 61 6e | tin">@typeName</span>(List(<span |
| 3fdc0 | 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 7d 29 | .class="tok-type">i32</span>))}) |
| 3fde0 | 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 |
| 3fe00 | 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 2f 73 | an>.<span.class="tok-fn">List</s |
| 3fe20 | 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 |
| 3fe40 | 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 |
| 3fe60 | 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 |
| 3fe80 | 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | k-type">type</span>.{.....<span. |
| 3fea0 | 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 70 | class="tok-kw">return</span>.<sp |
| 3fec0 | 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>. |
| 3fee0 | 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 3e 3c | {.........x:.T,.....};.}</code>< |
| 3ff00 | 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 |
| 3ff20 | 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 |
| 3ff40 | 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 |
| 3ff60 | 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 3c 6b | d-exe.struct_name.zig</kbd>.$.<k |
| 3ff80 | 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 65 3a | bd>./struct_name</kbd>.variable: |
| 3ffa0 | 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 73 3a | .struct_name.main.Foo.anonymous: |
| 3ffc0 | 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 33 33 33 31 0a 66 | .struct_name.main__struct_3331.f |
| 3ffe0 | 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 29 0a 3c | unction:.struct_name.List(i32).< |
| 40000 | 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>........... |
| 40020 | 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 2d 4c 69 | .....<h3.id="Anonymous-Struct-Li |
| 40040 | 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 75 73 2d | terals"><a.href="#toc-Anonymous- |
| 40060 | 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 72 75 63 | Struct-Literals">Anonymous.Struc |
| 40080 | 74 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | t.Literals</a>.<a.class="hdr".hr |
| 400a0 | 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 22 3e | ef="#Anonymous-Struct-Literals"> |
| 400c0 | 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 5a 69 67 | ..</a></h3>........<p>.......Zig |
| 400e0 | 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 79 70 65 | .allows.omitting.the.struct.type |
| 40100 | 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 74 20 69 | .of.a.literal..When.the.result.i |
| 40120 | 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 63 | s.<a.href="#Type-Coercion">coerc |
| 40140 | 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 72 61 6c | ed</a>,.......the.struct.literal |
| 40160 | 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 65 20 3c | .will.directly.instantiate.the.< |
| 40180 | 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 6e 74 69 | a.href="#Result-Location-Semanti |
| 401a0 | 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 20 20 77 | cs">result.location</a>,.......w |
| 401c0 | 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 20 3c 66 | ith.no.copy:.......</p>.......<f |
| 401e0 | 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 |
| 40200 | 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 75 63 74 | "><cite.class="file">test_struct |
| 40220 | 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 6e 3e 3c | _result.zig</cite></figcaption>< |
| 40240 | 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 |
| 40260 | 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 |
| 40280 | 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 |
| 402a0 | 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" |
| 402c0 | 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 |
| 402e0 | 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 |
| 40300 | 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 63 | .expect;..<span.class="tok-kw">c |
| 40320 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | onst</span>.Point.=.<span.class= |
| 40340 | 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 73 70 61 | "tok-kw">struct</span>.{.x:.<spa |
| 40360 | 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 79 | n.class="tok-type">i32</span>,.y |
| 40380 | 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 |
| 403a0 | 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 74 65 73 | an>.};..<span.class="tok-kw">tes |
| 403c0 | 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">& |
| 403e0 | 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 26 71 75 | quot;anonymous.struct.literal&qu |
| 40400 | 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 |
| 40420 | 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 3d 20 2e | k-kw">const</span>.pt:.Point.=.. |
| 40440 | 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 6f 6b 2d | {..........x.=.<span.class="tok- |
| 40460 | 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 20 3d 20 | number">13</span>,..........y.=. |
| 40480 | 3c 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 73 70 61 | <span.class="tok-number">67</spa |
| 404a0 | 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- |
| 404c0 | 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 20 3c 73 | kw">try</span>.expect(pt.x.==.<s |
| 404e0 | 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 61 6e 3e | pan.class="tok-number">13</span> |
| 40500 | 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< |
| 40520 | 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 6c 61 73 | /span>.expect(pt.y.==.<span.clas |
| 40540 | 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 2f 63 6f | s="tok-number">67</span>);.}</co |
| 40560 | 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 |
| 40580 | 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 |
| 405a0 | 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. |
| 405c0 | 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 6b 62 64 | test.test_struct_result.zig</kbd |
| 405e0 | 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 2e 61 6e | >.1/1.test_struct_result.test.an |
| 40600 | 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 6c 6c 20 | onymous.struct.literal...OK.All. |
| 40620 | 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 |
| 40640 | 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 74 72 75 | igure>........<p>.......The.stru |
| 40660 | 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 20 74 68 | ct.type.can.be.inferred..Here.th |
| 40680 | 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 |
| 406a0 | 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 20 20 20 | ntics">result.location</a>...... |
| 406c0 | 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 20 73 6f | .does.not.include.a.type,.and.so |
| 406e0 | 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 2f 70 3e | .Zig.infers.the.type:.......</p> |
| 40700 | 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 |
| 40720 | 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 |
| 40740 | 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 3e 3c 2f | st_anonymous_struct.zig</cite></ |
| 40760 | 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 |
| 40780 | 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 |
| 407a0 | 70 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< |
| 407c0 | 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 |
| 407e0 | 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 |
| 40800 | 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.= |
| 40820 | 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 |
| 40840 | 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 |
| 40860 | 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 79 6d 6f | ss="tok-str">"fully.anonymo |
| 40880 | 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 3c 73 70 | us.struct"</span>.{.....<sp |
| 408a0 | 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 63 68 65 | an.class="tok-kw">try</span>.che |
| 408c0 | 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 61 73 73 | ck(.{..........int.=.<span.class |
| 408e0 | 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. |
| 40900 | 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 |
| 40920 | 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 |
| 40940 | 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 61 73 73 | >),..........float.=.<span.class |
| 40960 | 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. |
| 40980 | 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 3c 73 70 | class="tok-type">f64</span>,.<sp |
| 409a0 | 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 61 | an.class="tok-number">12.34</spa |
| 409c0 | 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 3d 22 74 | n>),..........b.=.<span.class="t |
| 409e0 | 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 20 2e 73 | ok-null">true</span>,..........s |
| 40a00 | 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 |
| 40a20 | 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 70 61 6e | i"</span>,.....});.}..<span |
| 40a40 | 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. |
| 40a60 | 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 72 67 73 | class="tok-fn">check</span>(args |
| 40a80 | 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</ |
| 40aa0 | 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 | span>).!<span.class="tok-type">v |
| 40ac0 | 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 |
| 40ae0 | 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 69 6e 74 | k-kw">try</span>.expect(args.int |
| 40b00 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 | .==.<span.class="tok-number">123 |
| 40b20 | 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 4</span>);.....<span.class="tok- |
| 40b40 | 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 6f 61 74 | kw">try</span>.expect(args.float |
| 40b60 | 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. |
| 40b80 | 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 34</span>);.....<span.class="tok |
| 40ba0 | 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 29 3b 0a | -kw">try</span>.expect(args.b);. |
| 40bc0 | 20 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 |
| 40be0 | 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 3d 22 74 | an>.expect(args.s[<span.class="t |
| 40c00 | 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 63 6c | ok-number">0</span>].==.<span.cl |
| 40c20 | 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 20 20 3c | ass="tok-str">'h'</span>);.....< |
| 40c40 | 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 |
| 40c60 | 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 2d 6e 75 | xpect(args.s[<span.class="tok-nu |
| 40c80 | 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 73 3d 22 | mber">1</span>].==.<span.class=" |
| 40ca0 | 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 3e 3c 2f | tok-str">'i'</span>);.}</code></ |
| 40cc0 | 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 |
| 40ce0 | 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 |
| 40d00 | 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. |
| 40d20 | 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 64 3e 0a | test_anonymous_struct.zig</kbd>. |
| 40d40 | 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 74 2e 66 | 1/1.test_anonymous_struct.test.f |
| 40d60 | 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 6c 20 31 | ully.anonymous.struct...OK.All.1 |
| 40d80 | 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 |
| 40da0 | 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 54 75 70 | gure>................<h3.id="Tup |
| 40dc0 | 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 70 6c 65 | les"><a.href="#toc-Tuples">Tuple |
| 40de0 | 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 75 70 6c | s</a>.<a.class="hdr".href="#Tupl |
| 40e00 | 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 20 | es">..</a></h3>........<p>...... |
| 40e20 | 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 61 74 65 | .Anonymous.structs.can.be.create |
| 40e40 | 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 6d 65 73 | d.without.specifying.field.names |
| 40e60 | 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 6c 65 73 | ,.and.are.referred.to.as."tuples |
| 40e80 | 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 20 20 54 68 | "........</p>.......<p>.......Th |
| 40ea0 | 65 20 66 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 | e.fields.are.implicitly.named.us |
| 40ec0 | 69 6e 67 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 | ing.numbers.starting.from.0..Bec |
| 40ee0 | 61 75 73 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 | ause.their.names.are.integers,.. |
| 40f00 | 20 20 20 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 | .....they.cannot.be.accessed.wit |
| 40f20 | 68 20 3c 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 | h.<code>.</code>.syntax.without. |
| 40f40 | 61 6c 73 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 | also.wrapping.them.in.......<cod |
| 40f60 | 65 3e 40 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 | e>@""</code>..Names.in |
| 40f80 | 73 69 64 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 | side.<code>@""</code>. |
| 40fa0 | 61 72 65 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 | are.always.recognised.as.......< |
| 40fc0 | 61 20 68 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 | a.href="#Identifiers">identifier |
| 40fe0 | 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | s</a>........</p>.......<p>..... |
| 41000 | 20 20 4c 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 | ..Like.arrays,.tuples.have.a..le |
| 41020 | 6e 20 66 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 | n.field,.can.be.indexed.(provide |
| 41040 | 64 20 74 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 | d.the.index.is.comptime-known).. |
| 41060 | 20 20 20 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 | .....and.work.with.the.++.and.** |
| 41080 | 20 6f 70 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 | .operators..They.can.also.be.ite |
| 410a0 | 72 61 74 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 | rated.over.with.<a.href="#inline |
| 410c0 | 2d 66 6f 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 | -for">inline.for</a>........</p> |
| 410e0 | 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 |
| 41100 | 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 |
| 41120 | 73 74 5f 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 | st_tuples.zig</cite></figcaption |
| 41140 | 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" |
| 41160 | 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= |
| 41180 | 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 |
| 411a0 | 61 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 |
| 411c0 | 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" |
| 411e0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 | >const</span>.expect.=.std.testi |
| 41200 | 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ng.expect;..<span.class="tok-kw" |
| 41220 | 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 |
| 41240 | 72 22 3e 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 | r">"tuple"</span>.{... |
| 41260 | 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 |
| 41280 | 61 6e 3e 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 | an>.values.=..{.........<span.cl |
| 412a0 | 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 |
| 412c0 | 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>,. |
| 412e0 | 3c 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 |
| 41300 | 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>),.........<span.class="tok- |
| 41320 | 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | builtin">@as</span>(<span.class= |
| 41340 | 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | "tok-type">f64</span>,.<span.cla |
| 41360 | 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 29 2c 0a 20 | ss="tok-number">12.34</span>),.. |
| 41380 | 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 |
| 413a0 | 75 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ue</span>,.........<span.class=" |
| 413c0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a | tok-str">"hi"</span>,. |
| 413e0 | 20 20 20 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 | ....}.++..{<span.class="tok-null |
| 41400 | 22 3e 66 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 | ">false</span>}.**.<span.class=" |
| 41420 | 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 6e 20 | tok-number">2</span>;.....<span. |
| 41440 | 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 |
| 41460 | 28 76 61 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 | (values[<span.class="tok-number" |
| 41480 | 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 6e | >0</span>].==.<span.class="tok-n |
| 414a0 | 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 |
| 414c0 | 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( |
| 414e0 | 76 61 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 | values[<span.class="tok-number"> |
| 41500 | 34 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | 4</span>].==.<span.class="tok-nu |
| 41520 | 6c 6c 22 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 | ll">false</span>);.....<span.cla |
| 41540 | 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. |
| 41560 | 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 76 61 6c 75 65 | class="tok-kw">for</span>.(value |
| 41580 | 73 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 | s,.<span.class="tok-number">0</s |
| 415a0 | 70 61 6e 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 | pan>..).|v,.i|.{.........<span.c |
| 415c0 | 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 21 3d 20 3c 73 | lass="tok-kw">if</span>.(i.!=.<s |
| 415e0 | 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>) |
| 41600 | 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</ |
| 41620 | 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- |
| 41640 | 6b 77 22 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 | kw">try</span>.expect(v);.....}. |
| 41660 | 20 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 |
| 41680 | 61 6e 3e 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 | an>.expect(values.len.==.<span.c |
| 416a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | lass="tok-number">6</span>);.... |
| 416c0 | 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> |
| 416e0 | 20 65 78 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 | .expect(values.@"3"[<s |
| 41700 | 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>] |
| 41720 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 68 27 3c 2f 73 | .==.<span.class="tok-str">'h'</s |
| 41740 | 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 |
| 41760 | 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 |
| 41780 | 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 |
| 417a0 | 3e 24 20 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 | >$.<kbd>zig.test.test_tuples.zig |
| 417c0 | 3c 2f 6b 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 | </kbd>.1/1.test_tuples.test.tupl |
| 417e0 | 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 6d | e...OK.All.1.tests.passed..</sam |
| 41800 | 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>............... |
| 41820 | 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 |
| 41840 | 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | ="#comptime">comptime</a></li>.< |
| 41860 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 22 3e 40 66 69 | li><a.href="#fieldParentPtr">@fi |
| 41880 | 65 6c 64 50 61 72 65 6e 74 50 74 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 | eldParentPtr</a></li>.</ul>..... |
| 418a0 | 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 65 6e 75 6d 22 3e 3c 61 20 68 72 65 66 3d | ..........<h2.id="enum"><a.href= |
| 418c0 | 22 23 74 6f 63 2d 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | "#toc-enum">enum</a>.<a.class="h |
| 418e0 | 64 72 22 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | dr".href="#enum">..</a></h2>.... |
| 41900 | 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 |
| 41920 | 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_ |
| 41940 | 65 6e 75 6d 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 | enums.zig</cite></figcaption><pr |
| 41960 | 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 |
| 41980 | 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=" |
| 419a0 | 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 |
| 419c0 | 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" |
| 419e0 | 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 | ;</span>).testing.expect;.<span. |
| 41a00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 | class="tok-kw">const</span>.mem. |
| 41a20 | 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 |
| 41a40 | 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" |
| 41a60 | 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 65 6d 3b 0a 0a 3c | >"std"</span>).mem;..< |
| 41a80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 44 65 63 6c | span.class="tok-comment">//.Decl |
| 41aa0 | 61 72 65 20 61 6e 20 65 6e 75 6d 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | are.an.enum.</span>.<span.class= |
| 41ac0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 79 70 65 20 3d 20 3c 73 70 | "tok-kw">const</span>.Type.=.<sp |
| 41ae0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a | an.class="tok-kw">enum</span>.{. |
| 41b00 | 20 20 20 20 6f 6b 2c 0a 20 20 20 20 6e 6f 74 5f 6f 6b 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c | ....ok,.....not_ok,.};..<span.cl |
| 41b20 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 44 65 63 6c 61 72 65 20 61 20 73 | ass="tok-comment">//.Declare.a.s |
| 41b40 | 70 65 63 69 66 69 63 20 65 6e 75 6d 20 66 69 65 6c 64 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | pecific.enum.field.</span>.<span |
| 41b60 | 20 63 6c 61 73 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.= |
| 41b80 | 20 54 79 70 65 2e 6f 6b 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | .Type.ok;..<span.class="tok-comm |
| 41ba0 | 65 6e 74 22 3e 2f 2f 20 49 66 20 79 6f 75 20 77 61 6e 74 20 61 63 63 65 73 73 20 74 6f 20 74 68 | ent">//.If.you.want.access.to.th |
| 41bc0 | 65 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 20 6f 66 20 61 6e 20 65 6e 75 6d 2c 20 79 6f 75 3c | e.ordinal.value.of.an.enum,.you< |
| 41be0 | 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" |
| 41c00 | 3e 2f 2f 20 63 61 6e 20 73 70 65 63 69 66 79 20 74 68 65 20 74 61 67 20 74 79 70 65 2e 3c 2f 73 | >//.can.specify.the.tag.type.</s |
| 41c20 | 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | pan>.<span.class="tok-kw">const< |
| 41c40 | 2f 73 70 61 6e 3e 20 56 61 6c 75 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>.Value.=.<span.class="tok- |
| 41c60 | 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | kw">enum</span>(<span.class="tok |
| 41c80 | 2d 74 79 70 65 22 3e 75 32 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 7a 65 72 6f 2c 0a 20 20 | -type">u2</span>).{.....zero,... |
| 41ca0 | 20 20 6f 6e 65 2c 0a 20 20 20 20 74 77 6f 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ..one,.....two,.};.<span.class=" |
| 41cc0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 6f 77 20 79 6f 75 20 63 61 6e 20 63 61 73 74 | tok-comment">//.Now.you.can.cast |
| 41ce0 | 20 62 65 74 77 65 65 6e 20 75 32 20 61 6e 64 20 56 61 6c 75 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 | .between.u2.and.Value.</span>.<s |
| 41d00 | 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 6f | pan.class="tok-comment">//.The.o |
| 41d20 | 72 64 69 6e 61 6c 20 76 61 6c 75 65 20 73 74 61 72 74 73 20 66 72 6f 6d 20 30 2c 20 63 6f 75 6e | rdinal.value.starts.from.0,.coun |
| 41d40 | 74 69 6e 67 20 75 70 20 62 79 20 31 20 66 72 6f 6d 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 6d | ting.up.by.1.from.the.previous.m |
| 41d60 | 65 6d 62 65 72 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ember.</span>.<span.class="tok-k |
| 41d80 | 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- |
| 41da0 | 73 74 72 22 3e 26 71 75 6f 74 3b 65 6e 75 6d 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 26 71 75 | str">"enum.ordinal.value&qu |
| 41dc0 | 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 |
| 41de0 | 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 |
| 41e00 | 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 2f | ass="tok-builtin">@intFromEnum</ |
| 41e20 | 73 70 61 6e 3e 28 56 61 6c 75 65 2e 7a 65 72 6f 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | span>(Value.zero).==.<span.class |
| 41e40 | 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 3c 73 70 | ="tok-number">0</span>);.....<sp |
| 41e60 | 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 |
| 41e80 | 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 69 | ect(<span.class="tok-builtin">@i |
| 41ea0 | 6e 74 46 72 6f 6d 45 6e 75 6d 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 2e 6f 6e 65 29 20 3d 3d 20 | ntFromEnum</span>(Value.one).==. |
| 41ec0 | 3c 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 |
| 41ee0 | 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 |
| 41f00 | 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- |
| 41f20 | 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 3e 28 56 61 6c | builtin">@intFromEnum</span>(Val |
| 41f40 | 75 65 2e 74 77 6f 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | ue.two).==.<span.class="tok-numb |
| 41f60 | 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 3d 22 74 | er">2</span>);.}..<span.class="t |
| 41f80 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 59 6f 75 20 63 61 6e 20 6f 76 65 72 72 69 64 65 20 | ok-comment">//.You.can.override. |
| 41fa0 | 74 68 65 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 20 66 6f 72 20 61 6e 20 65 6e 75 6d 2e 3c 2f | the.ordinal.value.for.an.enum.</ |
| 41fc0 | 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 |
| 41fe0 | 3c 2f 73 70 61 6e 3e 20 56 61 6c 75 65 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>.Value2.=.<span.class="to |
| 42000 | 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | k-kw">enum</span>(<span.class="t |
| 42020 | 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 68 75 6e 64 72 | ok-type">u32</span>).{.....hundr |
| 42040 | 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 31 30 | ed.=.<span.class="tok-number">10 |
| 42060 | 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 74 68 6f 75 73 61 6e 64 20 3d 20 3c 73 70 61 6e 20 63 | 0</span>,.....thousand.=.<span.c |
| 42080 | 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 6e 3e 2c 0a 20 | lass="tok-number">1000</span>,.. |
| 420a0 | 20 20 20 6d 69 6c 6c 69 6f 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ...million.=.<span.class="tok-nu |
| 420c0 | 6d 62 65 72 22 3e 31 30 30 30 30 30 30 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 | mber">1000000</span>,.};.<span.c |
| 420e0 | 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. |
| 42100 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 65 74 20 65 6e 75 6d 20 6f | class="tok-str">"set.enum.o |
| 42120 | 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 20 20 20 | rdinal.value"</span>.{..... |
| 42140 | 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>. |
| 42160 | 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | expect(<span.class="tok-builtin" |
| 42180 | 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 68 75 6e 64 | >@intFromEnum</span>(Value2.hund |
| 421a0 | 72 65 64 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | red).==.<span.class="tok-number" |
| 421c0 | 3e 31 30 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 | >100</span>);.....<span.class="t |
| 421e0 | 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 |
| 42200 | 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< |
| 42220 | 2f 73 70 61 6e 3e 28 56 61 6c 75 65 32 2e 74 68 6f 75 73 61 6e 64 29 20 3d 3d 20 3c 73 70 61 6e | /span>(Value2.thousand).==.<span |
| 42240 | 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 6e 3e 29 | .class="tok-number">1000</span>) |
| 42260 | 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</ |
| 42280 | 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 |
| 422a0 | 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 3e 28 56 61 6c 75 65 | iltin">@intFromEnum</span>(Value |
| 422c0 | 32 2e 6d 69 6c 6c 69 6f 6e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | 2.million).==.<span.class="tok-n |
| 422e0 | 75 6d 62 65 72 22 3e 31 30 30 30 30 30 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e | umber">1000000</span>);.}..<span |
| 42300 | 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 20 | .class="tok-comment">//.You.can. |
| 42320 | 61 6c 73 6f 20 6f 76 65 72 72 69 64 65 20 6f 6e 6c 79 20 73 6f 6d 65 20 76 61 6c 75 65 73 2e 3c | also.override.only.some.values.< |
| 42340 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | /span>.<span.class="tok-kw">cons |
| 42360 | 74 3c 2f 73 70 61 6e 3e 20 56 61 6c 75 65 33 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | t</span>.Value3.=.<span.class="t |
| 42380 | 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ok-kw">enum</span>(<span.class=" |
| 423a0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 34 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 61 2c 0a 20 20 | tok-type">u4</span>).{.....a,... |
| 423c0 | 20 20 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 38 | ..b.=.<span.class="tok-number">8 |
| 423e0 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 63 2c 0a 20 20 20 20 64 20 3d 20 3c 73 70 61 6e 20 63 6c | </span>,.....c,.....d.=.<span.cl |
| 42400 | 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 0a 20 20 20 20 65 | ass="tok-number">4</span>,.....e |
| 42420 | 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 74 65 73 74 3c 2f | ,.};.<span.class="tok-kw">test</ |
| 42440 | 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 |
| 42460 | 74 3b 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 73 20 61 | t;enum.implicit.ordinal.values.a |
| 42480 | 6e 64 20 6f 76 65 72 72 69 64 64 65 6e 20 76 61 6c 75 65 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | nd.overridden.values"</span |
| 424a0 | 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 79 | >.{.....<span.class="tok-kw">try |
| 424c0 | 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- |
| 424e0 | 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 3e 28 56 61 6c | builtin">@intFromEnum</span>(Val |
| 42500 | 75 65 33 2e 61 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 | ue3.a).==.<span.class="tok-numbe |
| 42520 | 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 |
| 42540 | 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 |
| 42560 | 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< |
| 42580 | 2f 73 70 61 6e 3e 28 56 61 6c 75 65 33 2e 62 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | /span>(Value3.b).==.<span.class= |
| 425a0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 | "tok-number">8</span>);.....<spa |
| 425c0 | 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 |
| 425e0 | 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 69 6e | ct(<span.class="tok-builtin">@in |
| 42600 | 74 46 72 6f 6d 45 6e 75 6d 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 33 2e 63 29 20 3d 3d 20 3c 73 | tFromEnum</span>(Value3.c).==.<s |
| 42620 | 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>) |
| 42640 | 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</ |
| 42660 | 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 |
| 42680 | 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 3e 28 56 61 6c 75 65 | iltin">@intFromEnum</span>(Value |
| 426a0 | 33 2e 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 | 3.d).==.<span.class="tok-number" |
| 426c0 | 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >4</span>);.....<span.class="tok |
| 426e0 | 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 |
| 42700 | 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 2f 73 | ss="tok-builtin">@intFromEnum</s |
| 42720 | 70 61 6e 3e 28 56 61 6c 75 65 33 2e 65 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pan>(Value3.e).==.<span.class="t |
| 42740 | 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 3c 73 70 61 6e 20 63 | ok-number">5</span>);.}..<span.c |
| 42760 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 6e 75 6d 73 20 63 61 6e 20 | lass="tok-comment">//.Enums.can. |
| 42780 | 68 61 76 65 20 6d 65 74 68 6f 64 73 2c 20 74 68 65 20 73 61 6d 65 20 61 73 20 73 74 72 75 63 74 | have.methods,.the.same.as.struct |
| 427a0 | 73 20 61 6e 64 20 75 6e 69 6f 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | s.and.unions.</span>.<span.class |
| 427c0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 6e 75 6d 20 6d 65 74 68 6f 64 73 20 61 | ="tok-comment">//.Enum.methods.a |
| 427e0 | 72 65 20 6e 6f 74 20 73 70 65 63 69 61 6c 2c 20 74 68 65 79 20 61 72 65 20 6f 6e 6c 79 20 6e 61 | re.not.special,.they.are.only.na |
| 42800 | 6d 65 73 70 61 63 65 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | mespaced</span>.<span.class="tok |
| 42820 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 66 75 6e 63 74 69 6f 6e 73 20 74 68 61 74 20 79 6f 75 20 | -comment">//.functions.that.you. |
| 42840 | 63 61 6e 20 63 61 6c 6c 20 77 69 74 68 20 64 6f 74 20 73 79 6e 74 61 78 2e 3c 2f 73 70 61 6e 3e | can.call.with.dot.syntax.</span> |
| 42860 | 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 |
| 42880 | 6e 3e 20 53 75 69 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | n>.Suit.=.<span.class="tok-kw">e |
| 428a0 | 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 63 6c 75 62 73 2c 0a 20 20 20 20 73 70 61 64 | num</span>.{.....clubs,.....spad |
| 428c0 | 65 73 2c 0a 20 20 20 20 64 69 61 6d 6f 6e 64 73 2c 0a 20 20 20 20 68 65 61 72 74 73 2c 0a 0a 20 | es,.....diamonds,.....hearts,... |
| 428e0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 | ...<span.class="tok-kw">pub</spa |
| 42900 | 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 |
| 42920 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 69 73 43 6c 75 62 73 3c 2f | >.<span.class="tok-fn">isClubs</ |
| 42940 | 73 70 61 6e 3e 28 73 65 6c 66 3a 20 53 75 69 74 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | span>(self:.Suit).<span.class="t |
| 42960 | 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 20 20 20 20 3c | ok-type">bool</span>.{.........< |
| 42980 | 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 |
| 429a0 | 3e 20 73 65 6c 66 20 3d 3d 20 53 75 69 74 2e 63 6c 75 62 73 3b 0a 20 20 20 20 7d 0a 7d 3b 0a 3c | >.self.==.Suit.clubs;.....}.};.< |
| 429c0 | 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>. |
| 429e0 | 3c 73 70 61 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 6d | <span.class="tok-str">"enum |
| 42a00 | 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 70 61 6e | .method"</span>.{.....<span |
| 42a20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 20 3d | .class="tok-kw">const</span>.p.= |
| 42a40 | 20 53 75 69 74 2e 73 70 61 64 65 73 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .Suit.spades;.....<span.class="t |
| 42a60 | 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 70 2e 69 73 43 6c | ok-kw">try</span>.expect(!p.isCl |
| 42a80 | 75 62 73 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 63 6f 6d 6d | ubs());.}..<span.class="tok-comm |
| 42aa0 | 65 6e 74 22 3e 2f 2f 20 41 6e 20 65 6e 75 6d 20 63 61 6e 20 62 65 20 73 77 69 74 63 68 65 64 20 | ent">//.An.enum.can.be.switched. |
| 42ac0 | 75 70 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 6f 6b 2d 6b 77 | upon.</span>.<span.class="tok-kw |
| 42ae0 | 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 |
| 42b00 | 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 73 74 72 69 | ="tok-kw">enum</span>.{.....stri |
| 42b20 | 6e 67 2c 0a 20 20 20 20 6e 75 6d 62 65 72 2c 0a 20 20 20 20 6e 6f 6e 65 2c 0a 7d 3b 0a 3c 73 70 | ng,.....number,.....none,.};.<sp |
| 42b40 | 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 |
| 42b60 | 70 61 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 6d 20 73 | pan.class="tok-str">"enum.s |
| 42b80 | 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 63 | witch"</span>.{.....<span.c |
| 42ba0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 20 3d 20 46 | lass="tok-kw">const</span>.p.=.F |
| 42bc0 | 6f 6f 2e 6e 75 6d 62 65 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | oo.number;.....<span.class="tok- |
| 42be0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 77 68 61 74 5f 69 73 5f 69 74 20 3d 20 3c 73 | kw">const</span>.what_is_it.=.<s |
| 42c00 | 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> |
| 42c20 | 20 28 70 29 20 7b 0a 20 20 20 20 20 20 20 20 46 6f 6f 2e 73 74 72 69 6e 67 20 3d 26 67 74 3b 20 | .(p).{.........Foo.string.=>. |
| 42c40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 69 73 | <span.class="tok-str">"this |
| 42c60 | 20 69 73 20 61 20 73 74 72 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 | .is.a.string"</span>,...... |
| 42c80 | 20 20 20 46 6f 6f 2e 6e 75 6d 62 65 72 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ...Foo.number.=>.<span.class= |
| 42ca0 | 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 75 6d 62 65 72 | "tok-str">"this.is.a.number |
| 42cc0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 46 6f 6f 2e 6e 6f 6e 65 20 | "</span>,.........Foo.none. |
| 42ce0 | 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 |
| 42d00 | 74 3b 74 68 69 73 20 69 73 20 61 20 6e 6f 6e 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 | t;this.is.a.none"</span>,.. |
| 42d20 | 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | ...};.....<span.class="tok-kw">t |
| 42d40 | 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 6e 20 63 | ry</span>.expect(mem.eql(<span.c |
| 42d60 | 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 77 68 61 74 5f | lass="tok-type">u8</span>,.what_ |
| 42d80 | 69 73 5f 69 74 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | is_it,.<span.class="tok-str">&qu |
| 42da0 | 6f 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 | ot;this.is.a.number"</span> |
| 42dc0 | 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 | ));.}..<span.class="tok-comment" |
| 42de0 | 3e 2f 2f 20 40 74 79 70 65 49 6e 66 6f 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 61 63 63 | >//.@typeInfo.can.be.used.to.acc |
| 42e00 | 65 73 73 20 74 68 65 20 69 6e 74 65 67 65 72 20 74 61 67 20 74 79 70 65 20 6f 66 20 61 6e 20 65 | ess.the.integer.tag.type.of.an.e |
| 42e20 | 6e 75 6d 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | num.</span>.<span.class="tok-kw" |
| 42e40 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 6d 61 6c 6c 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | >const</span>.Small.=.<span.clas |
| 42e60 | 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 6e 65 | s="tok-kw">enum</span>.{.....one |
| 42e80 | 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 20 66 6f 75 72 2c 0a | ,.....two,.....three,.....four,. |
| 42ea0 | 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 65 73 74 3c 2f 73 70 | };.<span.class="tok-kw">test</sp |
| 42ec0 | 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">" |
| 42ee0 | 73 74 64 2e 6d 65 74 61 2e 54 61 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | std.meta.Tag"</span>.{..... |
| 42f00 | 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>. |
| 42f20 | 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | expect(<span.class="tok-builtin" |
| 42f40 | 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 53 6d 61 6c 6c 29 2e 45 6e 75 6d 2e 74 61 | >@typeInfo</span>(Small).Enum.ta |
| 42f60 | 67 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 | g_type.==.<span.class="tok-type" |
| 42f80 | 3e 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 | >u2</span>);.}..<span.class="tok |
| 42fa0 | 2d 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 | -comment">//.@typeInfo.tells.us. |
| 42fc0 | 74 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 | the.field.count.and.the.fields.n |
| 42fe0 | 61 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 | ames:</span>.<span.class="tok-kw |
| 43000 | 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 |
| 43020 | 74 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 | tr">"@typeInfo"</span> |
| 43040 | 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< |
| 43060 | 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 |
| 43080 | 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 53 6d 61 6c 6c 29 2e | uiltin">@typeInfo</span>(Small). |
| 430a0 | 45 6e 75 6d 2e 66 69 65 6c 64 73 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | Enum.fields.len.==.<span.class=" |
| 430c0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e | tok-number">4</span>);.....<span |
| 430e0 | 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 |
| 43100 | 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" |
| 43120 | 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 |
| 43140 | 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 53 6d 61 6c 6c 29 2e 45 6e | ltin">@typeInfo</span>(Small).En |
| 43160 | 75 6d 2e 66 69 65 6c 64 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | um.fields[<span.class="tok-numbe |
| 43180 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 2e 6e 61 6d 65 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | r">1</span>].name,.<span.class=" |
| 431a0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 77 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | tok-str">"two"</span>) |
| 431c0 | 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"> |
| 431e0 | 2f 2f 20 40 74 61 67 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 | //.@tagName.gives.a.[:0]const.u8 |
| 43200 | 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 6e 20 65 6e 75 6d 20 76 61 6c 75 65 | .representation.of.an.enum.value |
| 43220 | 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 | :</span>.<span.class="tok-kw">te |
| 43240 | 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"> |
| 43260 | 26 71 75 6f 74 3b 40 74 61 67 4e 61 6d 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | "@tagName"</span>.{... |
| 43280 | 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 |
| 432a0 | 3e 20 65 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >.expect(mem.eql(<span.class="to |
| 432c0 | 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=" |
| 432e0 | 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 6e 3e 28 53 6d 61 | tok-builtin">@tagName</span>(Sma |
| 43300 | 6c 6c 2e 74 68 72 65 65 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | ll.three),.<span.class="tok-str" |
| 43320 | 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 29 29 3b 0a 7d 3c 2f | >"three"</span>));.}</ |
| 43340 | 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 |
| 43360 | 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< |
| 43380 | 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 |
| 433a0 | 67 20 74 65 73 74 20 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 | g.test.test_enums.zig</kbd>.1/8. |
| 433c0 | 74 65 73 74 5f 65 6e 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 | test_enums.test.enum.ordinal.val |
| 433e0 | 75 65 2e 2e 2e 4f 4b 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 | ue...OK.2/8.test_enums.test.set. |
| 43400 | 65 6e 75 6d 20 6f 72 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 | enum.ordinal.value...OK.3/8.test |
| 43420 | 5f 65 6e 75 6d 73 2e 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 | _enums.test.enum.implicit.ordina |
| 43440 | 6c 20 76 61 6c 75 65 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 | l.values.and.overridden.values.. |
| 43460 | 2e 4f 4b 0a 34 2f 38 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 | .OK.4/8.test_enums.test.enum.met |
| 43480 | 68 6f 64 2e 2e 2e 4f 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 | hod...OK.5/8.test_enums.test.enu |
| 434a0 | 6d 20 73 77 69 74 63 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 | m.switch...OK.6/8.test_enums.tes |
| 434c0 | 74 2e 73 74 64 2e 6d 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 | t.std.meta.Tag...OK.7/8.test_enu |
| 434e0 | 6d 73 2e 74 65 73 74 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 | ms.test.@typeInfo...OK.8/8.test_ |
| 43500 | 65 6e 75 6d 73 2e 74 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 | enums.test.@tagName...OK.All.8.t |
| 43520 | 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 |
| 43540 | 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 0a | re>........<p>See.also:</p><ul>. |
| 43560 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 49 6e 66 | <li><a.href="#typeInfo">@typeInf |
| 43580 | 6f 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 61 67 4e 61 6d 65 | o</a></li>.<li><a.href="#tagName |
| 435a0 | 22 3e 40 74 61 67 4e 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | ">@tagName</a></li>.<li><a.href= |
| 435c0 | 22 23 73 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e | "#sizeOf">@sizeOf</a></li>.</ul> |
| 435e0 | 0a 0a 0a 20 20 20 20 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 | .........<h3.id="extern-enum"><a |
| 43600 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 74 65 72 6e 2d 65 6e 75 6d 22 3e 65 78 74 65 72 6e 20 | .href="#toc-extern-enum">extern. |
| 43620 | 65 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 65 | enum</a>.<a.class="hdr".href="#e |
| 43640 | 78 74 65 72 6e 2d 65 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 | xtern-enum">..</a></h3>........< |
| 43660 | 70 3e 0a 20 20 20 20 20 20 42 79 20 64 65 66 61 75 6c 74 2c 20 65 6e 75 6d 73 20 61 72 65 20 6e | p>.......By.default,.enums.are.n |
| 43680 | 6f 74 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 | ot.guaranteed.to.be.compatible.w |
| 436a0 | 69 74 68 20 74 68 65 20 43 20 41 42 49 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | ith.the.C.ABI:.......</p>....... |
| 436c0 | 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 |
| 436e0 | 61 70 22 3e 3c 63 69 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 | ap"><cite.class="file">enum_expo |
| 43700 | 72 74 5f 65 72 72 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 | rt_error.zig</cite></figcaption> |
| 43720 | 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"> |
| 43740 | 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 3d 22 | const</span>.Foo.=.<span.class=" |
| 43760 | 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 20 61 2c 20 62 2c 20 63 20 7d 3b | tok-kw">enum</span>.{.a,.b,.c.}; |
| 43780 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 | .<span.class="tok-kw">export</sp |
| 437a0 | 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 |
| 437c0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 6e 74 72 79 3c 2f 73 | n>.<span.class="tok-fn">entry</s |
| 437e0 | 70 61 6e 3e 28 66 6f 6f 3a 20 46 6f 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>(foo:.Foo).<span.class="tok- |
| 43800 | 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 66 6f 6f 3b | type">void</span>.{....._.=.foo; |
| 43820 | 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> |
| 43840 | 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 |
| 43860 | 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 |
| 43880 | 64 3e 7a 69 67 20 62 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 | d>zig.build-obj.enum_export_erro |
| 438a0 | 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" |
| 438c0 | 3e 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 7a | >doc/langref/enum_export_error.z |
| 438e0 | 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 72 | ig:2:17:.</span><span.class="sgr |
| 43900 | 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= |
| 43920 | 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 6d | "sgr-1m">parameter.of.type.'enum |
| 43940 | 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 69 | _export_error.Foo'.not.allowed.i |
| 43960 | 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 69 | n.function.with.calling.conventi |
| 43980 | 6f 6e 20 27 43 27 0a 3c 2f 73 70 61 6e 3e 65 78 70 6f 72 74 20 66 6e 20 65 6e 74 72 79 28 66 6f | on.'C'.</span>export.fn.entry(fo |
| 439a0 | 6f 3a 20 46 6f 6f 29 20 76 6f 69 64 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | o:.Foo).void.{.................< |
| 439c0 | 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 0a 3c 2f | span.class="sgr-32m">^~~~~~~~.</ |
| 439e0 | 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 64 6f 63 2f 6c 61 | span><span.class="sgr-1m">doc/la |
| 43a00 | 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 |
| 43a20 | 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 |
| 43a40 | 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" |
| 43a60 | 3e 65 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 | >enum.tag.type.'u2'.is.not.exter |
| 43a80 | 6e 20 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 | n.compatible.</span><span.class= |
| 43aa0 | 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 65 6e 75 6d 5f 65 78 70 6f 72 74 | "sgr-1m">doc/langref/enum_export |
| 43ac0 | 5f 65 72 72 6f 72 2e 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 | _error.zig:2:17:.</span><span.cl |
| 43ae0 | 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 |
| 43b00 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 6f 6e 6c 79 20 69 6e 74 65 67 65 72 73 20 77 69 | .class="sgr-1m">only.integers.wi |
| 43b20 | 74 68 20 30 2c 20 38 2c 20 31 36 2c 20 33 32 2c 20 36 34 20 61 6e 64 20 31 32 38 20 62 69 74 73 | th.0,.8,.16,.32,.64.and.128.bits |
| 43b40 | 20 61 72 65 20 65 78 74 65 72 6e 20 63 6f 6d 70 61 74 69 62 6c 65 0a 3c 2f 73 70 61 6e 3e 3c 73 | .are.extern.compatible.</span><s |
| 43b60 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 65 | pan.class="sgr-1m">doc/langref/e |
| 43b80 | 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 2f 73 70 61 | num_export_error.zig:1:13:.</spa |
| 43ba0 | 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:.</ |
| 43bc0 | 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 6d 20 64 | span><span.class="sgr-1m">enum.d |
| 43be0 | 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 20 3d 20 | eclared.here.</span>const.Foo.=. |
| 43c00 | 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 20 20 3c 73 | enum.{.a,.b,.c.};.............<s |
| 43c20 | 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 7e 7e 7e | pan.class="sgr-32m">^~~~~~~~~~~~ |
| 43c40 | 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 3e 3c 2f 66 69 67 75 | ~~~~.</span>.</samp></pre></figu |
| 43c60 | 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 20 43 2d 41 42 49 | re>........<p>.......For.a.C-ABI |
| 43c80 | 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 61 6e 20 65 78 70 | -compatible.enum,.provide.an.exp |
| 43ca0 | 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 65 20 65 6e 75 6d | licit.tag.type.to.......the.enum |
| 43cc0 | 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 |
| 43ce0 | 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 |
| 43d00 | 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 2f 63 69 74 65 3e | ss="file">enum_export.zig</cite> |
| 43d20 | 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 |
| 43d40 | 61 73 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.=. |
| 43d60 | 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> |
| 43d80 | 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 6e 74 3c 2f 73 | (<span.class="tok-type">c_int</s |
| 43da0 | 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 6c 61 73 73 3d 22 | pan>).{.a,.b,.c.};.<span.class=" |
| 43dc0 | 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">export</span>.<span.clas |
| 43de0 | 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 |
| 43e00 | 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 3a 20 46 6f 6f 29 | ="tok-fn">entry</span>(foo:.Foo) |
| 43e20 | 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 |
| 43e40 | 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 3e 3c 2f 70 72 65 | an>.{....._.=.foo;.}</code></pre |
| 43e60 | 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 |
| 43e80 | 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 |
| 43ea0 | 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 |
| 43ec0 | 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 73 61 6d 70 3e 3c | j.enum_export.zig</kbd>.</samp>< |
| 43ee0 | 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 20 3c 68 | /pre></figure>................<h |
| 43f00 | 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 65 66 3d 22 23 74 | 3.id="Enum-Literals"><a.href="#t |
| 43f20 | 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 65 72 61 6c 73 3c | oc-Enum-Literals">Enum.Literals< |
| 43f40 | 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 6e 75 6d 2d 4c | /a>.<a.class="hdr".href="#Enum-L |
| 43f60 | 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 70 3e 0a | iterals">..</a></h3>........<p>. |
| 43f80 | 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 73 70 65 63 69 66 | ......Enum.literals.allow.specif |
| 43fa0 | 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 69 65 6c 64 20 77 | ying.the.name.of.an.enum.field.w |
| 43fc0 | 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 20 74 79 70 65 3a | ithout.specifying.the.enum.type: |
| 43fe0 | 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 |
| 44000 | 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 |
| 44020 | 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 73 2e 7a 69 67 3c | s="file">test_enum_literals.zig< |
| 44040 | 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 |
| 44060 | 70 61 6e 20 63 6c 61 73 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>. |
| 44080 | 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"> |
| 440a0 | 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- |
| 440c0 | 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 |
| 440e0 | 70 61 6e 20 63 6c 61 73 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>. |
| 44100 | 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 |
| 44120 | 70 61 6e 20 63 6c 61 73 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>. |
| 44140 | 43 6f 6c 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 | Color.=.<span.class="tok-kw">enu |
| 44160 | 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 75 74 6f 2c 0a 20 20 20 20 6f 66 66 2c 0a 20 20 | m</span>.{.....auto,.....off,... |
| 44180 | 20 20 6f 6e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | ..on,.};..<span.class="tok-kw">t |
| 441a0 | 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" |
| 441c0 | 3e 26 71 75 6f 74 3b 65 6e 75 6d 20 6c 69 74 65 72 61 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | >"enum.literals"</span |
| 441e0 | 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 |
| 44200 | 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 6c 6f 72 31 3a 20 43 6f 6c 6f 72 20 3d 20 2e 61 75 74 6f 3b | st</span>.color1:.Color.=..auto; |
| 44220 | 0a 20 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< |
| 44240 | 2f 73 70 61 6e 3e 20 63 6f 6c 6f 72 32 20 3d 20 43 6f 6c 6f 72 2e 61 75 74 6f 3b 0a 20 20 20 20 | /span>.color2.=.Color.auto;..... |
| 44260 | 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>. |
| 44280 | 65 78 70 65 63 74 28 63 6f 6c 6f 72 31 20 3d 3d 20 63 6f 6c 6f 72 32 29 3b 0a 7d 0a 0a 3c 73 70 | expect(color1.==.color2);.}..<sp |
| 442a0 | 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 |
| 442c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 77 69 74 63 68 | pan.class="tok-str">"switch |
| 442e0 | 20 75 73 69 6e 67 20 65 6e 75 6d 20 6c 69 74 65 72 61 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | .using.enum.literals"</span |
| 44300 | 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 |
| 44320 | 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 6c 6f 72 20 3d 20 43 6f 6c 6f 72 2e 6f 6e 3b 0a 20 20 20 20 | st</span>.color.=.Color.on;..... |
| 44340 | 3c 73 70 61 6e 20 63 6c 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 |
| 44360 | 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >.result.=.<span.class="tok-kw"> |
| 44380 | 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 63 6f 6c 6f 72 29 20 7b 0a 20 20 20 20 20 20 20 20 | switch</span>.(color).{......... |
| 443a0 | 2e 61 75 74 6f 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | .auto.=>.<span.class="tok-nul |
| 443c0 | 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 6f 6e 20 3d 26 67 | l">false</span>,..........on.=&g |
| 443e0 | 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f | t;.<span.class="tok-null">true</ |
| 44400 | 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 6f 66 66 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 | span>,..........off.=>.<span. |
| 44420 | 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>,.. |
| 44440 | 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | ...};.....<span.class="tok-kw">t |
| 44460 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 72 65 73 75 6c 74 29 3b 0a 7d 3c 2f 63 6f 64 | ry</span>.expect(result);.}</cod |
| 44480 | 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 |
| 444a0 | 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 |
| 444c0 | 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 |
| 444e0 | 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 3c 2f 6b 62 64 3e | est.test_enum_literals.zig</kbd> |
| 44500 | 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 73 74 2e 65 6e 75 | .1/2.test_enum_literals.test.enu |
| 44520 | 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 6e 75 6d 5f 6c 69 | m.literals...OK.2/2.test_enum_li |
| 44540 | 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 6e 75 6d 20 6c 69 | terals.test.switch.using.enum.li |
| 44560 | 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 73 73 65 64 2e 0a | terals...OK.All.2.tests.passed.. |
| 44580 | 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 0a | </samp></pre></figure>.......... |
| 445a0 | 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 76 65 2d 65 6e 75 | ......<h3.id="Non-exhaustive-enu |
| 445c0 | 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 73 74 69 76 65 2d | m"><a.href="#toc-Non-exhaustive- |
| 445e0 | 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 20 3c 61 | enum">Non-exhaustive.enum</a>.<a |
| 44600 | 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 68 61 75 73 74 69 | .class="hdr".href="#Non-exhausti |
| 44620 | 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 20 20 3c 70 3e 0a | ve-enum">..</a></h3>........<p>. |
| 44640 | 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 6d 20 63 61 6e 20 | ......A.non-exhaustive.enum.can. |
| 44660 | 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 69 6c 69 6e 67 20 | be.created.by.adding.a.trailing. |
| 44680 | 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 20 20 54 68 65 20 | <code>_</code>.field........The. |
| 446a0 | 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 70 65 20 61 6e 64 | enum.must.specify.a.tag.type.and |
| 446c0 | 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 65 72 61 74 69 6f | .cannot.consume.every.enumeratio |
| 446e0 | 6e 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | n.value........</p>.......<p>... |
| 44700 | 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 3e 40 65 6e 75 6d | ....<a.href="#enumFromInt">@enum |
| 44720 | 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 73 74 69 76 65 20 | FromInt</a>.on.a.non-exhaustive. |
| 44740 | 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 65 6d 61 6e 74 69 | enum.involves.the.safety.semanti |
| 44760 | 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 61 73 74 22 3e 40 | cs.......of.<a.href="#intCast">@ |
| 44780 | 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 20 74 61 67 20 74 | intCast</a>.to.the.integer.tag.t |
| 447a0 | 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 73 20 72 65 73 75 | ype,.but.beyond.that.always.resu |
| 447c0 | 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 64 20 65 6e 75 6d | lts.in.......a.well-defined.enum |
| 447e0 | 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | .value........</p>.......<p>.... |
| 44800 | 20 20 20 41 20 73 77 69 74 63 68 20 6f 6e 20 61 20 6e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 | ...A.switch.on.a.non-exhaustive. |
| 44820 | 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 3c 2f 63 6f 64 65 | enum.can.include.a.<code>_</code |
| 44840 | 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 74 6f 20 61 6e 20 | >.prong.as.an.alternative.to.an. |
| 44860 | 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 65 3c | <code><span.class="tok-kw">else< |
| 44880 | 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 20 57 69 74 68 20 | /span></code>.prong........With. |
| 448a0 | 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 20 63 6f 6d 70 69 | a.<code>_</code>.prong.the.compi |
| 448c0 | 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 6e 20 74 61 67 20 | ler.errors.if.all.the.known.tag. |
| 448e0 | 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 68 65 20 73 77 69 | names.are.not.handled.by.the.swi |
| 44900 | 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 75 72 65 3e 3c 66 | tch........</p>.......<figure><f |
| 44920 | 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. |
| 44940 | 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 6f 6e 2d 65 78 68 | class="file">test_switch_non-exh |
| 44960 | 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 74 69 6f 6e 3e 3c | austive.zig</cite></figcaption>< |
| 44980 | 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 |
| 449a0 | 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 |
| 449c0 | 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 |
| 449e0 | 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" |
| 44a00 | 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 |
| 44a20 | 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 |
| 44a40 | 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 63 | .expect;..<span.class="tok-kw">c |
| 44a60 | 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 20 63 6c 61 73 73 | onst</span>.Number.=.<span.class |
| 44a80 | 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 6e 20 63 6c 61 73 | ="tok-kw">enum</span>(<span.clas |
| 44aa0 | 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 20 20 20 20 6f 6e | s="tok-type">u8</span>).{.....on |
| 44ac0 | 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 20 5f 2c 0a 7d 3b | e,.....two,.....three,....._,.}; |
| 44ae0 | 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 |
| 44b00 | 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 |
| 44b20 | 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 75 6d 26 71 75 6f | witch.on.non-exhaustive.enum&quo |
| 44b40 | 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 |
| 44b60 | 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 4e 75 6d 62 65 | -kw">const</span>.number.=.Numbe |
| 44b80 | 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 6b 2d 6b 77 22 3e | r.one;.....<span.class="tok-kw"> |
| 44ba0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | const</span>.result.=.<span.clas |
| 44bc0 | 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 6e 75 6d 62 65 72 | s="tok-kw">switch</span>.(number |
| 44be0 | 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 61 6e 20 63 6c 61 | ).{..........one.=>.<span.cla |
| 44c00 | 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 20 | ss="tok-null">true</span>,...... |
| 44c20 | 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 6e 20 63 6c 61 73 | ....two,..three.=>.<span.clas |
| 44c40 | 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>,...... |
| 44c60 | 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 6b 2d 6e 75 6c 6c | ..._.=>.<span.class="tok-null |
| 44c80 | 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 20 3c 73 70 61 6e | ">false</span>,.....};.....<span |
| 44ca0 | 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 |
| 44cc0 | 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 3d 22 74 6f 6b 2d | t(result);.....<span.class="tok- |
| 44ce0 | 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 3c 73 70 61 6e 20 | kw">const</span>.is_one.=.<span. |
| 44d00 | 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 6e 75 | class="tok-kw">switch</span>.(nu |
| 44d20 | 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 61 6e | mber).{..........one.=>.<span |
| 44d40 | 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 0a 20 | .class="tok-null">true</span>,.. |
| 44d60 | 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 |
| 44d80 | 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 |
| 44da0 | 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 20 3c 73 | ull">false</span>,.....};.....<s |
| 44dc0 | 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 |
| 44de0 | 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 65 3e 3c 2f 66 69 | pect(is_one);.}</code></pre></fi |
| 44e00 | 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=" |
| 44e20 | 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 |
| 44e40 | 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 73 77 69 | e><samp>$.<kbd>zig.test.test_swi |
| 44e60 | 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 64 3e 0a 31 2f 31 | tch_non-exhaustive.zig</kbd>.1/1 |
| 44e80 | 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 65 2e 74 65 73 74 | .test_switch_non-exhaustive.test |
| 44ea0 | 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 65 6e 75 6d 2e 2e | .switch.on.non-exhaustive.enum.. |
| 44ec0 | 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>< |
| 44ee0 | 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>.................. |
| 44f00 | 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 66 3d 22 23 74 6f | .....<h2.id="union"><a.href="#to |
| 44f20 | 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 73 3d 22 68 64 72 | c-union">union</a>.<a.class="hdr |
| 44f40 | 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 3e 0a 0a 20 20 20 | ".href="#union">..</a></h2>..... |
| 44f60 | 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 3c 73 70 61 6e 20 | ...<p>.......A.bare.<code><span. |
| 44f80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | class="tok-kw">union</span></cod |
| 44fa0 | 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 6c 65 20 74 79 70 | e>.defines.a.set.of.possible.typ |
| 44fc0 | 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 62 65 20 61 73 20 | es.that.a.value.......can.be.as. |
| 44fe0 | 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 20 66 69 65 6c 64 | a.list.of.fields..Only.one.field |
| 45000 | 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 20 20 20 20 20 20 | .can.be.active.at.a.time........ |
| 45020 | 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 6f 6e 20 6f 66 20 | The.in-memory.representation.of. |
| 45040 | 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 65 65 64 2e 0a 20 | bare.unions.is.not.guaranteed... |
| 45060 | 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 20 75 73 65 64 20 | .....Bare.unions.cannot.be.used. |
| 45080 | 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 20 74 68 61 74 2c | to.reinterpret.memory..For.that, |
| 450a0 | 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 74 72 43 61 73 74 | .use.<a.href="#ptrCast">@ptrCast |
| 450c0 | 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 72 65 66 3d 22 23 | </a>,.......or.use.an.<a.href="# |
| 450e0 | 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 20 6f | extern-union">extern.union</a>.o |
| 45100 | 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 22 3e 70 61 63 6b | r.a.<a.href="#packed-union">pack |
| 45120 | 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 20 20 20 20 67 75 | ed.union</a>.which.have.......gu |
| 45140 | 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 0a 20 20 20 20 20 | aranteed.in-memory.layout....... |
| 45160 | 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 6c 64 2d 41 63 63 | .<a.href="#Wrong-Union-Field-Acc |
| 45180 | 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 69 76 65 20 66 69 | ess">Accessing.the.non-active.fi |
| 451a0 | 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 65 63 6b 65 64 20 | eld</a>.is.......safety-checked. |
| 451c0 | 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e | <a.href="#Undefined-Behavior">Un |
| 451e0 | 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | defined.Behavior</a>:.......</p> |
| 45200 | 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 |
| 45220 | 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 |
| 45240 | 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 65 3e | st_wrong_union_access.zig</cite> |
| 45260 | 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 |
| 45280 | 61 73 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 6f 61 | ass="tok-kw">const</span>.Payloa |
| 452a0 | 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 3c 2f | d.=.<span.class="tok-kw">union</ |
| 452c0 | 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 74 6f | span>.{.....int:.<span.class="to |
| 452e0 | 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 20 3c | k-type">i64</span>,.....float:.< |
| 45300 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e | span.class="tok-type">f64</span> |
| 45320 | 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 6b 2d | ,.....boolean:.<span.class="tok- |
| 45340 | 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 61 73 | type">bool</span>,.};.<span.clas |
| 45360 | 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 |
| 45380 | 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 6e 26 | ss="tok-str">"simple.union& |
| 453a0 | 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=" |
| 453c0 | 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 61 79 | tok-kw">var</span>.payload.=.Pay |
| 453e0 | 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 6e 75 | load{..int.=.<span.class="tok-nu |
| 45400 | 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 61 64 | mber">1234</span>.};.....payload |
| 45420 | 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 65 72 | .float.=.<span.class="tok-number |
| 45440 | 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 3c 2f | ">12.34</span>;.}</code></pre></ |
| 45460 | 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 |
| 45480 | 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>< |
| 454a0 | 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 77 | pre><samp>$.<kbd>zig.test.test_w |
| 454c0 | 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 31 20 | rong_union_access.zig</kbd>.1/1. |
| 454e0 | 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 69 6d | test_wrong_union_access.test.sim |
| 45500 | 70 6c 65 20 75 6e 69 6f 6e 2e 2e 2e 74 68 72 65 61 64 20 33 35 37 39 34 30 38 20 70 61 6e 69 63 | ple.union...thread.3579408.panic |
| 45520 | 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 20 | :.access.of.union.field.'float'. |
| 45540 | 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 61 | while.field.'int'.is.active.<spa |
| 45560 | 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 73 72 63 2f | n.class="sgr-1m">/home/andy/src/ |
| 45580 | 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 6e | zig/doc/langref/test_wrong_union |
| 455a0 | 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 63 | _access.zig:8:12</span>:.<span.c |
| 455c0 | 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 63 65 38 37 20 69 6e 20 74 65 73 74 2e | lass="sgr-2m">0x103ce87.in.test. |
| 455e0 | 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 70 | simple.union.(test)</span>.....p |
| 45600 | 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 20 | ayload.float.=.12.34;........... |
| 45620 | 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>. |
| 45640 | 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/ |
| 45660 | 73 72 63 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 72 | src/zig/lib/compiler/test_runner |
| 45680 | 2e 7a 69 67 3a 31 35 37 3a 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .zig:157:25</span>:.<span.class= |
| 456a0 | 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 38 30 37 30 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 6e | "sgr-2m">0x1048070.in.mainTermin |
| 456c0 | 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 73 | al.(test)</span>.........if.(tes |
| 456e0 | 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 20 | t_fn.func()).|_|.{.............. |
| 45700 | 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" |
| 45720 | 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">/ |
| 45740 | 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 | home/andy/src/zig/lib/compiler/t |
| 45760 | 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 33 37 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | est_runner.zig:37:28</span>:.<sp |
| 45780 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 65 30 38 62 20 69 6e 20 6d | an.class="sgr-2m">0x103e08b.in.m |
| 457a0 | 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 6e | ain.(test)</span>.........return |
| 457c0 | 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 20 | .mainTerminal();................ |
| 457e0 | 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 |
| 45800 | 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"> |
| 45820 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 | /home/andy/src/zig/lib/std/start |
| 45840 | 2e 7a 69 67 3a 35 31 34 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:514:22</span>:.<span.class= |
| 45860 | 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 64 34 31 39 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d | "sgr-2m">0x103d419.in.posixCallM |
| 45880 | 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 20 | ainAndExit.(test)</span>........ |
| 458a0 | 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .....root.main();............... |
| 458c0 | 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">^</ |
| 458e0 | 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 |
| 45900 | 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a | /andy/src/zig/lib/std/start.zig: |
| 45920 | 32 36 36 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 | 266:5</span>:.<span.class="sgr-2 |
| 45940 | 6d 22 3e 30 78 31 30 33 63 66 38 31 20 69 6e 20 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 | m">0x103cf81.in._start.(test)</s |
| 45960 | 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 |
| 45980 | 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 |
| 459a0 | 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 |
| 459c0 | 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 |
| 459e0 | 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 |
| 45a00 | 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 6d | n>.error:.the.following.test.com |
| 45a20 | 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 73 72 63 2f 7a 69 67 | mand.crashed:./home/andy/src/zig |
| 45a40 | 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 62 62 39 39 36 38 32 32 35 39 39 35 66 61 63 30 62 62 | /.zig-cache/o/bb9968225995fac0bb |
| 45a60 | 63 39 66 32 31 31 36 65 38 35 38 33 63 32 2f 74 65 73 74 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 | c9f2116e8583c2/test.</samp></pre |
| 45a80 | 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 59 6f 75 20 63 61 6e 20 61 63 74 | ></figure>........<p>You.can.act |
| 45aa0 | 69 76 61 74 65 20 61 6e 6f 74 68 65 72 20 66 69 65 6c 64 20 62 79 20 61 73 73 69 67 6e 69 6e 67 | ivate.another.field.by.assigning |
| 45ac0 | 20 74 68 65 20 65 6e 74 69 72 65 20 75 6e 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 | .the.entire.union:</p>.......<fi |
| 45ae0 | 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" |
| 45b00 | 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 69 6d 70 6c 65 5f | ><cite.class="file">test_simple_ |
| 45b20 | 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 72 | union.zig</cite></figcaption><pr |
| 45b40 | 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 |
| 45b60 | 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 |
| 45b80 | 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 |
| 45ba0 | 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"</ |
| 45bc0 | 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 |
| 45be0 | 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 |
| 45c00 | 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | xpect;..<span.class="tok-kw">con |
| 45c20 | 73 74 3c 2f 73 70 61 6e 3e 20 50 61 79 6c 6f 61 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | st</span>.Payload.=.<span.class= |
| 45c40 | 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 69 6e 74 3a | "tok-kw">union</span>.{.....int: |
| 45c60 | 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 70 61 | .<span.class="tok-type">i64</spa |
| 45c80 | 6e 3e 2c 0a 20 20 20 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | n>,.....float:.<span.class="tok- |
| 45ca0 | 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 62 6f 6f 6c 65 61 6e 3a 20 3c | type">f64</span>,.....boolean:.< |
| 45cc0 | 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 |
| 45ce0 | 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 74 65 73 74 3c | >,.};.<span.class="tok-kw">test< |
| 45d00 | 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 |
| 45d20 | 6f 74 3b 73 69 6d 70 6c 65 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | ot;simple.union"</span>.{.. |
| 45d40 | 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 |
| 45d60 | 6e 3e 20 70 61 79 6c 6f 61 64 20 3d 20 50 61 79 6c 6f 61 64 7b 20 2e 69 6e 74 20 3d 20 3c 73 70 | n>.payload.=.Payload{..int.=.<sp |
| 45d80 | 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 |
| 45da0 | 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 |
| 45dc0 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 61 79 6c 6f 61 64 2e 69 6e 74 20 3d 3d 20 3c | y</span>.expect(payload.int.==.< |
| 45de0 | 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 |
| 45e00 | 61 6e 3e 29 3b 0a 20 20 20 20 70 61 79 6c 6f 61 64 20 3d 20 50 61 79 6c 6f 61 64 7b 20 2e 66 6c | an>);.....payload.=.Payload{..fl |
| 45e20 | 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 65 72 22 3e 31 | oat.=.<span.class="tok-number">1 |
| 45e40 | 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 22 | 2.34</span>.};.....<span.class=" |
| 45e60 | 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 61 79 6c 6f 61 | tok-kw">try</span>.expect(payloa |
| 45e80 | 64 2e 66 6c 6f 61 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | d.float.==.<span.class="tok-numb |
| 45ea0 | 65 72 22 3e 31 32 2e 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 | er">12.34</span>);.}</code></pre |
| 45ec0 | 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 |
| 45ee0 | 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 |
| 45f00 | 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 |
| 45f20 | 74 5f 73 69 6d 70 6c 65 5f 75 6e 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 | t_simple_union.zig</kbd>.1/1.tes |
| 45f40 | 74 5f 73 69 6d 70 6c 65 5f 75 6e 69 6f 6e 2e 74 65 73 74 2e 73 69 6d 70 6c 65 20 75 6e 69 6f 6e | t_simple_union.test.simple.union |
| 45f60 | 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 |
| 45f80 | 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>..... |
| 45fa0 | 20 20 49 6e 20 6f 72 64 65 72 20 74 6f 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 | ..In.order.to.use.<a.href="#swit |
| 45fc0 | 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 20 77 69 74 68 20 61 20 75 6e 69 6f 6e 2c 20 69 74 20 | ch">switch</a>.with.a.union,.it. |
| 45fe0 | 6d 75 73 74 20 62 65 20 61 20 3c 61 20 68 72 65 66 3d 22 23 54 61 67 67 65 64 2d 75 6e 69 6f 6e | must.be.a.<a.href="#Tagged-union |
| 46000 | 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 3c 2f 70 3e 0a 20 | ">Tagged.union</a>........</p>.. |
| 46020 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 61 20 75 | .....<p>.......To.initialize.a.u |
| 46040 | 6e 69 6f 6e 20 77 68 65 6e 20 74 68 65 20 74 61 67 20 69 73 20 61 20 3c 61 20 68 72 65 66 3d 22 | nion.when.the.tag.is.a.<a.href=" |
| 46060 | 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 6f 77 6e 20 6e 61 | #comptime">comptime</a>-known.na |
| 46080 | 6d 65 2c 20 73 65 65 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 49 6e 69 74 22 3e 40 75 6e | me,.see.<a.href="#unionInit">@un |
| 460a0 | 69 6f 6e 49 6e 69 74 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 | ionInit</a>........</p>........< |
| 460c0 | 68 33 20 69 64 3d 22 54 61 67 67 65 64 2d 75 6e 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | h3.id="Tagged-union"><a.href="#t |
| 460e0 | 6f 63 2d 54 61 67 67 65 64 2d 75 6e 69 6f 6e 22 3e 54 61 67 67 65 64 20 75 6e 69 6f 6e 3c 2f 61 | oc-Tagged-union">Tagged.union</a |
| 46100 | 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 61 67 67 65 64 2d 75 | >.<a.class="hdr".href="#Tagged-u |
| 46120 | 6e 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 55 6e 69 6f | nion">..</a></h3>........<p>Unio |
| 46140 | 6e 73 20 63 61 6e 20 62 65 20 64 65 63 6c 61 72 65 64 20 77 69 74 68 20 61 6e 20 65 6e 75 6d 20 | ns.can.be.declared.with.an.enum. |
| 46160 | 74 61 67 20 74 79 70 65 2e 0a 20 20 20 20 20 20 54 68 69 73 20 74 75 72 6e 73 20 74 68 65 20 75 | tag.type........This.turns.the.u |
| 46180 | 6e 69 6f 6e 20 69 6e 74 6f 20 61 20 3c 65 6d 3e 74 61 67 67 65 64 3c 2f 65 6d 3e 20 75 6e 69 6f | nion.into.a.<em>tagged</em>.unio |
| 461a0 | 6e 2c 20 77 68 69 63 68 20 6d 61 6b 65 73 20 69 74 20 65 6c 69 67 69 62 6c 65 0a 20 20 20 20 20 | n,.which.makes.it.eligible...... |
| 461c0 | 20 74 6f 20 75 73 65 20 77 69 74 68 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 | .to.use.with.<a.href="#switch">s |
| 461e0 | 77 69 74 63 68 3c 2f 61 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 0a 20 20 20 20 20 20 54 61 67 | witch</a>.expressions........Tag |
| 46200 | 67 65 64 20 75 6e 69 6f 6e 73 20 63 6f 65 72 63 65 20 74 6f 20 74 68 65 69 72 20 74 61 67 20 74 | ged.unions.coerce.to.their.tag.t |
| 46220 | 79 70 65 3a 20 3c 61 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 | ype:.<a.href="#Type-Coercion-Uni |
| 46240 | 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 |
| 46260 | 69 6f 6e 73 20 61 6e 64 20 45 6e 75 6d 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | ions.and.Enums</a>........</p>.. |
| 46280 | 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=" |
| 462a0 | 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 |
| 462c0 | 5f 74 61 67 67 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 | _tagged_union.zig</cite></figcap |
| 462e0 | 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 |
| 46300 | 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 |
| 46320 | 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> |
| 46340 | 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 |
| 46360 | 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 |
| 46380 | 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 |
| 463a0 | 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 |
| 463c0 | 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 54 61 67 | -kw">const</span>.ComplexTypeTag |
| 463e0 | 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 |
| 46400 | 61 6e 3e 20 7b 0a 20 20 20 20 6f 6b 2c 0a 20 20 20 20 6e 6f 74 5f 6f 6b 2c 0a 7d 3b 0a 3c 73 70 | an>.{.....ok,.....not_ok,.};.<sp |
| 46420 | 61 6e 20 63 6c 61 73 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 | an.class="tok-kw">const</span>.C |
| 46440 | 6f 6d 70 6c 65 78 54 79 70 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | omplexType.=.<span.class="tok-kw |
| 46460 | 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 28 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 29 20 7b | ">union</span>(ComplexTypeTag).{ |
| 46480 | 0a 20 20 20 20 6f 6b 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | .....ok:.<span.class="tok-type"> |
| 464a0 | 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 6e 6f 74 5f 6f 6b 3a 20 3c 73 70 61 6e 20 63 6c 61 | u8</span>,.....not_ok:.<span.cla |
| 464c0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c | ss="tok-type">void</span>,.};..< |
| 464e0 | 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>. |
| 46500 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 77 69 74 | <span.class="tok-str">"swit |
| 46520 | 63 68 20 6f 6e 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | ch.on.tagged.union"</span>. |
| 46540 | 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 |
| 46560 | 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 43 6f 6d 70 6c 65 78 54 79 70 65 7b 20 2e 6f 6b 20 3d 20 3c | </span>.c.=.ComplexType{..ok.=.< |
| 46580 | 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 |
| 465a0 | 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 |
| 465c0 | 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 |
| 465e0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 43 6f 6d 70 6c 65 78 54 79 70 65 | -builtin">@as</span>(ComplexType |
| 46600 | 54 61 67 2c 20 63 29 20 3d 3d 20 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 2e 6f 6b 29 3b 0a 0a | Tag,.c).==.ComplexTypeTag.ok);.. |
| 46620 | 20 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 68 3c | ....<span.class="tok-kw">switch< |
| 46640 | 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 70 65 | /span>.(c).{.........ComplexType |
| 46660 | 54 61 67 2e 6f 6b 20 3d 26 67 74 3b 20 7c 76 61 6c 75 65 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | Tag.ok.=>.|value|.<span.class |
| 46680 | 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 |
| 466a0 | 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 34 32 | e.==.<span.class="tok-number">42 |
| 466c0 | 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 | </span>),.........ComplexTypeTag |
| 466e0 | 2e 6e 6f 74 5f 6f 6b 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | .not_ok.=>.<span.class="tok-k |
| 46700 | 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 7d 0a 7d 0a 0a | w">unreachable</span>,.....}.}.. |
| 46720 | 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> |
| 46740 | 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 67 65 74 | .<span.class="tok-str">"get |
| 46760 | 20 74 61 67 20 74 79 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | .tag.type"</span>.{.....<sp |
| 46780 | 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 |
| 467a0 | 65 63 74 28 73 74 64 2e 6d 65 74 61 2e 54 61 67 28 43 6f 6d 70 6c 65 78 54 79 70 65 29 20 3d 3d | ect(std.meta.Tag(ComplexType).== |
| 467c0 | 20 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | .ComplexTypeTag);.}</code></pre> |
| 467e0 | 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 |
| 46800 | 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 |
| 46820 | 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 |
| 46840 | 5f 74 61 67 67 65 64 5f 75 6e 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 | _tagged_union.zig</kbd>.1/2.test |
| 46860 | 5f 74 61 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 | _tagged_union.test.switch.on.tag |
| 46880 | 67 65 64 20 75 6e 69 6f 6e 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 74 61 67 67 65 64 5f 75 | ged.union...OK.2/2.test_tagged_u |
| 468a0 | 6e 69 6f 6e 2e 74 65 73 74 2e 67 65 74 20 74 61 67 20 74 79 70 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 | nion.test.get.tag.type...OK.All. |
| 468c0 | 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 |
| 468e0 | 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 6e 20 6f 72 64 65 72 20 74 6f 20 6d 6f 64 | igure>........<p>In.order.to.mod |
| 46900 | 69 66 79 20 74 68 65 20 70 61 79 6c 6f 61 64 20 6f 66 20 61 20 74 61 67 67 65 64 20 75 6e 69 6f | ify.the.payload.of.a.tagged.unio |
| 46920 | 6e 20 69 6e 20 61 20 73 77 69 74 63 68 20 65 78 70 72 65 73 73 69 6f 6e 2c 0a 20 20 20 20 20 20 | n.in.a.switch.expression,....... |
| 46940 | 70 6c 61 63 65 20 61 20 3c 63 6f 64 65 3e 2a 3c 2f 63 6f 64 65 3e 20 62 65 66 6f 72 65 20 74 68 | place.a.<code>*</code>.before.th |
| 46960 | 65 20 76 61 72 69 61 62 6c 65 20 6e 61 6d 65 20 74 6f 20 6d 61 6b 65 20 69 74 20 61 20 70 6f 69 | e.variable.name.to.make.it.a.poi |
| 46980 | 6e 74 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 | nter:.......</p>.......<figure>< |
| 469a0 | 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 |
| 469c0 | 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 6d 6f 64 69 66 79 | .class="file">test_switch_modify |
| 469e0 | 5f 74 61 67 67 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 | _tagged_union.zig</cite></figcap |
| 46a00 | 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 |
| 46a20 | 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 |
| 46a40 | 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> |
| 46a60 | 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 |
| 46a80 | 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 |
| 46aa0 | 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 |
| 46ac0 | 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 |
| 46ae0 | 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 54 61 67 | -kw">const</span>.ComplexTypeTag |
| 46b00 | 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 |
| 46b20 | 61 6e 3e 20 7b 0a 20 20 20 20 6f 6b 2c 0a 20 20 20 20 6e 6f 74 5f 6f 6b 2c 0a 7d 3b 0a 3c 73 70 | an>.{.....ok,.....not_ok,.};.<sp |
| 46b40 | 61 6e 20 63 6c 61 73 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 | an.class="tok-kw">const</span>.C |
| 46b60 | 6f 6d 70 6c 65 78 54 79 70 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | omplexType.=.<span.class="tok-kw |
| 46b80 | 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 28 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 29 20 7b | ">union</span>(ComplexTypeTag).{ |
| 46ba0 | 0a 20 20 20 20 6f 6b 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | .....ok:.<span.class="tok-type"> |
| 46bc0 | 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 6e 6f 74 5f 6f 6b 3a 20 3c 73 70 61 6e 20 63 6c 61 | u8</span>,.....not_ok:.<span.cla |
| 46be0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c | ss="tok-type">void</span>,.};..< |
| 46c00 | 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>. |
| 46c20 | 3c 73 70 61 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 6f 64 69 | <span.class="tok-str">"modi |
| 46c40 | 66 79 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 20 69 6e 20 73 77 69 74 63 68 26 71 75 6f 74 3b 3c | fy.tagged.union.in.switch"< |
| 46c60 | 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 |
| 46c80 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 43 6f 6d 70 6c 65 78 54 79 70 65 7b 20 2e 6f | ">var</span>.c.=.ComplexType{..o |
| 46ca0 | 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 34 32 3c | k.=.<span.class="tok-number">42< |
| 46cc0 | 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>.};......<span.class="tok- |
| 46ce0 | 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).{......... |
| 46d00 | 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 2e 6f 6b 20 3d 26 67 74 3b 20 7c 2a 76 61 6c 75 65 7c | ComplexTypeTag.ok.=>.|*value| |
| 46d20 | 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 6b 2d 6e 75 6d | .value.*.+=.<span.class="tok-num |
| 46d40 | 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 43 6f 6d 70 6c 65 78 54 79 | ber">1</span>,.........ComplexTy |
| 46d60 | 70 65 54 61 67 2e 6e 6f 74 5f 6f 6b 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | peTag.not_ok.=>.<span.class=" |
| 46d80 | 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>,..... |
| 46da0 | 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 74 72 79 3c | }......<span.class="tok-kw">try< |
| 46dc0 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 63 2e 6f 6b 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | /span>.expect(c.ok.==.<span.clas |
| 46de0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f | s="tok-number">43</span>);.}</co |
| 46e00 | 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 |
| 46e20 | 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 |
| 46e40 | 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. |
| 46e60 | 74 65 73 74 20 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 | test.test_switch_modify_tagged_u |
| 46e80 | 6e 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 6d | nion.zig</kbd>.1/1.test_switch_m |
| 46ea0 | 6f 64 69 66 79 5f 74 61 67 67 65 64 5f 75 6e 69 6f 6e 2e 74 65 73 74 2e 6d 6f 64 69 66 79 20 74 | odify_tagged_union.test.modify.t |
| 46ec0 | 61 67 67 65 64 20 75 6e 69 6f 6e 20 69 6e 20 73 77 69 74 63 68 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 | agged.union.in.switch...OK.All.1 |
| 46ee0 | 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 |
| 46f00 | 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 6e 69 6f 6e 73 20 63 61 | gure>........<p>.......Unions.ca |
| 46f20 | 6e 20 62 65 20 6d 61 64 65 20 74 6f 20 69 6e 66 65 72 20 74 68 65 20 65 6e 75 6d 20 74 61 67 20 | n.be.made.to.infer.the.enum.tag. |
| 46f40 | 74 79 70 65 2e 0a 20 20 20 20 20 20 46 75 72 74 68 65 72 2c 20 75 6e 69 6f 6e 73 20 63 61 6e 20 | type........Further,.unions.can. |
| 46f60 | 68 61 76 65 20 6d 65 74 68 6f 64 73 20 6a 75 73 74 20 6c 69 6b 65 20 73 74 72 75 63 74 73 20 61 | have.methods.just.like.structs.a |
| 46f80 | 6e 64 20 65 6e 75 6d 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 | nd.enums........</p>.......<figu |
| 46fa0 | 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">< |
| 46fc0 | 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 69 6f 6e 5f 6d 65 74 | cite.class="file">test_union_met |
| 46fe0 | 68 6f 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 | hod.zig</cite></figcaption><pre> |
| 47000 | 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 |
| 47020 | 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 |
| 47040 | 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 |
| 47060 | 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 |
| 47080 | 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 |
| 470a0 | 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 |
| 470c0 | 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 74 | ect;..<span.class="tok-kw">const |
| 470e0 | 3c 2f 73 70 61 6e 3e 20 56 61 72 69 61 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>.Variant.=.<span.class="t |
| 47100 | 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 73 3d | ok-kw">union</span>(<span.class= |
| 47120 | 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 69 6e 74 3a | "tok-kw">enum</span>).{.....int: |
| 47140 | 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 |
| 47160 | 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 |
| 47180 | 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | k-type">bool</span>,......<span. |
| 471a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 6f 69 64 20 63 61 6e 20 | class="tok-comment">//.void.can. |
| 471c0 | 62 65 20 6f 6d 69 74 74 65 64 20 77 68 65 6e 20 69 6e 66 65 72 72 69 6e 67 20 65 6e 75 6d 20 74 | be.omitted.when.inferring.enum.t |
| 471e0 | 61 67 20 74 79 70 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 6e 6f 6e 65 2c 0a 0a 20 20 20 20 3c | ag.type.</span>.....none,......< |
| 47200 | 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 |
| 47220 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 72 75 74 68 79 3c 2f 73 70 61 6e 3e | pan.class="tok-fn">truthy</span> |
| 47240 | 28 73 65 6c 66 3a 20 56 61 72 69 61 6e 74 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | (self:.Variant).<span.class="tok |
| 47260 | 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 20 20 20 20 3c 73 70 | -type">bool</span>.{.........<sp |
| 47280 | 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>. |
| 472a0 | 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 |
| 472c0 | 6e 3e 20 28 73 65 6c 66 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 56 61 72 69 61 6e 74 2e | n>.(self).{.............Variant. |
| 472e0 | 69 6e 74 20 3d 26 67 74 3b 20 7c 78 5f 69 6e 74 7c 20 78 5f 69 6e 74 20 21 3d 20 3c 73 70 61 6e | int.=>.|x_int|.x_int.!=.<span |
| 47300 | 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 20 20 | .class="tok-number">0</span>,... |
| 47320 | 20 20 20 20 20 20 20 20 20 20 56 61 72 69 61 6e 74 2e 62 6f 6f 6c 65 61 6e 20 3d 26 67 74 3b 20 | ..........Variant.boolean.=>. |
| 47340 | 7c 78 5f 62 6f 6f 6c 7c 20 78 5f 62 6f 6f 6c 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 56 61 72 | |x_bool|.x_bool,.............Var |
| 47360 | 69 61 6e 74 2e 6e 6f 6e 65 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | iant.none.=>.<span.class="tok |
| 47380 | 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 7d 3b 0a | -null">false</span>,.........};. |
| 473a0 | 20 20 20 20 7d 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | ....}.};..<span.class="tok-kw">t |
| 473c0 | 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" |
| 473e0 | 3e 26 71 75 6f 74 3b 75 6e 69 6f 6e 20 6d 65 74 68 6f 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | >"union.method"</span> |
| 47400 | 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< |
| 47420 | 2f 73 70 61 6e 3e 20 76 31 20 3d 20 56 61 72 69 61 6e 74 7b 20 2e 69 6e 74 20 3d 20 3c 73 70 61 | /span>.v1.=.Variant{..int.=.<spa |
| 47440 | 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 7d 3b | n.class="tok-number">1</span>.}; |
| 47460 | 0a 20 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 |
| 47480 | 70 61 6e 3e 20 76 32 20 3d 20 56 61 72 69 61 6e 74 7b 20 2e 62 6f 6f 6c 65 61 6e 20 3d 20 3c 73 | pan>.v2.=.Variant{..boolean.=.<s |
| 474a0 | 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 |
| 474c0 | 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 3e 74 | >.};......<span.class="tok-kw">t |
| 474e0 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 31 2e 74 72 75 74 68 79 28 29 29 3b 0a 20 | ry</span>.expect(v1.truthy());.. |
| 47500 | 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 |
| 47520 | 6e 3e 20 65 78 70 65 63 74 28 21 76 32 2e 74 72 75 74 68 79 28 29 29 3b 0a 7d 3c 2f 63 6f 64 65 | n>.expect(!v2.truthy());.}</code |
| 47540 | 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 |
| 47560 | 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 |
| 47580 | 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 |
| 475a0 | 73 74 20 74 65 73 74 5f 75 6e 69 6f 6e 5f 6d 65 74 68 6f 64 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 | st.test_union_method.zig</kbd>.1 |
| 475c0 | 2f 31 20 74 65 73 74 5f 75 6e 69 6f 6e 5f 6d 65 74 68 6f 64 2e 74 65 73 74 2e 75 6e 69 6f 6e 20 | /1.test_union_method.test.union. |
| 475e0 | 6d 65 74 68 6f 64 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 | method...OK.All.1.tests.passed.. |
| 47600 | 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 |
| 47620 | 3e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 74 61 67 4e 61 6d 65 22 3e 40 74 61 67 4e | >.......<a.href="#tagName">@tagN |
| 47640 | 61 6d 65 3c 2f 61 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 72 65 74 75 72 6e 20 61 20 | ame</a>.can.be.used.to.return.a. |
| 47660 | 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 3e | <a.href="#comptime">comptime</a> |
| 47680 | 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 5b 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .......<code>[:<span.class="tok- |
| 476a0 | 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 |
| 476c0 | 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=" |
| 476e0 | 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 76 61 6c 75 65 | tok-type">u8</span></code>.value |
| 47700 | 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 66 69 65 6c 64 20 6e 61 6d 65 3a 0a 20 20 | .representing.the.field.name:... |
| 47720 | 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 |
| 47740 | 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=" |
| 47760 | 66 69 6c 65 22 3e 74 65 73 74 5f 74 61 67 4e 61 6d 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 | file">test_tagName.zig</cite></f |
| 47780 | 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 |
| 477a0 | 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 |
| 477c0 | 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</ |
| 477e0 | 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 |
| 47800 | 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 |
| 47820 | 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.=. |
| 47840 | 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 |
| 47860 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 6d 61 6c 6c 32 20 3d 20 | ="tok-kw">const</span>.Small2.=. |
| 47880 | 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 |
| 478a0 | 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 61 | >(<span.class="tok-kw">enum</spa |
| 478c0 | 6e 3e 29 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 | n>).{.....a:.<span.class="tok-ty |
| 478e0 | 70 65 22 3e 69 33 32 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 | pe">i32</span>,.....b:.<span.cla |
| 47900 | 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 63 | ss="tok-type">bool</span>,.....c |
| 47920 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | :.<span.class="tok-type">u8</spa |
| 47940 | 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 74 65 73 74 | n>,.};.<span.class="tok-kw">test |
| 47960 | 3c 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 |
| 47980 | 75 6f 74 3b 40 74 61 67 4e 61 6d 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | uot;@tagName"</span>.{..... |
| 479a0 | 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>. |
| 479c0 | 65 78 70 65 63 74 28 73 74 64 2e 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | expect(std.mem.eql(<span.class=" |
| 479e0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-type">u8</span>,.<span.class |
| 47a00 | 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 6e 3e 28 53 | ="tok-builtin">@tagName</span>(S |
| 47a20 | 6d 61 6c 6c 32 2e 61 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 | mall2.a),.<span.class="tok-str"> |
| 47a40 | 26 71 75 6f 74 3b 61 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 | "a"</span>));.}</code> |
| 47a60 | 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 |
| 47a80 | 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 |
| 47aa0 | 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 |
| 47ac0 | 74 20 74 65 73 74 5f 74 61 67 4e 61 6d 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 | t.test_tagName.zig</kbd>.1/1.tes |
| 47ae0 | 74 5f 74 61 67 4e 61 6d 65 2e 74 65 73 74 2e 40 74 61 67 4e 61 6d 65 2e 2e 2e 4f 4b 0a 41 6c 6c | t_tagName.test.@tagName...OK.All |
| 47b00 | 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></ |
| 47b20 | 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 65 | figure>................<h3.id="e |
| 47b40 | 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 74 65 72 | xtern-union"><a.href="#toc-exter |
| 47b60 | 6e 2d 75 6e 69 6f 6e 22 3e 65 78 74 65 72 6e 20 75 6e 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 | n-union">extern.union</a>.<a.cla |
| 47b80 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 3e c2 a7 | ss="hdr".href="#extern-union">.. |
| 47ba0 | 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6e 20 3c 63 | </a></h3>........<p>.......An.<c |
| 47bc0 | 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 65 72 6e 3c | ode><span.class="tok-kw">extern< |
| 47be0 | 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 6e 69 6f | /span>.<span.class="tok-kw">unio |
| 47c00 | 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 | n</span></code>.has.memory.layou |
| 47c20 | 74 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 | t.guaranteed.to.be.compatible.wi |
| 47c40 | 74 68 0a 20 20 20 20 20 20 74 68 65 20 74 61 72 67 65 74 20 43 20 41 42 49 2e 0a 20 20 20 20 20 | th.......the.target.C.ABI....... |
| 47c60 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e | .</p>.......<p>See.also:</p><ul> |
| 47c80 | 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d 73 74 72 75 63 74 22 3e 65 78 | .<li><a.href="#extern-struct">ex |
| 47ca0 | 74 65 72 6e 20 73 74 72 75 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 | tern.struct</a></li>.</ul>...... |
| 47cc0 | 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 70 61 63 6b 65 64 2d 75 6e 69 6f 6e 22 3e | ..........<h3.id="packed-union"> |
| 47ce0 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 61 63 6b 65 64 2d 75 6e 69 6f 6e 22 3e 70 61 63 6b | <a.href="#toc-packed-union">pack |
| 47d00 | 65 64 20 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 | ed.union</a>.<a.class="hdr".href |
| 47d20 | 3d 22 23 70 61 63 6b 65 64 2d 75 6e 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | ="#packed-union">..</a></h3>.... |
| 47d40 | 20 20 20 20 3c 70 3e 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 | ....<p>A.<code><span.class="tok- |
| 47d60 | 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 61 73 73 3d 22 74 | kw">packed</span>.<span.class="t |
| 47d80 | 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 77 | ok-kw">union</span></code>.has.w |
| 47da0 | 65 6c 6c 2d 64 65 66 69 6e 65 64 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 20 61 6e 64 | ell-defined.in-memory.layout.and |
| 47dc0 | 20 69 73 20 65 6c 69 67 69 62 6c 65 0a 20 20 20 20 20 20 20 20 20 20 74 6f 20 62 65 20 69 6e 20 | .is.eligible...........to.be.in. |
| 47de0 | 61 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 | a.<a.href="#packed-struct">packe |
| 47e00 | 64 20 73 74 72 75 63 74 3c 2f 61 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 | d.struct</a>.</p>............... |
| 47e20 | 3c 68 33 20 69 64 3d 22 41 6e 6f 6e 79 6d 6f 75 73 2d 55 6e 69 6f 6e 2d 4c 69 74 65 72 61 6c 73 | <h3.id="Anonymous-Union-Literals |
| 47e40 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 6e 6f 6e 79 6d 6f 75 73 2d 55 6e 69 6f 6e 2d | "><a.href="#toc-Anonymous-Union- |
| 47e60 | 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 74 65 72 61 | Literals">Anonymous.Union.Litera |
| 47e80 | 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 41 6e 6f | ls</a>.<a.class="hdr".href="#Ano |
| 47ea0 | 6e 79 6d 6f 75 73 2d 55 6e 69 6f 6e 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | nymous-Union-Literals">..</a></h |
| 47ec0 | 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 3c 61 20 68 72 65 66 3d 22 23 41 6e 6f 6e 79 6d 6f 75 73 | 3>........<p><a.href="#Anonymous |
| 47ee0 | 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 72 75 | -Struct-Literals">Anonymous.Stru |
| 47f00 | 63 74 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 73 79 6e 74 61 78 20 63 61 6e 20 62 65 20 75 73 | ct.Literals</a>.syntax.can.be.us |
| 47f20 | 65 64 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 75 6e 69 6f 6e 73 20 77 69 74 68 6f 75 74 20 | ed.to.initialize.unions.without. |
| 47f40 | 73 70 65 63 69 66 79 69 6e 67 0a 20 20 20 20 20 20 74 68 65 20 74 79 70 65 3a 3c 2f 70 3e 0a 20 | specifying.......the.type:</p>.. |
| 47f60 | 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=" |
| 47f80 | 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 |
| 47fa0 | 5f 61 6e 6f 6e 79 6d 6f 75 73 5f 75 6e 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | _anonymous_union.zig</cite></fig |
| 47fc0 | 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=" |
| 47fe0 | 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 |
| 48000 | 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 |
| 48020 | 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">" |
| 48040 | 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=" |
| 48060 | 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 |
| 48080 | 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=" |
| 480a0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4e 75 6d 62 65 72 20 3d 20 3c 73 | tok-kw">const</span>.Number.=.<s |
| 480c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">union</span>. |
| 480e0 | 7b 0a 20 20 20 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | {.....int:.<span.class="tok-type |
| 48100 | 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 | ">i32</span>,.....float:.<span.c |
| 48120 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a | lass="tok-type">f64</span>,.};.. |
| 48140 | 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> |
| 48160 | 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 6e 6f | .<span.class="tok-str">"ano |
| 48180 | 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 78 26 71 75 6f 74 | nymous.union.literal.syntax" |
| 481a0 | 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- |
| 481c0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 69 3a 20 4e 75 6d 62 65 72 20 3d 20 2e 7b 20 | kw">const</span>.i:.Number.=..{. |
| 481e0 | 2e 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | .int.=.<span.class="tok-number"> |
| 48200 | 34 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | 42</span>.};.....<span.class="to |
| 48220 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 20 3d 20 6d 61 6b 65 4e 75 6d 62 65 | k-kw">const</span>.f.=.makeNumbe |
| 48240 | 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 |
| 48260 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 69 2e 69 6e 74 20 3d 3d 20 3c 73 70 61 6e 20 63 | y</span>.expect(i.int.==.<span.c |
| 48280 | 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 3b 0a 20 20 | lass="tok-number">42</span>);... |
| 482a0 | 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 |
| 482c0 | 3e 20 65 78 70 65 63 74 28 66 2e 66 6c 6f 61 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >.expect(f.float.==.<span.class= |
| 482e0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c | "tok-number">12.34</span>);.}..< |
| 48300 | 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 |
| 48320 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 6b 65 4e 75 6d 62 65 72 3c 2f 73 | pan.class="tok-fn">makeNumber</s |
| 48340 | 70 61 6e 3e 28 29 20 4e 75 6d 62 65 72 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pan>().Number.{.....<span.class= |
| 48360 | 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 2e 66 6c 6f 61 74 | "tok-kw">return</span>..{..float |
| 48380 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 | .=.<span.class="tok-number">12.3 |
| 483a0 | 34 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 69 67 75 | 4</span>.};.}</code></pre></figu |
| 483c0 | 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 |
| 483e0 | 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> |
| 48400 | 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 6e 6f 6e 79 | <samp>$.<kbd>zig.test.test_anony |
| 48420 | 6d 6f 75 73 5f 75 6e 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 61 6e | mous_union.zig</kbd>.1/1.test_an |
| 48440 | 6f 6e 79 6d 6f 75 73 5f 75 6e 69 6f 6e 2e 74 65 73 74 2e 61 6e 6f 6e 79 6d 6f 75 73 20 75 6e 69 | onymous_union.test.anonymous.uni |
| 48460 | 6f 6e 20 6c 69 74 65 72 61 6c 20 73 79 6e 74 61 78 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 | on.literal.syntax...OK.All.1.tes |
| 48480 | 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 |
| 484a0 | 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | >........................<h2.id= |
| 484c0 | 22 6f 70 61 71 75 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6f 70 61 71 75 65 22 3e 6f | "opaque"><a.href="#toc-opaque">o |
| 484e0 | 70 61 71 75 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | paque</a>.<a.class="hdr".href="# |
| 48500 | 6f 70 61 71 75 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 | opaque">..</a></h2>........<p>.. |
| 48520 | 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"> |
| 48540 | 6f 70 61 71 75 65 3c 2f 73 70 61 6e 3e 20 7b 7d 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 65 73 | opaque</span>.{}</code>.declares |
| 48560 | 20 61 20 6e 65 77 20 74 79 70 65 20 77 69 74 68 20 61 6e 20 75 6e 6b 6e 6f 77 6e 20 28 62 75 74 | .a.new.type.with.an.unknown.(but |
| 48580 | 20 6e 6f 6e 2d 7a 65 72 6f 29 20 73 69 7a 65 20 61 6e 64 20 61 6c 69 67 6e 6d 65 6e 74 2e 0a 20 | .non-zero).size.and.alignment... |
| 485a0 | 20 20 20 20 20 49 74 20 63 61 6e 20 63 6f 6e 74 61 69 6e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 | .....It.can.contain.declarations |
| 485c0 | 20 74 68 65 20 73 61 6d 65 20 61 73 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 73 | .the.same.as.<a.href="#struct">s |
| 485e0 | 74 72 75 63 74 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 | tructs</a>,.<a.href="#union">uni |
| 48600 | 6f 6e 73 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 | ons</a>,.......and.<a.href="#enu |
| 48620 | 6d 22 3e 65 6e 75 6d 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | m">enums</a>........</p>.......< |
| 48640 | 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 74 79 70 69 63 61 6c 6c 79 20 75 73 65 64 20 | p>.......This.is.typically.used. |
| 48660 | 66 6f 72 20 74 79 70 65 20 73 61 66 65 74 79 20 77 68 65 6e 20 69 6e 74 65 72 61 63 74 69 6e 67 | for.type.safety.when.interacting |
| 48680 | 20 77 69 74 68 20 43 20 63 6f 64 65 20 74 68 61 74 20 64 6f 65 73 20 6e 6f 74 20 65 78 70 6f 73 | .with.C.code.that.does.not.expos |
| 486a0 | 65 20 73 74 72 75 63 74 20 64 65 74 61 69 6c 73 2e 0a 20 20 20 20 20 20 45 78 61 6d 70 6c 65 3a | e.struct.details........Example: |
| 486c0 | 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 |
| 486e0 | 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 |
| 48700 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 6f 70 61 71 75 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c | s="file">test_opaque.zig</cite>< |
| 48720 | 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 |
| 48740 | 73 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 65 72 70 20 3d 20 | ss="tok-kw">const</span>.Derp.=. |
| 48760 | 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 |
| 48780 | 6e 3e 20 7b 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 |
| 487a0 | 74 3c 2f 73 70 61 6e 3e 20 57 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | t</span>.Wat.=.<span.class="tok- |
| 487c0 | 6b 77 22 3e 6f 70 61 71 75 65 3c 2f 73 70 61 6e 3e 20 7b 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | kw">opaque</span>.{};..<span.cla |
| 487e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ss="tok-kw">extern</span>.<span. |
| 48800 | 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 |
| 48820 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 72 3c 2f 73 70 61 6e 3e 28 64 3a 20 2a 44 65 72 | lass="tok-fn">bar</span>(d:.*Der |
| 48840 | 70 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 | p).<span.class="tok-type">void</ |
| 48860 | 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</ |
| 48880 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f | span>.<span.class="tok-fn">foo</ |
| 488a0 | 73 70 61 6e 3e 28 77 3a 20 2a 57 61 74 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>(w:.*Wat).<span.class="tok- |
| 488c0 | 6b 77 22 3e 63 61 6c 6c 63 6f 6e 76 3c 2f 73 70 61 6e 3e 28 2e 43 29 20 3c 73 70 61 6e 20 63 6c | kw">callconv</span>(.C).<span.cl |
| 488e0 | 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>.{.... |
| 48900 | 20 62 61 72 28 77 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .bar(w);.}..<span.class="tok-kw" |
| 48920 | 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 |
| 48940 | 72 22 3e 26 71 75 6f 74 3b 63 61 6c 6c 20 66 6f 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | r">"call.foo"</span>.{ |
| 48960 | 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 6e 75 6c 6c 22 3e | .....foo(<span.class="tok-null"> |
| 48980 | 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | undefined</span>);.}</code></pre |
| 489a0 | 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 |
| 489c0 | 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 |
| 489e0 | 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 |
| 48a00 | 74 5f 6f 70 61 71 75 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_opaque.zig</kbd>.<span.class=" |
| 48a20 | 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6f 70 61 71 75 65 2e | sgr-1m">doc/langref/test_opaque. |
| 48a40 | 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 67 72 | zig:6:9:.</span><span.class="sgr |
| 48a60 | 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= |
| 48a80 | 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 5f 6f 70 | "sgr-1m">expected.type.'*test_op |
| 48aa0 | 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 75 65 2e | aque.Derp',.found.'*test_opaque. |
| 48ac0 | 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 20 20 20 | Wat'.</span>....bar(w);......... |
| 48ae0 | 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 6e 3e 3c | <span.class="sgr-32m">^.</span>< |
| 48b00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f | span.class="sgr-1m">doc/langref/ |
| 48b20 | 74 65 73 74 5f 6f 70 61 71 75 65 2e 7a 69 67 3a 36 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | test_opaque.zig:6:9:.</span><spa |
| 48b40 | 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>< |
| 48b60 | 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 74 79 70 65 | span.class="sgr-1m">pointer.type |
| 48b80 | 20 63 68 69 6c 64 20 27 74 65 73 74 5f 6f 70 61 71 75 65 2e 57 61 74 27 20 63 61 6e 6e 6f 74 20 | .child.'test_opaque.Wat'.cannot. |
| 48ba0 | 63 61 73 74 20 69 6e 74 6f 20 70 6f 69 6e 74 65 72 20 74 79 70 65 20 63 68 69 6c 64 20 27 74 65 | cast.into.pointer.type.child.'te |
| 48bc0 | 73 74 5f 6f 70 61 71 75 65 2e 44 65 72 70 27 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | st_opaque.Derp'.</span><span.cla |
| 48be0 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6f 70 61 | ss="sgr-1m">doc/langref/test_opa |
| 48c00 | 71 75 65 2e 7a 69 67 3a 32 3a 31 33 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | que.zig:2:13:.</span><span.class |
| 48c20 | 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 6c | ="sgr-36m">note:.</span><span.cl |
| 48c40 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 6f 70 61 71 75 65 20 64 65 63 6c 61 72 65 64 20 68 65 72 | ass="sgr-1m">opaque.declared.her |
| 48c60 | 65 0a 3c 2f 73 70 61 6e 3e 63 6f 6e 73 74 20 57 61 74 20 3d 20 6f 70 61 71 75 65 20 7b 7d 3b 0a | e.</span>const.Wat.=.opaque.{};. |
| 48c80 | 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 |
| 48ca0 | 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=" |
| 48cc0 | 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6f 70 61 71 75 65 2e | sgr-1m">doc/langref/test_opaque. |
| 48ce0 | 7a 69 67 3a 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 | zig:1:14:.</span><span.class="sg |
| 48d00 | 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 3d | r-36m">note:.</span><span.class= |
| 48d20 | 22 73 67 72 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 | "sgr-1m">opaque.declared.here.</ |
| 48d40 | 73 70 61 6e 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 | span>const.Derp.=.opaque.{};.... |
| 48d60 | 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"> |
| 48d80 | 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 73 67 | ^~~~~~~~~.</span><span.class="sg |
| 48da0 | 72 2d 31 6d 22 3e 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 | r-1m">doc/langref/test_opaque.zi |
| 48dc0 | 67 3a 34 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 | g:4:18:.</span><span.class="sgr- |
| 48de0 | 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 |
| 48e00 | 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 72 65 64 20 68 | gr-1m">parameter.type.declared.h |
| 48e20 | 65 72 65 0a 3c 2f 73 70 61 6e 3e 65 78 74 65 72 6e 20 66 6e 20 62 61 72 28 64 3a 20 2a 44 65 72 | ere.</span>extern.fn.bar(d:.*Der |
| 48e40 | 70 29 20 76 6f 69 64 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | p).void;..................<span. |
| 48e60 | 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 3c 73 70 | class="sgr-32m">^~~~~.</span><sp |
| 48e80 | 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 65 64 20 62 79 3a | an.class="sgr-2m">referenced.by: |
| 48ea0 | 0a 20 20 20 20 74 65 73 74 2e 63 61 6c 6c 20 66 6f 6f 3a 20 64 6f 63 2f 6c 61 6e 67 72 65 66 2f | .....test.call.foo:.doc/langref/ |
| 48ec0 | 74 65 73 74 5f 6f 70 61 71 75 65 2e 7a 69 67 3a 31 30 3a 35 0a 20 20 20 20 72 65 6d 61 69 6e 69 | test_opaque.zig:10:5.....remaini |
| 48ee0 | 6e 67 20 72 65 66 65 72 65 6e 63 65 20 74 72 61 63 65 73 20 68 69 64 64 65 6e 3b 20 75 73 65 20 | ng.reference.traces.hidden;.use. |
| 48f00 | 27 2d 66 72 65 66 65 72 65 6e 63 65 2d 74 72 61 63 65 27 20 74 6f 20 73 65 65 20 61 6c 6c 20 72 | '-freference-trace'.to.see.all.r |
| 48f20 | 65 66 65 72 65 6e 63 65 20 74 72 61 63 65 73 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c | eference.traces.</span>.</samp>< |
| 48f40 | 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 20 3c 68 | /pre></figure>................<h |
| 48f60 | 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 6f 63 2d 42 6c 6f 63 | 2.id="Blocks"><a.href="#toc-Bloc |
| 48f80 | 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 68 64 72 22 20 68 72 | ks">Blocks</a>.<a.class="hdr".hr |
| 48fa0 | 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 0a 20 20 20 20 20 20 | ef="#Blocks">..</a></h2>........ |
| 48fc0 | 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 20 74 6f 20 6c 69 6d | <p>.......Blocks.are.used.to.lim |
| 48fe0 | 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 64 65 63 6c 61 72 61 | it.the.scope.of.variable.declara |
| 49000 | 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 66 69 67 75 72 65 3e | tions:.......</p>.......<figure> |
| 49020 | 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 |
| 49040 | 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 73 2e 7a 69 67 3c 2f | e.class="file">test_blocks.zig</ |
| 49060 | 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 |
| 49080 | 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 |
| 490a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 63 63 65 73 73 | pan.class="tok-str">"access |
| 490c0 | 20 76 61 72 69 61 62 6c 65 20 61 66 74 65 72 20 62 6c 6f 63 6b 20 73 63 6f 70 65 26 71 75 6f 74 | .variable.after.block.scope" |
| 490e0 | 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 20 63 | ;</span>.{.....{.........<span.c |
| 49100 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 | lass="tok-kw">var</span>.x:.<spa |
| 49120 | 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>.=. |
| 49140 | 3c 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 |
| 49160 | 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 20 20 7d 0a 20 20 20 | >;........._.=.&x;.....}.... |
| 49180 | 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | .x.+=.<span.class="tok-number">1 |
| 491a0 | 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> |
| 491c0 | 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 |
| 491e0 | 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 |
| 49200 | 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 6c 6f 63 6b 73 2e 7a | mp>$.<kbd>zig.test.test_blocks.z |
| 49220 | 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 64 6f | ig</kbd>.<span.class="sgr-1m">do |
| 49240 | 63 2f 6c 61 6e 67 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 | c/langref/test_blocks.zig:6:5:.< |
| 49260 | 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 |
| 49280 | 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 75 | r:.</span><span.class="sgr-1m">u |
| 492a0 | 73 65 20 6f 66 20 75 6e 64 65 63 6c 61 72 65 64 20 69 64 65 6e 74 69 66 69 65 72 20 27 78 27 0a | se.of.undeclared.identifier.'x'. |
| 492c0 | 3c 2f 73 70 61 6e 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 | </span>....x.+=.1;.....<span.cla |
| 492e0 | 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 2f | ss="sgr-32m">^.</span>.</samp></ |
| 49300 | 70 72 65 3e 3c 2f 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 | pre></figure>........<p>Blocks.a |
| 49320 | 72 65 20 65 78 70 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 | re.expressions..When.labeled,.<c |
| 49340 | 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 3c 2f | ode><span.class="tok-kw">break</ |
| 49360 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 0a 20 20 20 20 20 20 74 | span></code>.can.be.used.......t |
| 49380 | 6f 20 72 65 74 75 72 6e 20 61 20 76 61 6c 75 65 20 66 72 6f 6d 20 74 68 65 20 62 6c 6f 63 6b 3a | o.return.a.value.from.the.block: |
| 493a0 | 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 |
| 493c0 | 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 |
| 493e0 | 73 3d 22 66 69 6c 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 | s="file">test_labeled_break.zig< |
| 49400 | 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 |
| 49420 | 70 61 6e 20 63 6c 61 73 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>. |
| 49440 | 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"> |
| 49460 | 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- |
| 49480 | 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 |
| 494a0 | 70 61 6e 20 63 6c 61 73 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>. |
| 494c0 | 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 |
| 494e0 | 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>.< |
| 49500 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6c 61 62 65 6c | span.class="tok-str">"label |
| 49520 | 65 64 20 62 72 65 61 6b 20 66 72 6f 6d 20 6c 61 62 65 6c 65 64 20 62 6c 6f 63 6b 20 65 78 70 72 | ed.break.from.labeled.block.expr |
| 49540 | 65 73 73 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | ession"</span>.{.....<span. |
| 49560 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 | class="tok-kw">var</span>.y:.<sp |
| 49580 | 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>.= |
| 495a0 | 20 3c 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 | .<span.class="tok-number">123</s |
| 495c0 | 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"> |
| 495e0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 | const</span>.x.=.blk:.{......... |
| 49600 | 79 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | y.+=.<span.class="tok-number">1< |
| 49620 | 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>;.........<span.class="tok |
| 49640 | 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 79 3b 0a 20 20 20 20 7d 3b | -kw">break</span>.:blk.y;.....}; |
| 49660 | 0a 20 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 |
| 49680 | 70 61 6e 3e 20 65 78 70 65 63 74 28 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pan>.expect(x.==.<span.class="to |
| 496a0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e | k-number">124</span>);.....<span |
| 496c0 | 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 |
| 496e0 | 74 28 79 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | t(y.==.<span.class="tok-number"> |
| 49700 | 31 32 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | 124</span>);.}</code></pre></fig |
| 49720 | 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 |
| 49740 | 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 |
| 49760 | 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 6c 61 62 65 | ><samp>$.<kbd>zig.test.test_labe |
| 49780 | 6c 65 64 5f 62 72 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 | led_break.zig</kbd>.1/1.test_lab |
| 497a0 | 65 6c 65 64 5f 62 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 | eled_break.test.labeled.break.fr |
| 497c0 | 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 2e 2e 2e 4f 4b | om.labeled.block.expression...OK |
| 497e0 | 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 |
| 49800 | 65 3e 3c 2f 66 69 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 | e></figure>........<p>Here,.<cod |
| 49820 | 65 3e 62 6c 6b 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 61 6e 79 20 6e 61 6d 65 2e 3c 2f 70 | e>blk</code>.can.be.any.name.</p |
| 49840 | 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 |
| 49860 | 3e 3c 61 20 68 72 65 66 3d 22 23 4c 61 62 65 6c 65 64 2d 77 68 69 6c 65 22 3e 4c 61 62 65 6c 65 | ><a.href="#Labeled-while">Labele |
| 49880 | 64 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 22 23 4c | d.while</a></li>.<li><a.href="#L |
| 498a0 | 61 62 65 6c 65 64 2d 66 6f 72 22 3e 4c 61 62 65 6c 65 64 20 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e | abeled-for">Labeled.for</a></li> |
| 498c0 | 0a 3c 2f 75 6c 3e 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 | .</ul>.........<h3.id="Shadowing |
| 498e0 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 68 61 64 6f 77 69 6e 67 22 3e 53 68 61 64 6f | "><a.href="#toc-Shadowing">Shado |
| 49900 | 77 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 | wing</a>.<a.class="hdr".href="#S |
| 49920 | 68 61 64 6f 77 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 | hadowing">..</a></h3>........<p> |
| 49940 | 3c 61 20 68 72 65 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 | <a.href="#Identifiers">Identifie |
| 49960 | 72 73 3c 2f 61 3e 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 | rs</a>.are.never.allowed.to."hid |
| 49980 | 65 22 20 6f 74 68 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 | e".other.identifiers.by.using.th |
| 499a0 | 65 20 73 61 6d 65 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 | e.same.name:</p>.......<figure>< |
| 499c0 | 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 |
| 499e0 | 20 63 6c 61 73 73 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 | .class="file">test_shadowing.zig |
| 49a00 | 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>< |
| 49a20 | 73 70 61 6e 20 63 6c 61 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> |
| 49a40 | 20 70 69 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 | .pi.=.<span.class="tok-number">3 |
| 49a60 | 2e 31 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 | .14</span>;..<span.class="tok-kw |
| 49a80 | 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 |
| 49aa0 | 74 72 22 3e 26 71 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 | tr">"inside.test.block" |
| 49ac0 | 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- |
| 49ae0 | 63 6f 6d 6d 65 6e 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 | comment">//.Let's.even.go.inside |
| 49b00 | 20 61 6e 6f 74 68 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 | .another.block</span>.....{..... |
| 49b20 | 20 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 |
| 49b40 | 61 6e 3e 20 70 69 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | an>.pi:.<span.class="tok-type">i |
| 49b60 | 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 |
| 49b80 | 62 65 72 22 3e 31 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 | ber">1234</span>;.....}.}</code> |
| 49ba0 | 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 |
| 49bc0 | 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 |
| 49be0 | 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 |
| 49c00 | 74 20 74 65 73 74 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 | t.test_shadowing.zig</kbd>.<span |
| 49c20 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 | .class="sgr-1m">doc/langref/test |
| 49c40 | 5f 73 68 61 64 6f 77 69 6e 67 2e 7a 69 67 3a 36 3a 31 33 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | _shadowing.zig:6:13:.</span><spa |
| 49c60 | 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 6e 3e | n.class="sgr-31m">error:.</span> |
| 49c80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 6c 6f 63 61 6c 20 76 61 72 69 61 | <span.class="sgr-1m">local.varia |
| 49ca0 | 62 6c 65 20 73 68 61 64 6f 77 73 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 6f 66 20 27 70 69 27 0a | ble.shadows.declaration.of.'pi'. |
| 49cc0 | 3c 2f 73 70 61 6e 3e 20 20 20 20 20 20 20 20 76 61 72 20 70 69 3a 20 69 33 32 20 3d 20 31 32 33 | </span>........var.pi:.i32.=.123 |
| 49ce0 | 34 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 73 67 72 2d | 4;.............<span.class="sgr- |
| 49d00 | 33 32 6d 22 3e 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 | 32m">^~.</span><span.class="sgr- |
| 49d20 | 31 6d 22 3e 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 | 1m">doc/langref/test_shadowing.z |
| 49d40 | 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- |
| 49d60 | 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 |
| 49d80 | 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 |
| 49da0 | 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 |
| 49dc0 | 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 |
| 49de0 | 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>.... |
| 49e00 | 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 |
| 49e20 | 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 |
| 49e40 | 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. |
| 49e60 | 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 |
| 49e80 | 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 |
| 49ea0 | 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 |
| 49ec0 | 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. |
| 49ee0 | 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 |
| 49f00 | 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">< |
| 49f20 | 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 |
| 49f40 | 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> |
| 49f60 | 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> |
| 49f80 | 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 |
| 49fa0 | 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>.{..... |
| 49fc0 | 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 |
| 49fe0 | 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 |
| 4a000 | 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>;........._ |
| 4a020 | 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 |
| 4a040 | 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:.< |
| 4a060 | 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 |
| 4a080 | 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< |
| 4a0a0 | 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;.... |
| 4a0c0 | 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 |
| 4a0e0 | 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"> |
| 4a100 | 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>$.< |
| 4a120 | 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 |
| 4a140 | 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 |
| 4a160 | 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. |
| 4a180 | 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>......... |
| 4a1a0 | 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. |
| 4a1c0 | 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 |
| 4a1e0 | 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="# |
| 4a200 | 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>....... |
| 4a220 | 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 |
| 4a240 | 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" |
| 4a260 | 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>...... |
| 4a280 | 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- |
| 4a2a0 | 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 |
| 4a2c0 | 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> |
| 4a2e0 | 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"> |
| 4a300 | 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=" |
| 4a320 | 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 |
| 4a340 | 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" |
| 4a360 | 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"> |
| 4a380 | 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 |
| 4a3a0 | 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"> |
| 4a3c0 | 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 |
| 4a3e0 | 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.=.{};..... |
| 4a400 | 3c 73 70 61 6e 20 63 6c 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 |
| 4a420 | 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 |
| 4a440 | 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 |
| 4a460 | 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 |
| 4a480 | 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>( |
| 4a4a0 | 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 |
| 4a4c0 | 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- |
| 4a4e0 | 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 |
| 4a500 | 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 |
| 4a520 | 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 |
| 4a540 | 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 |
| 4a560 | 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);.}< |
| 4a580 | 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 |
| 4a5a0 | 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 |
| 4a5c0 | 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 |
| 4a5e0 | 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 |
| 4a600 | 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.. |
| 4a620 | 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>< |
| 4a640 | 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>.................. |
| 4a660 | 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 |
| 4a680 | 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=" |
| 4a6a0 | 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>. |
| 4a6c0 | 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 |
| 4a6e0 | 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 |
| 4a700 | 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 |
| 4a720 | 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" |
| 4a740 | 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= |
| 4a760 | 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 |
| 4a780 | 61 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 |
| 4a7a0 | 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" |
| 4a7c0 | 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 |
| 4a7e0 | 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> |
| 4a800 | 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 |
| 4a820 | 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= |
| 4a840 | 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 |
| 4a860 | 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= |
| 4a880 | 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 |
| 4a8a0 | 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 |
| 4a8c0 | 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 |
| 4a8e0 | 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 |
| 4a900 | 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 |
| 4a920 | 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>;.. |
| 4a940 | 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 |
| 4a960 | 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"> |
| 4a980 | 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 |
| 4a9a0 | 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 |
| 4a9c0 | 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 |
| 4a9e0 | 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. |
| 4aa00 | 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>.. |
| 4aa20 | 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">//. |
| 4aa40 | 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 |
| 4aa60 | 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>..... |
| 4aa80 | 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 |
| 4aaa0 | 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 |
| 4aac0 | 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 |
| 4aae0 | 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 |
| 4ab00 | 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. |
| 4ab20 | 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 |
| 4ab40 | 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 |
| 4ab60 | 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).{ |
| 4ab80 | 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 |
| 4aba0 | 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 |
| 4abc0 | 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 |
| 4abe0 | 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>, |
| 4ac00 | 20 3c 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 |
| 4ac20 | 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</ |
| 4ac40 | 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 |
| 4ac60 | 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 |
| 4ac80 | 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. |
| 4aca0 | 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 |
| 4acc0 | 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>... |
| 4ace0 | 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"> |
| 4ad00 | 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>......... |
| 4ad20 | 3c 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 |
| 4ad40 | 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 |
| 4ad60 | 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 |
| 4ad80 | 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. |
| 4ada0 | 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. |
| 4adc0 | 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 |
| 4ade0 | 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 |
| 4ae00 | 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:.{..... |
| 4ae20 | 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 |
| 4ae40 | 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 |
| 4ae60 | 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 |
| 4ae80 | 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>;............. |
| 4aea0 | 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 |
| 4aec0 | 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 |
| 4aee0 | 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- |
| 4af00 | 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>;.........},.... |
| 4af20 | 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"> |
| 4af40 | 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 |
| 4af60 | 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< |
| 4af80 | 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- |
| 4afa0 | 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. |
| 4afc0 | 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>......... |
| 4afe0 | 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:.{..... |
| 4b000 | 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 |
| 4b020 | 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 |
| 4b040 | 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 |
| 4b060 | 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>;............. |
| 4b080 | 3c 73 70 61 6e 20 63 6c 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 |
| 4b0a0 | 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< |
| 4b0c0 | 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 |
| 4b0e0 | 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. |
| 4b100 | 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 |
| 4b120 | 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 |
| 4b140 | 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>,.... |
| 4b160 | 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"> |
| 4b180 | 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 |
| 4b1a0 | 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 |
| 4b1c0 | 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 |
| 4b1e0 | 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 |
| 4b200 | 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 |
| 4b220 | 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 |
| 4b240 | 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 |
| 4b260 | 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 |
| 4b280 | 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= |
| 4b2a0 | 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>,.....};... |
| 4b2c0 | 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 |
| 4b2e0 | 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- |
| 4b300 | 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 |
| 4b320 | 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 |
| 4b340 | 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 |
| 4b360 | 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 |
| 4b380 | 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 |
| 4b3a0 | 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 |
| 4b3c0 | 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. |
| 4b3e0 | 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 |
| 4b400 | 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 |
| 4b420 | 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 |
| 4b440 | 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 |
| 4b460 | 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 |
| 4b480 | 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 |
| 4b4a0 | 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,. |
| 4b4c0 | 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 |
| 4b4e0 | 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 |
| 4b500 | 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 |
| 4b520 | 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- |
| 4b540 | 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=" |
| 4b560 | 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= |
| 4b580 | 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 |
| 4b5a0 | 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. |
| 4b5c0 | 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 |
| 4b5e0 | 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).{.......... |
| 4b600 | 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 |
| 4b620 | 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 |
| 4b640 | 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 |
| 4b660 | 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>........ |
| 4b680 | 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">/ |
| 4b6a0 | 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 |
| 4b6c0 | 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 |
| 4b6e0 | 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 |
| 4b700 | 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 |
| 4b720 | 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>.............< |
| 4b740 | 73 70 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 |
| 4b760 | 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 |
| 4b780 | 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& |
| 4b7a0 | 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>);.........},....... |
| 4b7c0 | 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 |
| 4b7e0 | 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 |
| 4b800 | 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 |
| 4b820 | 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 |
| 4b840 | 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 |
| 4b860 | 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 |
| 4b880 | 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 |
| 4b8a0 | 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 |
| 4b8c0 | 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.. |
| 4b8e0 | 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 |
| 4b900 | 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 |
| 4b920 | 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 |
| 4b940 | 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. |
| 4b960 | 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 |
| 4b980 | 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 |
| 4b9a0 | 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... |
| 4b9c0 | 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 |
| 4b9e0 | 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 |
| 4ba00 | 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 |
| 4ba20 | 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 |
| 4ba40 | 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 |
| 4ba60 | 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 |
| 4ba80 | 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> |
| 4baa0 | 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"> |
| 4bac0 | 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 |
| 4bae0 | 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>(< |
| 4bb00 | 73 70 61 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 |
| 4bb20 | 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 |
| 4bb40 | 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>.< |
| 4bb60 | 73 70 61 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 |
| 4bb80 | 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>.{ |
| 4bba0 | 0a 20 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< |
| 4bbc0 | 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- |
| 4bbe0 | 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:.< |
| 4bc00 | 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>, |
| 4bc20 | 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 |
| 4bc40 | 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 |
| 4bc60 | 6c 61 73 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. |
| 4bc80 | 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 |
| 4bca0 | 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 |
| 4bcc0 | 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=" |
| 4bce0 | 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: |
| 4bd00 | 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 |
| 4bd20 | 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>, |
| 4bd40 | 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 |
| 4bd60 | 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 |
| 4bd80 | 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" |
| 4bda0 | 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 |
| 4bdc0 | 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 |
| 4bde0 | 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 |
| 4be00 | 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 |
| 4be20 | 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 |
| 4be40 | 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 |
| 4be60 | 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).{.. |
| 4be80 | 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" |
| 4bea0 | 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 |
| 4bec0 | 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 |
| 4bee0 | 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=" |
| 4bf00 | 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 |
| 4bf20 | 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 |
| 4bf40 | 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 |
| 4bf60 | 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. |
| 4bf80 | 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. |
| 4bfa0 | 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 |
| 4bfc0 | 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,......... |
| 4bfe0 | 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. |
| 4c000 | 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 |
| 4c020 | 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. |
| 4c040 | 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 |
| 4c060 | 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 |
| 4c080 | 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</ |
| 4c0a0 | 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=" |
| 4c0c0 | 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. |
| 4c0e0 | 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>;.... |
| 4c100 | 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 |
| 4c120 | 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 |
| 4c140 | 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 |
| 4c160 | 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 |
| 4c180 | 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 |
| 4c1a0 | 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 |
| 4c1c0 | 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( |
| 4c1e0 | 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< |
| 4c200 | 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 |
| 4c220 | 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 |
| 4c240 | 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>); |
| 4c260 | 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> |
| 4c280 | 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 |
| 4c2a0 | 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 |
| 4c2c0 | 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 |
| 4c2e0 | 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 |
| 4c300 | 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 |
| 4c320 | 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.. |
| 4c340 | 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 |
| 4c360 | 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=" |
| 4c380 | 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 |
| 4c3a0 | 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>.< |
| 4c3c0 | 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 |
| 4c3e0 | 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="# |
| 4c400 | 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 |
| 4c420 | 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. |
| 4c440 | 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 |
| 4c460 | 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 |
| 4c480 | 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= |
| 4c4a0 | 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 |
| 4c4c0 | 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>....... |
| 4c4e0 | 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 |
| 4c500 | 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 |
| 4c520 | 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 |
| 4c540 | 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> |
| 4c560 | 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 |
| 4c580 | 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 |
| 4c5a0 | 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. |
| 4c5c0 | 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> |
| 4c5e0 | 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 |
| 4c600 | 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 |
| 4c620 | 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 |
| 4c640 | 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 |
| 4c660 | 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 |
| 4c680 | 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>.{.. |
| 4c6a0 | 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 |
| 4c6c0 | 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>.< |
| 4c6e0 | 73 70 61 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 |
| 4c700 | 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>.{.. |
| 4c720 | 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 |
| 4c740 | 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 |
| 4c760 | 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>.( |
| 4c780 | 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.=> |
| 4c7a0 | 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.=>.{}, |
| 4c7c0 | 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 |
| 4c7e0 | 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 |
| 4c800 | 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 |
| 4c820 | 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_ |
| 4c840 | 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 |
| 4c860 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 | n.class="sgr-1m">doc/langref/tes |
| 4c880 | 74 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 7a 69 | t_unhandled_enumeration_value.zi |
| 4c8a0 | 67 3a 39 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 | g:9:5:.</span><span.class="sgr-3 |
| 4c8c0 | 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 |
| 4c8e0 | 67 72 2d 31 6d 22 3e 73 77 69 74 63 68 20 6d 75 73 74 20 68 61 6e 64 6c 65 20 61 6c 6c 20 70 6f | gr-1m">switch.must.handle.all.po |
| 4c900 | 73 73 69 62 69 6c 69 74 69 65 73 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 73 77 69 74 63 68 20 28 63 | ssibilities.</span>....switch.(c |
| 4c920 | 6f 6c 6f 72 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d | olor).{.....<span.class="sgr-32m |
| 4c940 | 22 3e 5e 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 |
| 4c960 | 2d 31 6d 22 3e 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 | -1m">doc/langref/test_unhandled_ |
| 4c980 | 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 20 3c 2f 73 70 61 | enumeration_value.zig:3:5:.</spa |
| 4c9a0 | 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:.</ |
| 4c9c0 | 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 75 6e 68 61 6e 64 | span><span.class="sgr-1m">unhand |
| 4c9e0 | 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 66 27 0a 3c 2f 73 | led.enumeration.value:.'off'.</s |
| 4ca00 | 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 73 73 3d 22 73 67 | pan>....off,.....<span.class="sg |
| 4ca20 | 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 61 73 73 3d 22 73 | r-32m">^~~.</span><span.class="s |
| 4ca40 | 67 72 2d 31 6d 22 3e 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 | gr-1m">doc/langref/test_unhandle |
| 4ca60 | 64 5f 65 6e 75 6d 65 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 | d_enumeration_value.zig:1:15:.</ |
| 4ca80 | 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: |
| 4caa0 | 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 |
| 4cac0 | 6d 20 27 74 65 73 74 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 | m.'test_unhandled_enumeration_va |
| 4cae0 | 6c 75 65 2e 43 6f 6c 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 | lue.Color'.declared.here.</span> |
| 4cb00 | 63 6f 6e 73 74 20 43 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 | const.Color.=.enum.{............ |
| 4cb20 | 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 0a 3c 2f | ...<span.class="sgr-32m">^~~~.</ |
| 4cb40 | 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>.... |
| 4cb60 | 20 20 20 20 0a 0a 20 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 | ............<h3.id="Switching-wi |
| 4cb80 | 74 68 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | th-Enum-Literals"><a.href="#toc- |
| 4cba0 | 53 77 69 74 63 68 69 6e 67 2d 77 69 74 68 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 53 77 | Switching-with-Enum-Literals">Sw |
| 4cbc0 | 69 74 63 68 69 6e 67 20 77 69 74 68 20 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c | itching.with.Enum.Literals</a>.< |
| 4cbe0 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 77 69 74 63 68 69 6e 67 2d 77 | a.class="hdr".href="#Switching-w |
| 4cc00 | 69 74 68 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a | ith-Enum-Literals">..</a></h3>.. |
| 4cc20 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 45 6e 75 6d 2d 4c | ......<p>.......<a.href="#Enum-L |
| 4cc40 | 69 74 65 72 61 6c 73 22 3e 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 63 61 6e 20 62 | iterals">Enum.Literals</a>.can.b |
| 4cc60 | 65 20 75 73 65 66 75 6c 20 74 6f 20 75 73 65 20 77 69 74 68 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | e.useful.to.use.with.<code><span |
| 4cc80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 | .class="tok-kw">switch</span></c |
| 4cca0 | 6f 64 65 3e 20 74 6f 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 | ode>.to.avoid.......repetitively |
| 4ccc0 | 20 73 70 65 63 69 66 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 | .specifying.<a.href="#enum">enum |
| 4cce0 | 3c 2f 61 3e 20 6f 72 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 | </a>.or.<a.href="#union">union</ |
| 4cd00 | 61 3e 20 74 79 70 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 | a>.types:.......</p>.......<figu |
| 4cd20 | 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">< |
| 4cd40 | 63 69 74 65 20 63 6c 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 | cite.class="file">test_exhaustiv |
| 4cd60 | 65 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 | e_switch.zig</cite></figcaption> |
| 4cd80 | 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"> |
| 4cda0 | 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=" |
| 4cdc0 | 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 |
| 4cde0 | 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" |
| 4ce00 | 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"> |
| 4ce20 | 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 |
| 4ce40 | 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"> |
| 4ce60 | 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 73 | const</span>.Color.=.<span.class |
| 4ce80 | 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 61 75 74 6f | ="tok-kw">enum</span>.{.....auto |
| 4cea0 | 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 70 61 6e 20 63 6c 61 | ,.....off,.....on,.};..<span.cla |
| 4cec0 | 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 |
| 4cee0 | 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 6c 69 74 65 72 61 6c | ass="tok-str">"enum.literal |
| 4cf00 | 73 20 77 69 74 68 20 73 77 69 74 63 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | s.with.switch"</span>.{.... |
| 4cf20 | 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 |
| 4cf40 | 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 6e 20 | n>.color.=.Color.off;.....<span. |
| 4cf60 | 63 6c 61 73 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 |
| 4cf80 | 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 | lt.=.<span.class="tok-kw">switch |
| 4cfa0 | 3c 2f 73 70 61 6e 3e 20 28 63 6f 6c 6f 72 29 20 7b 0a 20 20 20 20 20 20 20 20 2e 61 75 74 6f 20 | </span>.(color).{..........auto. |
| 4cfc0 | 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 6c | =>.<span.class="tok-null">fal |
| 4cfe0 | 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 6f 6e 20 3d 26 67 74 3b 20 3c 73 70 | se</span>,..........on.=>.<sp |
| 4d000 | 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> |
| 4d020 | 2c 0a 20 20 20 20 20 20 20 20 2e 6f 66 66 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ,..........off.=>.<span.class |
| 4d040 | 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 3b 0a | ="tok-null">true</span>,.....};. |
| 4d060 | 20 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 |
| 4d080 | 61 6e 3e 20 65 78 70 65 63 74 28 72 65 73 75 6c 74 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | an>.expect(result);.}</code></pr |
| 4d0a0 | 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 |
| 4d0c0 | 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 |
| 4d0e0 | 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 |
| 4d100 | 73 74 5f 65 78 68 61 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 | st_exhaustive_switch.zig</kbd>.1 |
| 4d120 | 2f 31 20 74 65 73 74 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 | /1.test_exhaustive_switch.test.e |
| 4d140 | 6e 75 6d 20 6c 69 74 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 | num.literals.with.switch...OK.Al |
| 4d160 | 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>< |
| 4d180 | 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=" |
| 4d1a0 | 49 6e 6c 69 6e 65 2d 53 77 69 74 63 68 2d 50 72 6f 6e 67 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 | Inline-Switch-Prongs"><a.href="# |
| 4d1c0 | 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 3e 49 6e 6c 69 6e 65 | toc-Inline-Switch-Prongs">Inline |
| 4d1e0 | 20 53 77 69 74 63 68 20 50 72 6f 6e 67 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | .Switch.Prongs</a>.<a.class="hdr |
| 4d200 | 22 20 68 72 65 66 3d 22 23 49 6e 6c 69 6e 65 2d 53 77 69 74 63 68 2d 50 72 6f 6e 67 73 22 3e c2 | ".href="#Inline-Switch-Prongs">. |
| 4d220 | 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 53 77 69 74 | .</a></h3>........<p>.......Swit |
| 4d240 | 63 68 20 70 72 6f 6e 67 73 20 63 61 6e 20 62 65 20 6d 61 72 6b 65 64 20 61 73 20 3c 63 6f 64 65 | ch.prongs.can.be.marked.as.<code |
| 4d260 | 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 |
| 4d280 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 67 65 6e 65 72 61 74 65 0a 20 20 20 20 20 20 74 68 65 | an></code>.to.generate.......the |
| 4d2a0 | 20 70 72 6f 6e 67 27 73 20 62 6f 64 79 20 66 6f 72 20 65 61 63 68 20 70 6f 73 73 69 62 6c 65 20 | .prong's.body.for.each.possible. |
| 4d2c0 | 76 61 6c 75 65 20 69 74 20 63 6f 75 6c 64 20 68 61 76 65 2c 20 6d 61 6b 69 6e 67 20 74 68 65 0a | value.it.could.have,.making.the. |
| 4d2e0 | 20 20 20 20 20 20 63 61 70 74 75 72 65 64 20 76 61 6c 75 65 20 3c 61 20 68 72 65 66 3d 22 23 63 | ......captured.value.<a.href="#c |
| 4d300 | 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | omptime">comptime</a>........</p |
| 4d320 | 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 |
| 4d340 | 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 |
| 4d360 | 65 73 74 5f 69 6e 6c 69 6e 65 5f 73 77 69 74 63 68 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 | est_inline_switch.zig</cite></fi |
| 4d380 | 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= |
| 4d3a0 | 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 |
| 4d3c0 | 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 |
| 4d3e0 | 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">" |
| 4d400 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ;std"</span>);.<span.class= |
| 4d420 | 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 |
| 4d440 | 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | td.testing.expect;.<span.class=" |
| 4d460 | 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 72 72 6f 72 | tok-kw">const</span>.expectError |
| 4d480 | 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 45 72 72 6f 72 3b 0a 0a 3c 73 70 | .=.std.testing.expectError;..<sp |
| 4d4a0 | 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 |
| 4d4c0 | 6e 20 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 | n.class="tok-fn">isFieldOptional |
| 4d4e0 | 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 |
| 4d500 | 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 |
| 4d520 | 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 66 69 65 6c 64 5f 69 6e 64 65 78 3a | -type">type</span>,.field_index: |
| 4d540 | 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 |
| 4d560 | 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 62 6f | pan>).!<span.class="tok-type">bo |
| 4d580 | 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 3d 22 74 6f 6b | ol</span>.{.....<span.class="tok |
| 4d5a0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 69 65 6c 64 73 20 3d 20 3c 73 70 61 6e | -kw">const</span>.fields.=.<span |
| 4d5c0 | 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 2f | .class="tok-builtin">@typeInfo</ |
| 4d5e0 | 73 70 61 6e 3e 28 54 29 2e 53 74 72 75 63 74 2e 66 69 65 6c 64 73 3b 0a 20 20 20 20 3c 73 70 61 | span>(T).Struct.fields;.....<spa |
| 4d600 | 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>.< |
| 4d620 | 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 |
| 4d640 | 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 61 6e 20 | >.(field_index).{.........<span. |
| 4d660 | 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 72 6f 6e | class="tok-comment">//.This.pron |
| 4d680 | 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 60 20 62 | g.is.analyzed.twice.with.`idx`.b |
| 4d6a0 | 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 6c 61 73 | eing.a</span>.........<span.clas |
| 4d6c0 | 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 6f 77 | s="tok-comment">//.comptime-know |
| 4d6e0 | 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 20 20 20 | n.value.each.time.</span>....... |
| 4d700 | 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 |
| 4d720 | 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 30 3c | pan>.<span.class="tok-number">0< |
| 4d740 | 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" |
| 4d760 | 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 73 | >1</span>.=>.|idx|.<span.clas |
| 4d780 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e | s="tok-builtin">@typeInfo</span> |
| 4d7a0 | 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 79 | (fields[idx].<span.class="tok-ty |
| 4d7c0 | 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 2e 4f 70 74 69 6f 6e 61 6c 2c 0a 20 | pe">type</span>).==..Optional,.. |
| 4d7e0 | 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 |
| 4d800 | 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 |
| 4d820 | 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 |
| 4d840 | 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 75 | k-kw">error</span>.IndexOutOfBou |
| 4d860 | 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 6f 6b 2d | nds,.....};.}..<span.class="tok- |
| 4d880 | 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 70 61 6e | kw">const</span>.Struct1.=.<span |
| 4d8a0 | 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 20 | .class="tok-kw">struct</span>.{. |
| 4d8c0 | 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 |
| 4d8e0 | 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 70 65 22 | pan>,.b:.?<span.class="tok-type" |
| 4d900 | 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 74 6f 6b | >u32</span>.};..<span.class="tok |
| 4d920 | 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 |
| 4d940 | 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 77 69 74 | k-str">"using.@typeInfo.wit |
| 4d960 | 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 20 7b 0a | h.runtime.values"</span>.{. |
| 4d980 | 20 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 |
| 4d9a0 | 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 79 70 65 | an>.index:.<span.class="tok-type |
| 4d9c0 | 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 |
| 4d9e0 | 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 |
| 4da00 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 21 | ass="tok-kw">try</span>.expect(! |
| 4da20 | 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>. |
| 4da40 | 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)) |
| 4da60 | 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- |
| 4da80 | 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 |
| 4daa0 | 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 |
| 4dac0 | 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 69 73 46 | an.class="tok-kw">try</span>.isF |
| 4dae0 | 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 3b 0a 20 | ieldOptional(Struct1,.index));.. |
| 4db00 | 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 6e 75 6d | ...index.+=.<span.class="tok-num |
| 4db20 | 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 22 | ber">1</span>;.....<span.class=" |
| 4db40 | 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 72 28 3c | tok-kw">try</span>.expectError(< |
| 4db60 | 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> |
| 4db80 | 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 69 6f 6e | .IndexOutOfBounds,.isFieldOption |
| 4dba0 | 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 20 63 6c | al(Struct1,.index));.}..<span.cl |
| 4dbc0 | 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 20 60 69 | ass="tok-comment">//.Calls.to.`i |
| 4dbe0 | 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 67 65 74 | sFieldOptional`.on.`Struct1`.get |
| 4dc00 | 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 70 61 6e | .unrolled.to.an.equivalent</span |
| 4dc20 | 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 6f | >.<span.class="tok-comment">//.o |
| 4dc40 | 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 20 63 6c | f.this.function:</span>.<span.cl |
| 4dc60 | 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 |
| 4dc80 | 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 72 6f 6c | ss="tok-fn">isFieldOptionalUnrol |
| 4dca0 | 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 20 63 6c | led</span>(field_index:.<span.cl |
| 4dcc0 | 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 21 3c 73 | ass="tok-type">usize</span>).!<s |
| 4dce0 | 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> |
| 4dd00 | 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 |
| 4dd20 | 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 |
| 4dd40 | 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 20 20 20 | witch</span>.(field_index).{.... |
| 4dd60 | 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 30 3c | .....<span.class="tok-number">0< |
| 4dd80 | 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 75 | /span>.=>.<span.class="tok-nu |
| 4dda0 | 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 61 6e 20 | ll">false</span>,.........<span. |
| 4ddc0 | 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 26 67 74 | class="tok-number">1</span>.=> |
| 4dde0 | 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 | ;.<span.class="tok-null">true</s |
| 4de00 | 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 6b | pan>,.........<span.class="tok-k |
| 4de20 | 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 61 73 73 | w">else</span>.=>.<span.class |
| 4de40 | 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 |
| 4de60 | 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 65 78 4f | ass="tok-kw">error</span>.IndexO |
| 4de80 | 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 70 72 65 | utOfBounds,.....};.}</code></pre |
| 4dea0 | 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 |
| 4dec0 | 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 |
| 4dee0 | 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 |
| 4df00 | 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 20 74 65 | t_inline_switch.zig</kbd>.1/1.te |
| 4df20 | 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 74 79 70 | st_inline_switch.test.using.@typ |
| 4df40 | 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 4b 0a 41 | eInfo.with.runtime.values...OK.A |
| 4df60 | 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> |
| 4df80 | 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 3e 3c 73 | </figure>........<p>The.<code><s |
| 4dfa0 | 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 6e 3e | pan.class="tok-kw">inline</span> |
| 4dfc0 | 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 6f 6d 62 | </code>.keyword.may.also.be.comb |
| 4dfe0 | 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 66 69 67 | ined.with.ranges:</p>.......<fig |
| 4e000 | 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"> |
| 4e020 | 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 6e 67 5f | <cite.class="file">inline_prong_ |
| 4e040 | 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 3c 70 72 | range.zig</cite></figcaption><pr |
| 4e060 | 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 66 6e 3c | e><code><span.class="tok-kw">fn< |
| 4e080 | 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 73 46 69 | /span>.<span.class="tok-fn">isFi |
| 4e0a0 | 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 73 3d 22 | eldOptional</span>(<span.class=" |
| 4e0c0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e | tok-kw">comptime</span>.T:.<span |
| 4e0e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 66 | .class="tok-type">type</span>,.f |
| 4e100 | 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 74 79 70 | ield_index:.<span.class="tok-typ |
| 4e120 | 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 3d 22 74 | e">usize</span>).!<span.class="t |
| 4e140 | 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | ok-type">bool</span>.{.....<span |
| 4e160 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 69 65 | .class="tok-kw">const</span>.fie |
| 4e180 | 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 6e 22 3e | lds.=.<span.class="tok-builtin"> |
| 4e1a0 | 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 54 29 2e 53 74 72 75 63 74 2e 66 69 65 6c 64 | @typeInfo</span>(T).Struct.field |
| 4e1c0 | 73 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 | s;.....<span.class="tok-kw">retu |
| 4e1e0 | 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 |
| 4e200 | 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 20 20 20 | witch</span>.(field_index).{.... |
| 4e220 | 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 |
| 4e240 | 3c 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" |
| 4e260 | 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 2e 66 69 65 6c 64 73 2e 6c 65 6e 20 2d 20 3c 73 70 61 6e 20 63 | >0</span>...fields.len.-.<span.c |
| 4e280 | 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>.=> |
| 4e2a0 | 20 7c 69 64 78 7c 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 | .|idx|.<span.class="tok-builtin" |
| 4e2c0 | 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 66 69 65 6c 64 73 5b 69 64 78 5d 2e 3c 73 | >@typeInfo</span>(fields[idx].<s |
| 4e2e0 | 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> |
| 4e300 | 29 20 3d 3d 20 2e 4f 70 74 69 6f 6e 61 6c 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | ).==..Optional,.........<span.cl |
| 4e320 | 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 3c | ass="tok-kw">else</span>.=>.< |
| 4e340 | 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 |
| 4e360 | 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 |
| 4e380 | 61 6e 3e 2e 49 6e 64 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 | an>.IndexOutOfBounds,.....};.}</ |
| 4e3a0 | 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 0a | code></pre></figure>........<p>. |
| 4e3c0 | 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" |
| 4e3e0 | 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >inline</span>.<span.class="tok- |
| 4e400 | 6b 77 22 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 73 20 63 61 | kw">else</span></code>.prongs.ca |
| 4e420 | 6e 20 62 65 20 75 73 65 64 20 61 73 20 61 20 74 79 70 65 20 73 61 66 65 0a 20 20 20 20 20 20 61 | n.be.used.as.a.type.safe.......a |
| 4e440 | 6c 74 65 72 6e 61 74 69 76 65 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | lternative.to.<code><span.class= |
| 4e460 | 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 |
| 4e480 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 6f | ss="tok-kw">for</span></code>.lo |
| 4e4a0 | 6f 70 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 | ops:.......</p>.......<figure><f |
| 4e4c0 | 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. |
| 4e4e0 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 65 6c 73 65 2e 7a 69 | class="file">test_inline_else.zi |
| 4e500 | 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> |
| 4e520 | 3c 73 70 61 6e 20 63 6c 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 |
| 4e540 | 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 |
| 4e560 | 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 |
| 4e580 | 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>);. |
| 4e5a0 | 3c 73 70 61 6e 20 63 6c 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 |
| 4e5c0 | 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a | >.expect.=.std.testing.expect;.. |
| 4e5e0 | 3c 73 70 61 6e 20 63 6c 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 |
| 4e600 | 3e 20 53 6c 69 63 65 54 79 70 65 41 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >.SliceTypeA.=.<span.class="tok- |
| 4e620 | 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 22 74 | kw">extern</span>.<span.class="t |
| 4e640 | 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 6c 65 6e 3a 20 | ok-kw">struct</span>.{.....len:. |
| 4e660 | 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 |
| 4e680 | 61 6e 3e 2c 0a 20 20 20 20 70 74 72 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>,.....ptr:.[*]<span.class="to |
| 4e6a0 | 6b 2d 74 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 | k-type">u32</span>,.};.<span.cla |
| 4e6c0 | 73 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 6c 69 63 65 54 79 | ss="tok-kw">const</span>.SliceTy |
| 4e6e0 | 70 65 42 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 78 74 65 72 | peB.=.<span.class="tok-kw">exter |
| 4e700 | 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 74 | n</span>.<span.class="tok-kw">st |
| 4e720 | 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 70 74 72 3a 20 5b 2a 5d 53 6c 69 63 65 54 | ruct</span>.{.....ptr:.[*]SliceT |
| 4e740 | 79 70 65 41 2c 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 2d | ypeA,.....len:.<span.class="tok- |
| 4e760 | 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 | type">usize</span>,.};.<span.cla |
| 4e780 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 6e 79 53 6c 69 63 | ss="tok-kw">const</span>.AnySlic |
| 4e7a0 | 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</ |
| 4e7c0 | 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 6e 75 6d 3c | span>(<span.class="tok-kw">enum< |
| 4e7e0 | 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 61 3a 20 53 6c 69 63 65 54 79 70 65 41 2c 0a 20 20 20 | /span>).{.....a:.SliceTypeA,.... |
| 4e800 | 20 62 3a 20 53 6c 69 63 65 54 79 70 65 42 2c 0a 20 20 20 20 63 3a 20 5b 5d 3c 73 70 61 6e 20 63 | .b:.SliceTypeB,.....c:.[]<span.c |
| 4e820 | 6c 61 73 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 |
| 4e840 | 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 20 | .class="tok-type">u8</span>,.... |
| 4e860 | 20 64 3a 20 5b 5d 41 6e 79 53 6c 69 63 65 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .d:.[]AnySlice,.};..<span.class= |
| 4e880 | 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=" |
| 4e8a0 | 74 6f 6b 2d 66 6e 22 3e 77 69 74 68 46 6f 72 3c 2f 73 70 61 6e 3e 28 61 6e 79 3a 20 41 6e 79 53 | tok-fn">withFor</span>(any:.AnyS |
| 4e8c0 | 6c 69 63 65 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 | lice).<span.class="tok-type">usi |
| 4e8e0 | 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ze</span>.{.....<span.class="tok |
| 4e900 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 61 67 20 3d 20 3c 73 70 61 6e 20 63 6c | -kw">const</span>.Tag.=.<span.cl |
| 4e920 | 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 |
| 4e940 | 6e 3e 28 41 6e 79 53 6c 69 63 65 29 2e 55 6e 69 6f 6e 2e 74 61 67 5f 74 79 70 65 2e 3f 3b 0a 20 | n>(AnySlice).Union.tag_type.?;.. |
| 4e960 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f | ...<span.class="tok-kw">inline</ |
| 4e980 | 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 2f | span>.<span.class="tok-kw">for</ |
| 4e9a0 | 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | span>.(<span.class="tok-builtin" |
| 4e9c0 | 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 54 61 67 29 2e 45 6e 75 6d 2e 66 69 65 6c | >@typeInfo</span>(Tag).Enum.fiel |
| 4e9e0 | 64 73 29 20 7c 66 69 65 6c 64 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ds).|field|.{.........<span.clas |
| 4ea00 | 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 69 6e 6c 69 6e 65 20 | s="tok-comment">//.With.`inline. |
| 4ea20 | 66 6f 72 60 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 73 20 67 65 6e 65 72 61 74 65 64 | for`.the.function.gets.generated |
| 4ea40 | 20 61 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .as</span>.........<span.class=" |
| 4ea60 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 20 73 65 72 69 65 73 20 6f 66 20 60 69 66 60 | tok-comment">//.a.series.of.`if` |
| 4ea80 | 20 73 74 61 74 65 6d 65 6e 74 73 20 72 65 6c 79 69 6e 67 20 6f 6e 20 74 68 65 20 6f 70 74 69 6d | .statements.relying.on.the.optim |
| 4eaa0 | 69 7a 65 72 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 | izer</span>.........<span.class= |
| 4eac0 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 6f 20 63 6f 6e 76 65 72 74 20 69 74 20 74 | "tok-comment">//.to.convert.it.t |
| 4eae0 | 6f 20 61 20 73 77 69 74 63 68 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | o.a.switch.</span>.........<span |
| 4eb00 | 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 69 65 6c 64 | .class="tok-kw">if</span>.(field |
| 4eb20 | 2e 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 62 75 69 6c 74 | .value.==.<span.class="tok-built |
| 4eb40 | 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 45 6e 75 6d 3c 2f 73 70 61 6e 3e 28 61 6e 79 29 29 20 7b 0a | in">@intFromEnum</span>(any)).{. |
| 4eb60 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ............<span.class="tok-kw" |
| 4eb80 | 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- |
| 4eba0 | 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 3c 2f 73 70 61 6e 3e 28 61 6e 79 2c 20 66 69 65 6c | builtin">@field</span>(any,.fiel |
| 4ebc0 | 64 2e 6e 61 6d 65 29 2e 6c 65 6e 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 20 | d.name).len;.........}.....}.... |
| 4ebe0 | 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 |
| 4ec00 | 65 6e 20 75 73 69 6e 67 20 60 69 6e 6c 69 6e 65 20 66 6f 72 60 20 74 68 65 20 63 6f 6d 70 69 6c | en.using.`inline.for`.the.compil |
| 4ec20 | 65 72 20 64 6f 65 73 6e 27 74 20 6b 6e 6f 77 20 74 68 61 74 20 65 76 65 72 79 3c 2f 73 70 61 6e | er.doesn't.know.that.every</span |
| 4ec40 | 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"> |
| 4ec60 | 2f 2f 20 70 6f 73 73 69 62 6c 65 20 63 61 73 65 20 68 61 73 20 62 65 65 6e 20 68 61 6e 64 6c 65 | //.possible.case.has.been.handle |
| 4ec80 | 64 20 72 65 71 75 69 72 69 6e 67 20 61 6e 20 65 78 70 6c 69 63 69 74 20 60 75 6e 72 65 61 63 68 | d.requiring.an.explicit.`unreach |
| 4eca0 | 61 62 6c 65 60 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 | able`.</span>.....<span.class="t |
| 4ecc0 | 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 7d 0a 0a 3c 73 | ok-kw">unreachable</span>;.}..<s |
| 4ece0 | 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 |
| 4ed00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 77 69 74 68 53 77 69 74 63 68 3c 2f 73 70 | an.class="tok-fn">withSwitch</sp |
| 4ed20 | 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 73 3d 22 | an>(any:.AnySlice).<span.class=" |
| 4ed40 | 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 70 | tok-type">usize</span>.{.....<sp |
| 4ed60 | 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>. |
| 4ed80 | 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 |
| 4eda0 | 6e 3e 20 28 61 6e 79 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 | n>.(any).{.........<span.class=" |
| 4edc0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 57 69 74 68 20 60 69 6e 6c 69 6e 65 20 65 6c 73 | tok-comment">//.With.`inline.els |
| 4ede0 | 65 60 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 65 78 70 6c 69 63 69 74 6c 79 20 67 65 | e`.the.function.is.explicitly.ge |
| 4ee00 | 6e 65 72 61 74 65 64 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 | nerated</span>.........<span.cla |
| 4ee20 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 73 20 74 68 65 20 64 65 73 69 72 | ss="tok-comment">//.as.the.desir |
| 4ee40 | 65 64 20 73 77 69 74 63 68 20 61 6e 64 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 63 61 6e 20 63 | ed.switch.and.the.compiler.can.c |
| 4ee60 | 68 65 63 6b 20 74 68 61 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | heck.that</span>.........<span.c |
| 4ee80 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 76 65 72 79 20 70 6f 73 73 | lass="tok-comment">//.every.poss |
| 4eea0 | 69 62 6c 65 20 63 61 73 65 20 69 73 20 68 61 6e 64 6c 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | ible.case.is.handled.</span>.... |
| 4eec0 | 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 |
| 4eee0 | 3c 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 | </span>.<span.class="tok-kw">els |
| 4ef00 | 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7c 73 6c 69 63 65 7c 20 73 6c 69 63 65 2e 6c 65 6e | e</span>.=>.|slice|.slice.len |
| 4ef20 | 2c 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ,.....};.}..<span.class="tok-kw" |
| 4ef40 | 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 |
| 4ef60 | 72 22 3e 26 71 75 6f 74 3b 69 6e 6c 69 6e 65 20 66 6f 72 20 61 6e 64 20 69 6e 6c 69 6e 65 20 65 | r">"inline.for.and.inline.e |
| 4ef80 | 6c 73 65 20 73 69 6d 69 6c 61 72 69 74 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | lse.similarity"</span>.{... |
| 4efa0 | 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 |
| 4efc0 | 61 6e 3e 20 61 6e 79 20 3d 20 41 6e 79 53 6c 69 63 65 7b 20 2e 63 20 3d 20 3c 73 70 61 6e 20 63 | an>.any.=.AnySlice{..c.=.<span.c |
| 4efe0 | 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 3b | lass="tok-str">"hello" |
| 4f000 | 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- |
| 4f020 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 77 69 74 68 46 6f 72 28 61 6e | kw">try</span>.expect(withFor(an |
| 4f040 | 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 6d 62 65 72 22 3e 35 | y).==.<span.class="tok-number">5 |
| 4f060 | 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 |
| 4f080 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 77 69 74 68 53 77 69 74 63 68 28 | w">try</span>.expect(withSwitch( |
| 4f0a0 | 61 6e 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 6d 62 65 72 22 | any).==.<span.class="tok-number" |
| 4f0c0 | 3e 35 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | >5</span>);.}</code></pre></figu |
| 4f0e0 | 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 |
| 4f100 | 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> |
| 4f120 | 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 6e 6c 69 6e | <samp>$.<kbd>zig.test.test_inlin |
| 4f140 | 65 5f 65 6c 73 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 69 6e 6c 69 6e 65 | e_else.zig</kbd>.1/1.test_inline |
| 4f160 | 5f 65 6c 73 65 2e 74 65 73 74 2e 69 6e 6c 69 6e 65 20 66 6f 72 20 61 6e 64 20 69 6e 6c 69 6e 65 | _else.test.inline.for.and.inline |
| 4f180 | 20 65 6c 73 65 20 73 69 6d 69 6c 61 72 69 74 79 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 | .else.similarity...OK.All.1.test |
| 4f1a0 | 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> |
| 4f1c0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 75 73 69 6e 67 20 61 6e 20 | ........<p>.......When.using.an. |
| 4f1e0 | 69 6e 6c 69 6e 65 20 70 72 6f 6e 67 20 73 77 69 74 63 68 69 6e 67 20 6f 6e 20 61 6e 20 75 6e 69 | inline.prong.switching.on.an.uni |
| 4f200 | 6f 6e 20 61 6e 20 61 64 64 69 74 69 6f 6e 61 6c 0a 20 20 20 20 20 20 63 61 70 74 75 72 65 20 63 | on.an.additional.......capture.c |
| 4f220 | 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 6f 62 74 61 69 6e 20 74 68 65 20 75 6e 69 6f 6e 27 73 | an.be.used.to.obtain.the.union's |
| 4f240 | 20 65 6e 75 6d 20 74 61 67 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | .enum.tag.value........</p>..... |
| 4f260 | 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 |
| 4f280 | 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 |
| 4f2a0 | 6c 69 6e 65 5f 73 77 69 74 63 68 5f 75 6e 69 6f 6e 5f 74 61 67 2e 7a 69 67 3c 2f 63 69 74 65 3e | line_switch_union_tag.zig</cite> |
| 4f2c0 | 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 |
| 4f2e0 | 61 73 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.=. |
| 4f300 | 3c 73 70 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 |
| 4f320 | 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">& |
| 4f340 | 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 |
| 4f360 | 61 73 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 |
| 4f380 | 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 |
| 4f3a0 | 61 73 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 20 3d 20 3c 73 | ass="tok-kw">const</span>.U.=.<s |
| 4f3c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 28 | pan.class="tok-kw">union</span>( |
| 4f3e0 | 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> |
| 4f400 | 29 20 7b 0a 20 20 20 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | ).{.....a:.<span.class="tok-type |
| 4f420 | 22 3e 75 33 32 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 | ">u32</span>,.....b:.<span.class |
| 4f440 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 | ="tok-type">f32</span>,.};..<spa |
| 4f460 | 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 |
| 4f480 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 67 65 74 4e 75 6d 3c 2f 73 70 61 6e 3e 28 75 3a | .class="tok-fn">getNum</span>(u: |
| 4f4a0 | 20 55 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 | .U).<span.class="tok-type">u32</ |
| 4f4c0 | 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" |
| 4f4e0 | 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 75 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 | >switch</span>.(u).{.........<sp |
| 4f500 | 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 65 72 65 20 60 | an.class="tok-comment">//.Here.` |
| 4f520 | 6e 75 6d 60 20 69 73 20 61 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 20 76 61 6c 75 65 20 74 68 | num`.is.a.runtime-known.value.th |
| 4f540 | 61 74 20 69 73 20 65 69 74 68 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | at.is.either</span>.........<spa |
| 4f560 | 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 75 2e 61 60 20 6f | n.class="tok-comment">//.`u.a`.o |
| 4f580 | 72 20 60 75 2e 62 60 20 61 6e 64 20 60 74 61 67 60 20 69 73 20 60 75 60 27 73 20 63 6f 6d 70 74 | r.`u.b`.and.`tag`.is.`u`'s.compt |
| 4f5a0 | 69 6d 65 2d 6b 6e 6f 77 6e 20 74 61 67 20 76 61 6c 75 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | ime-known.tag.value.</span>..... |
| 4f5c0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c | ....<span.class="tok-kw">inline< |
| 4f5e0 | 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 |
| 4f600 | 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7c 6e 75 6d 2c 20 74 61 67 7c 20 7b 0a 20 20 20 20 20 | </span>.=>.|num,.tag|.{...... |
| 4f620 | 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 2f | .......<span.class="tok-kw">if</ |
| 4f640 | 73 70 61 6e 3e 20 28 74 61 67 20 3d 3d 20 2e 62 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | span>.(tag.==..b).{............. |
| 4f660 | 20 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< |
| 4f680 | 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 22 | /span>.<span.class="tok-builtin" |
| 4f6a0 | 3e 40 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 3c 2f 73 70 61 6e 3e 28 6e 75 6d 29 3b 0a 20 20 20 20 | >@intFromFloat</span>(num);..... |
| 4f6c0 | 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ........}.............<span.clas |
| 4f6e0 | 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 6e 75 6d 3b 0a 20 20 | s="tok-kw">return</span>.num;... |
| 4f700 | 20 20 20 20 20 20 7d 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 | ......},.....}.}..<span.class="t |
| 4f720 | 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=" |
| 4f740 | 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 3e | tok-str">"test"</span> |
| 4f760 | 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 |
| 4f780 | 74 3c 2f 73 70 61 6e 3e 20 75 20 3d 20 55 7b 20 2e 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | t</span>.u.=.U{..b.=.<span.class |
| 4f7a0 | 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 20 3c | ="tok-number">42</span>.};.....< |
| 4f7c0 | 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 |
| 4f7e0 | 78 70 65 63 74 28 67 65 74 4e 75 6d 28 75 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | xpect(getNum(u).==.<span.class=" |
| 4f800 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e | tok-number">42</span>);.}</code> |
| 4f820 | 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 |
| 4f840 | 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 |
| 4f860 | 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 |
| 4f880 | 74 20 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 7a | t.test_inline_switch_union_tag.z |
| 4f8a0 | 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 73 77 69 74 63 68 5f | ig</kbd>.1/1.test_inline_switch_ |
| 4f8c0 | 75 6e 69 6f 6e 5f 74 61 67 2e 74 65 73 74 2e 74 65 73 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 | union_tag.test.test...OK.All.1.t |
| 4f8e0 | 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 |
| 4f900 | 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 0a | re>........<p>See.also:</p><ul>. |
| 4f920 | 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 6c 69 | <li><a.href="#inline-while">inli |
| 4f940 | 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 22 23 | ne.while</a></li>.<li><a.href="# |
| 4f960 | 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 3e 0a | inline-for">inline.for</a></li>. |
| 4f980 | 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 | </ul>.......................<h2. |
| 4f9a0 | 69 64 3d 22 77 68 69 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 77 68 69 6c 65 22 3e | id="while"><a.href="#toc-while"> |
| 4f9c0 | 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 65 66 3d 22 23 | while</a>.<a.class="hdr".href="# |
| 4f9e0 | 77 68 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | while">..</a></h2>........<p>... |
| 4fa00 | 20 20 20 20 41 20 77 68 69 6c 65 20 6c 6f 6f 70 20 69 73 20 75 73 65 64 20 74 6f 20 72 65 70 65 | ....A.while.loop.is.used.to.repe |
| 4fa20 | 61 74 65 64 6c 79 20 65 78 65 63 75 74 65 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 75 6e 74 | atedly.execute.an.expression.unt |
| 4fa40 | 69 6c 0a 20 20 20 20 20 20 73 6f 6d 65 20 63 6f 6e 64 69 74 69 6f 6e 20 69 73 20 6e 6f 20 6c 6f | il.......some.condition.is.no.lo |
| 4fa60 | 6e 67 65 72 20 74 72 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 | nger.true........</p>.......<fig |
| 4fa80 | 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"> |
| 4faa0 | 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 2e 7a 69 | <cite.class="file">test_while.zi |
| 4fac0 | 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> |
| 4fae0 | 3c 73 70 61 6e 20 63 6c 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 |
| 4fb00 | 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 |
| 4fb20 | 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= |
| 4fb40 | 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> |
| 4fb60 | 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=" |
| 4fb80 | 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= |
| 4fba0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 62 61 73 69 63 26 71 75 6f 74 | "tok-str">"while.basic" |
| 4fbc0 | 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- |
| 4fbe0 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | kw">var</span>.i:.<span.class="t |
| 4fc00 | 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c | ok-type">usize</span>.=.<span.cl |
| 4fc20 | 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>;.....< |
| 4fc40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e | span.class="tok-kw">while</span> |
| 4fc60 | 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 62 65 72 | .(i.<.<span.class="tok-number |
| 4fc80 | 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 69 20 2b 3d 20 3c 73 70 61 | ">10</span>).{.........i.+=.<spa |
| 4fca0 | 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>;.. |
| 4fcc0 | 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 |
| 4fce0 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 69 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | y</span>.expect(i.==.<span.class |
| 4fd00 | 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 3c 2f 63 6f 64 | ="tok-number">10</span>);.}</cod |
| 4fd20 | 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 |
| 4fd40 | 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 |
| 4fd60 | 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 |
| 4fd80 | 65 73 74 20 74 65 73 74 5f 77 68 69 6c 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 | est.test_while.zig</kbd>.1/1.tes |
| 4fda0 | 74 5f 77 68 69 6c 65 2e 74 65 73 74 2e 77 68 69 6c 65 20 62 61 73 69 63 2e 2e 2e 4f 4b 0a 41 6c | t_while.test.while.basic...OK.Al |
| 4fdc0 | 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>< |
| 4fde0 | 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 63 | /figure>........<p>.......Use.<c |
| 4fe00 | 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 3c 2f | ode><span.class="tok-kw">break</ |
| 4fe20 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 65 78 69 74 20 61 20 77 68 69 6c 65 20 6c 6f 6f | span></code>.to.exit.a.while.loo |
| 4fe40 | 70 20 65 61 72 6c 79 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 | p.early........</p>.......<figur |
| 4fe60 | 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 |
| 4fe80 | 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 5f 62 72 65 61 | ite.class="file">test_while_brea |
| 4fea0 | 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 |
| 4fec0 | 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</ |
| 4fee0 | 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>.expect.=.<span.class="tok- |
| 4ff00 | 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 |
| 4ff20 | 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 |
| 4ff40 | 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | pan>).testing.expect;..<span.cla |
| 4ff60 | 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 |
| 4ff80 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 62 72 65 61 6b 26 | ass="tok-str">"while.break& |
| 4ffa0 | 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=" |
| 4ffc0 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">var</span>.i:.<span.clas |
| 4ffe0 | 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 |
| 50000 | 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>;.. |
| 50020 | 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 |
| 50040 | 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 |
| 50060 | 65 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e</span>).{.........<span.class= |
| 50080 | 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 69 20 3d 3d 20 3c 73 70 61 6e 20 63 | "tok-kw">if</span>.(i.==.<span.c |
| 500a0 | 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 0a 20 20 20 | lass="tok-number">10</span>).... |
| 500c0 | 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 |
| 500e0 | 65 61 6b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 69 20 2b 3d 20 3c 73 70 61 6e 20 63 | eak</span>;.........i.+=.<span.c |
| 50100 | 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>;..... |
| 50120 | 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</ |
| 50140 | 73 70 61 6e 3e 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 | span>.expect(i.==.<span.class="t |
| 50160 | 6f 6b 2d 6e 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 | ok-number">10</span>);.}</code>< |
| 50180 | 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 |
| 501a0 | 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 |
| 501c0 | 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 |
| 501e0 | 20 74 65 73 74 5f 77 68 69 6c 65 5f 62 72 65 61 6b 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 | .test_while_break.zig</kbd>.1/1. |
| 50200 | 74 65 73 74 5f 77 68 69 6c 65 5f 62 72 65 61 6b 2e 74 65 73 74 2e 77 68 69 6c 65 20 62 72 65 61 | test_while_break.test.while.brea |
| 50220 | 6b 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 | k...OK.All.1.tests.passed..</sam |
| 50240 | 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>.... |
| 50260 | 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 77 | ...Use.<code><span.class="tok-kw |
| 50280 | 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 6f 20 6a 75 6d 70 | ">continue</span></code>.to.jump |
| 502a0 | 20 62 61 63 6b 20 74 6f 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 68 65 20 6c 6f | .back.to.the.beginning.of.the.lo |
| 502c0 | 6f 70 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 | op........</p>.......<figure><fi |
| 502e0 | 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 |
| 50300 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 77 68 69 6c 65 5f 63 6f 6e 74 69 6e 75 65 2e | lass="file">test_while_continue. |
| 50320 | 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 |
| 50340 | 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 |
| 50360 | 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 |
| 50380 | 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 |
| 503a0 | 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 |
| 503c0 | 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 |
| 503e0 | 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 |
| 50400 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 63 6f 6e 74 69 6e 75 65 | s="tok-str">"while.continue |
| 50420 | 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= |
| 50440 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 3a 20 3c 73 70 61 6e 20 63 6c 61 | "tok-kw">var</span>.i:.<span.cla |
| 50460 | 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 70 | ss="tok-type">usize</span>.=.<sp |
| 50480 | 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>;. |
| 504a0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f | ....<span.class="tok-kw">while</ |
| 504c0 | 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 72 | span>.(<span.class="tok-null">tr |
| 504e0 | 75 65 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 69 20 2b 3d 20 3c 73 70 61 6e 20 | ue</span>).{.........i.+=.<span. |
| 50500 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | class="tok-number">1</span>;.... |
| 50520 | 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 |
| 50540 | 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 |
| 50560 | 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | ber">10</span>).............<spa |
| 50580 | 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> |
| 505a0 | 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 |
| 505c0 | 72 65 61 6b 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 | reak</span>;.....}.....<span.cla |
| 505e0 | 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 20 | ss="tok-kw">try</span>.expect(i. |
| 50600 | 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</ |
| 50620 | 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>< |
| 50640 | 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- |
| 50660 | 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 |
| 50680 | 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 69 6c 65 5f 63 6f 6e | p>$.<kbd>zig.test.test_while_con |
| 506a0 | 74 69 6e 75 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 63 | tinue.zig</kbd>.1/1.test_while_c |
| 506c0 | 6f 6e 74 69 6e 75 65 2e 74 65 73 74 2e 77 68 69 6c 65 20 63 6f 6e 74 69 6e 75 65 2e 2e 2e 4f 4b | ontinue.test.while.continue...OK |
| 506e0 | 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 |
| 50700 | 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 57 68 69 | e></figure>........<p>.......Whi |
| 50720 | 6c 65 20 6c 6f 6f 70 73 20 73 75 70 70 6f 72 74 20 61 20 63 6f 6e 74 69 6e 75 65 20 65 78 70 72 | le.loops.support.a.continue.expr |
| 50740 | 65 73 73 69 6f 6e 20 77 68 69 63 68 20 69 73 20 65 78 65 63 75 74 65 64 20 77 68 65 6e 20 74 68 | ession.which.is.executed.when.th |
| 50760 | 65 20 6c 6f 6f 70 0a 20 20 20 20 20 20 69 73 20 63 6f 6e 74 69 6e 75 65 64 2e 20 54 68 65 20 3c | e.loop.......is.continued..The.< |
| 50780 | 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 69 6e | code><span.class="tok-kw">contin |
| 507a0 | 75 65 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 70 65 63 74 | ue</span></code>.keyword.respect |
| 507c0 | 73 20 74 68 69 73 20 65 78 70 72 65 73 73 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | s.this.expression........</p>... |
| 507e0 | 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 |
| 50800 | 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_ |
| 50820 | 77 68 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 63 | while_continue_expression.zig</c |
| 50840 | 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 |
| 50860 | 6e 20 63 6c 61 73 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 |
| 50880 | 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | pect.=.<span.class="tok-builtin" |
| 508a0 | 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 |
| 508c0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 | -str">"std"</span>).te |
| 508e0 | 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- |
| 50900 | 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 |
| 50920 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 6c 6f 6f 70 20 63 6f 6e 74 69 6e 75 65 20 | -str">"while.loop.continue. |
| 50940 | 65 78 70 72 65 73 73 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | expression"</span>.{.....<s |
| 50960 | 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: |
| 50980 | 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 |
| 509a0 | 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"> |
| 509c0 | 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 |
| 509e0 | 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 |
| 50a00 | 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 3a 20 28 69 | ass="tok-number">10</span>).:.(i |
| 50a20 | 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</ |
| 50a40 | 73 70 61 6e 3e 29 20 7b 7d 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 |
| 50a60 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 69 20 3d 3d 20 3c 73 70 61 6e 20 | w">try</span>.expect(i.==.<span. |
| 50a80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d | class="tok-number">10</span>);.} |
| 50aa0 | 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 |
| 50ac0 | 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 |
| 50ae0 | 68 69 6c 65 20 6c 6f 6f 70 20 63 6f 6e 74 69 6e 75 65 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 6d | hile.loop.continue.expression,.m |
| 50b00 | 6f 72 65 20 63 6f 6d 70 6c 69 63 61 74 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | ore.complicated"</span>.{.. |
| 50b20 | 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 |
| 50b40 | 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 22 3e 75 73 69 | n>.i:.<span.class="tok-type">usi |
| 50b60 | 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 |
| 50b80 | 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 22 | ber">1</span>;.....<span.class=" |
| 50ba0 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6a 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">var</span>.j:.<span.clas |
| 50bc0 | 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 |
| 50be0 | 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>;.. |
| 50c00 | 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 |
| 50c20 | 70 61 6e 3e 20 28 69 20 2a 20 6a 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pan>.(i.*.j.<.<span.class="to |
| 50c40 | 6b 2d 6e 75 6d 62 65 72 22 3e 32 30 30 30 3c 2f 73 70 61 6e 3e 29 20 3a 20 28 7b 0a 20 20 20 20 | k-number">2000</span>).:.({..... |
| 50c60 | 20 20 20 20 69 20 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 | ....i.*=.<span.class="tok-number |
| 50c80 | 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 6a 20 2a 3d 20 3c 73 70 61 6e 20 63 | ">2</span>;.........j.*=.<span.c |
| 50ca0 | 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>;..... |
| 50cc0 | 7d 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 | }).{.........<span.class="tok-kw |
| 50ce0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 79 5f 69 6a 20 3d 20 69 20 2a 20 6a 3b 0a 20 20 | ">const</span>.my_ij.=.i.*.j;... |
| 50d00 | 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</ |
| 50d20 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 79 5f 69 6a 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c | span>.expect(my_ij.<.<span.cl |
| 50d40 | 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 3b 0a 20 | ass="tok-number">2000</span>);.. |
| 50d60 | 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 67 | ...}.}</code></pre></figure><fig |
| 50d80 | 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 |
| 50da0 | 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>$ |
| 50dc0 | 20 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 63 6f 6e 74 69 6e | .<kbd>zig.test.test_while_contin |
| 50de0 | 75 65 5f 65 78 70 72 65 73 73 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 | ue_expression.zig</kbd>.1/2.test |
| 50e00 | 5f 77 68 69 6c 65 5f 63 6f 6e 74 69 6e 75 65 5f 65 78 70 72 65 73 73 69 6f 6e 2e 74 65 73 74 2e | _while_continue_expression.test. |
| 50e20 | 77 68 69 6c 65 20 6c 6f 6f 70 20 63 6f 6e 74 69 6e 75 65 20 65 78 70 72 65 73 73 69 6f 6e 2e 2e | while.loop.continue.expression.. |
| 50e40 | 2e 4f 4b 0a 32 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 | .OK.2/2.test_while_continue_expr |
| 50e60 | 65 73 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 | ession.test.while.loop.continue. |
| 50e80 | 65 78 70 72 65 73 73 69 6f 6e 2c 20 6d 6f 72 65 20 63 6f 6d 70 6c 69 63 61 74 65 64 2e 2e 2e 4f | expression,.more.complicated...O |
| 50ea0 | 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 3e 3c 2f 70 | K.All.2.tests.passed..</samp></p |
| 50ec0 | 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 57 68 | re></figure>........<p>.......Wh |
| 50ee0 | 69 6c 65 20 6c 6f 6f 70 73 20 61 72 65 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 20 54 68 65 20 72 | ile.loops.are.expressions..The.r |
| 50f00 | 65 73 75 6c 74 20 6f 66 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 74 68 65 0a 20 | esult.of.the.expression.is.the.. |
| 50f20 | 20 20 20 20 20 72 65 73 75 6c 74 20 6f 66 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | .....result.of.the.<code><span.c |
| 50f40 | 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> |
| 50f60 | 20 63 6c 61 75 73 65 20 6f 66 20 61 20 77 68 69 6c 65 20 6c 6f 6f 70 2c 20 77 68 69 63 68 20 69 | .clause.of.a.while.loop,.which.i |
| 50f80 | 73 20 65 78 65 63 75 74 65 64 20 77 68 65 6e 0a 20 20 20 20 20 20 74 68 65 20 63 6f 6e 64 69 74 | s.executed.when.......the.condit |
| 50fa0 | 69 6f 6e 20 6f 66 20 74 68 65 20 77 68 69 6c 65 20 6c 6f 6f 70 20 69 73 20 74 65 73 74 65 64 20 | ion.of.the.while.loop.is.tested. |
| 50fc0 | 61 73 20 66 61 6c 73 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 | as.false........</p>.......<p>.. |
| 50fe0 | 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"> |
| 51000 | 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 6c 69 6b 65 20 3c 63 6f 64 65 3e | break</span></code>,.like.<code> |
| 51020 | 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 |
| 51040 | 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 63 63 65 70 74 73 20 61 20 76 61 6c 75 65 0a 20 20 20 20 20 | n></code>,.accepts.a.value...... |
| 51060 | 20 20 20 20 20 20 20 20 20 70 61 72 61 6d 65 74 65 72 2e 20 54 68 69 73 20 69 73 20 74 68 65 20 | .........parameter..This.is.the. |
| 51080 | 72 65 73 75 6c 74 20 6f 66 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | result.of.the.<code><span.class= |
| 510a0 | 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 64 65 3e 20 65 78 70 | "tok-kw">while</span></code>.exp |
| 510c0 | 72 65 73 73 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 57 68 65 6e 20 | ression....................When. |
| 510e0 | 79 6f 75 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 | you.<code><span.class="tok-kw">b |
| 51100 | 72 65 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 72 6f 6d 20 61 20 77 68 69 6c 65 20 | reak</span></code>.from.a.while. |
| 51120 | 6c 6f 6f 70 2c 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 | loop,.the.<code><span.class="tok |
| 51140 | 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 72 61 6e 63 68 20 69 | -kw">else</span></code>.branch.i |
| 51160 | 73 20 6e 6f 74 0a 20 20 20 20 20 20 65 76 61 6c 75 61 74 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 | s.not.......evaluated........</p |
| 51180 | 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 |
| 511a0 | 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 |
| 511c0 | 65 73 74 5f 77 68 69 6c 65 5f 65 6c 73 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | est_while_else.zig</cite></figca |
| 511e0 | 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 |
| 51200 | 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 |
| 51220 | 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 |
| 51240 | 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">" |
| 51260 | 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 |
| 51280 | 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 |
| 512a0 | 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">" |
| 512c0 | 3b 77 68 69 6c 65 20 65 6c 73 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | ;while.else"</span>.{.....< |
| 512e0 | 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 |
| 51300 | 78 70 65 63 74 28 72 61 6e 67 65 48 61 73 4e 75 6d 62 65 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 | xpect(rangeHasNumber(<span.class |
| 51320 | 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 |
| 51340 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 | ass="tok-number">10</span>,.<spa |
| 51360 | 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 29 3b | n.class="tok-number">5</span>)); |
| 51380 | 0a 20 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 |
| 513a0 | 70 61 6e 3e 20 65 78 70 65 63 74 28 21 72 61 6e 67 65 48 61 73 4e 75 6d 62 65 72 28 3c 73 70 61 | pan>.expect(!rangeHasNumber(<spa |
| 513c0 | 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 20 3c | n.class="tok-number">0</span>,.< |
| 513e0 | 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 |
| 51400 | 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 35 3c 2f | >,.<span.class="tok-number">15</ |
| 51420 | 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 6b 77 22 | span>));.}..<span.class="tok-kw" |
| 51440 | 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"> |
| 51460 | 72 61 6e 67 65 48 61 73 4e 75 6d 62 65 72 3c 2f 73 70 61 6e 3e 28 62 65 67 69 6e 3a 20 3c 73 70 | rangeHasNumber</span>(begin:.<sp |
| 51480 | 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> |
| 514a0 | 2c 20 65 6e 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 | ,.end:.<span.class="tok-type">us |
| 514c0 | 69 7a 65 3c 2f 73 70 61 6e 3e 2c 20 6e 75 6d 62 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ize</span>,.number:.<span.class= |
| 514e0 | 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 |
| 51500 | 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 20 | lass="tok-type">bool</span>.{... |
| 51520 | 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 |
| 51540 | 3e 20 69 20 3d 20 62 65 67 69 6e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >.i.=.begin;.....<span.class="to |
| 51560 | 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= |
| 51580 | 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 65 6e | "tok-kw">while</span>.(i.<.en |
| 515a0 | 64 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | d).:.(i.+=.<span.class="tok-numb |
| 515c0 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | er">1</span>).{.........<span.cl |
| 515e0 | 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 3d 3d 20 6e 75 6d | ass="tok-kw">if</span>.(i.==.num |
| 51600 | 62 65 72 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ber).{.............<span.class=" |
| 51620 | 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-kw">break</span>.<span.class |
| 51640 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 | ="tok-null">true</span>;........ |
| 51660 | 20 7d 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c | .}.....}.<span.class="tok-kw">el |
| 51680 | 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 | se</span>.<span.class="tok-null" |
| 516a0 | 3e 66 61 6c 73 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 | >false</span>;.}</code></pre></f |
| 516c0 | 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= |
| 516e0 | 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 |
| 51700 | 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 |
| 51720 | 69 6c 65 5f 65 6c 73 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 | ile_else.zig</kbd>.1/1.test_whil |
| 51740 | 65 5f 65 6c 73 65 2e 74 65 73 74 2e 77 68 69 6c 65 20 65 6c 73 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 | e_else.test.while.else...OK.All. |
| 51760 | 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 |
| 51780 | 69 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 77 68 | igure>........<h3.id="Labeled-wh |
| 517a0 | 69 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4c 61 62 65 6c 65 64 2d 77 68 69 6c 65 | ile"><a.href="#toc-Labeled-while |
| 517c0 | 22 3e 4c 61 62 65 6c 65 64 20 77 68 69 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | ">Labeled.while</a>.<a.class="hd |
| 517e0 | 72 22 20 68 72 65 66 3d 22 23 4c 61 62 65 6c 65 64 2d 77 68 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c | r".href="#Labeled-while">..</a>< |
| 51800 | 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 57 68 65 6e 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 | /h3>........<p>When.a.<code><spa |
| 51820 | 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 2f 63 | n.class="tok-kw">while</span></c |
| 51840 | 6f 64 65 3e 20 6c 6f 6f 70 20 69 73 20 6c 61 62 65 6c 65 64 2c 20 69 74 20 63 61 6e 20 62 65 20 | ode>.loop.is.labeled,.it.can.be. |
| 51860 | 72 65 66 65 72 65 6e 63 65 64 20 66 72 6f 6d 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | referenced.from.a.<code><span.cl |
| 51880 | 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 2f 63 6f 64 65 3e | ass="tok-kw">break</span></code> |
| 518a0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | ...............or.<code><span.cl |
| 518c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ass="tok-kw">continue</span></co |
| 518e0 | 64 65 3e 20 66 72 6f 6d 20 77 69 74 68 69 6e 20 61 20 6e 65 73 74 65 64 20 6c 6f 6f 70 3a 3c 2f | de>.from.within.a.nested.loop:</ |
| 51900 | 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 |
| 51920 | 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"> |
| 51940 | 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 63 69 74 | test_while_nested_break.zig</cit |
| 51960 | 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. |
| 51980 | 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 |
| 519a0 | 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 74 65 64 20 62 72 | .class="tok-str">"nested.br |
| 519c0 | 65 61 6b 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6f 75 74 65 72 3a 20 3c 73 | eak"</span>.{.....outer:.<s |
| 519e0 | 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>. |
| 51a00 | 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 |
| 51a20 | 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | an>).{.........<span.class="tok- |
| 51a40 | 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 22 74 | kw">while</span>.(<span.class="t |
| 51a60 | 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 20 20 | ok-null">true</span>).{......... |
| 51a80 | 20 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</ |
| 51aa0 | 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 7d 0a | span>.:outer;.........}.....}.}. |
| 51ac0 | 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 |
| 51ae0 | 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 65 | >.<span.class="tok-str">"ne |
| 51b00 | 73 74 65 64 20 63 6f 6e 74 69 6e 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | sted.continue"</span>.{.... |
| 51b20 | 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> |
| 51b40 | 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 22 3e 75 73 69 7a 65 | .i:.<span.class="tok-type">usize |
| 51b60 | 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 |
| 51b80 | 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 20 63 6c | r">0</span>;.....outer:.<span.cl |
| 51ba0 | 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.< |
| 51bc0 | 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 |
| 51be0 | 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 |
| 51c00 | 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 3c 73 70 61 6e | umber">1</span>).{.........<span |
| 51c20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 | .class="tok-kw">while</span>.(<s |
| 51c40 | 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> |
| 51c60 | 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ).{.............<span.class="tok |
| 51c80 | 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 20 3a 6f 75 74 65 72 3b 0a 20 20 20 | -kw">continue</span>.:outer;.... |
| 51ca0 | 20 20 20 20 20 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 | .....}.....}.}</code></pre></fig |
| 51cc0 | 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 |
| 51ce0 | 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 |
| 51d00 | 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 69 6c | ><samp>$.<kbd>zig.test.test_whil |
| 51d20 | 65 5f 6e 65 73 74 65 64 5f 62 72 65 61 6b 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 | e_nested_break.zig</kbd>.1/2.tes |
| 51d40 | 74 5f 77 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 | t_while_nested_break.test.nested |
| 51d60 | 20 62 72 65 61 6b 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 77 68 69 6c 65 5f 6e 65 73 74 65 | .break...OK.2/2.test_while_neste |
| 51d80 | 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 2e 2e 2e 4f | d_break.test.nested.continue...O |
| 51da0 | 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 3e 3c 2f 70 | K.All.2.tests.passed..</samp></p |
| 51dc0 | 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 |
| 51de0 | 64 3d 22 77 68 69 6c 65 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 3c 61 20 68 72 65 66 | d="while-with-Optionals"><a.href |
| 51e00 | 3d 22 23 74 6f 63 2d 77 68 69 6c 65 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 77 68 69 | ="#toc-while-with-Optionals">whi |
| 51e20 | 6c 65 20 77 69 74 68 20 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | le.with.Optionals</a>.<a.class=" |
| 51e40 | 68 64 72 22 20 68 72 65 66 3d 22 23 77 68 69 6c 65 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 | hdr".href="#while-with-Optionals |
| 51e60 | 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 4a | ">..</a></h3>........<p>.......J |
| 51e80 | 75 73 74 20 6c 69 6b 65 20 3c 61 20 68 72 65 66 3d 22 23 69 66 22 3e 69 66 3c 2f 61 3e 20 65 78 | ust.like.<a.href="#if">if</a>.ex |
| 51ea0 | 70 72 65 73 73 69 6f 6e 73 2c 20 77 68 69 6c 65 20 6c 6f 6f 70 73 20 63 61 6e 20 74 61 6b 65 20 | pressions,.while.loops.can.take. |
| 51ec0 | 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 61 73 20 74 68 65 0a 20 20 20 20 20 20 63 6f 6e 64 69 74 69 | an.optional.as.the.......conditi |
| 51ee0 | 6f 6e 20 61 6e 64 20 63 61 70 74 75 72 65 20 74 68 65 20 70 61 79 6c 6f 61 64 2e 20 57 68 65 6e | on.and.capture.the.payload..When |
| 51f00 | 20 3c 61 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e 20 69 73 20 65 6e 63 | .<a.href="#null">null</a>.is.enc |
| 51f20 | 6f 75 6e 74 65 72 65 64 20 74 68 65 20 6c 6f 6f 70 0a 20 20 20 20 20 20 65 78 69 74 73 2e 0a 20 | ountered.the.loop.......exits... |
| 51f40 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 74 | .....</p>.......<p>.......When.t |
| 51f60 | 68 65 20 3c 63 6f 64 65 3e 7c 78 7c 3c 2f 63 6f 64 65 3e 20 73 79 6e 74 61 78 20 69 73 20 70 72 | he.<code>|x|</code>.syntax.is.pr |
| 51f80 | 65 73 65 6e 74 20 6f 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 | esent.on.a.<code><span.class="to |
| 51fa0 | 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 | k-kw">while</span></code>.expres |
| 51fc0 | 73 69 6f 6e 2c 0a 20 20 20 20 20 20 74 68 65 20 77 68 69 6c 65 20 63 6f 6e 64 69 74 69 6f 6e 20 | sion,.......the.while.condition. |
| 51fe0 | 6d 75 73 74 20 68 61 76 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d | must.have.an.<a.href="#Optional- |
| 52000 | 54 79 70 65 22 3e 4f 70 74 69 6f 6e 61 6c 20 54 79 70 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c | Type">Optional.Type</a>........< |
| 52020 | 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 65 3e 3c 73 | /p>.......<p>.......The.<code><s |
| 52040 | 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></ |
| 52060 | 63 6f 64 65 3e 20 62 72 61 6e 63 68 20 69 73 20 61 6c 6c 6f 77 65 64 20 6f 6e 20 6f 70 74 69 6f | code>.branch.is.allowed.on.optio |
| 52080 | 6e 61 6c 20 69 74 65 72 61 74 69 6f 6e 2e 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 69 74 20 | nal.iteration..In.this.case,.it. |
| 520a0 | 77 69 6c 6c 0a 20 20 20 20 20 20 62 65 20 65 78 65 63 75 74 65 64 20 6f 6e 20 74 68 65 20 66 69 | will.......be.executed.on.the.fi |
| 520c0 | 72 73 74 20 6e 75 6c 6c 20 76 61 6c 75 65 20 65 6e 63 6f 75 6e 74 65 72 65 64 2e 0a 20 20 20 20 | rst.null.value.encountered...... |
| 520e0 | 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 |
| 52100 | 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 |
| 52120 | 6c 65 22 3e 74 65 73 74 5f 77 68 69 6c 65 5f 6e 75 6c 6c 5f 63 61 70 74 75 72 65 2e 7a 69 67 3c | le">test_while_null_capture.zig< |
| 52140 | 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 |
| 52160 | 70 61 6e 20 63 6c 61 73 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>. |
| 52180 | 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 |
| 521a0 | 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 |
| 521c0 | 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>). |
| 521e0 | 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 |
| 52200 | 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 |
| 52220 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 6e 75 6c 6c 20 63 61 70 74 75 72 65 | ok-str">"while.null.capture |
| 52240 | 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= |
| 52260 | 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 20 | "tok-kw">var</span>.sum1:.<span. |
| 52280 | 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 |
| 522a0 | 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>; |
| 522c0 | 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 3d | .....numbers_left.=.<span.class= |
| 522e0 | 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 6e | "tok-number">3</span>;.....<span |
| 52300 | 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 76 | .class="tok-kw">while</span>.(ev |
| 52320 | 65 6e 74 75 61 6c 6c 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 | entuallyNullSequence()).|value|. |
| 52340 | 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 0a 20 | {.........sum1.+=.value;.....}.. |
| 52360 | 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 |
| 52380 | 6e 3e 20 65 78 70 65 63 74 28 73 75 6d 31 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n>.expect(sum1.==.<span.class="t |
| 523a0 | 6f 6b 2d 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 | ok-number">3</span>);......<span |
| 523c0 | 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 6c 6c 20 63 61 70 | .class="tok-comment">//.null.cap |
| 523e0 | 74 75 72 65 20 77 69 74 68 20 61 6e 20 65 6c 73 65 20 62 6c 6f 63 6b 3c 2f 73 70 61 6e 3e 0a 20 | ture.with.an.else.block</span>.. |
| 52400 | 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 |
| 52420 | 6e 3e 20 73 75 6d 32 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | n>.sum2:.<span.class="tok-type"> |
| 52440 | 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 |
| 52460 | 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 | mber">0</span>;.....numbers_left |
| 52480 | 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 |
| 524a0 | 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 77 | pan>;.....<span.class="tok-kw">w |
| 524c0 | 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 65 76 65 6e 74 75 61 6c 6c 79 4e 75 6c 6c 53 65 71 75 65 | hile</span>.(eventuallyNullSeque |
| 524e0 | 6e 63 65 28 29 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 32 20 2b 3d | nce()).|value|.{.........sum2.+= |
| 52500 | 20 76 61 6c 75 65 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | .value;.....}.<span.class="tok-k |
| 52520 | 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | w">else</span>.{.........<span.c |
| 52540 | 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( |
| 52560 | 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" |
| 52580 | 3e 33 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 | >3</span>);.....}......<span.cla |
| 525a0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6e 75 6c 6c 20 63 61 70 74 75 72 65 | ss="tok-comment">//.null.capture |
| 525c0 | 20 77 69 74 68 20 61 20 63 6f 6e 74 69 6e 75 65 20 65 78 70 72 65 73 73 69 6f 6e 3c 2f 73 70 61 | .with.a.continue.expression</spa |
| 525e0 | 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< |
| 52600 | 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 22 | /span>.i:.<span.class="tok-type" |
| 52620 | 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 |
| 52640 | 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 |
| 52660 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 33 3a 20 3c 73 70 61 6e | ="tok-kw">var</span>.sum3:.<span |
| 52680 | 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>.=.< |
| 526a0 | 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> |
| 526c0 | 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 |
| 526e0 | 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 |
| 52700 | 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 |
| 52720 | 76 65 6e 74 75 61 6c 6c 79 4e 75 6c 6c 53 65 71 75 65 6e 63 65 28 29 29 20 7c 76 61 6c 75 65 7c | ventuallyNullSequence()).|value| |
| 52740 | 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | .:.(i.+=.<span.class="tok-number |
| 52760 | 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 33 20 2b 3d 20 76 61 | ">1</span>).{.........sum3.+=.va |
| 52780 | 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 2d | lue;.....}.....<span.class="tok- |
| 527a0 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 69 20 3d 3d 20 3c 73 70 61 6e | kw">try</span>.expect(i.==.<span |
| 527c0 | 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 7d | .class="tok-number">3</span>);.} |
| 527e0 | 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e | ..<span.class="tok-kw">var</span |
| 52800 | 3e 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >.numbers_left:.<span.class="tok |
| 52820 | 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 3d | -type">u32</span>.=.<span.class= |
| 52840 | 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 3c 73 70 | "tok-null">undefined</span>;.<sp |
| 52860 | 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 |
| 52880 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 76 65 6e 74 75 61 6c 6c 79 4e 75 6c 6c 53 | n.class="tok-fn">eventuallyNullS |
| 528a0 | 65 71 75 65 6e 63 65 3c 2f 73 70 61 6e 3e 28 29 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | equence</span>().?<span.class="t |
| 528c0 | 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 20 | ok-type">u32</span>.{.....<span. |
| 528e0 | 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 70 | class="tok-kw">return</span>.<sp |
| 52900 | 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 75 6d | an.class="tok-kw">if</span>.(num |
| 52920 | 62 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 | bers_left.==.<span.class="tok-nu |
| 52940 | 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 22 74 6f 6b | mber">0</span>).<span.class="tok |
| 52960 | 2d 6e 75 6c 6c 22 3e 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 | -null">null</span>.<span.class=" |
| 52980 | 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 20 20 20 20 | tok-kw">else</span>.blk:.{...... |
| 529a0 | 20 20 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 2d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ...numbers_left.-=.<span.class=" |
| 529c0 | 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 3c 73 | tok-number">1</span>;.........<s |
| 529e0 | 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 20 | pan.class="tok-kw">break</span>. |
| 52a00 | 3a 62 6c 6b 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 3b 0a 20 20 20 20 7d 3b 0a 7d 3c 2f 63 6f 64 | :blk.numbers_left;.....};.}</cod |
| 52a20 | 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 |
| 52a40 | 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 |
| 52a60 | 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 |
| 52a80 | 65 73 74 20 74 65 73 74 5f 77 68 69 6c 65 5f 6e 75 6c 6c 5f 63 61 70 74 75 72 65 2e 7a 69 67 3c | est.test_while_null_capture.zig< |
| 52aa0 | 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 77 68 69 6c 65 5f 6e 75 6c 6c 5f 63 61 70 74 75 72 | /kbd>.1/1.test_while_null_captur |
| 52ac0 | 65 2e 74 65 73 74 2e 77 68 69 6c 65 20 6e 75 6c 6c 20 63 61 70 74 75 72 65 2e 2e 2e 4f 4b 0a 41 | e.test.while.null.capture...OK.A |
| 52ae0 | 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> |
| 52b00 | 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= |
| 52b20 | 22 77 68 69 6c 65 2d 77 69 74 68 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e 3c 61 20 68 72 65 | "while-with-Error-Unions"><a.hre |
| 52b40 | 66 3d 22 23 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 22 | f="#toc-while-with-Error-Unions" |
| 52b60 | 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 20 3c 61 20 | >while.with.Error.Unions</a>.<a. |
| 52b80 | 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 2d 45 72 | class="hdr".href="#while-with-Er |
| 52ba0 | 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c | ror-Unions">..</a></h3>........< |
| 52bc0 | 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" |
| 52be0 | 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 |
| 52c00 | 20 63 61 6e 20 74 61 6b 65 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 61 73 0a 20 20 20 20 | .can.take.an.error.union.as..... |
| 52c20 | 20 20 74 68 65 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 | ..the.condition.and.capture.the. |
| 52c40 | 70 61 79 6c 6f 61 64 20 6f 72 20 74 68 65 20 65 72 72 6f 72 20 63 6f 64 65 2e 20 57 68 65 6e 20 | payload.or.the.error.code..When. |
| 52c60 | 74 68 65 0a 20 20 20 20 20 20 63 6f 6e 64 69 74 69 6f 6e 20 72 65 73 75 6c 74 73 20 69 6e 20 61 | the.......condition.results.in.a |
| 52c80 | 6e 20 65 72 72 6f 72 20 63 6f 64 65 20 74 68 65 20 65 6c 73 65 20 62 72 61 6e 63 68 20 69 73 20 | n.error.code.the.else.branch.is. |
| 52ca0 | 65 76 61 6c 75 61 74 65 64 20 61 6e 64 0a 20 20 20 20 20 20 74 68 65 20 6c 6f 6f 70 20 69 73 20 | evaluated.and.......the.loop.is. |
| 52cc0 | 66 69 6e 69 73 68 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 | finished........</p>.......<p>.. |
| 52ce0 | 20 20 20 20 20 57 68 65 6e 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .....When.the.<code><span.class= |
| 52d00 | 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 78 7c 3c 2f 63 6f 64 65 3e 20 | "tok-kw">else</span>.|x|</code>. |
| 52d20 | 73 79 6e 74 61 78 20 69 73 20 70 72 65 73 65 6e 74 20 6f 6e 20 61 20 3c 63 6f 64 65 3e 3c 73 70 | syntax.is.present.on.a.<code><sp |
| 52d40 | 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 2f | an.class="tok-kw">while</span></ |
| 52d60 | 63 6f 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 | code>.expression,.......the.whil |
| 52d80 | 65 20 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 | e.condition.must.have.an.<a.href |
| 52da0 | 3d 22 23 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e | ="#Error-Union-Type">Error.Union |
| 52dc0 | 20 54 79 70 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 69 67 | .Type</a>........</p>.......<fig |
| 52de0 | 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"> |
| 52e00 | 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 5f 65 72 | <cite.class="file">test_while_er |
| 52e20 | 72 6f 72 5f 63 61 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 | ror_capture.zig</cite></figcapti |
| 52e40 | 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 |
| 52e60 | 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 |
| 52e80 | 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 |
| 52ea0 | 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 |
| 52ec0 | 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;. |
| 52ee0 | 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 |
| 52f00 | 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 |
| 52f20 | 69 6c 65 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 63 61 70 74 75 72 65 26 71 75 6f 74 3b 3c 2f 73 | ile.error.union.capture"</s |
| 52f40 | 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"> |
| 52f60 | 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 31 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | var</span>.sum1:.<span.class="to |
| 52f80 | 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 |
| 52fa0 | 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 6d 62 | ="tok-number">0</span>;.....numb |
| 52fc0 | 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 6d 62 | ers_left.=.<span.class="tok-numb |
| 52fe0 | 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | er">3</span>;.....<span.class="t |
| 53000 | 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 79 45 | ok-kw">while</span>.(eventuallyE |
| 53020 | 72 72 6f 72 53 65 71 75 65 6e 63 65 28 29 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 | rrorSequence()).|value|.{....... |
| 53040 | 20 20 73 75 6d 31 20 2b 3d 20 76 61 6c 75 65 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 | ..sum1.+=.value;.....}.<span.cla |
| 53060 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a | ss="tok-kw">else</span>.|err|.{. |
| 53080 | 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 |
| 530a0 | 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 73 | </span>.expect(err.==.<span.clas |
| 530c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 52 65 61 63 68 65 64 5a | s="tok-kw">error</span>.ReachedZ |
| 530e0 | 65 72 6f 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ero);.....}.}..<span.class="tok- |
| 53100 | 6b 77 22 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 | kw">var</span>.numbers_left:.<sp |
| 53120 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d | an.class="tok-type">u32</span>.= |
| 53140 | 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 |
| 53160 | 64 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 | d</span>;..<span.class="tok-kw"> |
| 53180 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 | fn</span>.<span.class="tok-fn">e |
| 531a0 | 76 65 6e 74 75 61 6c 6c 79 45 72 72 6f 72 53 65 71 75 65 6e 63 65 3c 2f 73 70 61 6e 3e 28 29 20 | ventuallyErrorSequence</span>(). |
| 531c0 | 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 3c | <span.class="tok-type">anyerror< |
| 531e0 | 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 | /span>!<span.class="tok-type">u3 |
| 53200 | 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- |
| 53220 | 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 |
| 53240 | 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 3d | ok-kw">if</span>.(numbers_left.= |
| 53260 | 3d 20 3c 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 |
| 53280 | 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 65 72 72 6f 72 3c | an>).<span.class="tok-kw">error< |
| 532a0 | 2f 73 70 61 6e 3e 2e 52 65 61 63 68 65 64 5a 65 72 6f 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>.ReachedZero.<span.class=" |
| 532c0 | 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 20 20 20 20 | tok-kw">else</span>.blk:.{...... |
| 532e0 | 20 20 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 2d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ...numbers_left.-=.<span.class=" |
| 53300 | 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 3c 73 | tok-number">1</span>;.........<s |
| 53320 | 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 20 | pan.class="tok-kw">break</span>. |
| 53340 | 3a 62 6c 6b 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 3b 0a 20 20 20 20 7d 3b 0a 7d 3c 2f 63 6f 64 | :blk.numbers_left;.....};.}</cod |
| 53360 | 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 |
| 53380 | 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 |
| 533a0 | 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 |
| 533c0 | 65 73 74 20 74 65 73 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 | est.test_while_error_capture.zig |
| 533e0 | 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 77 68 69 6c 65 5f 65 72 72 6f 72 5f 63 61 70 74 | </kbd>.1/1.test_while_error_capt |
| 53400 | 75 72 65 2e 74 65 73 74 2e 77 68 69 6c 65 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 63 61 70 74 75 | ure.test.while.error.union.captu |
| 53420 | 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 61 | re...OK.All.1.tests.passed..</sa |
| 53440 | 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>.............. |
| 53460 | 20 20 3c 68 33 20 69 64 3d 22 69 6e 6c 69 6e 65 2d 77 68 69 6c 65 22 3e 3c 61 20 68 72 65 66 3d | ..<h3.id="inline-while"><a.href= |
| 53480 | 22 23 74 6f 63 2d 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 | "#toc-inline-while">inline.while |
| 534a0 | 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 6c 69 6e | </a>.<a.class="hdr".href="#inlin |
| 534c0 | 65 2d 77 68 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 0a | e-while">..</a></h3>........<p>. |
| 534e0 | 20 20 20 20 20 20 57 68 69 6c 65 20 6c 6f 6f 70 73 20 63 61 6e 20 62 65 20 69 6e 6c 69 6e 65 64 | ......While.loops.can.be.inlined |
| 53500 | 2e 20 54 68 69 73 20 63 61 75 73 65 73 20 74 68 65 20 6c 6f 6f 70 20 74 6f 20 62 65 20 75 6e 72 | ..This.causes.the.loop.to.be.unr |
| 53520 | 6f 6c 6c 65 64 2c 20 77 68 69 63 68 0a 20 20 20 20 20 20 61 6c 6c 6f 77 73 20 74 68 65 20 63 6f | olled,.which.......allows.the.co |
| 53540 | 64 65 20 74 6f 20 64 6f 20 73 6f 6d 65 20 74 68 69 6e 67 73 20 77 68 69 63 68 20 6f 6e 6c 79 20 | de.to.do.some.things.which.only. |
| 53560 | 77 6f 72 6b 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 2c 0a 20 20 20 20 20 20 73 75 63 68 | work.at.compile.time,.......such |
| 53580 | 20 61 73 20 75 73 65 20 74 79 70 65 73 20 61 73 20 66 69 72 73 74 20 63 6c 61 73 73 20 76 61 6c | .as.use.types.as.first.class.val |
| 535a0 | 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 3e 3c 66 | ues........</p>.......<figure><f |
| 535c0 | 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. |
| 535e0 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 77 68 69 6c 65 2e 7a | class="file">test_inline_while.z |
| 53600 | 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 |
| 53620 | 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 |
| 53640 | 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 |
| 53660 | 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 |
| 53680 | 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 |
| 536a0 | 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= |
| 536c0 | 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 |
| 536e0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 6c 69 6e 65 20 77 68 69 6c 65 20 6c 6f | ="tok-str">"inline.while.lo |
| 53700 | 6f 70 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 | op"</span>.{.....<span.clas |
| 53720 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | s="tok-kw">comptime</span>.<span |
| 53740 | 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 20 3d 20 3c | .class="tok-kw">var</span>.i.=.< |
| 53760 | 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> |
| 53780 | 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</ |
| 537a0 | 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 65 | span>.sum:.<span.class="tok-type |
| 537c0 | 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 |
| 537e0 | 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 |
| 53800 | 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 61 6e | ass="tok-kw">inline</span>.<span |
| 53820 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 69 20 | .class="tok-kw">while</span>.(i. |
| 53840 | 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c | <.<span.class="tok-number">3< |
| 53860 | 2f 73 70 61 6e 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>).:.(i.+=.<span.class="tok |
| 53880 | 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 3c 73 70 | -number">1</span>).{.........<sp |
| 538a0 | 61 6e 20 63 6c 61 73 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 | an.class="tok-kw">const</span>.T |
| 538c0 | 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 77 69 74 63 68 3c 2f | .=.<span.class="tok-kw">switch</ |
| 538e0 | 73 70 61 6e 3e 20 28 69 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | span>.(i).{.............<span.cl |
| 53900 | 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 3d 26 67 74 3b 20 | ass="tok-number">0</span>.=>. |
| 53920 | 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 |
| 53940 | 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- |
| 53960 | 6e 75 6d 62 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 | number">1</span>.=>.<span.cla |
| 53980 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 | ss="tok-type">i8</span>,........ |
| 539a0 | 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 3c | .....<span.class="tok-number">2< |
| 539c0 | 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 79 | /span>.=>.<span.class="tok-ty |
| 539e0 | 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | pe">bool</span>,.............<sp |
| 53a00 | 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 3d 26 | an.class="tok-kw">else</span>.=& |
| 53a20 | 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 68 | gt;.<span.class="tok-kw">unreach |
| 53a40 | 61 62 6c 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 20 20 20 20 | able</span>,.........};......... |
| 53a60 | 73 75 6d 20 2b 3d 20 74 79 70 65 4e 61 6d 65 4c 65 6e 67 74 68 28 54 29 3b 0a 20 20 20 20 7d 0a | sum.+=.typeNameLength(T);.....}. |
| 53a80 | 20 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 |
| 53aa0 | 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 3d 22 74 | an>.expect(sum.==.<span.class="t |
| 53ac0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | ok-number">9</span>);.}..<span.c |
| 53ae0 | 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 |
| 53b00 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 79 70 65 4e 61 6d 65 4c 65 6e 67 74 68 3c 2f 73 70 61 | ass="tok-fn">typeNameLength</spa |
| 53b20 | 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 |
| 53b40 | 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>.T:.<span.class="tok-type |
| 53b60 | 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">type</span>).<span.class="tok- |
| 53b80 | 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | type">usize</span>.{.....<span.c |
| 53ba0 | 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 |
| 53bc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e 61 6d 65 3c | n.class="tok-builtin">@typeName< |
| 53be0 | 2f 73 70 61 6e 3e 28 54 29 2e 6c 65 6e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 | /span>(T).len;.}</code></pre></f |
| 53c00 | 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= |
| 53c20 | 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 |
| 53c40 | 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 69 6e | re><samp>$.<kbd>zig.test.test_in |
| 53c60 | 6c 69 6e 65 5f 77 68 69 6c 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 69 6e | line_while.zig</kbd>.1/1.test_in |
| 53c80 | 6c 69 6e 65 5f 77 68 69 6c 65 2e 74 65 73 74 2e 69 6e 6c 69 6e 65 20 77 68 69 6c 65 20 6c 6f 6f | line_while.test.inline.while.loo |
| 53ca0 | 70 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 | p...OK.All.1.tests.passed..</sam |
| 53cc0 | 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>.... |
| 53ce0 | 20 20 20 49 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 75 73 65 20 3c 63 6f 64 | ...It.is.recommended.to.use.<cod |
| 53d00 | 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 2f 73 | e><span.class="tok-kw">inline</s |
| 53d20 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 6f 6f 70 73 20 6f 6e 6c 79 20 66 6f 72 20 6f 6e 65 20 6f | pan></code>.loops.only.for.one.o |
| 53d40 | 66 20 74 68 65 73 65 20 72 65 61 73 6f 6e 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | f.these.reasons:.......</p>..... |
| 53d60 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 59 6f 75 20 6e 65 65 64 20 74 68 65 20 | ..<ul>.........<li>You.need.the. |
| 53d80 | 6c 6f 6f 70 20 74 6f 20 65 78 65 63 75 74 65 20 61 74 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d | loop.to.execute.at.<a.href="#com |
| 53da0 | 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 73 65 6d 61 | ptime">comptime</a>.for.the.sema |
| 53dc0 | 6e 74 69 63 73 20 74 6f 20 77 6f 72 6b 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e | ntics.to.work.</li>.........<li> |
| 53de0 | 0a 20 20 20 20 20 20 20 20 59 6f 75 20 68 61 76 65 20 61 20 62 65 6e 63 68 6d 61 72 6b 20 74 6f | .........You.have.a.benchmark.to |
| 53e00 | 20 70 72 6f 76 65 20 74 68 61 74 20 66 6f 72 63 69 62 6c 79 20 75 6e 72 6f 6c 6c 69 6e 67 20 74 | .prove.that.forcibly.unrolling.t |
| 53e20 | 68 65 20 6c 6f 6f 70 20 69 6e 20 74 68 69 73 20 77 61 79 20 69 73 20 6d 65 61 73 75 72 61 62 6c | he.loop.in.this.way.is.measurabl |
| 53e40 | 79 20 66 61 73 74 65 72 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f | y.faster..........</li>.......</ |
| 53e60 | 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 | ul>..............<p>See.also:</p |
| 53e80 | 3e 3c 75 6c 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 3c 2f | ><ul>.<li><a.href="#if">if</a></ |
| 53ea0 | 6c 69 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 | li>.<li><a.href="#Optionals">Opt |
| 53ec0 | 69 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 | ionals</a></li>.<li><a.href="#Er |
| 53ee0 | 72 6f 72 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 | rors">Errors</a></li>.<li><a.hre |
| 53f00 | 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a | f="#comptime">comptime</a></li>. |
| 53f20 | 3c 6c 69 3e 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 | <li><a.href="#unreachable">unrea |
| 53f40 | 63 68 61 62 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 20 20 | chable</a></li>.</ul>........... |
| 53f60 | 20 20 20 20 3c 68 32 20 69 64 3d 22 66 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 | ....<h2.id="for"><a.href="#toc-f |
| 53f80 | 6f 72 22 3e 66 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | or">for</a>.<a.class="hdr".href= |
| 53fa0 | 22 23 66 6f 72 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 | "#for">..</a></h2>........<figur |
| 53fc0 | 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 |
| 53fe0 | 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 2e 7a 69 67 3c 2f 63 | ite.class="file">test_for.zig</c |
| 54000 | 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 |
| 54020 | 6e 20 63 6c 61 73 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 |
| 54040 | 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | pect.=.<span.class="tok-builtin" |
| 54060 | 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 |
| 54080 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 | -str">"std"</span>).te |
| 540a0 | 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- |
| 540c0 | 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 |
| 540e0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 72 20 62 61 73 69 63 73 26 71 75 6f 74 3b 3c 2f 73 70 | -str">"for.basics"</sp |
| 54100 | 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 |
| 54120 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 69 74 65 6d 73 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 | onst</span>.items.=.[_]<span.cla |
| 54140 | 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. |
| 54160 | 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 |
| 54180 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 | an.class="tok-number">5</span>,. |
| 541a0 | 3c 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 |
| 541c0 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 | >,.<span.class="tok-number">4</s |
| 541e0 | 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 |
| 54200 | 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- |
| 54220 | 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 3d | kw">var</span>.sum:.<span.class= |
| 54240 | 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 |
| 54260 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 | ass="tok-number">0</span>;...... |
| 54280 | 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 46 6f 72 | <span.class="tok-comment">//.For |
| 542a0 | 20 6c 6f 6f 70 73 20 69 74 65 72 61 74 65 20 6f 76 65 72 20 73 6c 69 63 65 73 20 61 6e 64 20 61 | .loops.iterate.over.slices.and.a |
| 542c0 | 72 72 61 79 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | rrays.</span>.....<span.class="t |
| 542e0 | 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 74 65 6d 73 29 20 7c 76 61 6c 75 65 | ok-kw">for</span>.(items).|value |
| 54300 | 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 63 6f 6d | |.{.........<span.class="tok-com |
| 54320 | 6d 65 6e 74 22 3e 2f 2f 20 42 72 65 61 6b 20 61 6e 64 20 63 6f 6e 74 69 6e 75 65 20 61 72 65 20 | ment">//.Break.and.continue.are. |
| 54340 | 73 75 70 70 6f 72 74 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | supported.</span>.........<span. |
| 54360 | 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 65 20 | class="tok-kw">if</span>.(value. |
| 54380 | 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 |
| 543a0 | 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pan>).{.............<span.class= |
| 543c0 | 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>;....... |
| 543e0 | 20 20 7d 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 76 61 6c 75 65 3b 0a 20 20 20 20 7d 0a | ..}.........sum.+=.value;.....}. |
| 54400 | 20 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 |
| 54420 | 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 3d 22 74 | an>.expect(sum.==.<span.class="t |
| 54440 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 36 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 | ok-number">16</span>);......<spa |
| 54460 | 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 6f 20 69 74 65 72 | n.class="tok-comment">//.To.iter |
| 54480 | 61 74 65 20 6f 76 65 72 20 61 20 70 6f 72 74 69 6f 6e 20 6f 66 20 61 20 73 6c 69 63 65 2c 20 72 | ate.over.a.portion.of.a.slice,.r |
| 544a0 | 65 73 6c 69 63 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | eslice.</span>.....<span.class=" |
| 544c0 | 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 74 65 6d 73 5b 3c 73 70 61 6e 20 | tok-kw">for</span>.(items[<span. |
| 544e0 | 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 73 70 | class="tok-number">0</span>..<sp |
| 54500 | 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 29 | an.class="tok-number">1</span>]) |
| 54520 | 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 76 61 6c 75 65 3b | .|value|.{.........sum.+=.value; |
| 54540 | 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"> |
| 54560 | 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 |
| 54580 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 30 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 | lass="tok-number">20</span>);... |
| 545a0 | 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">//. |
| 545c0 | 54 6f 20 61 63 63 65 73 73 20 74 68 65 20 69 6e 64 65 78 20 6f 66 20 69 74 65 72 61 74 69 6f 6e | To.access.the.index.of.iteration |
| 545e0 | 2c 20 73 70 65 63 69 66 79 20 61 20 73 65 63 6f 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 20 61 73 20 | ,.specify.a.second.condition.as. |
| 54600 | 77 65 6c 6c 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 | well</span>.....<span.class="tok |
| 54620 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 73 20 61 20 73 65 63 6f 6e 64 20 63 61 70 74 75 72 65 | -comment">//.as.a.second.capture |
| 54640 | 20 76 61 6c 75 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .value.</span>.....<span.class=" |
| 54660 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 32 3a 20 3c 73 70 61 6e 20 63 | tok-kw">var</span>.sum2:.<span.c |
| 54680 | 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 |
| 546a0 | 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>;. |
| 546c0 | 20 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 | ....<span.class="tok-kw">for</sp |
| 546e0 | 61 6e 3e 20 28 69 74 65 6d 73 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | an>.(items,.<span.class="tok-num |
| 54700 | 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 29 20 7c 5f 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 | ber">0</span>..).|_,.i|.{....... |
| 54720 | 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 |
| 54740 | 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 |
| 54760 | 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 69 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | n">@TypeOf</span>(i).==.<span.cl |
| 54780 | 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>);... |
| 547a0 | 20 20 20 20 20 20 73 75 6d 32 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | ......sum2.+=.<span.class="tok-b |
| 547c0 | 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | uiltin">@as</span>(<span.class=" |
| 547e0 | 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 61 73 | tok-type">i32</span>,.<span.clas |
| 54800 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 | s="tok-builtin">@intCast</span>( |
| 54820 | 69 29 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 | i));.....}.....<span.class="tok- |
| 54840 | 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 32 20 3d 3d 20 3c 73 | kw">try</span>.expect(sum2.==.<s |
| 54860 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e | pan.class="tok-number">10</span> |
| 54880 | 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 |
| 548a0 | 22 3e 2f 2f 20 54 6f 20 69 74 65 72 61 74 65 20 6f 76 65 72 20 63 6f 6e 73 65 63 75 74 69 76 65 | ">//.To.iterate.over.consecutive |
| 548c0 | 20 69 6e 74 65 67 65 72 73 2c 20 75 73 65 20 74 68 65 20 72 61 6e 67 65 20 73 79 6e 74 61 78 2e | .integers,.use.the.range.syntax. |
| 548e0 | 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 |
| 54900 | 6d 65 6e 74 22 3e 2f 2f 20 55 6e 62 6f 75 6e 64 65 64 20 72 61 6e 67 65 20 69 73 20 61 6c 77 61 | ment">//.Unbounded.range.is.alwa |
| 54920 | 79 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | ys.a.compile.error.</span>.....< |
| 54940 | 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 |
| 54960 | 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 73 69 7a | um3:.<span.class="tok-type">usiz |
| 54980 | 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | e</span>.=.<span.class="tok-numb |
| 549a0 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | er">0</span>;.....<span.class="t |
| 549c0 | 6f 6b 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 | ok-kw">for</span>.(<span.class=" |
| 549e0 | 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 63 6c 61 73 | tok-number">0</span>..<span.clas |
| 54a00 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 20 7c 69 7c 20 7b 0a 20 | s="tok-number">5</span>).|i|.{.. |
| 54a20 | 20 20 20 20 20 20 20 73 75 6d 33 20 2b 3d 20 69 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 | .......sum3.+=.i;.....}.....<spa |
| 54a40 | 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 |
| 54a60 | 63 74 28 73 75 6d 33 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | ct(sum3.==.<span.class="tok-numb |
| 54a80 | 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | er">10</span>);.}..<span.class=" |
| 54aa0 | 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= |
| 54ac0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 75 6c 74 69 20 6f 62 6a 65 63 74 20 66 6f 72 | "tok-str">"multi.object.for |
| 54ae0 | 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= |
| 54b00 | 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.=.[_ |
| 54b20 | 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 73 69 7a 65 3c 2f 73 | ]<span.class="tok-type">usize</s |
| 54b40 | 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 |
| 54b60 | 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 |
| 54b80 | 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 6e 75 6d | ">2</span>,.<span.class="tok-num |
| 54ba0 | 62 65 72 22 3e 33 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">3</span>.};.....<span.class |
| 54bc0 | 3d 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 32 20 3d 20 | ="tok-kw">const</span>.items2.=. |
| 54be0 | 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 73 69 7a 65 3c | [_]<span.class="tok-type">usize< |
| 54c00 | 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 22 | /span>{.<span.class="tok-number" |
| 54c20 | 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | >4</span>,.<span.class="tok-numb |
| 54c40 | 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 6e | er">5</span>,.<span.class="tok-n |
| 54c60 | 75 6d 62 65 72 22 3e 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 | umber">6</span>.};.....<span.cla |
| 54c80 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 6f 75 6e 74 3a 20 3c 73 | ss="tok-kw">var</span>.count:.<s |
| 54ca0 | 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 |
| 54cc0 | 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f | >.=.<span.class="tok-number">0</ |
| 54ce0 | 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 63 6f 6d | span>;......<span.class="tok-com |
| 54d00 | 6d 65 6e 74 22 3e 2f 2f 20 49 74 65 72 61 74 65 20 6f 76 65 72 20 6d 75 6c 74 69 70 6c 65 20 6f | ment">//.Iterate.over.multiple.o |
| 54d20 | 62 6a 65 63 74 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 | bjects.</span>.....<span.class=" |
| 54d40 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 6c 6c 20 6c 65 6e 67 74 68 73 20 6d 75 73 74 | tok-comment">//.All.lengths.must |
| 54d60 | 20 62 65 20 65 71 75 61 6c 20 61 74 20 74 68 65 20 73 74 61 72 74 20 6f 66 20 74 68 65 20 6c 6f | .be.equal.at.the.start.of.the.lo |
| 54d80 | 6f 70 2c 20 6f 74 68 65 72 77 69 73 65 20 64 65 74 65 63 74 61 62 6c 65 3c 2f 73 70 61 6e 3e 0a | op,.otherwise.detectable</span>. |
| 54da0 | 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">// |
| 54dc0 | 20 69 6c 6c 65 67 61 6c 20 62 65 68 61 76 69 6f 72 20 6f 63 63 75 72 73 2e 3c 2f 73 70 61 6e 3e | .illegal.behavior.occurs.</span> |
| 54de0 | 0a 20 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 | .....<span.class="tok-kw">for</s |
| 54e00 | 70 61 6e 3e 20 28 69 74 65 6d 73 2c 20 69 74 65 6d 73 32 29 20 7c 69 2c 20 6a 7c 20 7b 0a 20 20 | pan>.(items,.items2).|i,.j|.{... |
| 54e20 | 20 20 20 20 20 20 63 6f 75 6e 74 20 2b 3d 20 69 20 2b 20 6a 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 | ......count.+=.i.+.j;.....}..... |
| 54e40 | 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> |
| 54e60 | 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 74 6f | .expect(count.==.<span.class="to |
| 54e80 | 6b 2d 6e 75 6d 62 65 72 22 3e 32 31 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | k-number">21</span>);.}..<span.c |
| 54ea0 | 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. |
| 54ec0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 72 20 72 65 66 65 72 65 | class="tok-str">"for.refere |
| 54ee0 | 6e 63 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | nce"</span>.{.....<span.cla |
| 54f00 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 74 65 6d 73 20 3d 20 5b | ss="tok-kw">var</span>.items.=.[ |
| 54f20 | 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 |
| 54f40 | 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 33 3c | an>{.<span.class="tok-number">3< |
| 54f60 | 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" |
| 54f80 | 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | >4</span>,.<span.class="tok-numb |
| 54fa0 | 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | er">2</span>.};......<span.class |
| 54fc0 | 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 74 | ="tok-comment">//.Iterate.over.t |
| 54fe0 | 68 65 20 73 6c 69 63 65 20 62 79 20 72 65 66 65 72 65 6e 63 65 20 62 79 3c 2f 73 70 61 6e 3e 0a | he.slice.by.reference.by</span>. |
| 55000 | 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">// |
| 55020 | 20 73 70 65 63 69 66 79 69 6e 67 20 74 68 61 74 20 74 68 65 20 63 61 70 74 75 72 65 20 76 61 6c | .specifying.that.the.capture.val |
| 55040 | 75 65 20 69 73 20 61 20 70 6f 69 6e 74 65 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | ue.is.a.pointer.</span>.....<spa |
| 55060 | 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 26 61 6d | n.class="tok-kw">for</span>.(&am |
| 55080 | 70 3b 69 74 65 6d 73 29 20 7c 2a 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 76 61 6c 75 | p;items).|*value|.{.........valu |
| 550a0 | 65 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | e.*.+=.<span.class="tok-number"> |
| 550c0 | 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | 1</span>;.....}......<span.class |
| 550e0 | 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 |
| 55100 | 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 | s[<span.class="tok-number">0</sp |
| 55120 | 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" |
| 55140 | 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >4</span>);.....<span.class="tok |
| 55160 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 69 74 65 6d 73 5b 3c 73 70 | -kw">try</span>.expect(items[<sp |
| 55180 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 | an.class="tok-number">1</span>]. |
| 551a0 | 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 | ==.<span.class="tok-number">5</s |
| 551c0 | 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"> |
| 551e0 | 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 69 74 65 6d 73 5b 3c 73 70 61 6e 20 63 6c | try</span>.expect(items[<span.cl |
| 55200 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 | ass="tok-number">2</span>].==.<s |
| 55220 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-number">3</span>) |
| 55240 | 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</ |
| 55260 | 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 |
| 55280 | 74 3b 66 6f 72 20 65 6c 73 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | t;for.else"</span>.{.....<s |
| 552a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 6f 72 20 61 | pan.class="tok-comment">//.For.a |
| 552c0 | 6c 6c 6f 77 73 20 61 6e 20 65 6c 73 65 20 61 74 74 61 63 68 65 64 20 74 6f 20 69 74 2c 20 74 68 | llows.an.else.attached.to.it,.th |
| 552e0 | 65 20 73 61 6d 65 20 61 73 20 61 20 77 68 69 6c 65 20 6c 6f 6f 70 2e 3c 2f 73 70 61 6e 3e 0a 20 | e.same.as.a.while.loop.</span>.. |
| 55300 | 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 |
| 55320 | 70 61 6e 3e 20 69 74 65 6d 73 20 3d 20 5b 5f 5d 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pan>.items.=.[_]?<span.class="to |
| 55340 | 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-type">i32</span>{.<span.class= |
| 55360 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | "tok-number">3</span>,.<span.cla |
| 55380 | 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. |
| 553a0 | 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 20 3c 73 | class="tok-null">null</span>,.<s |
| 553c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-number">5</span>. |
| 553e0 | 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 6f 6d 6d 65 6e 74 | };......<span.class="tok-comment |
| 55400 | 22 3e 2f 2f 20 46 6f 72 20 6c 6f 6f 70 73 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 75 73 65 64 20 | ">//.For.loops.can.also.be.used. |
| 55420 | 61 73 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | as.expressions.</span>.....<span |
| 55440 | 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 69 6d 69 6c 61 72 20 | .class="tok-comment">//.Similar. |
| 55460 | 74 6f 20 77 68 69 6c 65 20 6c 6f 6f 70 73 2c 20 77 68 65 6e 20 79 6f 75 20 62 72 65 61 6b 20 66 | to.while.loops,.when.you.break.f |
| 55480 | 72 6f 6d 20 61 20 66 6f 72 20 6c 6f 6f 70 2c 20 74 68 65 20 65 6c 73 65 20 62 72 61 6e 63 68 20 | rom.a.for.loop,.the.else.branch. |
| 554a0 | 69 73 20 6e 6f 74 20 65 76 61 6c 75 61 74 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | is.not.evaluated.</span>.....<sp |
| 554c0 | 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 |
| 554e0 | 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 |
| 55500 | 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 |
| 55520 | 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 |
| 55540 | 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 |
| 55560 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 74 65 6d 73 29 20 | ass="tok-kw">for</span>.(items). |
| 55580 | 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | |value|.{.........<span.class="t |
| 555a0 | 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 76 61 6c 75 65 20 21 3d 20 3c 73 70 61 6e | ok-kw">if</span>.(value.!=.<span |
| 555c0 | 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 7b | .class="tok-null">null</span>).{ |
| 555e0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 76 61 6c 75 65 2e 3f 3b 0a 20 20 20 | .............sum.+=.value.?;.... |
| 55600 | 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 74 6f 6b 2d 6b 77 | .....}.....}.<span.class="tok-kw |
| 55620 | 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 | ">else</span>.blk:.{.........<sp |
| 55640 | 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 |
| 55660 | 65 63 74 28 73 75 6d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | ect(sum.==.<span.class="tok-numb |
| 55680 | 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | er">12</span>);.........<span.cl |
| 556a0 | 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 73 | ass="tok-kw">break</span>.:blk.s |
| 556c0 | 75 6d 3b 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | um;.....};.....<span.class="tok- |
| 556e0 | 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 20 3d 3d 20 | kw">try</span>.expect(result.==. |
| 55700 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 | <span.class="tok-number">12</spa |
| 55720 | 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 |
| 55740 | 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 |
| 55760 | 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>$ |
| 55780 | 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 66 6f 72 2e 7a 69 67 3c 2f 6b 62 64 | .<kbd>zig.test.test_for.zig</kbd |
| 557a0 | 3e 0a 31 2f 34 20 74 65 73 74 5f 66 6f 72 2e 74 65 73 74 2e 66 6f 72 20 62 61 73 69 63 73 2e 2e | >.1/4.test_for.test.for.basics.. |
| 557c0 | 2e 4f 4b 0a 32 2f 34 20 74 65 73 74 5f 66 6f 72 2e 74 65 73 74 2e 6d 75 6c 74 69 20 6f 62 6a 65 | .OK.2/4.test_for.test.multi.obje |
| 557e0 | 63 74 20 66 6f 72 2e 2e 2e 4f 4b 0a 33 2f 34 20 74 65 73 74 5f 66 6f 72 2e 74 65 73 74 2e 66 6f | ct.for...OK.3/4.test_for.test.fo |
| 55800 | 72 20 72 65 66 65 72 65 6e 63 65 2e 2e 2e 4f 4b 0a 34 2f 34 20 74 65 73 74 5f 66 6f 72 2e 74 65 | r.reference...OK.4/4.test_for.te |
| 55820 | 73 74 2e 66 6f 72 20 65 6c 73 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 34 20 74 65 73 74 73 20 70 61 73 | st.for.else...OK.All.4.tests.pas |
| 55840 | 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>..... |
| 55860 | 20 20 20 3c 68 33 20 69 64 3d 22 4c 61 62 65 6c 65 64 2d 66 6f 72 22 3e 3c 61 20 68 72 65 66 3d | ...<h3.id="Labeled-for"><a.href= |
| 55880 | 22 23 74 6f 63 2d 4c 61 62 65 6c 65 64 2d 66 6f 72 22 3e 4c 61 62 65 6c 65 64 20 66 6f 72 3c 2f | "#toc-Labeled-for">Labeled.for</ |
| 558a0 | 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 61 62 65 6c 65 64 | a>.<a.class="hdr".href="#Labeled |
| 558c0 | 2d 66 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 65 6e | -for">..</a></h3>........<p>When |
| 558e0 | 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 66 6f | .a.<code><span.class="tok-kw">fo |
| 55900 | 72 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 | r</span></code>.loop.is.labeled, |
| 55920 | 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 20 3c 63 6f | .it.can.be.referenced.from.a.<co |
| 55940 | 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 3c 2f 73 | de><span.class="tok-kw">break</s |
| 55960 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 20 3c 63 6f | pan></code>...............or.<co |
| 55980 | 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 69 6e 75 65 | de><span.class="tok-kw">continue |
| 559a0 | 3c 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 | </span></code>.from.within.a.nes |
| 559c0 | 74 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 | ted.loop:</p>.......<figure><fig |
| 559e0 | 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 |
| 55a00 | 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 66 6f 72 5f 6e 65 73 74 65 64 5f 62 72 65 61 6b | ass="file">test_for_nested_break |
| 55a20 | 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 |
| 55a40 | 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 |
| 55a60 | 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 |
| 55a80 | 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= |
| 55aa0 | 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> |
| 55ac0 | 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 |
| 55ae0 | 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 |
| 55b00 | 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 |
| 55b20 | 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">" |
| 55b40 | 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 20 | nested.break"</span>.{..... |
| 55b60 | 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>. |
| 55b80 | 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 |
| 55ba0 | 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 |
| 55bc0 | 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 |
| 55be0 | 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 |
| 55c00 | 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>..< |
| 55c20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e | span.class="tok-number">6</span> |
| 55c40 | 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 |
| 55c60 | 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 |
| 55c80 | 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= |
| 55ca0 | 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>).|_|.{.... |
| 55cc0 | 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 |
| 55ce0 | 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>;............ |
| 55d00 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 | .<span.class="tok-kw">break</spa |
| 55d20 | 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 20 20 20 20 3c | n>.:outer;.........}.....}.....< |
| 55d40 | 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 |
| 55d60 | 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 74 6f 6b 2d | xpect(count.==.<span.class="tok- |
| 55d80 | 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 |
| 55da0 | 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 |
| 55dc0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 65 73 74 65 64 20 63 6f 6e 74 69 6e | ss="tok-str">"nested.contin |
| 55de0 | 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ue"</span>.{.....<span.clas |
| 55e00 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 6f 75 6e 74 3a 20 3c 73 70 | s="tok-kw">var</span>.count:.<sp |
| 55e20 | 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> |
| 55e40 | 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 |
| 55e60 | 70 61 6e 3e 3b 0a 20 20 20 20 6f 75 74 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pan>;.....outer:.<span.class="to |
| 55e80 | 6b 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 | k-kw">for</span>.(<span.class="t |
| 55ea0 | 6f 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 | ok-number">1</span>..<span.class |
| 55ec0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 29 20 7c 5f 7c 20 7b 0a 20 20 | ="tok-number">9</span>).|_|.{... |
| 55ee0 | 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 66 6f 72 3c 2f | ......<span.class="tok-kw">for</ |
| 55f00 | 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 6d 62 65 72 22 3e | span>.(<span.class="tok-number"> |
| 55f20 | 31 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | 1</span>..<span.class="tok-numbe |
| 55f40 | 72 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 20 20 20 20 63 | r">6</span>).|_|.{.............c |
| 55f60 | 6f 75 6e 74 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 | ount.+=.<span.class="tok-number" |
| 55f80 | 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | >1</span>;.............<span.cla |
| 55fa0 | 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 6f 75 74 | ss="tok-kw">continue</span>.:out |
| 55fc0 | 65 72 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | er;.........}.....}......<span.c |
| 55fe0 | 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( |
| 56000 | 63 6f 75 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 | count.==.<span.class="tok-number |
| 56020 | 22 3e 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 | ">8</span>);.}</code></pre></fig |
| 56040 | 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 |
| 56060 | 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 |
| 56080 | 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 72 5f | ><samp>$.<kbd>zig.test.test_for_ |
| 560a0 | 6e 65 73 74 65 64 5f 62 72 65 61 6b 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f | nested_break.zig</kbd>.1/2.test_ |
| 560c0 | 66 6f 72 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 62 72 65 | for_nested_break.test.nested.bre |
| 560e0 | 61 6b 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 66 6f 72 5f 6e 65 73 74 65 64 5f 62 72 65 61 | ak...OK.2/2.test_for_nested_brea |
| 56100 | 6b 2e 74 65 73 74 2e 6e 65 73 74 65 64 20 63 6f 6e 74 69 6e 75 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 | k.test.nested.continue...OK.All. |
| 56120 | 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 |
| 56140 | 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 69 6e 6c | igure>...............<h3.id="inl |
| 56160 | 69 6e 65 2d 66 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 6c 69 6e 65 2d 66 6f | ine-for"><a.href="#toc-inline-fo |
| 56180 | 72 22 3e 69 6e 6c 69 6e 65 20 66 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | r">inline.for</a>.<a.class="hdr" |
| 561a0 | 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 66 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | .href="#inline-for">..</a></h3>. |
| 561c0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 6c 6f 6f 70 73 20 63 61 6e 20 62 | .......<p>.......For.loops.can.b |
| 561e0 | 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 20 | e.inlined..This.causes.the.loop. |
| 56200 | 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 6f | to.be.unrolled,.which.......allo |
| 56220 | 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 68 | ws.the.code.to.do.some.things.wh |
| 56240 | 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 20 | ich.only.work.at.compile.time,.. |
| 56260 | 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 20 | .....such.as.use.types.as.first. |
| 56280 | 63 6c 61 73 73 20 76 61 6c 75 65 73 2e 0a 20 20 20 20 20 20 54 68 65 20 63 61 70 74 75 72 65 20 | class.values........The.capture. |
| 562a0 | 76 61 6c 75 65 20 61 6e 64 20 69 74 65 72 61 74 6f 72 20 76 61 6c 75 65 20 6f 66 20 69 6e 6c 69 | value.and.iterator.value.of.inli |
| 562c0 | 6e 65 64 20 66 6f 72 20 6c 6f 6f 70 73 20 61 72 65 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 2d | ned.for.loops.are.......compile- |
| 562e0 | 74 69 6d 65 20 6b 6e 6f 77 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 | time.known........</p>.......<fi |
| 56300 | 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" |
| 56320 | 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 5f | ><cite.class="file">test_inline_ |
| 56340 | 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> |
| 56360 | 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 |
| 56380 | 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 |
| 563a0 | 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. |
| 563c0 | 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"< |
| 563e0 | 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 |
| 56400 | 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. |
| 56420 | 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 65 20 66 6f 72 | class="tok-str">"inline.for |
| 56440 | 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 3c 73 70 61 6e 20 63 | .loop"</span>.{.....<span.c |
| 56460 | 6c 61 73 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 73 20 | lass="tok-kw">const</span>.nums. |
| 56480 | 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 3c | =.[_]<span.class="tok-type">i32< |
| 564a0 | 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 22 | /span>{.<span.class="tok-number" |
| 564c0 | 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 |
| 564e0 | 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 6e | er">4</span>,.<span.class="tok-n |
| 56500 | 75 6d 62 65 72 22 3e 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 | umber">6</span>.};.....<span.cla |
| 56520 | 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 70 61 | ss="tok-kw">var</span>.sum:.<spa |
| 56540 | 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>. |
| 56560 | 3d 20 3c 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 |
| 56580 | 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 6e | an>;.....<span.class="tok-kw">in |
| 565a0 | 6c 69 6e 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | line</span>.<span.class="tok-kw" |
| 565c0 | 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 6e 75 6d 73 29 20 7c 69 7c 20 7b 0a 20 20 20 20 20 20 20 | >for</span>.(nums).|i|.{........ |
| 565e0 | 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 |
| 56600 | 6e 3e 20 54 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 | n>.T.=.<span.class="tok-kw">swit |
| 56620 | 63 68 3c 2f 73 70 61 6e 3e 20 28 69 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | ch</span>.(i).{.............<spa |
| 56640 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 3d 26 | n.class="tok-number">2</span>.=& |
| 56660 | 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 66 33 32 3c 2f | gt;.<span.class="tok-type">f32</ |
| 56680 | 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=" |
| 566a0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e | tok-number">4</span>.=>.<span |
| 566c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 | .class="tok-type">i8</span>,.... |
| 566e0 | 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 65 72 | .........<span.class="tok-number |
| 56700 | 22 3e 36 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">6</span>.=>.<span.class="to |
| 56720 | 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 | k-type">bool</span>,............ |
| 56740 | 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 |
| 56760 | 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 | >.=>.<span.class="tok-kw">unr |
| 56780 | 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 | eachable</span>,.........};..... |
| 567a0 | 20 20 20 20 73 75 6d 20 2b 3d 20 74 79 70 65 4e 61 6d 65 4c 65 6e 67 74 68 28 54 29 3b 0a 20 20 | ....sum.+=.typeNameLength(T);... |
| 567c0 | 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 79 | ..}.....<span.class="tok-kw">try |
| 567e0 | 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 75 6d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | </span>.expect(sum.==.<span.clas |
| 56800 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 | s="tok-number">9</span>);.}..<sp |
| 56820 | 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 |
| 56840 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 79 70 65 4e 61 6d 65 4c 65 6e 67 74 68 3c | n.class="tok-fn">typeNameLength< |
| 56860 | 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 |
| 56880 | 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- |
| 568a0 | 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=" |
| 568c0 | 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 70 | tok-type">usize</span>.{.....<sp |
| 568e0 | 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>. |
| 56900 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e | <span.class="tok-builtin">@typeN |
| 56920 | 61 6d 65 3c 2f 73 70 61 6e 3e 28 54 29 2e 6c 65 6e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ame</span>(T).len;.}</code></pre |
| 56940 | 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 |
| 56960 | 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 |
| 56980 | 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 |
| 569a0 | 74 5f 69 6e 6c 69 6e 65 5f 66 6f 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f | t_inline_for.zig</kbd>.1/1.test_ |
| 569c0 | 69 6e 6c 69 6e 65 5f 66 6f 72 2e 74 65 73 74 2e 69 6e 6c 69 6e 65 20 66 6f 72 20 6c 6f 6f 70 2e | inline_for.test.inline.for.loop. |
| 569e0 | 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> |
| 56a00 | 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>...... |
| 56a20 | 20 49 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 75 73 65 20 3c 63 6f 64 65 3e | .It.is.recommended.to.use.<code> |
| 56a40 | 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 |
| 56a60 | 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 6f 6f 70 73 20 6f 6e 6c 79 20 66 6f 72 20 6f 6e 65 20 6f 66 20 | n></code>.loops.only.for.one.of. |
| 56a80 | 74 68 65 73 65 20 72 65 61 73 6f 6e 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | these.reasons:.......</p>....... |
| 56aa0 | 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 59 6f 75 20 6e 65 65 64 20 74 68 65 20 6c 6f | <ul>.........<li>You.need.the.lo |
| 56ac0 | 6f 70 20 74 6f 20 65 78 65 63 75 74 65 20 61 74 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 | op.to.execute.at.<a.href="#compt |
| 56ae0 | 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 73 65 6d 61 6e 74 | ime">comptime</a>.for.the.semant |
| 56b00 | 69 63 73 20 74 6f 20 77 6f 72 6b 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 | ics.to.work.</li>.........<li>.. |
| 56b20 | 20 20 20 20 20 20 20 59 6f 75 20 68 61 76 65 20 61 20 62 65 6e 63 68 6d 61 72 6b 20 74 6f 20 70 | .......You.have.a.benchmark.to.p |
| 56b40 | 72 6f 76 65 20 74 68 61 74 20 66 6f 72 63 69 62 6c 79 20 75 6e 72 6f 6c 6c 69 6e 67 20 74 68 65 | rove.that.forcibly.unrolling.the |
| 56b60 | 20 6c 6f 6f 70 20 69 6e 20 74 68 69 73 20 77 61 79 20 69 73 20 6d 65 61 73 75 72 61 62 6c 79 20 | .loop.in.this.way.is.measurably. |
| 56b80 | 66 61 73 74 65 72 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c | faster..........</li>.......</ul |
| 56ba0 | 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c | >..............<p>See.also:</p>< |
| 56bc0 | 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 77 68 69 6c 65 22 3e 77 68 69 6c 65 3c 2f | ul>.<li><a.href="#while">while</ |
| 56be0 | 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"> |
| 56c00 | 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | comptime</a></li>.<li><a.href="# |
| 56c20 | 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 | Arrays">Arrays</a></li>.<li><a.h |
| 56c40 | 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e 53 6c 69 63 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f | ref="#Slices">Slices</a></li>.</ |
| 56c60 | 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 69 66 22 3e 3c 61 | ul>...............<h2.id="if"><a |
| 56c80 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 66 22 3e 69 66 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | .href="#toc-if">if</a>.<a.class= |
| 56ca0 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 69 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | "hdr".href="#if">..</a></h2>.... |
| 56cc0 | 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 |
| 56ce0 | 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_ |
| 56d00 | 69 66 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 | if.zig</cite></figcaption><pre>< |
| 56d20 | 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 2f | code><span.class="tok-comment">/ |
| 56d40 | 2f 20 49 66 20 65 78 70 72 65 73 73 69 6f 6e 73 20 68 61 76 65 20 74 68 72 65 65 20 75 73 65 73 | /.If.expressions.have.three.uses |
| 56d60 | 2c 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 74 68 65 20 74 68 72 65 65 20 74 79 70 | ,.corresponding.to.the.three.typ |
| 56d80 | 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 63 6f 6d 6d | es:</span>.<span.class="tok-comm |
| 56da0 | 65 6e 74 22 3e 2f 2f 20 2a 20 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | ent">//.*.bool</span>.<span.clas |
| 56dc0 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2a 20 3f 54 3c 2f 73 70 61 6e 3e 0a 3c | s="tok-comment">//.*.?T</span>.< |
| 56de0 | 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 61 6e | span.class="tok-comment">//.*.an |
| 56e00 | 79 65 72 72 6f 72 21 54 3c 2f 73 70 61 6e 3e 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | yerror!T</span>..<span.class="to |
| 56e20 | 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 |
| 56e40 | 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 |
| 56e60 | 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">" |
| 56e80 | 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 |
| 56ea0 | 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 |
| 56ec0 | 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">" |
| 56ee0 | 3b 69 66 20 65 78 70 72 65 73 73 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | ;if.expression"</span>.{... |
| 56f00 | 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 |
| 56f20 | 66 20 65 78 70 72 65 73 73 69 6f 6e 73 20 61 72 65 20 75 73 65 64 20 69 6e 73 74 65 61 64 20 6f | f.expressions.are.used.instead.o |
| 56f40 | 66 20 61 20 74 65 72 6e 61 72 79 20 65 78 70 72 65 73 73 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 | f.a.ternary.expression.</span>.. |
| 56f60 | 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 |
| 56f80 | 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | pan>.a:.<span.class="tok-type">u |
| 56fa0 | 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 |
| 56fc0 | 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 63 6c 61 73 73 3d 22 | ber">5</span>;.....<span.class=" |
| 56fe0 | 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 6c | tok-kw">const</span>.b:.<span.cl |
| 57000 | 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 |
| 57020 | 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 3b 0a 20 | n.class="tok-number">4</span>;.. |
| 57040 | 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 |
| 57060 | 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 6b 2d 6b | pan>.result.=.<span.class="tok-k |
| 57080 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 21 3d 20 62 29 20 3c 73 70 61 6e 20 63 6c 61 73 | w">if</span>.(a.!=.b).<span.clas |
| 570a0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 37 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | s="tok-number">47</span>.<span.c |
| 570c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | lass="tok-kw">else</span>.<span. |
| 570e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 30 38 39 3c 2f 73 70 61 6e 3e 3b 0a | class="tok-number">3089</span>;. |
| 57100 | 20 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 |
| 57120 | 61 6e 3e 20 65 78 70 65 63 74 28 72 65 73 75 6c 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | an>.expect(result.==.<span.class |
| 57140 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 37 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 | ="tok-number">47</span>);.}..<sp |
| 57160 | 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 |
| 57180 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 66 20 62 6f 6f | pan.class="tok-str">"if.boo |
| 571a0 | 6c 65 61 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 | lean"</span>.{.....<span.cl |
| 571c0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 65 78 70 72 65 73 73 69 | ass="tok-comment">//.If.expressi |
| 571e0 | 6f 6e 73 20 74 65 73 74 20 62 6f 6f 6c 65 61 6e 20 63 6f 6e 64 69 74 69 6f 6e 73 2e 3c 2f 73 70 | ons.test.boolean.conditions.</sp |
| 57200 | 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 6f 6e | an>.....<span.class="tok-kw">con |
| 57220 | 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 79 | st</span>.a:.<span.class="tok-ty |
| 57240 | 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 |
| 57260 | 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 63 6c | k-number">5</span>;.....<span.cl |
| 57280 | 61 73 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 3c 73 70 | ass="tok-kw">const</span>.b:.<sp |
| 572a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d | an.class="tok-type">u32</span>.= |
| 572c0 | 20 3c 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 |
| 572e0 | 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 66 3c | n>;.....<span.class="tok-kw">if< |
| 57300 | 2f 73 70 61 6e 3e 20 28 61 20 21 3d 20 62 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | /span>.(a.!=.b).{.........<span. |
| 57320 | 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 |
| 57340 | 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 |
| 57360 | 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 6b 77 22 | an>);.....}.<span.class="tok-kw" |
| 57380 | 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 |
| 573a0 | 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">if</span>.(a.==.<span.class="t |
| 573c0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c | ok-number">9</span>).{.........< |
| 573e0 | 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 3c | span.class="tok-kw">unreachable< |
| 57400 | 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 3d 22 74 6f 6b 2d 6b | /span>;.....}.<span.class="tok-k |
| 57420 | 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | w">else</span>.{.........<span.c |
| 57440 | 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> |
| 57460 | 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"> |
| 57480 | 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 |
| 574a0 | 22 3e 26 71 75 6f 74 3b 69 66 20 65 72 72 6f 72 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 | ">"if.error.union"</sp |
| 574c0 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | an>.{.....<span.class="tok-comme |
| 574e0 | 6e 74 22 3e 2f 2f 20 49 66 20 65 78 70 72 65 73 73 69 6f 6e 73 20 74 65 73 74 20 66 6f 72 20 65 | nt">//.If.expressions.test.for.e |
| 57500 | 72 72 6f 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 | rrors.</span>.....<span.class="t |
| 57520 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 6f 74 65 20 74 68 65 20 7c 65 72 72 7c 20 63 61 | ok-comment">//.Note.the.|err|.ca |
| 57540 | 70 74 75 72 65 20 6f 6e 20 74 68 65 20 65 6c 73 65 2e 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c | pture.on.the.else.</span>......< |
| 57560 | 73 70 61 6e 20 63 6c 61 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> |
| 57580 | 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 61 6e 79 65 72 | .a:.<span.class="tok-type">anyer |
| 575a0 | 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | ror</span>!<span.class="tok-type |
| 575c0 | 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">u32</span>.=.<span.class="tok- |
| 575e0 | 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 73 | number">0</span>;.....<span.clas |
| 57600 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 29 20 7c 76 61 6c 75 65 7c | s="tok-kw">if</span>.(a).|value| |
| 57620 | 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"> |
| 57640 | 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e | try</span>.expect(value.==.<span |
| 57660 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | .class="tok-number">0</span>);.. |
| 57680 | 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 2f | ...}.<span.class="tok-kw">else</ |
| 576a0 | 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 20 | span>.|err|.{........._.=.err;.. |
| 576c0 | 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 65 | .......<span.class="tok-kw">unre |
| 576e0 | 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 6e | achable</span>;.....}......<span |
| 57700 | 20 63 6c 61 73 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 | .class="tok-kw">const</span>.b:. |
| 57720 | 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 3c | <span.class="tok-type">anyerror< |
| 57740 | 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 | /span>!<span.class="tok-type">u3 |
| 57760 | 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"> |
| 57780 | 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 |
| 577a0 | 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 29 20 7c 76 | .class="tok-kw">if</span>.(b).|v |
| 577c0 | 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 76 61 6c 75 65 3b 0a 20 20 20 20 20 | alue|.{........._.=.value;...... |
| 577e0 | 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 |
| 57800 | 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 3d 22 74 | ble</span>;.....}.<span.class="t |
| 57820 | 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 | ok-kw">else</span>.|err|.{...... |
| 57840 | 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 |
| 57860 | 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 73 73 3d 22 74 6f | n>.expect(err.==.<span.class="to |
| 57880 | 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 29 3b 0a 20 20 | k-kw">error</span>.BadValue);... |
| 578a0 | 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 6d 6d 65 6e | ..}......<span.class="tok-commen |
| 578c0 | 74 22 3e 2f 2f 20 54 68 65 20 65 6c 73 65 20 61 6e 64 20 7c 65 72 72 7c 20 63 61 70 74 75 72 65 | t">//.The.else.and.|err|.capture |
| 578e0 | 20 69 73 20 73 74 72 69 63 74 6c 79 20 72 65 71 75 69 72 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 | .is.strictly.required.</span>... |
| 57900 | 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> |
| 57920 | 20 28 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 | .(a).|value|.{.........<span.cla |
| 57940 | 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 |
| 57960 | 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | lue.==.<span.class="tok-number"> |
| 57980 | 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | 0</span>);.....}.<span.class="to |
| 579a0 | 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 5f 7c 20 7b 7d 0a 0a 20 20 20 20 3c 73 | k-kw">else</span>.|_|.{}......<s |
| 579c0 | 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 6f 20 63 68 | pan.class="tok-comment">//.To.ch |
| 579e0 | 65 63 6b 20 6f 6e 6c 79 20 74 68 65 20 65 72 72 6f 72 20 76 61 6c 75 65 2c 20 75 73 65 20 61 6e | eck.only.the.error.value,.use.an |
| 57a00 | 20 65 6d 70 74 79 20 62 6c 6f 63 6b 20 65 78 70 72 65 73 73 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a | .empty.block.expression.</span>. |
| 57a20 | 20 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 |
| 57a40 | 6e 3e 20 28 62 29 20 7c 5f 7c 20 7b 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | n>.(b).|_|.{}.<span.class="tok-k |
| 57a60 | 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 3c | w">else</span>.|err|.{.........< |
| 57a80 | 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 |
| 57aa0 | 78 70 65 63 74 28 65 72 72 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | xpect(err.==.<span.class="tok-kw |
| 57ac0 | 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 42 61 64 56 61 6c 75 65 29 3b 0a 20 20 20 20 7d 0a | ">error</span>.BadValue);.....}. |
| 57ae0 | 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">/ |
| 57b00 | 2f 20 41 63 63 65 73 73 20 74 68 65 20 76 61 6c 75 65 20 62 79 20 72 65 66 65 72 65 6e 63 65 20 | /.Access.the.value.by.reference. |
| 57b20 | 75 73 69 6e 67 20 61 20 70 6f 69 6e 74 65 72 20 63 61 70 74 75 72 65 2e 3c 2f 73 70 61 6e 3e 0a | using.a.pointer.capture.</span>. |
| 57b40 | 20 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 |
| 57b60 | 61 6e 3e 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e | an>.c:.<span.class="tok-type">an |
| 57b80 | 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | yerror</span>!<span.class="tok-t |
| 57ba0 | 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 |
| 57bc0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ok-number">3</span>;.....<span.c |
| 57be0 | 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 2a 76 61 | lass="tok-kw">if</span>.(c).|*va |
| 57c00 | 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 76 61 6c 75 65 2e 2a 20 3d 20 3c 73 70 61 6e 20 63 | lue|.{.........value.*.=.<span.c |
| 57c20 | 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 3b 0a 20 20 20 20 | lass="tok-number">9</span>;..... |
| 57c40 | 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 |
| 57c60 | 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 |
| 57c80 | 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>;.....}. |
| 57ca0 | 0a 20 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 |
| 57cc0 | 61 6e 3e 20 28 63 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 | an>.(c).|value|.{.........<span. |
| 57ce0 | 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 |
| 57d00 | 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 |
| 57d20 | 72 22 3e 39 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 | r">9</span>);.....}.<span.class= |
| 57d40 | 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 20 20 20 | "tok-kw">else</span>.|_|.{...... |
| 57d60 | 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 |
| 57d80 | 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ble</span>;.....}.}</code></pre> |
| 57da0 | 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 |
| 57dc0 | 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 |
| 57de0 | 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 |
| 57e00 | 5f 69 66 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 33 20 74 65 73 74 5f 69 66 2e 74 65 73 74 2e 69 | _if.zig</kbd>.1/3.test_if.test.i |
| 57e20 | 66 20 65 78 70 72 65 73 73 69 6f 6e 2e 2e 2e 4f 4b 0a 32 2f 33 20 74 65 73 74 5f 69 66 2e 74 65 | f.expression...OK.2/3.test_if.te |
| 57e40 | 73 74 2e 69 66 20 62 6f 6f 6c 65 61 6e 2e 2e 2e 4f 4b 0a 33 2f 33 20 74 65 73 74 5f 69 66 2e 74 | st.if.boolean...OK.3/3.test_if.t |
| 57e60 | 65 73 74 2e 69 66 20 65 72 72 6f 72 20 75 6e 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 33 20 74 65 | est.if.error.union...OK.All.3.te |
| 57e80 | 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 |
| 57ea0 | 65 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 69 66 2d 77 69 74 68 2d 4f 70 74 69 6f 6e | e>........<h3.id="if-with-Option |
| 57ec0 | 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 66 2d 77 69 74 68 2d 4f 70 74 69 6f | als"><a.href="#toc-if-with-Optio |
| 57ee0 | 6e 61 6c 73 22 3e 69 66 20 77 69 74 68 20 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 | nals">if.with.Optionals</a>.<a.c |
| 57f00 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 69 66 2d 77 69 74 68 2d 4f 70 74 69 6f 6e | lass="hdr".href="#if-with-Option |
| 57f20 | 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 | als">..</a></h3>.........<figure |
| 57f40 | 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 |
| 57f60 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 69 66 5f 6f 70 74 69 6f 6e 61 6c | te.class="file">test_if_optional |
| 57f80 | 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 |
| 57fa0 | 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</ |
| 57fc0 | 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>.expect.=.<span.class="tok- |
| 57fe0 | 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 |
| 58000 | 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 |
| 58020 | 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | pan>).testing.expect;..<span.cla |
| 58040 | 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 |
| 58060 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 66 20 6f 70 74 69 6f 6e 61 6c 26 | ass="tok-str">"if.optional& |
| 58080 | 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=" |
| 580a0 | 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 74 | tok-comment">//.If.expressions.t |
| 580c0 | 65 73 74 20 66 6f 72 20 6e 75 6c 6c 2e 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | est.for.null.</span>......<span. |
| 580e0 | 63 6c 61 73 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 3f | class="tok-kw">const</span>.a:.? |
| 58100 | 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 |
| 58120 | 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f | >.=.<span.class="tok-number">0</ |
| 58140 | 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | span>;.....<span.class="tok-kw"> |
| 58160 | 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 20 | if</span>.(a).|value|.{......... |
| 58180 | 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>. |
| 581a0 | 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 6b | expect(value.==.<span.class="tok |
| 581c0 | 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 20 | -number">0</span>);.....}.<span. |
| 581e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | class="tok-kw">else</span>.{.... |
| 58200 | 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 63 | .....<span.class="tok-kw">unreac |
| 58220 | 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 63 | hable</span>;.....}......<span.c |
| 58240 | 6c 61 73 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 3f 3c | lass="tok-kw">const</span>.b:.?< |
| 58260 | 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> |
| 58280 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f | .=.<span.class="tok-null">null</ |
| 582a0 | 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | span>;.....<span.class="tok-kw"> |
| 582c0 | 69 66 3c 2f 73 70 61 6e 3e 20 28 62 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | if</span>.(b).|_|.{.........<spa |
| 582e0 | 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 |
| 58300 | 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 3e | an>;.....}.<span.class="tok-kw"> |
| 58320 | 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 73 | else</span>.{.........<span.clas |
| 58340 | 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 |
| 58360 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 | an.class="tok-null">true</span>) |
| 58380 | 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 |
| 583a0 | 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 65 6c 73 65 20 69 73 20 6e 6f 74 20 72 65 71 75 69 72 | mment">//.The.else.is.not.requir |
| 583c0 | 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 2d | ed.</span>.....<span.class="tok- |
| 583e0 | 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 | kw">if</span>.(a).|value|.{..... |
| 58400 | 20 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 |
| 58420 | 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= |
| 58440 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 0a 20 | "tok-number">0</span>);.....}... |
| 58460 | 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">//. |
| 58480 | 54 6f 20 74 65 73 74 20 61 67 61 69 6e 73 74 20 6e 75 6c 6c 20 6f 6e 6c 79 2c 20 75 73 65 20 74 | To.test.against.null.only,.use.t |
| 584a0 | 68 65 20 62 69 6e 61 72 79 20 65 71 75 61 6c 69 74 79 20 6f 70 65 72 61 74 6f 72 2e 3c 2f 73 70 | he.binary.equality.operator.</sp |
| 584c0 | 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 69 66 3c | an>.....<span.class="tok-kw">if< |
| 584e0 | 2f 73 70 61 6e 3e 20 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 | /span>.(b.==.<span.class="tok-nu |
| 58500 | 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | ll">null</span>).{.........<span |
| 58520 | 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 |
| 58540 | 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 75 65 3c 2f 73 | t(<span.class="tok-null">true</s |
| 58560 | 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 73 73 3d 22 74 | pan>);.....}......<span.class="t |
| 58580 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 63 63 65 73 73 20 74 68 65 20 76 61 6c 75 65 20 | ok-comment">//.Access.the.value. |
| 585a0 | 62 79 20 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 | by.reference.using.a.pointer.cap |
| 585c0 | 74 75 72 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 | ture.</span>.....<span.class="to |
| 585e0 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 | k-kw">var</span>.c:.?<span.class |
| 58600 | 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 |
| 58620 | 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>;..... |
| 58640 | 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>.( |
| 58660 | 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 20 3d 20 | c).|*value|.{.........value.*.=. |
| 58680 | 3c 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 |
| 586a0 | 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 6b | >;.....}......<span.class="tok-k |
| 586c0 | 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 20 | w">if</span>.(c).|value|.{...... |
| 586e0 | 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 |
| 58700 | 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 22 | n>.expect(value.==.<span.class=" |
| 58720 | 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 7d 20 3c 73 70 | tok-number">2</span>);.....}.<sp |
| 58740 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a | an.class="tok-kw">else</span>.{. |
| 58760 | 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 |
| 58780 | 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 | eachable</span>;.....}.}..<span. |
| 587a0 | 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 |
| 587c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 66 20 65 72 72 6f 72 20 | .class="tok-str">"if.error. |
| 587e0 | 75 6e 69 6f 6e 20 77 69 74 68 20 6f 70 74 69 6f 6e 61 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | union.with.optional"</span> |
| 58800 | 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" |
| 58820 | 3e 2f 2f 20 49 66 20 65 78 70 72 65 73 73 69 6f 6e 73 20 74 65 73 74 20 66 6f 72 20 65 72 72 6f | >//.If.expressions.test.for.erro |
| 58840 | 72 73 20 62 65 66 6f 72 65 20 75 6e 77 72 61 70 70 69 6e 67 20 6f 70 74 69 6f 6e 61 6c 73 2e 3c | rs.before.unwrapping.optionals.< |
| 58860 | 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 |
| 58880 | 65 6e 74 22 3e 2f 2f 20 54 68 65 20 7c 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 7c 20 63 61 70 | ent">//.The.|optional_value|.cap |
| 588a0 | 74 75 72 65 27 73 20 74 79 70 65 20 69 73 20 3f 75 33 32 2e 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 | ture's.type.is.?u32.</span>..... |
| 588c0 | 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 |
| 588e0 | 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 61 6e 79 | n>.a:.<span.class="tok-type">any |
| 58900 | 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | error</span>!?<span.class="tok-t |
| 58920 | 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 |
| 58940 | 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 |
| 58960 | 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 6f 70 74 | lass="tok-kw">if</span>.(a).|opt |
| 58980 | 69 6f 6e 61 6c 5f 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ional_value|.{.........<span.cla |
| 589a0 | 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 6f 70 | ss="tok-kw">try</span>.expect(op |
| 589c0 | 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | tional_value.?.==.<span.class="t |
| 589e0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 | ok-number">0</span>);.....}.<spa |
| 58a00 | 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 |
| 58a20 | 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 65 72 72 3b 0a 20 20 20 20 20 20 20 20 3c 73 | r|.{........._.=.err;.........<s |
| 58a40 | 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</ |
| 58a60 | 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | span>;.....}......<span.class="t |
| 58a80 | 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 6c 61 | ok-kw">const</span>.b:.<span.cla |
| 58aa0 | 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 3f 3c | ss="tok-type">anyerror</span>!?< |
| 58ac0 | 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> |
| 58ae0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f | .=.<span.class="tok-null">null</ |
| 58b00 | 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | span>;.....<span.class="tok-kw"> |
| 58b20 | 69 66 3c 2f 73 70 61 6e 3e 20 28 62 29 20 7c 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 7c 20 7b | if</span>.(b).|optional_value|.{ |
| 58b40 | 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 |
| 58b60 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 20 3d | y</span>.expect(optional_value.= |
| 58b80 | 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 |
| 58ba0 | 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 6b 77 | pan>);.....}.<span.class="tok-kw |
| 58bc0 | 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 73 70 61 | ">else</span>.|_|.{.........<spa |
| 58be0 | 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 |
| 58c00 | 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | an>;.....}......<span.class="tok |
| 58c20 | 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 63 6c 61 73 73 | -kw">const</span>.c:.<span.class |
| 58c40 | 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 3f 3c 73 70 | ="tok-type">anyerror</span>!?<sp |
| 58c60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d | an.class="tok-type">u32</span>.= |
| 58c80 | 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 |
| 58ca0 | 6e 3e 2e 42 61 64 56 61 6c 75 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n>.BadValue;.....<span.class="to |
| 58cc0 | 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7c 6f 70 74 69 6f 6e 61 6c 5f 76 61 | k-kw">if</span>.(c).|optional_va |
| 58ce0 | 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 | lue|.{........._.=.optional_valu |
| 58d00 | 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"> |
| 58d20 | 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 6e 20 | unreachable</span>;.....}.<span. |
| 58d40 | 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| |
| 58d60 | 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"> |
| 58d80 | 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 20 63 | try</span>.expect(err.==.<span.c |
| 58da0 | 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 56 61 | lass="tok-kw">error</span>.BadVa |
| 58dc0 | 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 74 6f | lue);.....}......<span.class="to |
| 58de0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 63 63 65 73 73 20 74 68 65 20 76 61 6c 75 65 20 62 | k-comment">//.Access.the.value.b |
| 58e00 | 79 20 72 65 66 65 72 65 6e 63 65 20 62 79 20 75 73 69 6e 67 20 61 20 70 6f 69 6e 74 65 72 20 63 | y.reference.by.using.a.pointer.c |
| 58e20 | 61 70 74 75 72 65 20 65 61 63 68 20 74 69 6d 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | apture.each.time.</span>.....<sp |
| 58e40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 64 3a 20 | an.class="tok-kw">var</span>.d:. |
| 58e60 | 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 3c | <span.class="tok-type">anyerror< |
| 58e80 | 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 75 | /span>!?<span.class="tok-type">u |
| 58ea0 | 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 |
| 58ec0 | 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 22 | ber">3</span>;.....<span.class=" |
| 58ee0 | 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 64 29 20 7c 2a 6f 70 74 69 6f 6e 61 6c | tok-kw">if</span>.(d).|*optional |
| 58f00 | 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 74 | _value|.{.........<span.class="t |
| 58f20 | 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 | ok-kw">if</span>.(optional_value |
| 58f40 | 2e 2a 29 20 7c 2a 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 6c 75 65 | .*).|*value|.{.............value |
| 58f60 | 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 72 22 3e 39 3c | .*.=.<span.class="tok-number">9< |
| 58f80 | 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c | /span>;.........}.....}.<span.cl |
| 58fa0 | 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 7b 0a 20 | ass="tok-kw">else</span>.|_|.{.. |
| 58fc0 | 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 65 | .......<span.class="tok-kw">unre |
| 58fe0 | 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 6e | achable</span>;.....}......<span |
| 59000 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 64 29 20 7c 6f | .class="tok-kw">if</span>.(d).|o |
| 59020 | 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ptional_value|.{.........<span.c |
| 59040 | 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( |
| 59060 | 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | optional_value.?.==.<span.class= |
| 59080 | 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 |
| 590a0 | 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>.| |
| 590c0 | 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 |
| 590e0 | 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 |
| 59100 | 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 |
| 59120 | 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</ |
| 59140 | 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 |
| 59160 | 20 74 65 73 74 20 74 65 73 74 5f 69 66 5f 6f 70 74 69 6f 6e 61 6c 73 2e 7a 69 67 3c 2f 6b 62 64 | .test.test_if_optionals.zig</kbd |
| 59180 | 3e 0a 31 2f 32 20 74 65 73 74 5f 69 66 5f 6f 70 74 69 6f 6e 61 6c 73 2e 74 65 73 74 2e 69 66 20 | >.1/2.test_if_optionals.test.if. |
| 591a0 | 6f 70 74 69 6f 6e 61 6c 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 69 66 5f 6f 70 74 69 6f 6e | optional...OK.2/2.test_if_option |
| 591c0 | 61 6c 73 2e 74 65 73 74 2e 69 66 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 77 69 74 68 20 6f 70 74 | als.test.if.error.union.with.opt |
| 591e0 | 69 6f 6e 61 6c 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 | ional...OK.All.2.tests.passed..< |
| 59200 | 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>........... |
| 59220 | 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. |
| 59240 | 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c | href="#Optionals">Optionals</a>< |
| 59260 | 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 | /li>.<li><a.href="#Errors">Error |
| 59280 | 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c | s</a></li>.</ul>...............< |
| 592a0 | 68 32 20 69 64 3d 22 64 65 66 65 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 64 65 66 65 | h2.id="defer"><a.href="#toc-defe |
| 592c0 | 72 22 3e 64 65 66 65 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | r">defer</a>.<a.class="hdr".href |
| 592e0 | 3d 22 23 64 65 66 65 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | ="#defer">..</a></h2>........<p> |
| 59300 | 45 78 65 63 75 74 65 73 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 75 6e 63 6f 6e 64 69 74 69 | Executes.an.expression.unconditi |
| 59320 | 6f 6e 61 6c 6c 79 20 61 74 20 73 63 6f 70 65 20 65 78 69 74 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 | onally.at.scope.exit.</p>....... |
| 59340 | 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 |
| 59360 | 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 64 65 66 65 | ap"><cite.class="file">test_defe |
| 59380 | 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 |
| 593a0 | 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</ |
| 593c0 | 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 |
| 593e0 | 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 |
| 59400 | 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 |
| 59420 | 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</ |
| 59440 | 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 |
| 59460 | 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 2f 73 | t;.<span.class="tok-kw">const</s |
| 59480 | 70 61 6e 3e 20 70 72 69 6e 74 20 3d 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c | pan>.print.=.std.debug.print;..< |
| 594a0 | 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 |
| 594c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 65 66 65 72 45 78 61 6d 70 6c 65 3c | pan.class="tok-fn">deferExample< |
| 594e0 | 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" |
| 59500 | 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >usize</span>.{.....<span.class= |
| 59520 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 | "tok-kw">var</span>.a:.<span.cla |
| 59540 | 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 70 | ss="tok-type">usize</span>.=.<sp |
| 59560 | 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>;. |
| 59580 | 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .....{.........<span.class="tok- |
| 595a0 | 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | kw">defer</span>.a.=.<span.class |
| 595c0 | 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 20 20 20 20 | ="tok-number">2</span>;......... |
| 595e0 | 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</ |
| 59600 | 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>;.....}.....<span.class="to |
| 59620 | 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 3d 20 3c 73 70 | k-kw">try</span>.expect(a.==.<sp |
| 59640 | 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>); |
| 59660 | 0a 0a 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 75 6d 62 65 | ......a.=.<span.class="tok-numbe |
| 59680 | 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 |
| 596a0 | 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | k-kw">return</span>.a;.}..<span. |
| 596c0 | 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 |
| 596e0 | 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 66 65 72 20 62 61 73 | .class="tok-str">"defer.bas |
| 59700 | 69 63 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 | ics"</span>.{.....<span.cla |
| 59720 | 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((< |
| 59740 | 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 64 | span.class="tok-kw">try</span>.d |
| 59760 | 65 66 65 72 45 78 61 6d 70 6c 65 28 29 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | eferExample()).==.<span.class="t |
| 59780 | 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></ |
| 597a0 | 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 |
| 597c0 | 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 |
| 597e0 | 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. |
| 59800 | 74 65 73 74 5f 64 65 66 65 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 64 65 | test_defer.zig</kbd>.1/1.test_de |
| 59820 | 66 65 72 2e 74 65 73 74 2e 64 65 66 65 72 20 62 61 73 69 63 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 | fer.test.defer.basics...OK.All.1 |
| 59840 | 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 |
| 59860 | 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 44 65 66 65 72 20 65 78 70 72 65 73 73 69 6f 6e | gure>........<p>Defer.expression |
| 59880 | 73 20 61 72 65 20 65 76 61 6c 75 61 74 65 64 20 69 6e 20 72 65 76 65 72 73 65 20 6f 72 64 65 72 | s.are.evaluated.in.reverse.order |
| 598a0 | 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. |
| 598c0 | 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 |
| 598e0 | 65 22 3e 64 65 66 65 72 5f 75 6e 77 69 6e 64 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 | e">defer_unwind.zig</cite></figc |
| 59900 | 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 |
| 59920 | 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. |
| 59940 | 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 |
| 59960 | 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 |
| 59980 | 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 |
| 599a0 | 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 |
| 599c0 | 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .testing.expect;.<span.class="to |
| 599e0 | 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 73 74 64 2e 64 | k-kw">const</span>.print.=.std.d |
| 59a00 | 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 6b 77 | ebug.print;..<span.class="tok-kw |
| 59a20 | 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 |
| 59a40 | 74 72 22 3e 26 71 75 6f 74 3b 64 65 66 65 72 20 75 6e 77 69 6e 64 69 6e 67 26 71 75 6f 74 3b 3c | tr">"defer.unwinding"< |
| 59a60 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>.{.....print(<span.class=" |
| 59a80 | 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 2c 20 | tok-str">"\n"</span>,. |
| 59aa0 | 2e 7b 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .{});......<span.class="tok-kw"> |
| 59ac0 | 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 | defer</span>.{.........print(<sp |
| 59ae0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 31 20 26 71 75 6f 74 | an.class="tok-str">"1." |
| 59b00 | 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 | ;</span>,..{});.....}.....<span. |
| 59b20 | 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 0a 20 20 | class="tok-kw">defer</span>.{... |
| 59b40 | 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 72 | ......print(<span.class="tok-str |
| 59b60 | 22 3e 26 71 75 6f 74 3b 32 20 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 | ">"2."</span>,..{});.. |
| 59b80 | 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 66 | ...}.....<span.class="tok-kw">if |
| 59ba0 | 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | </span>.(<span.class="tok-null"> |
| 59bc0 | 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | false</span>).{.........<span.cl |
| 59be0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 64 65 66 65 72 73 20 61 72 65 20 | ass="tok-comment">//.defers.are. |
| 59c00 | 6e 6f 74 20 72 75 6e 20 69 66 20 74 68 65 79 20 61 72 65 20 6e 65 76 65 72 20 65 78 65 63 75 74 | not.run.if.they.are.never.execut |
| 59c20 | 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 22 | ed.</span>.........<span.class=" |
| 59c40 | 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 20 20 | tok-kw">defer</span>.{.......... |
| 59c60 | 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">& |
| 59c80 | 71 75 6f 74 3b 33 20 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 | quot;3."</span>,..{});..... |
| 59ca0 | 20 20 20 20 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 | ....}.....}.}</code></pre></figu |
| 59cc0 | 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 |
| 59ce0 | 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> |
| 59d00 | 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 64 65 66 65 72 5f 75 6e 77 69 | <samp>$.<kbd>zig.test.defer_unwi |
| 59d20 | 6e 64 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 64 65 66 65 72 5f 75 6e 77 69 6e 64 2e 74 65 | nd.zig</kbd>.1/1.defer_unwind.te |
| 59d40 | 73 74 2e 64 65 66 65 72 20 75 6e 77 69 6e 64 69 6e 67 2e 2e 2e 0a 32 20 31 20 4f 4b 0a 41 6c 6c | st.defer.unwinding....2.1.OK.All |
| 59d60 | 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></ |
| 59d80 | 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 6e 73 69 64 65 20 61 20 64 65 66 65 72 | figure>........<p>Inside.a.defer |
| 59da0 | 20 65 78 70 72 65 73 73 69 6f 6e 20 74 68 65 20 72 65 74 75 72 6e 20 73 74 61 74 65 6d 65 6e 74 | .expression.the.return.statement |
| 59dc0 | 20 69 73 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 | .is.not.allowed.</p>.......<figu |
| 59de0 | 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">< |
| 59e00 | 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 76 61 6c 69 64 5f 64 | cite.class="file">test_invalid_d |
| 59e20 | 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 6f 6e 3e 3c 70 72 65 | efer.zig</cite></figcaption><pre |
| 59e40 | 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 66 6e 3c 2f | ><code><span.class="tok-kw">fn</ |
| 59e60 | 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 65 72 | span>.<span.class="tok-fn">defer |
| 59e80 | 49 6e 76 61 6c 69 64 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 | InvalidExample</span>().!<span.c |
| 59ea0 | 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>.{... |
| 59ec0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 | ..<span.class="tok-kw">defer</sp |
| 59ee0 | 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 6b | an>.{.........<span.class="tok-k |
| 59f00 | 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 |
| 59f20 | 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 72 6f 72 3b 0a 20 | k-kw">error</span>.DeferError;.. |
| 59f40 | 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 |
| 59f60 | 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 |
| 59f80 | 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 44 65 66 65 72 45 72 72 6f 72 3b 0a 7d 3c 2f 63 6f | ">error</span>.DeferError;.}</co |
| 59fa0 | 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 |
| 59fc0 | 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 |
| 59fe0 | 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. |
| 5a000 | 74 65 73 74 20 74 65 73 74 5f 69 6e 76 61 6c 69 64 5f 64 65 66 65 72 2e 7a 69 67 3c 2f 6b 62 64 | test.test_invalid_defer.zig</kbd |
| 5a020 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 | >.<span.class="sgr-1m">doc/langr |
| 5a040 | 65 66 2f 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 | ef/test_invalid_defer.zig:3:9:.< |
| 5a060 | 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 |
| 5a080 | 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 |
| 5a0a0 | 61 6e 6e 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 | annot.return.from.defer.expressi |
| 5a0c0 | 6f 6e 0a 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 | on.</span>........return.error.D |
| 5a0e0 | 65 66 65 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 | eferError;.........<span.class=" |
| 5a100 | 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 7e | sgr-32m">^~~~~~~~~~~~~~~~~~~~~~~ |
| 5a120 | 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 64 6f 63 | .</span><span.class="sgr-1m">doc |
| 5a140 | 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 69 6e 76 61 6c 69 64 5f 64 65 66 65 72 2e 7a 69 67 3a | /langref/test_invalid_defer.zig: |
| 5a160 | 32 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d | 2:5:.</span><span.class="sgr-36m |
| 5a180 | 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 2d | ">note:.</span><span.class="sgr- |
| 5a1a0 | 31 6d 22 3e 64 65 66 65 72 20 65 78 70 72 65 73 73 69 6f 6e 20 68 65 72 65 0a 3c 2f 73 70 61 6e | 1m">defer.expression.here.</span |
| 5a1c0 | 3e 20 20 20 20 64 65 66 65 72 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | >....defer.{.....<span.class="sg |
| 5a1e0 | 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 2f 70 72 | r-32m">^~~~~.</span>.</samp></pr |
| 5a200 | 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:< |
| 5a220 | 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 72 | /p><ul>.<li><a.href="#Errors">Er |
| 5a240 | 72 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 | rors</a></li>.</ul>............. |
| 5a260 | 20 20 3c 68 32 20 69 64 3d 22 75 6e 72 65 61 63 68 61 62 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 | ..<h2.id="unreachable"><a.href=" |
| 5a280 | 23 74 6f 63 2d 75 6e 72 65 61 63 68 61 62 6c 65 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 61 | #toc-unreachable">unreachable</a |
| 5a2a0 | 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 75 6e 72 65 61 63 68 61 | >.<a.class="hdr".href="#unreacha |
| 5a2c0 | 62 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | ble">..</a></h2>........<p>..... |
| 5a2e0 | 20 20 49 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 | ..In.<a.href="#Debug">Debug</a>. |
| 5a300 | 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 |
| 5a320 | 73 65 53 61 66 65 3c 2f 61 3e 20 6d 6f 64 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 | seSafe</a>.mode.......<code><spa |
| 5a340 | 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 |
| 5a360 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 6d 69 74 73 20 61 20 63 61 6c 6c 20 74 6f 20 3c 63 6f 64 65 | an></code>.emits.a.call.to.<code |
| 5a380 | 3e 70 61 6e 69 63 3c 2f 63 6f 64 65 3e 20 77 69 74 68 20 74 68 65 20 6d 65 73 73 61 67 65 20 3c | >panic</code>.with.the.message.< |
| 5a3a0 | 63 6f 64 65 3e 72 65 61 63 68 65 64 20 75 6e 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 3c 2f 63 | code>reached.unreachable.code</c |
| 5a3c0 | 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>...... |
| 5a3e0 | 20 49 6e 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e 52 65 6c 65 61 | .In.<a.href="#ReleaseFast">Relea |
| 5a400 | 73 65 46 61 73 74 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 | seFast</a>.and.<a.href="#Release |
| 5a420 | 53 6d 61 6c 6c 22 3e 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e 20 6d 6f 64 65 2c 20 74 68 | Small">ReleaseSmall</a>.mode,.th |
| 5a440 | 65 20 6f 70 74 69 6d 69 7a 65 72 20 75 73 65 73 20 74 68 65 20 61 73 73 75 6d 70 74 69 6f 6e 20 | e.optimizer.uses.the.assumption. |
| 5a460 | 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 77 22 3e | that.<code><span.class="tok-kw"> |
| 5a480 | 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 6f 64 65 0a 20 | unreachable</span></code>.code.. |
| 5a4a0 | 20 20 20 20 20 77 69 6c 6c 20 6e 65 76 65 72 20 62 65 20 68 69 74 20 74 6f 20 70 65 72 66 6f 72 | .....will.never.be.hit.to.perfor |
| 5a4c0 | 6d 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | m.optimizations........</p>..... |
| 5a4e0 | 20 20 3c 68 33 20 69 64 3d 22 42 61 73 69 63 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | ..<h3.id="Basics"><a.href="#toc- |
| 5a500 | 42 61 73 69 63 73 22 3e 42 61 73 69 63 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | Basics">Basics</a>.<a.class="hdr |
| 5a520 | 22 20 68 72 65 66 3d 22 23 42 61 73 69 63 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | ".href="#Basics">..</a></h3>.... |
| 5a540 | 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 |
| 5a560 | 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_ |
| 5a580 | 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 |
| 5a5a0 | 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 |
| 5a5c0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 75 6e 72 65 61 63 68 61 62 6c 65 20 69 73 20 75 73 65 64 20 74 | omment">//.unreachable.is.used.t |
| 5a5e0 | 6f 20 61 73 73 65 72 74 20 74 68 61 74 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 77 69 6c 6c 20 | o.assert.that.control.flow.will. |
| 5a600 | 6e 65 76 65 72 20 72 65 61 63 68 20 61 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | never.reach.a</span>.<span.class |
| 5a620 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 70 61 72 74 69 63 75 6c 61 72 20 6c 6f 63 | ="tok-comment">//.particular.loc |
| 5a640 | 61 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 | ation:</span>.<span.class="tok-k |
| 5a660 | 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- |
| 5a680 | 73 74 72 22 3e 26 71 75 6f 74 3b 62 61 73 69 63 20 6d 61 74 68 26 71 75 6f 74 3b 3c 2f 73 70 61 | str">"basic.math"</spa |
| 5a6a0 | 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 |
| 5a6c0 | 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 74 6f 6b 2d | nst</span>.x.=.<span.class="tok- |
| 5a6e0 | 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 |
| 5a700 | 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 3c 73 70 61 | s="tok-kw">const</span>.y.=.<spa |
| 5a720 | 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 20 | n.class="tok-number">2</span>;.. |
| 5a740 | 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 |
| 5a760 | 3e 20 28 78 20 2b 20 79 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | >.(x.+.y.!=.<span.class="tok-num |
| 5a780 | 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ber">3</span>).{.........<span.c |
| 5a7a0 | 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> |
| 5a7c0 | 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>< |
| 5a7e0 | 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- |
| 5a800 | 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 |
| 5a820 | 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 72 65 61 63 68 61 62 | p>$.<kbd>zig.test.test_unreachab |
| 5a840 | 6c 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 75 6e 72 65 61 63 68 61 62 6c | le.zig</kbd>.1/1.test_unreachabl |
| 5a860 | 65 2e 74 65 73 74 2e 62 61 73 69 63 20 6d 61 74 68 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 | e.test.basic.math...OK.All.1.tes |
| 5a880 | 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 |
| 5a8a0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 6e 20 66 61 63 74 2c 20 74 68 69 73 20 69 73 20 68 6f 77 | >........<p>In.fact,.this.is.how |
| 5a8c0 | 20 3c 63 6f 64 65 3e 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3c 2f 63 6f 64 65 3e 20 69 | .<code>std.debug.assert</code>.i |
| 5a8e0 | 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 | s.implemented:</p>.......<figure |
| 5a900 | 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 |
| 5a920 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 61 73 73 65 72 74 69 6f 6e 5f 66 | te.class="file">test_assertion_f |
| 5a940 | 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 74 69 6f 6e 3e 3c 70 | ailure.zig</cite></figcaption><p |
| 5a960 | 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 6e | re><code><span.class="tok-commen |
| 5a980 | 74 22 3e 2f 2f 20 54 68 69 73 20 69 73 20 68 6f 77 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 | t">//.This.is.how.std.debug.asse |
| 5a9a0 | 72 74 20 69 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | rt.is.implemented</span>.<span.c |
| 5a9c0 | 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 |
| 5a9e0 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 73 73 65 72 74 3c 2f 73 70 61 6e 3e 28 6f 6b 3a 20 3c | ass="tok-fn">assert</span>(ok:.< |
| 5aa00 | 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 |
| 5aa20 | 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f | >).<span.class="tok-type">void</ |
| 5aa40 | 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" |
| 5aa60 | 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 21 6f 6b 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >if</span>.(!ok).<span.class="to |
| 5aa80 | 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 20 3c 73 70 61 6e 20 | k-kw">unreachable</span>;.<span. |
| 5aaa0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 73 73 65 72 74 69 6f 6e | class="tok-comment">//.assertion |
| 5aac0 | 20 66 61 69 6c 75 72 65 3c 2f 73 70 61 6e 3e 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .failure</span>.}..<span.class=" |
| 5aae0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 74 65 73 74 20 77 69 6c 6c 20 66 | tok-comment">//.This.test.will.f |
| 5ab00 | 61 69 6c 20 62 65 63 61 75 73 65 20 77 65 20 68 69 74 20 75 6e 72 65 61 63 68 61 62 6c 65 2e 3c | ail.because.we.hit.unreachable.< |
| 5ab20 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | /span>.<span.class="tok-kw">test |
| 5ab40 | 3c 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 |
| 5ab60 | 75 6f 74 3b 74 68 69 73 20 77 69 6c 6c 20 66 61 69 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | uot;this.will.fail"</span>. |
| 5ab80 | 7b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | {.....assert(<span.class="tok-nu |
| 5aba0 | 6c 6c 22 3e 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 | ll">false</span>);.}</code></pre |
| 5abc0 | 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 |
| 5abe0 | 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 |
| 5ac00 | 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 |
| 5ac20 | 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 6b 62 64 3e 0a 31 2f | t_assertion_failure.zig</kbd>.1/ |
| 5ac40 | 31 20 74 65 73 74 5f 61 73 73 65 72 74 69 6f 6e 5f 66 61 69 6c 75 72 65 2e 74 65 73 74 2e 74 68 | 1.test_assertion_failure.test.th |
| 5ac60 | 69 73 20 77 69 6c 6c 20 66 61 69 6c 2e 2e 2e 74 68 72 65 61 64 20 33 35 37 31 35 39 39 20 70 61 | is.will.fail...thread.3571599.pa |
| 5ac80 | 6e 69 63 3a 20 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 73 | nic:.reached.unreachable.code.<s |
| 5aca0 | 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 73 72 | pan.class="sgr-1m">/home/andy/sr |
| 5acc0 | 63 2f 7a 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 | c/zig/doc/langref/test_assertion |
| 5ace0 | 5f 66 61 69 6c 75 72 65 2e 7a 69 67 3a 33 3a 31 34 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | _failure.zig:3:14</span>:.<span. |
| 5ad00 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 63 64 39 64 20 69 6e 20 61 73 73 65 | class="sgr-2m">0x103cd9d.in.asse |
| 5ad20 | 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 66 20 28 21 6f 6b 29 20 75 6e | rt.(test)</span>.....if.(!ok).un |
| 5ad40 | 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 72 65 0a | reachable;.//.assertion.failure. |
| 5ad60 | 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 |
| 5ad80 | 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" |
| 5ada0 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f | >/home/andy/src/zig/doc/langref/ |
| 5adc0 | 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 38 3a 31 31 3c | test_assertion_failure.zig:8:11< |
| 5ade0 | 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 |
| 5ae00 | 30 33 63 64 35 61 20 69 6e 20 74 65 73 74 2e 74 68 69 73 20 77 69 6c 6c 20 66 61 69 6c 20 28 74 | 03cd5a.in.test.this.will.fail.(t |
| 5ae20 | 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 66 61 6c 73 65 29 3b 0a 20 | est)</span>.....assert(false);.. |
| 5ae40 | 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">^ |
| 5ae60 | 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 |
| 5ae80 | 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 | me/andy/src/zig/lib/compiler/tes |
| 5aea0 | 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 31 35 37 3a 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | t_runner.zig:157:25</span>:.<spa |
| 5aec0 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 37 39 61 30 20 69 6e 20 6d 61 | n.class="sgr-2m">0x10479a0.in.ma |
| 5aee0 | 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>........ |
| 5af00 | 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()).|_|.{...... |
| 5af20 | 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=" |
| 5af40 | 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 |
| 5af60 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 63 6f | gr-1m">/home/andy/src/zig/lib/co |
| 5af80 | 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 33 37 3a 32 38 3c 2f 73 70 | mpiler/test_runner.zig:37:28</sp |
| 5afa0 | 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 33 64 | an>:.<span.class="sgr-2m">0x103d |
| 5afc0 | 62 62 62 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 | bbb.in.main.(test)</span>....... |
| 5afe0 | 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();........ |
| 5b000 | 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= |
| 5b020 | 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=" |
| 5b040 | 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 | sgr-1m">/home/andy/src/zig/lib/s |
| 5b060 | 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | td/start.zig:514:22</span>:.<spa |
| 5b080 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 64 32 34 39 20 69 6e 20 70 6f | n.class="sgr-2m">0x103d249.in.po |
| 5b0a0 | 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> |
| 5b0c0 | 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();....... |
| 5b0e0 | 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- |
| 5b100 | 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 |
| 5b120 | 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 | m">/home/andy/src/zig/lib/std/st |
| 5b140 | 61 72 74 2e 7a 69 67 3a 32 36 36 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | art.zig:266:5</span>:.<span.clas |
| 5b160 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 63 64 62 31 20 69 6e 20 5f 73 74 61 72 74 20 28 | s="sgr-2m">0x103cdb1.in._start.( |
| 5b180 | 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 |
| 5b1a0 | 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. |
| 5b1c0 | 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 |
| 5b1e0 | 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 3c 73 | lass="sgr-1m">???:?:?</span>:.<s |
| 5b200 | 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 28 3f | pan.class="sgr-2m">0x0.in.???.(? |
| 5b220 | 3f 3f 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 | ??)</span>.error:.the.following. |
| 5b240 | 74 65 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 | test.command.crashed:./home/andy |
| 5b260 | 2f 73 72 63 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 61 36 62 33 63 65 35 38 37 35 | /src/zig/.zig-cache/o/a6b3ce5875 |
| 5b280 | 61 39 65 32 38 35 63 31 35 37 33 39 62 32 61 31 62 33 30 37 33 33 2f 74 65 73 74 0a 3c 2f 73 61 | a9e285c15739b2a1b30733/test.</sa |
| 5b2a0 | 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>.............. |
| 5b2c0 | 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 65 | .<h3.id="At-Compile-Time"><a.hre |
| 5b2e0 | 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 70 | f="#toc-At-Compile-Time">At.Comp |
| 5b300 | 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 66 | ile-Time</a>.<a.class="hdr".href |
| 5b320 | 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 0a | ="#At-Compile-Time">..</a></h3>. |
| 5b340 | 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 |
| 5b360 | 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 |
| 5b380 | 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 74 | st_comptime_unreachable.zig</cit |
| 5b3a0 | 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. |
| 5b3c0 | 63 6c 61 73 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 | class="tok-kw">const</span>.asse |
| 5b3e0 | 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 40 | rt.=.<span.class="tok-builtin">@ |
| 5b400 | 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 |
| 5b420 | 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 |
| 5b440 | 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 3e | g.assert;..<span.class="tok-kw"> |
| 5b460 | 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 |
| 5b480 | 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 74 | ">"type.of.unreachable" |
| 5b4a0 | 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- |
| 5b4c0 | 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 73 | kw">comptime</span>.{.........<s |
| 5b4e0 | 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 74 | pan.class="tok-comment">//.The.t |
| 5b500 | 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 3c | ype.of.unreachable.is.noreturn.< |
| 5b520 | 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 6b | /span>..........<span.class="tok |
| 5b540 | 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 74 | -comment">//.However.this.assert |
| 5b560 | 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 62 | ion.will.still.fail.to.compile.b |
| 5b580 | 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 73 | ecause</span>.........<span.clas |
| 5b5a0 | 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 65 | s="tok-comment">//.unreachable.e |
| 5b5c0 | 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 2f | xpressions.are.compile.errors.</ |
| 5b5e0 | 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 73 | span>..........assert(<span.clas |
| 5b600 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c | s="tok-builtin">@TypeOf</span>(< |
| 5b620 | 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 3c | span.class="tok-kw">unreachable< |
| 5b640 | 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 65 | /span>).==.<span.class="tok-type |
| 5b660 | 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 64 | ">noreturn</span>);.....}.}</cod |
| 5b680 | 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 |
| 5b6a0 | 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 |
| 5b6c0 | 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 |
| 5b6e0 | 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 69 | est.test_comptime_unreachable.zi |
| 5b700 | 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 64 6f 63 | g</kbd>.<span.class="sgr-1m">doc |
| 5b720 | 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 75 6e 72 65 61 63 68 61 62 | /langref/test_comptime_unreachab |
| 5b740 | 6c 65 2e 7a 69 67 3a 31 30 3a 31 36 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | le.zig:10:16:.</span><span.class |
| 5b760 | 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 |
| 5b780 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 0a 3c | lass="sgr-1m">unreachable.code.< |
| 5b7a0 | 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 28 75 6e 72 | /span>........assert(@TypeOf(unr |
| 5b7c0 | 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 20 20 20 20 | eachable).==.noreturn);......... |
| 5b7e0 | 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 7e 7e | .......<span.class="sgr-32m">^~~ |
| 5b800 | 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 63 | ~~~~~~~~~~~~~~~~~.</span><span.c |
| 5b820 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 | lass="sgr-1m">doc/langref/test_c |
| 5b840 | 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 32 34 3a 20 3c | omptime_unreachable.zig:10:24:.< |
| 5b860 | 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 |
| 5b880 | 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 6f | :.</span><span.class="sgr-1m">co |
| 5b8a0 | 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 72 65 0a 3c 2f 73 70 | ntrol.flow.is.diverted.here.</sp |
| 5b8c0 | 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 28 75 6e 72 65 61 63 | an>........assert(@TypeOf(unreac |
| 5b8e0 | 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 20 20 20 20 20 20 20 | hable).==.noreturn);............ |
| 5b900 | 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 |
| 5b920 | 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 61 6d 70 3e 3c 2f 70 | ">^~~~~~~~~~~.</span>.</samp></p |
| 5b940 | 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: |
| 5b960 | 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 67 2d 54 65 73 74 22 | </p><ul>.<li><a.href="#Zig-Test" |
| 5b980 | 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 20 68 72 65 66 3d 22 | >Zig.Test</a></li>.<li><a.href=" |
| 5b9a0 | 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 3c 2f 6c 69 3e | #Build-Mode">Build.Mode</a></li> |
| 5b9c0 | 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d | .<li><a.href="#comptime">comptim |
| 5b9e0 | 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 20 20 20 20 20 20 0a | e</a></li>.</ul>................ |
| 5ba00 | 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 61 20 68 72 65 66 3d | ......<h2.id="noreturn"><a.href= |
| 5ba20 | 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 2f 61 3e 20 3c 61 20 | "#toc-noreturn">noreturn</a>.<a. |
| 5ba40 | 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 72 6e 22 3e c2 a7 3c | class="hdr".href="#noreturn">..< |
| 5ba60 | 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 63 6f 64 65 3e | /a></h2>........<p>.......<code> |
| 5ba80 | 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< |
| 5baa0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 74 68 65 20 74 79 70 65 20 6f 66 3a 0a 20 20 | /span></code>.is.the.type.of:... |
| 5bac0 | 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 |
| 5bae0 | 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 77 22 3e 62 72 65 | i><code><span.class="tok-kw">bre |
| 5bb00 | 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 20 20 20 20 20 20 20 | ak</span></code></li>........... |
| 5bb20 | 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 77 22 3e 63 | <li><code><span.class="tok-kw">c |
| 5bb40 | 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 3e 0a 20 20 20 20 20 | ontinue</span></code></li>...... |
| 5bb60 | 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- |
| 5bb80 | 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 | kw">return</span></code></li>... |
| 5bba0 | 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 |
| 5bbc0 | 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ok-kw">unreachable</span></code> |
| 5bbe0 | 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. |
| 5bc00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 | class="tok-kw">while</span>.(<sp |
| 5bc20 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 | an.class="tok-null">true</span>) |
| 5bc40 | 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 6c 3e 0a 20 20 20 20 | .{}</code></li>.......</ul>..... |
| 5bc60 | 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 20 74 6f 67 65 74 68 | ..<p>When.resolving.types.togeth |
| 5bc80 | 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 6c 61 73 73 3d 22 74 | er,.such.as.<code><span.class="t |
| 5bca0 | 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 6c 61 75 73 65 73 20 | ok-kw">if</span></code>.clauses. |
| 5bcc0 | 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 22 3e 73 77 | or.<code><span.class="tok-kw">sw |
| 5bce0 | 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 2c 0a 20 20 20 20 20 | itch</span></code>.prongs,...... |
| 5bd00 | 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 63 6c 61 73 73 3d 22 | .........the.<code><span.class=" |
| 5bd20 | 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | tok-type">noreturn</span></code> |
| 5bd40 | 20 74 79 70 65 20 69 73 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 65 76 65 72 79 20 6f | .type.is.compatible.with.every.o |
| 5bd60 | 74 68 65 72 20 74 79 70 65 2e 20 43 6f 6e 73 69 64 65 72 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | ther.type..Consider:.......</p>. |
| 5bd80 | 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= |
| 5bda0 | 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 |
| 5bdc0 | 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 67 63 61 70 74 69 6f | t_noreturn.zig</cite></figcaptio |
| 5bde0 | 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 |
| 5be00 | 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" |
| 5be20 | 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 70 61 6e 20 63 6c 61 | >foo</span>(condition:.<span.cla |
| 5be40 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 | ss="tok-type">bool</span>,.b:.<s |
| 5be60 | 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>) |
| 5be80 | 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 |
| 5bea0 | 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 |
| 5bec0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | onst</span>.a.=.<span.class="tok |
| 5bee0 | 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 6f 6e 64 69 74 69 6f 6e 29 20 62 20 3c 73 70 | -kw">if</span>.(condition).b.<sp |
| 5bf00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 | an.class="tok-kw">else</span>.<s |
| 5bf20 | 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> |
| 5bf40 | 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 61 73 73 3d 22 74 6f | ;....._.=.a;.....<span.class="to |
| 5bf60 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | k-builtin">@panic</span>(<span.c |
| 5bf80 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 6f 20 73 6f 6d 65 74 68 69 6e | lass="tok-str">"do.somethin |
| 5bfa0 | 67 20 77 69 74 68 20 61 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 6e 20 | g.with.a"</span>);.}.<span. |
| 5bfc0 | 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 |
| 5bfe0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 6f 72 65 74 75 72 6e 26 | .class="tok-str">"noreturn& |
| 5c000 | 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 6c 61 | quot;</span>.{.....foo(<span.cla |
| 5c020 | 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 |
| 5c040 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a | n.class="tok-number">1</span>);. |
| 5c060 | 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>< |
| 5c080 | 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 |
| 5c0a0 | 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 |
| 5c0c0 | 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 69 67 3c 2f 6b 62 64 | >zig.test.test_noreturn.zig</kbd |
| 5c0e0 | 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 6e 6f 72 65 74 75 72 | >.1/1.test_noreturn.test.noretur |
| 5c100 | 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 73 61 6d | n...OK.All.1.tests.passed..</sam |
| 5c120 | 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 6e 6f 74 | p></pre></figure>........<p>Anot |
| 5c140 | 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 70 61 6e 20 63 6c 61 | her.use.case.for.<code><span.cla |
| 5c160 | 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 2f 63 | ss="tok-type">noreturn</span></c |
| 5c180 | 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 6f 64 65 3e 20 66 75 | ode>.is.the.<code>exit</code>.fu |
| 5c1a0 | 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 3e 3c 66 69 67 63 61 | nction:</p>.......<figure><figca |
| 5c1c0 | 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 |
| 5c1e0 | 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 6f 6d 5f 65 78 69 74 | s="file">test_noreturn_from_exit |
| 5c200 | 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 |
| 5c220 | 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 |
| 5c240 | 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 |
| 5c260 | 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= |
| 5c280 | 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> |
| 5c2a0 | 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 |
| 5c2c0 | 70 61 6e 3e 20 62 75 69 6c 74 69 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>.builtin.=.<span.class="tok- |
| 5c2e0 | 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 |
| 5c300 | 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" |
| 5c320 | 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"> |
| 5c340 | 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 3d 20 62 75 69 6c 74 | const</span>.native_arch.=.built |
| 5c360 | 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 22 74 6f 6b 2d 6b 77 | in.cpu.arch;.<span.class="tok-kw |
| 5c380 | 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 |
| 5c3a0 | 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 |
| 5c3c0 | 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 64 2e 62 75 69 6c 74 | ">const</span>.WINAPI:.std.built |
| 5c3e0 | 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 70 61 6e 20 63 6c 61 | in.CallingConvention.=.<span.cla |
| 5c400 | 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 74 69 76 65 5f 61 72 | ss="tok-kw">if</span>.(native_ar |
| 5c420 | 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 6e 20 63 6c 61 73 73 | ch.==..x86)..Stdcall.<span.class |
| 5c440 | 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 0a 3c 73 70 61 6e 20 | ="tok-kw">else</span>..C;.<span. |
| 5c460 | 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 |
| 5c480 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6b 65 72 6e 65 6c 33 | an.class="tok-str">"kernel3 |
| 5c4a0 | 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 73 3d 22 74 6f 6b 2d | 2"</span>.<span.class="tok- |
| 5c4c0 | 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 |
| 5c4e0 | 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 74 5f 63 6f 64 65 3a | n">ExitProcess</span>(exit_code: |
| 5c500 | 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 75 69 6e 74 3c 2f | .<span.class="tok-type">c_uint</ |
| 5c520 | 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 6c 6c | span>).<span.class="tok-kw">call |
| 5c540 | 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 20 63 6c 61 73 73 3d | conv</span>(WINAPI).<span.class= |
| 5c560 | 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 73 70 | "tok-type">noreturn</span>;..<sp |
| 5c580 | 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 |
| 5c5a0 | 70 61 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 | pan.class="tok-str">"foo&qu |
| 5c5c0 | 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 |
| 5c5e0 | 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 3d 20 62 61 72 28 29 | k-kw">const</span>.value.=.bar() |
| 5c600 | 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 70 61 | .<span.class="tok-kw">catch</spa |
| 5c620 | 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 73 3d 22 74 6f 6b 2d | n>.ExitProcess(<span.class="tok- |
| 5c640 | 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 61 | number">1</span>);.....<span.cla |
| 5c660 | 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 |
| 5c680 | 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | lue.==.<span.class="tok-number"> |
| 5c6a0 | 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 61 73 73 3d 22 74 6f | 1234</span>);.}..<span.class="to |
| 5c6c0 | 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 |
| 5c6e0 | 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 6c 61 73 73 3d 22 74 | -fn">bar</span>().<span.class="t |
| 5c700 | 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 | ok-type">anyerror</span>!<span.c |
| 5c720 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | lass="tok-type">u32</span>.{.... |
| 5c740 | 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 |
| 5c760 | 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 33 | an>.<span.class="tok-number">123 |
| 5c780 | 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 65 | 4</span>;.}</code></pre></figure |
| 5c7a0 | 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 |
| 5c7c0 | 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 |
| 5c7e0 | 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 6f 72 65 74 75 72 | amp>$.<kbd>zig.test.test_noretur |
| 5c800 | 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 38 36 5f 36 34 2d 77 | n_from_exit.zig.-target.x86_64-w |
| 5c820 | 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 64 3e 0a 3c 2f 73 61 | indows.--test-no-exec</kbd>.</sa |
| 5c840 | 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>.............. |
| 5c860 | 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 72 65 66 3d 22 23 74 | ..<h2.id="Functions"><a.href="#t |
| 5c880 | 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 61 3e 20 3c 61 20 63 | oc-Functions">Functions</a>.<a.c |
| 5c8a0 | 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 6e 73 22 3e c2 a7 3c | lass="hdr".href="#Functions">..< |
| 5c8c0 | 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 69 67 63 61 70 74 | /a></h2>........<figure><figcapt |
| 5c8e0 | 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= |
| 5c900 | 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 3c 2f 63 69 74 65 3e | "file">test_functions.zig</cite> |
| 5c920 | 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 |
| 5c940 | 61 73 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.=. |
| 5c960 | 3c 73 70 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 |
| 5c980 | 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">& |
| 5c9a0 | 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 |
| 5c9c0 | 61 73 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 69 | ass="tok-kw">const</span>.builti |
| 5c9e0 | 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 69 | n.=.<span.class="tok-builtin">@i |
| 5ca00 | 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 |
| 5ca20 | 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 0a | r">"builtin"</span>);. |
| 5ca40 | 3c 73 70 61 6e 20 63 6c 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 |
| 5ca60 | 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 70 75 2e 61 72 63 68 | >.native_arch.=.builtin.cpu.arch |
| 5ca80 | 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 |
| 5caa0 | 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; |
| 5cac0 | 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 46 | ..<span.class="tok-comment">//.F |
| 5cae0 | 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 65 20 74 68 69 73 3c | unctions.are.declared.like.this< |
| 5cb00 | 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 3c 2f | /span>.<span.class="tok-kw">fn</ |
| 5cb20 | 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 64 64 3c 2f | span>.<span.class="tok-fn">add</ |
| 5cb40 | 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>(a:.<span.class="tok-type"> |
| 5cb60 | 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 74 6f 6b 2d 74 | i8</span>,.b:.<span.class="tok-t |
| 5cb80 | 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 3d 22 74 6f 6b | ype">i8</span>).<span.class="tok |
| 5cba0 | 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 6e 20 63 6c 61 | -type">i8</span>.{.....<span.cla |
| 5cbc0 | 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 |
| 5cbe0 | 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 20 7b | n.class="tok-number">0</span>).{ |
| 5cc00 | 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 | .........<span.class="tok-kw">re |
| 5cc20 | 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 20 3c 73 70 61 6e 20 | turn</span>.b;.....}......<span. |
| 5cc40 | 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 20 2b | class="tok-kw">return</span>.a.+ |
| 5cc60 | 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 74 22 | .b;.}..<span.class="tok-comment" |
| 5cc80 | 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 6d 61 6b 65 73 20 61 | >//.The.export.specifier.makes.a |
| 5cca0 | 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 62 6c 65 20 69 6e 20 | .function.externally.visible.in. |
| 5ccc0 | 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 6e 20 63 6c 61 73 73 | the.generated</span>.<span.class |
| 5cce0 | 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 66 69 6c 65 2c 20 61 | ="tok-comment">//.object.file,.a |
| 5cd00 | 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 2e 3c 2f 73 70 61 6e | nd.makes.it.use.the.C.ABI.</span |
| 5cd20 | 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 70 6f 72 74 3c 2f 73 | >.<span.class="tok-kw">export</s |
| 5cd40 | 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 |
| 5cd60 | 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 75 62 3c 2f 73 70 | an>.<span.class="tok-fn">sub</sp |
| 5cd80 | 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 38 | an>(a:.<span.class="tok-type">i8 |
| 5cda0 | 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | </span>,.b:.<span.class="tok-typ |
| 5cdc0 | 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 3d 22 74 6f 6b 2d 74 | e">i8</span>).<span.class="tok-t |
| 5cde0 | 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 6e 20 63 6c 61 73 73 | ype">i8</span>.{.....<span.class |
| 5ce00 | 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 2d 20 62 3b 0a 7d | ="tok-kw">return</span>.a.-.b;.} |
| 5ce20 | 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 54 | ..<span.class="tok-comment">//.T |
| 5ce40 | 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 65 64 20 74 6f 20 64 | he.extern.specifier.is.used.to.d |
| 5ce60 | 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 6c 6c 20 62 65 20 72 | eclare.a.function.that.will.be.r |
| 5ce80 | 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 73 3d 22 74 6f 6b 2d | esolved</span>.<span.class="tok- |
| 5cea0 | 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 20 77 68 65 6e 20 6c | comment">//.at.link.time,.when.l |
| 5cec0 | 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 72 75 6e 74 69 6d 65 | inking.statically,.or.at.runtime |
| 5cee0 | 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 61 6e 20 63 6c 61 73 | ,.when.linking</span>.<span.clas |
| 5cf00 | 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 63 61 6c 6c 79 2e 20 | s="tok-comment">//.dynamically.. |
| 5cf20 | 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 65 72 20 74 68 65 20 | The.quoted.identifier.after.the. |
| 5cf40 | 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 2f 73 70 61 6e 3e 0a | extern.keyword.specifies</span>. |
| 5cf60 | 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 65 | <span.class="tok-comment">//.the |
| 5cf80 | 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 63 74 69 6f 6e 2e 20 | .library.that.has.the.function.. |
| 5cfa0 | 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 20 6c 69 62 63 2e 73 | (e.g.."c".->.libc.s |
| 5cfc0 | 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 6b 2d 63 6f 6d 6d 65 | o)</span>.<span.class="tok-comme |
| 5cfe0 | 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 66 69 65 72 20 63 68 | nt">//.The.callconv.specifier.ch |
| 5d000 | 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 69 6f 6e 20 6f 66 20 | anges.the.calling.convention.of. |
| 5d020 | 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 6e 20 63 6c 61 73 73 | the.function.</span>.<span.class |
| 5d040 | 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 4e 41 50 49 3a 20 73 | ="tok-kw">const</span>.WINAPI:.s |
| 5d060 | 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 69 6f 6e 20 3d 20 3c | td.builtin.CallingConvention.=.< |
| 5d080 | 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 6e | span.class="tok-kw">if</span>.(n |
| 5d0a0 | 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 61 6c 6c 20 3c 73 70 | ative_arch.==..x86)..Stdcall.<sp |
| 5d0c0 | 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 2e 43 | an.class="tok-kw">else</span>..C |
| 5d0e0 | 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 65 72 6e 3c 2f 73 | ;.<span.class="tok-kw">extern</s |
| 5d100 | 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">" |
| 5d120 | 3b 6b 65 72 6e 65 6c 33 32 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ;kernel32"</span>.<span.cla |
| 5d140 | 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 |
| 5d160 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 45 78 69 74 50 72 6f 63 65 73 73 3c 2f 73 70 61 6e 3e 28 65 78 | s="tok-fn">ExitProcess</span>(ex |
| 5d180 | 69 74 5f 63 6f 64 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | it_code:.<span.class="tok-type"> |
| 5d1a0 | 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 6b 77 22 | u32</span>).<span.class="tok-kw" |
| 5d1c0 | 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 20 63 | >callconv</span>(WINAPI).<span.c |
| 5d1e0 | 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 3b | lass="tok-type">noreturn</span>; |
| 5d200 | 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 |
| 5d220 | 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">" |
| 5d240 | 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 2d | c"</span>.<span.class="tok- |
| 5d260 | 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 |
| 5d280 | 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 63 6c 61 73 73 3d 22 | n">atan2</span>(a:.<span.class=" |
| 5d2a0 | 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 3c 73 70 61 6e 20 63 | tok-type">f64</span>,.b:.<span.c |
| 5d2c0 | 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 70 61 | lass="tok-type">f64</span>).<spa |
| 5d2e0 | 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 0a 0a | n.class="tok-type">f64</span>;.. |
| 5d300 | 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 |
| 5d320 | 20 40 73 65 74 43 6f 6c 64 20 62 75 69 6c 74 69 6e 20 74 65 6c 6c 73 20 74 68 65 20 6f 70 74 69 | .@setCold.builtin.tells.the.opti |
| 5d340 | 6d 69 7a 65 72 20 74 68 61 74 20 61 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 72 61 72 65 6c 79 20 | mizer.that.a.function.is.rarely. |
| 5d360 | 63 61 6c 6c 65 64 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | called.</span>.<span.class="tok- |
| 5d380 | 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 |
| 5d3a0 | 6e 22 3e 61 62 6f 72 74 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n">abort</span>().<span.class="t |
| 5d3c0 | 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 3c | ok-type">noreturn</span>.{.....< |
| 5d3e0 | 73 70 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 43 6f 6c | span.class="tok-builtin">@setCol |
| 5d400 | 64 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | d</span>(<span.class="tok-null"> |
| 5d420 | 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 3d 22 74 | true</span>);.....<span.class="t |
| 5d440 | 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 73 73 | ok-kw">while</span>.(<span.class |
| 5d460 | 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 0a 7d 0a 0a 3c | ="tok-null">true</span>).{}.}..< |
| 5d480 | 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. |
| 5d4a0 | 6e 61 6b 65 64 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 6d 61 6b 65 73 20 61 | naked.calling.convention.makes.a |
| 5d4c0 | 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 74 20 68 61 76 65 20 61 6e 79 20 66 75 6e 63 74 69 6f 6e 20 | .function.not.have.any.function. |
| 5d4e0 | 70 72 6f 6c 6f 67 75 65 20 6f 72 20 65 70 69 6c 6f 67 75 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | prologue.or.epilogue.</span>.<sp |
| 5d500 | 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 63 | an.class="tok-comment">//.This.c |
| 5d520 | 61 6e 20 62 65 20 75 73 65 66 75 6c 20 77 68 65 6e 20 69 6e 74 65 67 72 61 74 69 6e 67 20 77 69 | an.be.useful.when.integrating.wi |
| 5d540 | 74 68 20 61 73 73 65 6d 62 6c 79 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | th.assembly.</span>.<span.class= |
| 5d560 | 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=" |
| 5d580 | 74 6f 6b 2d 66 6e 22 3e 5f 73 74 61 72 74 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c | tok-fn">_start</span>().<span.cl |
| 5d5a0 | 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 4e 61 | ass="tok-kw">callconv</span>(.Na |
| 5d5c0 | 6b 65 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 6e 6f 72 65 | ked).<span.class="tok-type">nore |
| 5d5e0 | 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 62 6f 72 74 28 29 3b 0a 7d 0a 0a 3c 73 | turn</span>.{.....abort();.}..<s |
| 5d600 | 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 69 | pan.class="tok-comment">//.The.i |
| 5d620 | 6e 6c 69 6e 65 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 66 6f 72 63 65 73 20 | nline.calling.convention.forces. |
| 5d640 | 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. |
| 5d660 | 63 61 6c 6c 20 73 69 74 65 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | call.sites.</span>.<span.class=" |
| 5d680 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 | tok-comment">//.If.the.function. |
| 5d6a0 | 63 61 6e 6e 6f 74 20 62 65 20 69 6e 6c 69 6e 65 64 2c 20 69 74 20 69 73 20 61 20 63 6f 6d 70 69 | cannot.be.inlined,.it.is.a.compi |
| 5d6c0 | 6c 65 2d 74 69 6d 65 20 65 72 72 6f 72 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | le-time.error.</span>.<span.clas |
| 5d6e0 | 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 63 | s="tok-kw">inline</span>.<span.c |
| 5d700 | 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 |
| 5d720 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 68 69 66 74 4c 65 66 74 4f 6e 65 3c 2f 73 70 61 6e 3e | ass="tok-fn">shiftLeftOne</span> |
| 5d740 | 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 75 33 32 3c 2f | (a:.<span.class="tok-type">u32</ |
| 5d760 | 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 |
| 5d780 | 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- |
| 5d7a0 | 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 26 6c 74 3b 26 6c 74 3b 20 3c 73 70 | kw">return</span>.a.<<.<sp |
| 5d7c0 | 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>;. |
| 5d7e0 | 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">//. |
| 5d800 | 54 68 65 20 70 75 62 20 73 70 65 63 69 66 69 65 72 20 61 6c 6c 6f 77 73 20 74 68 65 20 66 75 6e | The.pub.specifier.allows.the.fun |
| 5d820 | 63 74 69 6f 6e 20 74 6f 20 62 65 20 76 69 73 69 62 6c 65 20 77 68 65 6e 20 69 6d 70 6f 72 74 69 | ction.to.be.visible.when.importi |
| 5d840 | 6e 67 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | ng.</span>.<span.class="tok-comm |
| 5d860 | 65 6e 74 22 3e 2f 2f 20 41 6e 6f 74 68 65 72 20 66 69 6c 65 20 63 61 6e 20 75 73 65 20 40 69 6d | ent">//.Another.file.can.use.@im |
| 5d880 | 70 6f 72 74 20 61 6e 64 20 63 61 6c 6c 20 73 75 62 32 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | port.and.call.sub2</span>.<span. |
| 5d8a0 | 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. |
| 5d8c0 | 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 |
| 5d8e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 75 62 32 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 | lass="tok-fn">sub2</span>(a:.<sp |
| 5d900 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 20 62 | an.class="tok-type">i8</span>,.b |
| 5d920 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 | :.<span.class="tok-type">i8</spa |
| 5d940 | 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 | n>).<span.class="tok-type">i8</s |
| 5d960 | 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"> |
| 5d980 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2d 20 62 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | return</span>.a.-.b;.}..<span.cl |
| 5d9a0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 75 6e 63 74 69 6f 6e 20 70 6f | ass="tok-comment">//.Function.po |
| 5d9c0 | 69 6e 74 65 72 73 20 61 72 65 20 70 72 65 66 69 78 65 64 20 77 69 74 68 20 60 2a 63 6f 6e 73 74 | inters.are.prefixed.with.`*const |
| 5d9e0 | 20 60 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .`.</span>.<span.class="tok-kw"> |
| 5da00 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 61 6c 6c 32 4f 70 20 3d 20 2a 3c 73 70 61 6e 20 63 6c | const</span>.Call2Op.=.*<span.cl |
| 5da20 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ass="tok-kw">const</span>.<span. |
| 5da40 | 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 61 3a 20 3c 73 70 | class="tok-kw">fn</span>.(a:.<sp |
| 5da60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 20 62 | an.class="tok-type">i8</span>,.b |
| 5da80 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 | :.<span.class="tok-type">i8</spa |
| 5daa0 | 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 | n>).<span.class="tok-type">i8</s |
| 5dac0 | 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 73 | pan>;.<span.class="tok-kw">fn</s |
| 5dae0 | 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 4f 70 3c 2f | pan>.<span.class="tok-fn">doOp</ |
| 5db00 | 73 70 61 6e 3e 28 66 6e 43 61 6c 6c 3a 20 43 61 6c 6c 32 4f 70 2c 20 6f 70 31 3a 20 3c 73 70 61 | span>(fnCall:.Call2Op,.op1:.<spa |
| 5db20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 20 6f 70 | n.class="tok-type">i8</span>,.op |
| 5db40 | 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 38 3c 2f 73 70 | 2:.<span.class="tok-type">i8</sp |
| 5db60 | 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f | an>).<span.class="tok-type">i8</ |
| 5db80 | 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" |
| 5dba0 | 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 66 6e 43 61 6c 6c 28 6f 70 31 2c 20 6f 70 32 29 3b | >return</span>.fnCall(op1,.op2); |
| 5dbc0 | 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 |
| 5dbe0 | 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">" |
| 5dc00 | 3b 66 75 6e 63 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | ;function"</span>.{.....<sp |
| 5dc20 | 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 |
| 5dc40 | 65 63 74 28 64 6f 4f 70 28 61 64 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ect(doOp(add,.<span.class="tok-n |
| 5dc60 | 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 74 6f | umber">5</span>,.<span.class="to |
| 5dc80 | 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | k-number">6</span>).==.<span.cla |
| 5dca0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | ss="tok-number">11</span>);..... |
| 5dcc0 | 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>. |
| 5dce0 | 65 78 70 65 63 74 28 64 6f 4f 70 28 73 75 62 32 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | expect(doOp(sub2,.<span.class="t |
| 5dd00 | 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 |
| 5dd20 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 2d 3c 73 70 61 | ="tok-number">6</span>).==.-<spa |
| 5dd40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a | n.class="tok-number">1</span>);. |
| 5dd60 | 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>< |
| 5dd80 | 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 |
| 5dda0 | 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 |
| 5ddc0 | 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 66 75 6e 63 74 69 6f 6e 73 2e 7a 69 67 3c 2f 6b 62 | >zig.test.test_functions.zig</kb |
| 5dde0 | 64 3e 0a 31 2f 31 20 74 65 73 74 5f 66 75 6e 63 74 69 6f 6e 73 2e 74 65 73 74 2e 66 75 6e 63 74 | d>.1/1.test_functions.test.funct |
| 5de00 | 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 73 | ion...OK.All.1.tests.passed..</s |
| 5de20 | 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 54 68 | amp></pre></figure>........<p>Th |
| 5de40 | 65 72 65 20 69 73 20 61 20 64 69 66 66 65 72 65 6e 63 65 20 62 65 74 77 65 65 6e 20 61 20 66 75 | ere.is.a.difference.between.a.fu |
| 5de60 | 6e 63 74 69 6f 6e 20 3c 65 6d 3e 62 6f 64 79 3c 2f 65 6d 3e 20 61 6e 64 20 61 20 66 75 6e 63 74 | nction.<em>body</em>.and.a.funct |
| 5de80 | 69 6f 6e 20 3c 65 6d 3e 70 6f 69 6e 74 65 72 3c 2f 65 6d 3e 2e 0a 20 20 20 20 20 20 46 75 6e 63 | ion.<em>pointer</em>........Func |
| 5dea0 | 74 69 6f 6e 20 62 6f 64 69 65 73 20 61 72 65 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 | tion.bodies.are.<a.href="#compti |
| 5dec0 | 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2d 6f 6e 6c 79 20 74 79 70 65 73 20 77 68 69 6c | me">comptime</a>-only.types.whil |
| 5dee0 | 65 20 66 75 6e 63 74 69 6f 6e 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 | e.function.<a.href="#Pointers">P |
| 5df00 | 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 6d 61 79 20 62 65 0a 20 20 20 20 20 20 72 75 6e 74 69 6d 65 | ointers</a>.may.be.......runtime |
| 5df20 | 2d 6b 6e 6f 77 6e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 50 61 73 73 2d 62 | -known.</p>.......<h3.id="Pass-b |
| 5df40 | 79 2d 76 61 6c 75 65 2d 50 61 72 61 6d 65 74 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | y-value-Parameters"><a.href="#to |
| 5df60 | 63 2d 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 2d 50 61 72 61 6d 65 74 65 72 73 22 3e 50 61 73 73 | c-Pass-by-value-Parameters">Pass |
| 5df80 | 2d 62 79 2d 76 61 6c 75 65 20 50 61 72 61 6d 65 74 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | -by-value.Parameters</a>.<a.clas |
| 5dfa0 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 2d 50 61 72 | s="hdr".href="#Pass-by-value-Par |
| 5dfc0 | 61 6d 65 74 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | ameters">..</a></h3>........<p>. |
| 5dfe0 | 20 20 20 20 20 20 50 72 69 6d 69 74 69 76 65 20 74 79 70 65 73 20 73 75 63 68 20 61 73 20 3c 61 | ......Primitive.types.such.as.<a |
| 5e000 | 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 20 61 | .href="#Integers">Integers</a>.a |
| 5e020 | 6e 64 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 | nd.<a.href="#Floats">Floats</a>. |
| 5e040 | 70 61 73 73 65 64 20 61 73 20 70 61 72 61 6d 65 74 65 72 73 0a 20 20 20 20 20 20 61 72 65 20 63 | passed.as.parameters.......are.c |
| 5e060 | 6f 70 69 65 64 2c 20 61 6e 64 20 74 68 65 6e 20 74 68 65 20 63 6f 70 79 20 69 73 20 61 76 61 69 | opied,.and.then.the.copy.is.avai |
| 5e080 | 6c 61 62 6c 65 20 69 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 62 6f 64 79 2e 20 54 68 69 73 | lable.in.the.function.body..This |
| 5e0a0 | 20 69 73 20 63 61 6c 6c 65 64 20 22 70 61 73 73 69 6e 67 20 62 79 20 76 61 6c 75 65 22 2e 0a 20 | .is.called."passing.by.value"... |
| 5e0c0 | 20 20 20 20 20 43 6f 70 79 69 6e 67 20 61 20 70 72 69 6d 69 74 69 76 65 20 74 79 70 65 20 69 73 | .....Copying.a.primitive.type.is |
| 5e0e0 | 20 65 73 73 65 6e 74 69 61 6c 6c 79 20 66 72 65 65 20 61 6e 64 20 74 79 70 69 63 61 6c 6c 79 20 | .essentially.free.and.typically. |
| 5e100 | 69 6e 76 6f 6c 76 65 73 20 6e 6f 74 68 69 6e 67 20 6d 6f 72 65 20 74 68 61 6e 0a 20 20 20 20 20 | involves.nothing.more.than...... |
| 5e120 | 20 73 65 74 74 69 6e 67 20 61 20 72 65 67 69 73 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | .setting.a.register........</p>. |
| 5e140 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 74 72 75 63 74 73 2c 20 75 6e 69 6f 6e 73 2c | ......<p>.......Structs,.unions, |
| 5e160 | 20 61 6e 64 20 61 72 72 61 79 73 20 63 61 6e 20 73 6f 6d 65 74 69 6d 65 73 20 62 65 20 6d 6f 72 | .and.arrays.can.sometimes.be.mor |
| 5e180 | 65 20 65 66 66 69 63 69 65 6e 74 6c 79 20 70 61 73 73 65 64 20 61 73 20 61 20 72 65 66 65 72 65 | e.efficiently.passed.as.a.refere |
| 5e1a0 | 6e 63 65 2c 20 73 69 6e 63 65 20 61 20 63 6f 70 79 0a 20 20 20 20 20 20 63 6f 75 6c 64 20 62 65 | nce,.since.a.copy.......could.be |
| 5e1c0 | 20 61 72 62 69 74 72 61 72 69 6c 79 20 65 78 70 65 6e 73 69 76 65 20 64 65 70 65 6e 64 69 6e 67 | .arbitrarily.expensive.depending |
| 5e1e0 | 20 6f 6e 20 74 68 65 20 73 69 7a 65 2e 20 57 68 65 6e 20 74 68 65 73 65 20 74 79 70 65 73 20 61 | .on.the.size..When.these.types.a |
| 5e200 | 72 65 20 70 61 73 73 65 64 0a 20 20 20 20 20 20 61 73 20 70 61 72 61 6d 65 74 65 72 73 2c 20 5a | re.passed.......as.parameters,.Z |
| 5e220 | 69 67 20 6d 61 79 20 63 68 6f 6f 73 65 20 74 6f 20 63 6f 70 79 20 61 6e 64 20 70 61 73 73 20 62 | ig.may.choose.to.copy.and.pass.b |
| 5e240 | 79 20 76 61 6c 75 65 2c 20 6f 72 20 70 61 73 73 20 62 79 20 72 65 66 65 72 65 6e 63 65 2c 20 77 | y.value,.or.pass.by.reference,.w |
| 5e260 | 68 69 63 68 65 76 65 72 20 77 61 79 0a 20 20 20 20 20 20 5a 69 67 20 64 65 63 69 64 65 73 20 77 | hichever.way.......Zig.decides.w |
| 5e280 | 69 6c 6c 20 62 65 20 66 61 73 74 65 72 2e 20 54 68 69 73 20 69 73 20 6d 61 64 65 20 70 6f 73 73 | ill.be.faster..This.is.made.poss |
| 5e2a0 | 69 62 6c 65 2c 20 69 6e 20 70 61 72 74 2c 20 62 79 20 74 68 65 20 66 61 63 74 20 74 68 61 74 20 | ible,.in.part,.by.the.fact.that. |
| 5e2c0 | 70 61 72 61 6d 65 74 65 72 73 20 61 72 65 20 69 6d 6d 75 74 61 62 6c 65 2e 0a 20 20 20 20 20 20 | parameters.are.immutable........ |
| 5e2e0 | 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 |
| 5e300 | 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 |
| 5e320 | 22 3e 74 65 73 74 5f 70 61 73 73 5f 62 79 5f 72 65 66 65 72 65 6e 63 65 5f 6f 72 5f 76 61 6c 75 | ">test_pass_by_reference_or_valu |
| 5e340 | 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 |
| 5e360 | 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</ |
| 5e380 | 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 6b | span>.Point.=.<span.class="tok-k |
| 5e3a0 | 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 73 70 61 6e 20 | w">struct</span>.{.....x:.<span. |
| 5e3c0 | 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 20 | class="tok-type">i32</span>,.... |
| 5e3e0 | 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | .y:.<span.class="tok-type">i32</ |
| 5e400 | 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | span>,.};..<span.class="tok-kw"> |
| 5e420 | 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 |
| 5e440 | 6f 6f 3c 2f 73 70 61 6e 3e 28 70 6f 69 6e 74 3a 20 50 6f 69 6e 74 29 20 3c 73 70 61 6e 20 63 6c | oo</span>(point:.Point).<span.cl |
| 5e460 | 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>.{..... |
| 5e480 | 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 48 65 72 | <span.class="tok-comment">//.Her |
| 5e4a0 | 65 2c 20 60 70 6f 69 6e 74 60 20 63 6f 75 6c 64 20 62 65 20 61 20 72 65 66 65 72 65 6e 63 65 2c | e,.`point`.could.be.a.reference, |
| 5e4c0 | 20 6f 72 20 61 20 63 6f 70 79 2e 20 54 68 65 20 66 75 6e 63 74 69 6f 6e 20 62 6f 64 79 3c 2f 73 | .or.a.copy..The.function.body</s |
| 5e4e0 | 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 |
| 5e500 | 74 22 3e 2f 2f 20 63 61 6e 20 69 67 6e 6f 72 65 20 74 68 65 20 64 69 66 66 65 72 65 6e 63 65 20 | t">//.can.ignore.the.difference. |
| 5e520 | 61 6e 64 20 74 72 65 61 74 20 69 74 20 61 73 20 61 20 76 61 6c 75 65 2e 20 42 65 20 76 65 72 79 | and.treat.it.as.a.value..Be.very |
| 5e540 | 20 63 61 72 65 66 75 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .careful</span>.....<span.class= |
| 5e560 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 61 6b 69 6e 67 20 74 68 65 20 61 64 64 72 | "tok-comment">//.taking.the.addr |
| 5e580 | 65 73 73 20 6f 66 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 20 2d 20 69 74 20 73 68 6f 75 6c 64 | ess.of.the.parameter.-.it.should |
| 5e5a0 | 20 62 65 20 74 72 65 61 74 65 64 20 61 73 20 69 66 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | .be.treated.as.if</span>.....<sp |
| 5e5c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 61 64 | an.class="tok-comment">//.the.ad |
| 5e5e0 | 64 72 65 73 73 20 77 69 6c 6c 20 62 65 63 6f 6d 65 20 69 6e 76 61 6c 69 64 20 77 68 65 6e 20 74 | dress.will.become.invalid.when.t |
| 5e600 | 68 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | he.function.returns.</span>..... |
| 5e620 | 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 |
| 5e640 | 6e 3e 20 70 6f 69 6e 74 2e 78 20 2b 20 70 6f 69 6e 74 2e 79 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | n>.point.x.+.point.y;.}..<span.c |
| 5e660 | 6c 61 73 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 |
| 5e680 | 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 |
| 5e6a0 | 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 |
| 5e6c0 | 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 | r">"std"</span>).testi |
| 5e6e0 | 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ng.expect;..<span.class="tok-kw" |
| 5e700 | 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 |
| 5e720 | 72 22 3e 26 71 75 6f 74 3b 70 61 73 73 20 73 74 72 75 63 74 20 74 6f 20 66 75 6e 63 74 69 6f 6e | r">"pass.struct.to.function |
| 5e740 | 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= |
| 5e760 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 6f 6f 28 50 | "tok-kw">try</span>.expect(foo(P |
| 5e780 | 6f 69 6e 74 7b 20 2e 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | oint{..x.=.<span.class="tok-numb |
| 5e7a0 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | er">1</span>,..y.=.<span.class=" |
| 5e7c0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 7d 29 20 3d 3d 20 3c 73 70 61 6e | tok-number">2</span>.}).==.<span |
| 5e7e0 | 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 7d | .class="tok-number">3</span>);.} |
| 5e800 | 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 |
| 5e820 | 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 |
| 5e840 | 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> |
| 5e860 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 70 61 73 73 5f 62 79 5f 72 65 66 65 72 65 6e 63 65 5f | zig.test.test_pass_by_reference_ |
| 5e880 | 6f 72 5f 76 61 6c 75 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 70 61 73 73 | or_value.zig</kbd>.1/1.test_pass |
| 5e8a0 | 5f 62 79 5f 72 65 66 65 72 65 6e 63 65 5f 6f 72 5f 76 61 6c 75 65 2e 74 65 73 74 2e 70 61 73 73 | _by_reference_or_value.test.pass |
| 5e8c0 | 20 73 74 72 75 63 74 20 74 6f 20 66 75 6e 63 74 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 | .struct.to.function...OK.All.1.t |
| 5e8e0 | 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 |
| 5e900 | 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 65 78 74 65 72 6e 20 | re>........<p>.......For.extern. |
| 5e920 | 66 75 6e 63 74 69 6f 6e 73 2c 20 5a 69 67 20 66 6f 6c 6c 6f 77 73 20 74 68 65 20 43 20 41 42 49 | functions,.Zig.follows.the.C.ABI |
| 5e940 | 20 66 6f 72 20 70 61 73 73 69 6e 67 20 73 74 72 75 63 74 73 20 61 6e 64 20 75 6e 69 6f 6e 73 20 | .for.passing.structs.and.unions. |
| 5e960 | 62 79 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 0a 20 20 20 20 | by.value........</p>............ |
| 5e980 | 20 20 3c 68 33 20 69 64 3d 22 46 75 6e 63 74 69 6f 6e 2d 50 61 72 61 6d 65 74 65 72 2d 54 79 70 | ..<h3.id="Function-Parameter-Typ |
| 5e9a0 | 65 2d 49 6e 66 65 72 65 6e 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 75 6e 63 74 | e-Inference"><a.href="#toc-Funct |
| 5e9c0 | 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 |
| 5e9e0 | 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< |
| 5ea00 | 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 75 6e 63 74 69 | /a>.<a.class="hdr".href="#Functi |
| 5ea20 | 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 c2 a7 3c | on-Parameter-Type-Inference">..< |
| 5ea40 | 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 75 6e 63 74 69 | /a></h3>........<p>.......Functi |
| 5ea60 | 6f 6e 20 70 61 72 61 6d 65 74 65 72 73 20 63 61 6e 20 62 65 20 64 65 63 6c 61 72 65 64 20 77 69 | on.parameters.can.be.declared.wi |
| 5ea80 | 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 61 6e | th.<code><span.class="tok-kw">an |
| 5eaa0 | 79 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 6e 20 70 6c 61 63 65 20 6f 66 20 | ytype</span></code>.in.place.of. |
| 5eac0 | 74 68 65 20 74 79 70 65 2e 0a 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 63 61 73 65 20 74 68 65 | the.type........In.this.case.the |
| 5eae0 | 20 70 61 72 61 6d 65 74 65 72 20 74 79 70 65 73 20 77 69 6c 6c 20 62 65 20 69 6e 66 65 72 72 65 | .parameter.types.will.be.inferre |
| 5eb00 | 64 20 77 68 65 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 63 61 6c 6c 65 64 2e 0a 20 | d.when.the.function.is.called... |
| 5eb20 | 20 20 20 20 20 55 73 65 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 4f 66 22 3e 40 54 79 70 65 | .....Use.<a.href="#TypeOf">@Type |
| 5eb40 | 4f 66 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e 40 | Of</a>.and.<a.href="#typeInfo">@ |
| 5eb60 | 74 79 70 65 49 6e 66 6f 3c 2f 61 3e 20 74 6f 20 67 65 74 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 | typeInfo</a>.to.get.information. |
| 5eb80 | 61 62 6f 75 74 20 74 68 65 20 69 6e 66 65 72 72 65 64 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c | about.the.inferred.type........< |
| 5eba0 | 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 |
| 5ebc0 | 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" |
| 5ebe0 | 3e 74 65 73 74 5f 66 6e 5f 74 79 70 65 5f 69 6e 66 65 72 65 6e 63 65 2e 7a 69 67 3c 2f 63 69 74 | >test_fn_type_inference.zig</cit |
| 5ec00 | 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. |
| 5ec20 | 63 6c 61 73 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 |
| 5ec40 | 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">@ |
| 5ec60 | 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 |
| 5ec80 | 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 |
| 5eca0 | 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 |
| 5ecc0 | 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" |
| 5ece0 | 3e 61 64 64 46 6f 72 74 79 54 77 6f 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 | >addFortyTwo</span>(x:.<span.cla |
| 5ed00 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 | ss="tok-kw">anytype</span>).<spa |
| 5ed20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 | n.class="tok-builtin">@TypeOf</s |
| 5ed40 | 70 61 6e 3e 28 78 29 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 | pan>(x).{.....<span.class="tok-k |
| 5ed60 | 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 78 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | w">return</span>.x.+.<span.class |
| 5ed80 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 | ="tok-number">42</span>;.}..<spa |
| 5eda0 | 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 |
| 5edc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6e 20 74 79 70 65 | an.class="tok-str">"fn.type |
| 5ede0 | 20 69 6e 66 65 72 65 6e 63 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | .inference"</span>.{.....<s |
| 5ee00 | 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 |
| 5ee20 | 70 65 63 74 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 | pect(addFortyTwo(<span.class="to |
| 5ee40 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | k-number">1</span>).==.<span.cla |
| 5ee60 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | ss="tok-number">43</span>);..... |
| 5ee80 | 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>. |
| 5eea0 | 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | expect(<span.class="tok-builtin" |
| 5eec0 | 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 64 64 46 6f 72 74 79 54 77 6f 28 3c 73 70 61 | >@TypeOf</span>(addFortyTwo(<spa |
| 5eee0 | 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 29 20 | n.class="tok-number">1</span>)). |
| 5ef00 | 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 63 6f 6d 70 74 69 | ==.<span.class="tok-type">compti |
| 5ef20 | 6d 65 5f 69 6e 74 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 | me_int</span>);.....<span.class= |
| 5ef40 | 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 61 6e 20 63 | "tok-kw">const</span>.y:.<span.c |
| 5ef60 | 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 20 3d 20 3c 73 70 | lass="tok-type">i64</span>.=.<sp |
| 5ef80 | 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>;. |
| 5efa0 | 20 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 |
| 5efc0 | 61 6e 3e 20 65 78 70 65 63 74 28 61 64 64 46 6f 72 74 79 54 77 6f 28 79 29 20 3d 3d 20 3c 73 70 | an>.expect(addFortyTwo(y).==.<sp |
| 5efe0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 34 3c 2f 73 70 61 6e 3e 29 | an.class="tok-number">44</span>) |
| 5f000 | 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</ |
| 5f020 | 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 |
| 5f040 | 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 64 64 46 6f 72 74 79 54 77 | iltin">@TypeOf</span>(addFortyTw |
| 5f060 | 6f 28 79 29 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 | o(y)).==.<span.class="tok-type"> |
| 5f080 | 69 36 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 2f 66 69 67 | i64</span>);.}</code></pre></fig |
| 5f0a0 | 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 |
| 5f0c0 | 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 |
| 5f0e0 | 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 6e 5f 74 | ><samp>$.<kbd>zig.test.test_fn_t |
| 5f100 | 79 70 65 5f 69 6e 66 65 72 65 6e 63 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 | ype_inference.zig</kbd>.1/1.test |
| 5f120 | 5f 66 6e 5f 74 79 70 65 5f 69 6e 66 65 72 65 6e 63 65 2e 74 65 73 74 2e 66 6e 20 74 79 70 65 20 | _fn_type_inference.test.fn.type. |
| 5f140 | 69 6e 66 65 72 65 6e 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 | inference...OK.All.1.tests.passe |
| 5f160 | 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 20 | d..</samp></pre></figure>....... |
| 5f180 | 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 66 6e 22 3e 3c 61 20 | ..........<h3.id="inline-fn"><a. |
| 5f1a0 | 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 6c 69 6e 65 2d 66 6e 22 3e 69 6e 6c 69 6e 65 20 66 6e 3c | href="#toc-inline-fn">inline.fn< |
| 5f1c0 | 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 6c 69 6e 65 | /a>.<a.class="hdr".href="#inline |
| 5f1e0 | 2d 66 6e 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 | -fn">..</a></h3>........<p>..... |
| 5f200 | 20 20 41 64 64 69 6e 67 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ..Adding.the.<code><span.class=" |
| 5f220 | 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 20 6b 65 79 | tok-kw">inline</span></code>.key |
| 5f240 | 77 6f 72 64 20 74 6f 20 61 20 66 75 6e 63 74 69 6f 6e 20 64 65 66 69 6e 69 74 69 6f 6e 20 6d 61 | word.to.a.function.definition.ma |
| 5f260 | 6b 65 73 20 74 68 61 74 0a 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 62 65 63 6f 6d 65 20 3c | kes.that.......function.become.< |
| 5f280 | 65 6d 3e 73 65 6d 61 6e 74 69 63 61 6c 6c 79 20 69 6e 6c 69 6e 65 64 3c 2f 65 6d 3e 20 61 74 20 | em>semantically.inlined</em>.at. |
| 5f2a0 | 74 68 65 20 63 61 6c 6c 73 69 74 65 2e 20 54 68 69 73 20 69 73 0a 20 20 20 20 20 20 6e 6f 74 20 | the.callsite..This.is.......not. |
| 5f2c0 | 61 20 68 69 6e 74 20 74 6f 20 62 65 20 70 6f 73 73 69 62 6c 79 20 6f 62 73 65 72 76 65 64 20 62 | a.hint.to.be.possibly.observed.b |
| 5f2e0 | 79 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 20 70 61 73 73 65 73 2c 20 62 75 74 20 68 61 73 0a 20 | y.optimization.passes,.but.has.. |
| 5f300 | 20 20 20 20 20 69 6d 70 6c 69 63 61 74 69 6f 6e 73 20 6f 6e 20 74 68 65 20 74 79 70 65 73 20 61 | .....implications.on.the.types.a |
| 5f320 | 6e 64 20 76 61 6c 75 65 73 20 69 6e 76 6f 6c 76 65 64 20 69 6e 20 74 68 65 20 66 75 6e 63 74 69 | nd.values.involved.in.the.functi |
| 5f340 | 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 3c 70 3e 0a 20 20 | on.call........</p>.......<p>... |
| 5f360 | 20 20 20 20 55 6e 6c 69 6b 65 20 6e 6f 72 6d 61 6c 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 73 | ....Unlike.normal.function.calls |
| 5f380 | 2c 20 61 72 67 75 6d 65 6e 74 73 20 61 74 20 61 6e 20 69 6e 6c 69 6e 65 20 66 75 6e 63 74 69 6f | ,.arguments.at.an.inline.functio |
| 5f3a0 | 6e 20 63 61 6c 6c 73 69 74 65 20 77 68 69 63 68 20 61 72 65 0a 20 20 20 20 20 20 63 6f 6d 70 69 | n.callsite.which.are.......compi |
| 5f3c0 | 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 20 61 72 65 20 74 72 65 61 74 65 64 20 61 73 20 3c 61 20 | le-time.known.are.treated.as.<a. |
| 5f3e0 | 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 3e | href="#Compile-Time-Parameters"> |
| 5f400 | 43 6f 6d 70 69 6c 65 20 54 69 6d 65 20 50 61 72 61 6d 65 74 65 72 73 3c 2f 61 3e 2e 20 54 68 69 | Compile.Time.Parameters</a>..Thi |
| 5f420 | 73 20 63 61 6e 20 70 6f 74 65 6e 74 69 61 6c 6c 79 0a 20 20 20 20 20 20 70 72 6f 70 61 67 61 74 | s.can.potentially.......propagat |
| 5f440 | 65 20 61 6c 6c 20 74 68 65 20 77 61 79 20 74 6f 20 74 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 | e.all.the.way.to.the.return.valu |
| 5f460 | 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 |
| 5f480 | 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 |
| 5f4a0 | 61 73 73 3d 22 66 69 6c 65 22 3e 69 6e 6c 69 6e 65 5f 63 61 6c 6c 2e 7a 69 67 3c 2f 63 69 74 65 | ass="file">inline_call.zig</cite |
| 5f4c0 | 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 |
| 5f4e0 | 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. |
| 5f500 | 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 65 20 66 75 6e | class="tok-str">"inline.fun |
| 5f520 | 63 74 69 6f 6e 20 63 61 6c 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | ction.call"</span>.{.....<s |
| 5f540 | 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 6f | pan.class="tok-kw">if</span>.(fo |
| 5f560 | 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 32 30 30 3c | o(<span.class="tok-number">1200< |
| 5f580 | 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" |
| 5f5a0 | 3e 33 34 3c 2f 73 70 61 6e 3e 29 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >34</span>).!=.<span.class="tok- |
| 5f5c0 | 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c | number">1234</span>).{.........< |
| 5f5e0 | 73 70 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 |
| 5f600 | 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 |
| 5f620 | 74 72 22 3e 26 71 75 6f 74 3b 62 61 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | tr">"bad"</span>);.... |
| 5f640 | 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 69 6e 6c 69 6e | .}.}..<span.class="tok-kw">inlin |
| 5f660 | 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 6e | e</span>.<span.class="tok-kw">fn |
| 5f680 | 3c 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 |
| 5f6a0 | 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 70 65 | </span>(a:.<span.class="tok-type |
| 5f6c0 | 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 74 6f | ">i32</span>,.b:.<span.class="to |
| 5f6e0 | 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-type">i32</span>).<span.class= |
| 5f700 | 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 |
| 5f720 | 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 |
| 5f740 | 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 3c 66 69 | .+.b;.}</code></pre></figure><fi |
| 5f760 | 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 |
| 5f780 | 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> |
| 5f7a0 | 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 69 6e 6c 69 6e 65 5f 63 61 6c 6c 2e 7a 69 67 3c | $.<kbd>zig.test.inline_call.zig< |
| 5f7c0 | 2f 6b 62 64 3e 0a 31 2f 31 20 69 6e 6c 69 6e 65 5f 63 61 6c 6c 2e 74 65 73 74 2e 69 6e 6c 69 6e | /kbd>.1/1.inline_call.test.inlin |
| 5f7e0 | 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 |
| 5f800 | 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>. |
| 5f820 | 0a 20 20 20 20 20 20 3c 70 3e 49 66 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .......<p>If.<code><span.class=" |
| 5f840 | 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 20 69 73 20 | tok-kw">inline</span></code>.is. |
| 5f860 | 72 65 6d 6f 76 65 64 2c 20 74 68 65 20 74 65 73 74 20 66 61 69 6c 73 20 77 69 74 68 20 74 68 65 | removed,.the.test.fails.with.the |
| 5f880 | 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 0a 20 20 20 20 20 20 69 6e 73 74 65 61 64 20 6f 66 20 | .compile.error.......instead.of. |
| 5f8a0 | 70 61 73 73 69 6e 67 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 49 74 20 69 73 20 67 65 6e 65 | passing.</p>.......<p>It.is.gene |
| 5f8c0 | 72 61 6c 6c 79 20 62 65 74 74 65 72 20 74 6f 20 6c 65 74 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 | rally.better.to.let.the.compiler |
| 5f8e0 | 20 64 65 63 69 64 65 20 77 68 65 6e 20 74 6f 20 69 6e 6c 69 6e 65 20 61 0a 20 20 20 20 20 20 66 | .decide.when.to.inline.a.......f |
| 5f900 | 75 6e 63 74 69 6f 6e 2c 20 65 78 63 65 70 74 20 66 6f 72 20 74 68 65 73 65 20 73 63 65 6e 61 72 | unction,.except.for.these.scenar |
| 5f920 | 69 6f 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 6c 69 3e | ios:</p>.......<ul>.........<li> |
| 5f940 | 54 6f 20 63 68 61 6e 67 65 20 68 6f 77 20 6d 61 6e 79 20 73 74 61 63 6b 20 66 72 61 6d 65 73 20 | To.change.how.many.stack.frames. |
| 5f960 | 61 72 65 20 69 6e 20 74 68 65 20 63 61 6c 6c 20 73 74 61 63 6b 2c 20 66 6f 72 20 64 65 62 75 67 | are.in.the.call.stack,.for.debug |
| 5f980 | 67 69 6e 67 20 70 75 72 70 6f 73 65 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e | ging.purposes.</li>.........<li> |
| 5f9a0 | 54 6f 20 66 6f 72 63 65 20 63 6f 6d 70 74 69 6d 65 2d 6e 65 73 73 20 6f 66 20 74 68 65 20 61 72 | To.force.comptime-ness.of.the.ar |
| 5f9c0 | 67 75 6d 65 6e 74 73 20 74 6f 20 70 72 6f 70 61 67 61 74 65 20 74 6f 20 74 68 65 20 72 65 74 75 | guments.to.propagate.to.the.retu |
| 5f9e0 | 72 6e 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 2c 20 61 73 20 69 6e 20 | rn.value.of.the.function,.as.in. |
| 5fa00 | 74 68 65 20 61 62 6f 76 65 20 65 78 61 6d 70 6c 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | the.above.example.</li>......... |
| 5fa20 | 3c 6c 69 3e 52 65 61 6c 20 77 6f 72 6c 64 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 6d 65 61 73 75 | <li>Real.world.performance.measu |
| 5fa40 | 72 65 6d 65 6e 74 73 20 64 65 6d 61 6e 64 20 69 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f | rements.demand.it.</li>.......</ |
| 5fa60 | 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 4e 6f 74 65 20 74 68 61 74 20 3c 63 6f 64 65 3e 3c 73 70 | ul>.......<p>Note.that.<code><sp |
| 5fa80 | 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 6e 3e 3c | an.class="tok-kw">inline</span>< |
| 5faa0 | 2f 63 6f 64 65 3e 20 61 63 74 75 61 6c 6c 79 20 3c 65 6d 3e 72 65 73 74 72 69 63 74 73 3c 2f 65 | /code>.actually.<em>restricts</e |
| 5fac0 | 6d 3e 0a 20 20 20 20 20 20 77 68 61 74 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 69 73 20 61 6c | m>.......what.the.compiler.is.al |
| 5fae0 | 6c 6f 77 65 64 20 74 6f 20 64 6f 2e 20 54 68 69 73 20 63 61 6e 20 68 61 72 6d 20 62 69 6e 61 72 | lowed.to.do..This.can.harm.binar |
| 5fb00 | 79 20 73 69 7a 65 2c 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 73 70 65 65 64 2c | y.size,.......compilation.speed, |
| 5fb20 | 20 61 6e 64 20 65 76 65 6e 20 72 75 6e 74 69 6d 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 2e 3c 2f | .and.even.runtime.performance.</ |
| 5fb40 | 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 46 75 6e 63 74 69 6f | p>...............<h3.id="Functio |
| 5fb60 | 6e 2d 52 65 66 6c 65 63 74 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 75 6e 63 | n-Reflection"><a.href="#toc-Func |
| 5fb80 | 74 69 6f 6e 2d 52 65 66 6c 65 63 74 69 6f 6e 22 3e 46 75 6e 63 74 69 6f 6e 20 52 65 66 6c 65 63 | tion-Reflection">Function.Reflec |
| 5fba0 | 74 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 46 | tion</a>.<a.class="hdr".href="#F |
| 5fbc0 | 75 6e 63 74 69 6f 6e 2d 52 65 66 6c 65 63 74 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | unction-Reflection">..</a></h3>. |
| 5fbe0 | 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 |
| 5fc00 | 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 |
| 5fc20 | 73 74 5f 66 6e 5f 72 65 66 6c 65 63 74 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | st_fn_reflection.zig</cite></fig |
| 5fc40 | 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=" |
| 5fc60 | 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 |
| 5fc80 | 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 |
| 5fca0 | 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">" |
| 5fcc0 | 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=" |
| 5fce0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 61 74 68 20 3d 20 73 74 64 2e | tok-kw">const</span>.math.=.std. |
| 5fd00 | 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 3e 63 6f 6e 73 74 | math;.<span.class="tok-kw">const |
| 5fd20 | 3c 2f 73 70 61 6e 3e 20 74 65 73 74 69 6e 67 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 3b 0a 0a | </span>.testing.=.std.testing;.. |
| 5fd40 | 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> |
| 5fd60 | 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 66 6e 20 | .<span.class="tok-str">"fn. |
| 5fd80 | 72 65 66 6c 65 63 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | reflection"</span>.{.....<s |
| 5fda0 | 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 74 65 | pan.class="tok-kw">try</span>.te |
| 5fdc0 | 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 62 75 | sting.expect(<span.class="tok-bu |
| 5fde0 | 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | iltin">@typeInfo</span>(<span.cl |
| 5fe00 | 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> |
| 5fe20 | 28 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 29 29 2e 46 6e 2e 70 61 72 61 6d 73 5b 3c 73 70 61 | (testing.expect)).Fn.params[<spa |
| 5fe40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 2e 3c | n.class="tok-number">0</span>].< |
| 5fe60 | 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 |
| 5fe80 | 3e 2e 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 | >.?.==.<span.class="tok-type">bo |
| 5fea0 | 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 74 6f 6b | ol</span>);.....<span.class="tok |
| 5fec0 | 2d 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 | -kw">try</span>.testing.expect(< |
| 5fee0 | 73 70 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 |
| 5ff00 | 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 74 | fo</span>(<span.class="tok-built |
| 5ff20 | 69 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 74 6d 70 44 69 | in">@TypeOf</span>(testing.tmpDi |
| 5ff40 | 72 29 29 2e 46 6e 2e 72 65 74 75 72 6e 5f 74 79 70 65 2e 3f 20 3d 3d 20 74 65 73 74 69 6e 67 2e | r)).Fn.return_type.?.==.testing. |
| 5ff60 | 54 6d 70 44 69 72 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 | TmpDir);......<span.class="tok-k |
| 5ff80 | 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 |
| 5ffa0 | 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 |
| 5ffc0 | 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 |
| 5ffe0 | 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 6d 61 74 68 2e 4c 6f 67 32 49 6e 74 29 29 2e | ">@TypeOf</span>(math.Log2Int)). |
| 60000 | 46 6e 2e 69 73 5f 67 65 6e 65 72 69 63 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f | Fn.is_generic);.}</code></pre></ |
| 60020 | 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 |
| 60040 | 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>< |
| 60060 | 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 |
| 60080 | 6e 5f 72 65 66 6c 65 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 | n_reflection.zig</kbd>.1/1.test_ |
| 600a0 | 66 6e 5f 72 65 66 6c 65 63 74 69 6f 6e 2e 74 65 73 74 2e 66 6e 20 72 65 66 6c 65 63 74 69 6f 6e | fn_reflection.test.fn.reflection |
| 600c0 | 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 |
| 600e0 | 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>................ |
| 60100 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 45 72 72 6f 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 | ......<h2.id="Errors"><a.href="# |
| 60120 | 74 6f 63 2d 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | toc-Errors">Errors</a>.<a.class= |
| 60140 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e | "hdr".href="#Errors">..</a></h2> |
| 60160 | 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e | ........<h3.id="Error-Set-Type"> |
| 60180 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 45 72 | <a.href="#toc-Error-Set-Type">Er |
| 601a0 | 72 6f 72 20 53 65 74 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 | ror.Set.Type</a>.<a.class="hdr". |
| 601c0 | 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | href="#Error-Set-Type">..</a></h |
| 601e0 | 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6e 20 65 72 72 6f 72 20 73 65 74 | 3>........<p>.......An.error.set |
| 60200 | 20 69 73 20 6c 69 6b 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d | .is.like.an.<a.href="#enum">enum |
| 60220 | 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 65 61 63 68 20 65 72 72 6f 72 20 | </a>........However,.each.error. |
| 60240 | 6e 61 6d 65 20 61 63 72 6f 73 73 20 74 68 65 20 65 6e 74 69 72 65 20 63 6f 6d 70 69 6c 61 74 69 | name.across.the.entire.compilati |
| 60260 | 6f 6e 20 67 65 74 73 20 61 73 73 69 67 6e 65 64 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 | on.gets.assigned.an.unsigned.int |
| 60280 | 65 67 65 72 0a 20 20 20 20 20 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 30 2e 20 59 6f 75 20 61 | eger.......greater.than.0..You.a |
| 602a0 | 72 65 20 61 6c 6c 6f 77 65 64 20 74 6f 20 64 65 63 6c 61 72 65 20 74 68 65 20 73 61 6d 65 20 65 | re.allowed.to.declare.the.same.e |
| 602c0 | 72 72 6f 72 20 6e 61 6d 65 20 6d 6f 72 65 20 74 68 61 6e 20 6f 6e 63 65 2c 20 61 6e 64 20 69 66 | rror.name.more.than.once,.and.if |
| 602e0 | 20 79 6f 75 20 64 6f 2c 20 69 74 0a 20 20 20 20 20 20 67 65 74 73 20 61 73 73 69 67 6e 65 64 20 | .you.do,.it.......gets.assigned. |
| 60300 | 74 68 65 20 73 61 6d 65 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f | the.same.integer.value........</ |
| 60320 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 65 72 72 6f 72 20 73 65 74 | p>.......<p>.......The.error.set |
| 60340 | 20 74 79 70 65 20 64 65 66 61 75 6c 74 73 20 74 6f 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | .type.defaults.to.a.<code><span. |
| 60360 | 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 3c 2f 63 6f 64 | class="tok-type">u16</span></cod |
| 60380 | 65 3e 2c 20 74 68 6f 75 67 68 20 69 66 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 6e 75 6d 62 65 72 | e>,.though.if.the.maximum.number |
| 603a0 | 20 6f 66 20 64 69 73 74 69 6e 63 74 0a 20 20 20 20 20 20 65 72 72 6f 72 20 76 61 6c 75 65 73 20 | .of.distinct.......error.values. |
| 603c0 | 69 73 20 70 72 6f 76 69 64 65 64 20 76 69 61 20 74 68 65 20 3c 6b 62 64 3e 2d 2d 65 72 72 6f 72 | is.provided.via.the.<kbd>--error |
| 603e0 | 2d 6c 69 6d 69 74 20 5b 6e 75 6d 5d 3c 2f 6b 62 64 3e 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 | -limit.[num]</kbd>.command.line. |
| 60400 | 70 61 72 61 6d 65 74 65 72 20 61 6e 20 69 6e 74 65 67 65 72 20 74 79 70 65 0a 20 20 20 20 20 20 | parameter.an.integer.type....... |
| 60420 | 77 69 74 68 20 74 68 65 20 6d 69 6e 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 62 69 74 73 20 | with.the.minimum.number.of.bits. |
| 60440 | 72 65 71 75 69 72 65 64 20 74 6f 20 72 65 70 72 65 73 65 6e 74 20 61 6c 6c 20 6f 66 20 74 68 65 | required.to.represent.all.of.the |
| 60460 | 20 65 72 72 6f 72 20 76 61 6c 75 65 73 20 77 69 6c 6c 20 62 65 20 75 73 65 64 2e 0a 20 20 20 20 | .error.values.will.be.used...... |
| 60480 | 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 61 6e 20 3c | ..</p>.......<p>.......You.can.< |
| 604a0 | 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 3c 2f | a.href="#Type-Coercion">coerce</ |
| 604c0 | 61 3e 20 61 6e 20 65 72 72 6f 72 20 66 72 6f 6d 20 61 20 73 75 62 73 65 74 20 74 6f 20 61 20 73 | a>.an.error.from.a.subset.to.a.s |
| 604e0 | 75 70 65 72 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 | uperset:.......</p>.......<figur |
| 60500 | 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 |
| 60520 | 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 72 63 65 5f 65 72 72 | ite.class="file">test_coerce_err |
| 60540 | 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 2f 63 69 74 65 3e | or_subset_to_superset.zig</cite> |
| 60560 | 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 |
| 60580 | 61 73 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.=. |
| 605a0 | 3c 73 70 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 |
| 605c0 | 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">& |
| 605e0 | 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 |
| 60600 | 6c 61 73 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 | lass="tok-kw">const</span>.FileO |
| 60620 | 70 65 6e 45 72 72 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | penError.=.<span.class="tok-kw"> |
| 60640 | 65 72 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 | error</span>{.....AccessDenied,. |
| 60660 | 20 20 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 20 20 20 20 46 69 6c 65 4e 6f 74 46 6f 75 6e | ....OutOfMemory,.....FileNotFoun |
| 60680 | 64 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | d,.};..<span.class="tok-kw">cons |
| 606a0 | 74 3c 2f 73 70 61 6e 3e 20 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 20 3d 20 3c 73 70 61 6e | t</span>.AllocationError.=.<span |
| 606c0 | 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 20 | .class="tok-kw">error</span>{... |
| 606e0 | 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ..OutOfMemory,.};..<span.class=" |
| 60700 | 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= |
| 60720 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 65 72 63 65 20 73 75 62 73 65 74 20 74 6f | "tok-str">"coerce.subset.to |
| 60740 | 20 73 75 70 65 72 73 65 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | .superset"</span>.{.....<sp |
| 60760 | 61 6e 20 63 6c 61 73 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 |
| 60780 | 72 72 20 3d 20 66 6f 6f 28 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 2e 4f 75 74 4f 66 4d 65 | rr.=.foo(AllocationError.OutOfMe |
| 607a0 | 6d 6f 72 79 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | mory);.....<span.class="tok-kw"> |
| 607c0 | 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 65 72 | try</span>.std.testing.expect(er |
| 607e0 | 72 20 3d 3d 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 2e 4f 75 74 4f 66 4d 65 6d 6f 72 79 29 3b | r.==.FileOpenError.OutOfMemory); |
| 60800 | 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 |
| 60820 | 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 |
| 60840 | 6e 3e 28 65 72 72 3a 20 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 29 20 46 69 6c 65 4f 70 65 | n>(err:.AllocationError).FileOpe |
| 60860 | 6e 45 72 72 6f 72 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | nError.{.....<span.class="tok-kw |
| 60880 | 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 65 72 72 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | ">return</span>.err;.}</code></p |
| 608a0 | 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. |
| 608c0 | 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 |
| 608e0 | 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 |
| 60900 | 65 73 74 5f 63 6f 65 72 63 65 5f 65 72 72 6f 72 5f 73 75 62 73 65 74 5f 74 6f 5f 73 75 70 65 72 | est_coerce_error_subset_to_super |
| 60920 | 73 65 74 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 65 72 | set.zig</kbd>.1/1.test_coerce_er |
| 60940 | 72 6f 72 5f 73 75 62 73 65 74 5f 74 6f 5f 73 75 70 65 72 73 65 74 2e 74 65 73 74 2e 63 6f 65 72 | ror_subset_to_superset.test.coer |
| 60960 | 63 65 20 73 75 62 73 65 74 20 74 6f 20 73 75 70 65 72 73 65 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 | ce.subset.to.superset...OK.All.1 |
| 60980 | 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 |
| 609a0 | 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 42 75 74 20 79 6f 75 20 63 | gure>........<p>.......But.you.c |
| 609c0 | 61 6e 6e 6f 74 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 | annot.<a.href="#Type-Coercion">c |
| 609e0 | 6f 65 72 63 65 3c 2f 61 3e 20 61 6e 20 65 72 72 6f 72 20 66 72 6f 6d 20 61 20 73 75 70 65 72 73 | oerce</a>.an.error.from.a.supers |
| 60a00 | 65 74 20 74 6f 20 61 20 73 75 62 73 65 74 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | et.to.a.subset:.......</p>...... |
| 60a20 | 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- |
| 60a40 | 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 |
| 60a60 | 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 65 74 2e 7a 69 67 | rce_error_superset_to_subset.zig |
| 60a80 | 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>< |
| 60aa0 | 73 70 61 6e 20 63 6c 61 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> |
| 60ac0 | 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .FileOpenError.=.<span.class="to |
| 60ae0 | 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 63 63 65 73 73 44 65 | k-kw">error</span>{.....AccessDe |
| 60b00 | 6e 69 65 64 2c 0a 20 20 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 20 20 20 20 46 69 6c 65 4e | nied,.....OutOfMemory,.....FileN |
| 60b20 | 6f 74 46 6f 75 6e 64 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | otFound,.};..<span.class="tok-kw |
| 60b40 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 20 3d | ">const</span>.AllocationError.= |
| 60b60 | 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 |
| 60b80 | 6e 3e 7b 0a 20 20 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 | n>{.....OutOfMemory,.};..<span.c |
| 60ba0 | 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. |
| 60bc0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 65 72 63 65 20 73 75 70 | class="tok-str">"coerce.sup |
| 60be0 | 65 72 73 65 74 20 74 6f 20 73 75 62 73 65 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | erset.to.subset"</span>.{.. |
| 60c00 | 20 20 20 66 6f 6f 28 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 2e 4f 75 74 4f 66 4d 65 6d 6f 72 79 | ...foo(FileOpenError.OutOfMemory |
| 60c20 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 | ).<span.class="tok-kw">catch</sp |
| 60c40 | 61 6e 3e 20 7b 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | an>.{};.}..<span.class="tok-kw"> |
| 60c60 | 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 |
| 60c80 | 6f 6f 3c 2f 73 70 61 6e 3e 28 65 72 72 3a 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 29 20 41 6c | oo</span>(err:.FileOpenError).Al |
| 60ca0 | 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | locationError.{.....<span.class= |
| 60cc0 | 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 65 72 72 3b 0a 7d 3c 2f 63 | "tok-kw">return</span>.err;.}</c |
| 60ce0 | 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 |
| 60d00 | 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</ |
| 60d20 | 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 |
| 60d40 | 20 74 65 73 74 20 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 | .test.test_coerce_error_superset |
| 60d60 | 5f 74 6f 5f 73 75 62 73 65 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | _to_subset.zig</kbd>.<span.class |
| 60d80 | 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 65 72 63 | ="sgr-1m">doc/langref/test_coerc |
| 60da0 | 65 5f 65 72 72 6f 72 5f 73 75 70 65 72 73 65 74 5f 74 6f 5f 73 75 62 73 65 74 2e 7a 69 67 3a 31 | e_error_superset_to_subset.zig:1 |
| 60dc0 | 36 3a 31 32 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 | 6:12:.</span><span.class="sgr-31 |
| 60de0 | 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 |
| 60e00 | 72 2d 31 6d 22 3e 65 78 70 65 63 74 65 64 20 74 79 70 65 20 27 65 72 72 6f 72 7b 4f 75 74 4f 66 | r-1m">expected.type.'error{OutOf |
| 60e20 | 4d 65 6d 6f 72 79 7d 27 2c 20 66 6f 75 6e 64 20 27 65 72 72 6f 72 7b 41 63 63 65 73 73 44 65 6e | Memory}',.found.'error{AccessDen |
| 60e40 | 69 65 64 2c 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 7d 27 0a 3c | ied,OutOfMemory,FileNotFound}'.< |
| 60e60 | 2f 73 70 61 6e 3e 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 3b 0a 20 20 20 20 20 20 20 20 20 20 | /span>....return.err;........... |
| 60e80 | 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 0a 3c 2f 73 70 61 | .<span.class="sgr-32m">^~~.</spa |
| 60ea0 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 | n><span.class="sgr-1m">doc/langr |
| 60ec0 | 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 5f 74 6f | ef/test_coerce_error_superset_to |
| 60ee0 | 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 61 6e 20 | _subset.zig:16:12:.</span><span. |
| 60f00 | 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 70 | class="sgr-36m">note:.</span><sp |
| 60f20 | 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 41 63 63 65 73 73 44 | an.class="sgr-1m">'error.AccessD |
| 60f40 | 65 6e 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 | enied'.not.a.member.of.destinati |
| 60f60 | 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 73 73 3d | on.error.set.</span><span.class= |
| 60f80 | 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 65 72 63 65 | "sgr-1m">doc/langref/test_coerce |
| 60fa0 | 5f 65 72 72 6f 72 5f 73 75 70 65 72 73 65 74 5f 74 6f 5f 73 75 62 73 65 74 2e 7a 69 67 3a 31 36 | _error_superset_to_subset.zig:16 |
| 60fc0 | 3a 31 32 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d | :12:.</span><span.class="sgr-36m |
| 60fe0 | 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 2d | ">note:.</span><span.class="sgr- |
| 61000 | 31 6d 22 3e 27 65 72 72 6f 72 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 27 20 6e 6f 74 20 61 20 6d | 1m">'error.FileNotFound'.not.a.m |
| 61020 | 65 6d 62 65 72 20 6f 66 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 65 72 72 6f 72 20 73 65 74 0a 3c | ember.of.destination.error.set.< |
| 61040 | 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 64 6f 63 2f 6c | /span><span.class="sgr-1m">doc/l |
| 61060 | 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 65 72 73 65 | angref/test_coerce_error_superse |
| 61080 | 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 6e 3e 3c 73 | t_to_subset.zig:15:28:.</span><s |
| 610a0 | 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 |
| 610c0 | 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 6f 6e 20 72 | ><span.class="sgr-1m">function.r |
| 610e0 | 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 70 61 6e 3e | eturn.type.declared.here.</span> |
| 61100 | 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 6c 6c 6f 63 | fn.foo(err:.FileOpenError).Alloc |
| 61120 | 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 20 20 20 20 | ationError.{.................... |
| 61140 | 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 7e | ........<span.class="sgr-32m">^~ |
| 61160 | 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 73 73 | ~~~~~~~~~~~~~.</span><span.class |
| 61180 | 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 73 | ="sgr-2m">referenced.by:.....tes |
| 611a0 | 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 20 64 6f 63 | t.coerce.superset.to.subset:.doc |
| 611c0 | 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 65 72 | /langref/test_coerce_error_super |
| 611e0 | 73 65 74 5f 74 6f 5f 73 75 62 73 65 74 2e 7a 69 67 3a 31 32 3a 35 0a 20 20 20 20 72 65 6d 61 69 | set_to_subset.zig:12:5.....remai |
| 61200 | 6e 69 6e 67 20 72 65 66 65 72 65 6e 63 65 20 74 72 61 63 65 73 20 68 69 64 64 65 6e 3b 20 75 73 | ning.reference.traces.hidden;.us |
| 61220 | 65 20 27 2d 66 72 65 66 65 72 65 6e 63 65 2d 74 72 61 63 65 27 20 74 6f 20 73 65 65 20 61 6c 6c | e.'-freference-trace'.to.see.all |
| 61240 | 20 72 65 66 65 72 65 6e 63 65 20 74 72 61 63 65 73 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 | .reference.traces.</span>.</samp |
| 61260 | 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>..... |
| 61280 | 20 20 54 68 65 72 65 20 69 73 20 61 20 73 68 6f 72 74 63 75 74 20 66 6f 72 20 64 65 63 6c 61 72 | ..There.is.a.shortcut.for.declar |
| 612a0 | 69 6e 67 20 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 | ing.an.error.set.with.only.1.val |
| 612c0 | 75 65 2c 20 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 | ue,.and.then.getting.that.value: |
| 612e0 | 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 |
| 61300 | 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 |
| 61320 | 73 3d 22 66 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 | s="file">single_value_error_set_ |
| 61340 | 73 68 6f 72 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 | shortcut.zig</cite></figcaption> |
| 61360 | 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"> |
| 61380 | 63 6f 6e 73 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 | const</span>.err.=.<span.class=" |
| 613a0 | 74 6f 6b 2d 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 | tok-kw">error</span>.FileNotFoun |
| 613c0 | 64 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 | d;</code></pre></figure>........ |
| 613e0 | 3c 70 3e 54 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 | <p>This.is.equivalent.to:</p>... |
| 61400 | 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 |
| 61420 | 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 69 6e 67 6c | ig-cap"><cite.class="file">singl |
| 61440 | 65 5f 76 61 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 | e_value_error_set.zig</cite></fi |
| 61460 | 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= |
| 61480 | 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 28 3c 73 70 | "tok-kw">const</span>.err.=.(<sp |
| 614a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 46 | an.class="tok-kw">error</span>{F |
| 614c0 | 69 6c 65 4e 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 | ileNotFound}).FileNotFound;</cod |
| 614e0 | 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>.... |
| 61500 | 20 20 20 54 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 | ...This.becomes.useful.when.usin |
| 61520 | 67 20 3c 61 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 | g.<a.href="#Inferred-Error-Sets" |
| 61540 | 3e 49 6e 66 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 | >Inferred.Error.Sets</a>........ |
| 61560 | 3c 2f 70 3e 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 | </p>.......<h4.id="The-Global-Er |
| 61580 | 72 6f 72 2d 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 | ror-Set"><a.href="#toc-The-Globa |
| 615a0 | 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 65 | l-Error-Set">The.Global.Error.Se |
| 615c0 | 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 68 65 2d | t</a>.<a.class="hdr".href="#The- |
| 615e0 | 47 6c 6f 62 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 | Global-Error-Set">..</a></h4>... |
| 61600 | 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 74 | .....<p><code><span.class="tok-t |
| 61620 | 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 20 72 65 66 65 | ype">anyerror</span></code>.refe |
| 61640 | 72 73 20 74 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 | rs.to.the.global.error.set...... |
| 61660 | 20 20 54 68 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 | ..This.is.the.error.set.that.con |
| 61680 | 74 61 69 6e 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 | tains.all.errors.in.the.entire.c |
| 616a0 | 6f 6d 70 69 6c 61 74 69 6f 6e 20 75 6e 69 74 2e 0a 20 20 20 20 20 20 49 74 20 69 73 20 61 20 73 | ompilation.unit........It.is.a.s |
| 616c0 | 75 70 65 72 73 65 74 20 6f 66 20 61 6c 6c 20 6f 74 68 65 72 20 65 72 72 6f 72 20 73 65 74 73 20 | uperset.of.all.other.error.sets. |
| 616e0 | 61 6e 64 20 61 20 73 75 62 73 65 74 20 6f 66 20 6e 6f 6e 65 20 6f 66 20 74 68 65 6d 2e 0a 20 20 | and.a.subset.of.none.of.them.... |
| 61700 | 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 61 6e | ....</p>.......<p>.......You.can |
| 61720 | 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 63 65 | .<a.href="#Type-Coercion">coerce |
| 61740 | 3c 2f 61 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 | </a>.any.error.set.to.the.global |
| 61760 | 20 6f 6e 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 | .one,.and.you.can.explicitly.... |
| 61780 | 20 20 20 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 | ...cast.an.error.of.the.global.e |
| 617a0 | 72 72 6f 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 | rror.set.to.a.non-global.one..Th |
| 617c0 | 69 73 20 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 | is.inserts.a.language-level..... |
| 617e0 | 20 20 61 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 | ..assert.to.make.sure.the.error. |
| 61800 | 76 61 6c 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 | value.is.in.fact.in.the.destinat |
| 61820 | 69 6f 6e 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 | ion.error.set........</p>....... |
| 61840 | 3c 70 3e 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 | <p>.......The.global.error.set.s |
| 61860 | 68 6f 75 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 | hould.generally.be.avoided.becau |
| 61880 | 73 65 20 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 | se.it.prevents.the.......compile |
| 618a0 | 72 20 66 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 | r.from.knowing.what.errors.are.p |
| 618c0 | 6f 73 73 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 | ossible.at.compile-time..Knowing |
| 618e0 | 0a 20 20 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 | .......the.error.set.at.compile- |
| 61900 | 74 69 6d 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 | time.is.better.for.generated.doc |
| 61920 | 75 6d 65 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 | umentation.and.......helpful.err |
| 61940 | 6f 72 20 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 | or.messages,.such.as.forgetting. |
| 61960 | 61 20 70 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 | a.possible.error.value.in.a.<a.h |
| 61980 | 72 65 66 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 | ref="#switch">switch</a>........ |
| 619a0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d | </p>.....................<h3.id= |
| 619c0 | 22 45 72 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 | "Error-Union-Type"><a.href="#toc |
| 619e0 | 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 | -Error-Union-Type">Error.Union.T |
| 61a00 | 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 72 | ype</a>.<a.class="hdr".href="#Er |
| 61a20 | 72 6f 72 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 | ror-Union-Type">..</a></h3>..... |
| 61a40 | 20 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 74 79 70 65 20 61 | ...<p>.......An.error.set.type.a |
| 61a60 | 6e 64 20 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 | nd.normal.type.can.be.combined.w |
| 61a80 | 69 74 68 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 | ith.the.<code>!</code>.......bin |
| 61aa0 | 61 72 79 20 6f 70 65 72 61 74 6f 72 20 74 6f 20 66 6f 72 6d 20 61 6e 20 65 72 72 6f 72 20 75 6e | ary.operator.to.form.an.error.un |
| 61ac0 | 69 6f 6e 20 74 79 70 65 2e 20 59 6f 75 20 61 72 65 20 6c 69 6b 65 6c 79 20 74 6f 20 75 73 65 20 | ion.type..You.are.likely.to.use. |
| 61ae0 | 61 6e 0a 20 20 20 20 20 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 74 79 70 65 20 6d 6f 72 65 20 6f | an.......error.union.type.more.o |
| 61b00 | 66 74 65 6e 20 74 68 61 6e 20 61 6e 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 20 62 79 20 69 | ften.than.an.error.set.type.by.i |
| 61b20 | 74 73 65 6c 66 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | tself........</p>.......<p>..... |
| 61b40 | 20 20 48 65 72 65 20 69 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 70 61 72 73 65 20 61 20 | ..Here.is.a.function.to.parse.a. |
| 61b60 | 73 74 72 69 6e 67 20 69 6e 74 6f 20 61 20 36 34 2d 62 69 74 20 69 6e 74 65 67 65 72 3a 0a 20 20 | string.into.a.64-bit.integer:... |
| 61b80 | 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 |
| 61ba0 | 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=" |
| 61bc0 | 66 69 6c 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 | file">error_union_parsing_u64.zi |
| 61be0 | 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> |
| 61c00 | 3c 73 70 61 6e 20 63 6c 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 |
| 61c20 | 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 |
| 61c40 | 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 |
| 61c60 | 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>);. |
| 61c80 | 3c 73 70 61 6e 20 63 6c 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 |
| 61ca0 | 3e 20 6d 61 78 49 6e 74 20 3d 20 73 74 64 2e 6d 61 74 68 2e 6d 61 78 49 6e 74 3b 0a 0a 3c 73 70 | >.maxInt.=.std.math.maxInt;..<sp |
| 61cc0 | 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 |
| 61ce0 | 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 |
| 61d00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 61 72 73 65 55 36 34 3c 2f 73 70 61 6e 3e | n.class="tok-fn">parseU64</span> |
| 61d20 | 28 62 75 66 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | (buf:.[]<span.class="tok-kw">con |
| 61d40 | 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" |
| 61d60 | 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 72 61 64 69 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >u8</span>,.radix:.<span.class=" |
| 61d80 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 | tok-type">u8</span>).!<span.clas |
| 61da0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | s="tok-type">u64</span>.{.....<s |
| 61dc0 | 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: |
| 61de0 | 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 |
| 61e00 | 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< |
| 61e20 | 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>;......<span.class="tok-kw |
| 61e40 | 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 62 75 66 29 20 7c 63 7c 20 7b 0a 20 20 20 20 20 20 20 | ">for</span>.(buf).|c|.{........ |
| 61e60 | 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 |
| 61e80 | 6e 3e 20 64 69 67 69 74 20 3d 20 63 68 61 72 54 6f 44 69 67 69 74 28 63 29 3b 0a 0a 20 20 20 20 | n>.digit.=.charToDigit(c);...... |
| 61ea0 | 20 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 |
| 61ec0 | 6e 3e 20 28 64 69 67 69 74 20 26 67 74 3b 3d 20 72 61 64 69 78 29 20 7b 0a 20 20 20 20 20 20 20 | n>.(digit.>=.radix).{........ |
| 61ee0 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e | .....<span.class="tok-kw">return |
| 61f00 | 3c 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 | </span>.<span.class="tok-kw">err |
| 61f20 | 6f 72 3c 2f 73 70 61 6e 3e 2e 49 6e 76 61 6c 69 64 43 68 61 72 3b 0a 20 20 20 20 20 20 20 20 7d | or</span>.InvalidChar;.........} |
| 61f40 | 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 6d 65 | ..........<span.class="tok-comme |
| 61f60 | 6e 74 22 3e 2f 2f 20 78 20 2a 3d 20 72 61 64 69 78 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 | nt">//.x.*=.radix</span>........ |
| 61f80 | 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> |
| 61fa0 | 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 22 3e | .ov.=.<span.class="tok-builtin"> |
| 61fc0 | 40 6d 75 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 | @mulWithOverflow</span>(x,.radix |
| 61fe0 | 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | );.........<span.class="tok-kw"> |
| 62000 | 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 6e | if</span>.(ov[<span.class="tok-n |
| 62020 | 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 3d | umber">1</span>].!=.<span.class= |
| 62040 | 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 61 | "tok-number">0</span>).<span.cla |
| 62060 | 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. |
| 62080 | 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 72 | class="tok-kw">error</span>.Over |
| 620a0 | 46 6c 6f 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 | Flow;..........<span.class="tok- |
| 620c0 | 63 6f 6d 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 | comment">//.x.+=.digit</span>... |
| 620e0 | 20 20 20 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 | ......ov.=.<span.class="tok-buil |
| 62100 | 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 6f 76 5b | tin">@addWithOverflow</span>(ov[ |
| 62120 | 3c 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 |
| 62140 | 3e 5d 2c 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 | >],.digit);.........<span.class= |
| 62160 | 22 74 6f 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 | "tok-kw">if</span>.(ov[<span.cla |
| 62180 | 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 21 3d 20 3c 73 70 | ss="tok-number">1</span>].!=.<sp |
| 621a0 | 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 20 | an.class="tok-number">0</span>). |
| 621c0 | 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 |
| 621e0 | 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 2f 73 | n>.<span.class="tok-kw">error</s |
| 62200 | 70 61 6e 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 | pan>.OverFlow;.........x.=.ov[<s |
| 62220 | 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>] |
| 62240 | 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 6b 77 | ;.....}......<span.class="tok-kw |
| 62260 | 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 78 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | ">return</span>.x;.}..<span.clas |
| 62280 | 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 |
| 622a0 | 3d 22 74 6f 6b 2d 66 6e 22 3e 63 68 61 72 54 6f 44 69 67 69 74 3c 2f 73 70 61 6e 3e 28 63 3a 20 | ="tok-fn">charToDigit</span>(c:. |
| 622c0 | 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> |
| 622e0 | 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 |
| 62300 | 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 |
| 62320 | 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" |
| 62340 | 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 3c 73 70 | >switch</span>.(c).{.........<sp |
| 62360 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 30 27 3c 2f 73 70 61 6e 3e 2e 2e 2e | an.class="tok-str">'0'</span>... |
| 62380 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 39 27 3c 2f 73 70 61 6e 3e | <span.class="tok-str">'9'</span> |
| 623a0 | 20 3d 26 67 74 3b 20 63 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | .=>.c.-.<span.class="tok-str" |
| 623c0 | 3e 27 30 27 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | >'0'</span>,.........<span.class |
| 623e0 | 3d 22 74 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 | ="tok-str">'A'</span>...<span.cl |
| 62400 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5a 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 63 | ass="tok-str">'Z'</span>.=>.c |
| 62420 | 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 41 27 3c 2f 73 70 | .-.<span.class="tok-str">'A'</sp |
| 62440 | 61 6e 3e 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | an>.+.<span.class="tok-number">1 |
| 62460 | 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 74 | 0</span>,.........<span.class="t |
| 62480 | 6f 6b 2d 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 | ok-str">'a'</span>...<span.class |
| 624a0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 7a 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 63 20 2d 20 | ="tok-str">'z'</span>.=>.c.-. |
| 624c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 61 27 3c 2f 73 70 61 6e 3e | <span.class="tok-str">'a'</span> |
| 624e0 | 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</ |
| 62500 | 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- |
| 62520 | 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 6d 61 78 49 6e 74 28 3c 73 70 | kw">else</span>.=>.maxInt(<sp |
| 62540 | 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 2c 0a | an.class="tok-type">u8</span>),. |
| 62560 | 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 |
| 62580 | 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" |
| 625a0 | 3e 26 71 75 6f 74 3b 70 61 72 73 65 20 75 36 34 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | >"parse.u64"</span>.{. |
| 625c0 | 20 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</ |
| 625e0 | 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 6b 2d | span>.result.=.<span.class="tok- |
| 62600 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 61 72 73 65 55 36 34 28 3c 73 70 61 6e 20 63 6c | kw">try</span>.parseU64(<span.cl |
| 62620 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 31 32 33 34 26 71 75 6f 74 3b 3c 2f | ass="tok-str">"1234"</ |
| 62640 | 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"> |
| 62660 | 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 6b | 10</span>);.....<span.class="tok |
| 62680 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 | -kw">try</span>.std.testing.expe |
| 626a0 | 63 74 28 72 65 73 75 6c 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ct(result.==.<span.class="tok-nu |
| 626c0 | 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 3c 2f 70 72 | mber">1234</span>);.}</code></pr |
| 626e0 | 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 |
| 62700 | 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 |
| 62720 | 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 65 72 | on><pre><samp>$.<kbd>zig.test.er |
| 62740 | 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 6b 62 64 3e 0a | ror_union_parsing_u64.zig</kbd>. |
| 62760 | 31 2f 31 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 | 1/1.error_union_parsing_u64.test |
| 62780 | 2e 70 61 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 | .parse.u64...OK.All.1.tests.pass |
| 627a0 | 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>...... |
| 627c0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 69 63 65 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 | ..<p>.......Notice.the.return.ty |
| 627e0 | 70 65 20 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 | pe.is.<code>!<span.class="tok-ty |
| 62800 | 70 65 22 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 | pe">u64</span></code>..This.mean |
| 62820 | 73 20 74 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 | s.that.the.function.......either |
| 62840 | 20 72 65 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 | .returns.an.unsigned.64.bit.inte |
| 62860 | 67 65 72 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 | ger,.or.an.error..We.left.off.th |
| 62880 | 65 20 65 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 | e.error.set.......to.the.left.of |
| 628a0 | 20 74 68 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 | .the.<code>!</code>,.so.the.erro |
| 628c0 | 72 20 73 65 74 20 69 73 20 69 6e 66 65 72 72 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | r.set.is.inferred........</p>... |
| 628e0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 69 74 68 69 6e 20 74 68 65 20 66 75 6e 63 74 69 6f | ....<p>.......Within.the.functio |
| 62900 | 6e 20 64 65 66 69 6e 69 74 69 6f 6e 2c 20 79 6f 75 20 63 61 6e 20 73 65 65 20 73 6f 6d 65 20 72 | n.definition,.you.can.see.some.r |
| 62920 | 65 74 75 72 6e 20 73 74 61 74 65 6d 65 6e 74 73 20 74 68 61 74 20 72 65 74 75 72 6e 0a 20 20 20 | eturn.statements.that.return.... |
| 62940 | 20 20 20 61 6e 20 65 72 72 6f 72 2c 20 61 6e 64 20 61 74 20 74 68 65 20 62 6f 74 74 6f 6d 20 61 | ...an.error,.and.at.the.bottom.a |
| 62960 | 20 72 65 74 75 72 6e 20 73 74 61 74 65 6d 65 6e 74 20 74 68 61 74 20 72 65 74 75 72 6e 73 20 61 | .return.statement.that.returns.a |
| 62980 | 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 36 | .<code><span.class="tok-type">u6 |
| 629a0 | 34 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 42 6f 74 68 20 | 4</span></code>............Both. |
| 629c0 | 74 79 70 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 | types.<a.href="#Type-Coercion">c |
| 629e0 | 6f 65 72 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 | oerce</a>.to.<code><span.class=" |
| 62a00 | 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 | tok-type">anyerror</span>!<span. |
| 62a20 | 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 3c 2f 63 6f 64 | class="tok-type">u64</span></cod |
| 62a40 | 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 | e>........</p>.......<p>.......W |
| 62a60 | 68 61 74 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 | hat.it.looks.like.to.use.this.fu |
| 62a80 | 6e 63 74 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 | nction.varies.depending.on.what. |
| 62aa0 | 79 6f 75 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 | you're.......trying.to.do..One.o |
| 62ac0 | 66 20 74 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 | f.the.following:.......</p>..... |
| 62ae0 | 20 20 3c 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 | ..<ul>.........<li>You.want.to.p |
| 62b00 | 72 6f 76 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 | rovide.a.default.value.if.it.ret |
| 62b20 | 75 72 6e 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 | urned.an.error.</li>.........<li |
| 62b40 | 3e 49 66 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 | >If.it.returned.an.error.then.yo |
| 62b60 | 75 20 77 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 | u.want.to.return.the.same.error. |
| 62b80 | 3c 2f 6c 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 | </li>.........<li>You.know.with. |
| 62ba0 | 63 6f 6d 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 | complete.certainty.it.will.not.r |
| 62bc0 | 65 74 75 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 | eturn.an.error,.so.want.to.uncon |
| 62be0 | 64 69 74 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 | ditionally.unwrap.it.</li>...... |
| 62c00 | 20 20 20 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 | ...<li>You.want.to.take.a.differ |
| 62c20 | 65 6e 74 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 | ent.action.for.each.possible.err |
| 62c40 | 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 68 34 20 69 | or.</li>.......</ul>.......<h4.i |
| 62c60 | 64 3d 22 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 | d="catch"><a.href="#toc-catch">c |
| 62c80 | 61 74 63 68 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 | atch</a>.<a.class="hdr".href="#c |
| 62ca0 | 61 74 63 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 | atch">..</a></h4>........<p>If.y |
| 62cc0 | 6f 75 20 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 | ou.want.to.provide.a.default.val |
| 62ce0 | 75 65 2c 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 | ue,.you.can.use.the.<code><span. |
| 62d00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | class="tok-kw">catch</span></cod |
| 62d20 | 65 3e 20 62 69 6e 61 72 79 20 6f 70 65 72 61 74 6f 72 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 | e>.binary.operator:</p>.......<f |
| 62d40 | 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 |
| 62d60 | 22 3e 3c 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 | "><cite.class="file">catch.zig</ |
| 62d80 | 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 |
| 62da0 | 61 6e 20 63 6c 61 73 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 |
| 62dc0 | 61 72 73 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 | arseU64.=.<span.class="tok-built |
| 62de0 | 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=" |
| 62e00 | 74 6f 6b 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 | tok-str">"error_union_parsi |
| 62e20 | 6e 67 5f 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 | ng_u64.zig"</span>).parseU6 |
| 62e40 | 34 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 | 4;..<span.class="tok-kw">fn</spa |
| 62e60 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 41 54 68 69 6e 67 | n>.<span.class="tok-fn">doAThing |
| 62e80 | 3c 2f 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 | </span>(str:.[]<span.class="tok- |
| 62ea0 | 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 |
| 62ec0 | 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. |
| 62ee0 | 63 6c 61 73 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 |
| 62f00 | 65 72 20 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 | er.=.parseU64(str,.<span.class=" |
| 62f20 | 74 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 | tok-number">10</span>).<span.cla |
| 62f40 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | ss="tok-kw">catch</span>.<span.c |
| 62f60 | 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 3b 0a 20 20 20 | lass="tok-number">13</span>;.... |
| 62f80 | 20 5f 20 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 | ._.=.number;.<span.class="tok-co |
| 62fa0 | 6d 6d 65 6e 74 22 3e 2f 2f 20 2e 2e 2e 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | mment">//....</span>.}</code></p |
| 62fc0 | 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 49 6e | re></figure>........<p>.......In |
| 62fe0 | 20 74 68 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 | .this.code,.<code>number</code>. |
| 63000 | 77 69 6c 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 | will.be.equal.to.the.successfull |
| 63020 | 79 20 70 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 | y.parsed.string,.or...........a. |
| 63040 | 64 65 66 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 | default.value.of.13..The.type.of |
| 63060 | 20 74 68 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 | .the.right.hand.side.of.the.bina |
| 63080 | 72 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 63 61 | ry.<code><span.class="tok-kw">ca |
| 630a0 | 74 63 68 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 | tch</span></code>.operator.must. |
| 630c0 | 20 20 20 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 | ..............match.the.unwrappe |
| 630e0 | 64 20 65 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 | d.error.union.type,.or.be.of.typ |
| 63100 | 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 6e | e.<code><span.class="tok-type">n |
| 63120 | 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | oreturn</span></code>........</p |
| 63140 | 3e 0a 20 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 | >......<p>.......If.you.want.to. |
| 63160 | 70 72 6f 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 | provide.a.default.value.with.... |
| 63180 | 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 63 61 | ...<code><span.class="tok-kw">ca |
| 631a0 | 74 63 68 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 | tch</span></code>.after.performi |
| 631c0 | 6e 67 20 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 | ng.some.logic,.you.......can.com |
| 631e0 | 62 69 6e 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 | bine.<code><span.class="tok-kw"> |
| 63200 | 63 61 74 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 | catch</span></code>.with.named.< |
| 63220 | 61 20 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 3a 0a 20 20 20 | a.href="#Blocks">Blocks</a>:.... |
| 63240 | 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 |
| 63260 | 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 |
| 63280 | 69 6c 65 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 | ile">handle_error_with_catch_blo |
| 632a0 | 63 6b 2e 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 | ck.zig.zig</cite></figcaption><p |
| 632c0 | 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 |
| 632e0 | 6e 73 74 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 | nst</span>.parseU64.=.<span.clas |
| 63300 | 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>(< |
| 63320 | 73 70 61 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 | span.class="tok-str">"error |
| 63340 | 5f 75 6e 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 | _union_parsing_u64.zig"</sp |
| 63360 | 61 6e 3e 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 | an>).parseU64;..<span.class="tok |
| 63380 | 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- |
| 633a0 | 66 6e 22 3e 64 6f 41 54 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 73 74 72 3a 20 5b 5d 3c 73 70 61 6e | fn">doAThing</span>(str:.[]<span |
| 633c0 | 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 |
| 633e0 | 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>. |
| 63400 | 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 |
| 63420 | 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 70 61 72 73 65 55 36 34 28 73 74 72 2c 20 3c | </span>.number.=.parseU64(str,.< |
| 63440 | 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 |
| 63460 | 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 | >).<span.class="tok-kw">catch</s |
| 63480 | 70 61 6e 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 | pan>.blk:.{.........<span.class= |
| 634a0 | 22 74 6f 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 | "tok-comment">//.do.things</span |
| 634c0 | 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 | >.........<span.class="tok-kw">b |
| 634e0 | 72 65 61 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 | reak</span>.:blk.<span.class="to |
| 63500 | 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 7d 3b 0a 20 20 20 20 | k-number">13</span>;.....};..... |
| 63520 | 5f 20 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 | _.=.number;.<span.class="tok-com |
| 63540 | 6d 65 6e 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 | ment">//.number.is.now.initializ |
| 63560 | 65 64 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 | ed</span>.}</code></pre></figure |
| 63580 | 3e 0a 0a 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 | >...............<h4.id="try"><a. |
| 635a0 | 68 72 65 66 3d 22 23 74 6f 63 2d 74 72 79 22 3e 74 72 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | href="#toc-try">try</a>.<a.class |
| 635c0 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 74 72 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a | ="hdr".href="#try">..</a></h4>.. |
| 635e0 | 20 20 20 20 20 20 3c 70 3e 4c 65 74 27 73 20 73 61 79 20 79 6f 75 20 77 61 6e 74 65 64 20 74 6f | ......<p>Let's.say.you.wanted.to |
| 63600 | 20 72 65 74 75 72 6e 20 74 68 65 20 65 72 72 6f 72 20 69 66 20 79 6f 75 20 67 6f 74 20 6f 6e 65 | .return.the.error.if.you.got.one |
| 63620 | 2c 20 6f 74 68 65 72 77 69 73 65 20 63 6f 6e 74 69 6e 75 65 20 77 69 74 68 20 74 68 65 0a 20 20 | ,.otherwise.continue.with.the... |
| 63640 | 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 67 69 63 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 | ....function.logic:</p>.......<f |
| 63660 | 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 |
| 63680 | 22 3e 3c 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 | "><cite.class="file">catch_err_r |
| 636a0 | 65 74 75 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 | eturn.zig</cite></figcaption><pr |
| 636c0 | 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 |
| 636e0 | 73 74 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 | st</span>.parseU64.=.<span.class |
| 63700 | 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 |
| 63720 | 70 61 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 | pan.class="tok-str">"error_ |
| 63740 | 75 6e 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 | union_parsing_u64.zig"</spa |
| 63760 | 6e 3e 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 | n>).parseU64;..<span.class="tok- |
| 63780 | 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 |
| 637a0 | 6e 22 3e 64 6f 41 54 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 73 74 72 3a 20 5b 5d 3c 73 70 61 6e 20 | n">doAThing</span>(str:.[]<span. |
| 637c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 | class="tok-type">u8</span>).!<sp |
| 637e0 | 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>. |
| 63800 | 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 |
| 63820 | 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 70 61 72 73 65 55 36 34 28 73 74 72 2c 20 3c | </span>.number.=.parseU64(str,.< |
| 63840 | 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 |
| 63860 | 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 | >).<span.class="tok-kw">catch</s |
| 63880 | 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"> |
| 638a0 | 72 65 74 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 | return</span>.err;....._.=.numbe |
| 638c0 | 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 2f 2f 20 | r;.<span.class="tok-comment">//. |
| 638e0 | 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 67 75 72 | ...</span>.}</code></pre></figur |
| 63900 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 69 73 20 61 20 73 | e>........<p>.......There.is.a.s |
| 63920 | 68 6f 72 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 | hortcut.for.this..The.<code><spa |
| 63940 | 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 64 | n.class="tok-kw">try</span></cod |
| 63960 | 65 3e 20 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 | e>.expression:.......</p>....... |
| 63980 | 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 |
| 639a0 | 61 70 22 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 | ap"><cite.class="file">try.zig</ |
| 639c0 | 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 |
| 639e0 | 61 6e 20 63 6c 61 73 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 |
| 63a00 | 61 72 73 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 | arseU64.=.<span.class="tok-built |
| 63a20 | 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=" |
| 63a40 | 74 6f 6b 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 | tok-str">"error_union_parsi |
| 63a60 | 6e 67 5f 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 | ng_u64.zig"</span>).parseU6 |
| 63a80 | 34 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 | 4;..<span.class="tok-kw">fn</spa |
| 63aa0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 41 54 68 69 6e 67 | n>.<span.class="tok-fn">doAThing |
| 63ac0 | 3c 2f 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 | </span>(str:.[]<span.class="tok- |
| 63ae0 | 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 74 | type">u8</span>).!<span.class="t |
| 63b00 | 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 |
| 63b20 | 20 63 6c 61 73 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 |
| 63b40 | 62 65 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 74 72 79 3c 2f | ber.=.<span.class="tok-kw">try</ |
| 63b60 | 73 70 61 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 | span>.parseU64(str,.<span.class= |
| 63b80 | 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 20 20 20 20 5f 20 3d | "tok-number">10</span>);....._.= |
| 63ba0 | 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 |
| 63bc0 | 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 3c | t">//....</span>.}</code></pre>< |
| 63be0 | 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 63 6f 64 65 3e | /figure>........<p>.......<code> |
| 63c00 | 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 3c | <span.class="tok-kw">try</span>< |
| 63c20 | 2f 63 6f 64 65 3e 20 65 76 61 6c 75 61 74 65 73 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 | /code>.evaluates.an.error.union. |
| 63c40 | 65 78 70 72 65 73 73 69 6f 6e 2e 20 49 66 20 69 74 20 69 73 20 61 6e 20 65 72 72 6f 72 2c 20 69 | expression..If.it.is.an.error,.i |
| 63c60 | 74 20 72 65 74 75 72 6e 73 0a 20 20 20 20 20 20 66 72 6f 6d 20 74 68 65 20 63 75 72 72 65 6e 74 | t.returns.......from.the.current |
| 63c80 | 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 20 65 72 72 6f 72 2e 20 4f | .function.with.the.same.error..O |
| 63ca0 | 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 72 65 73 75 6c 74 73 | therwise,.the.expression.results |
| 63cc0 | 20 69 6e 0a 20 20 20 20 20 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 76 61 6c 75 65 2e 0a 20 | .in.......the.unwrapped.value... |
| 63ce0 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | .....</p>..............<p>...... |
| 63d00 | 20 20 20 4d 61 79 62 65 20 79 6f 75 20 6b 6e 6f 77 20 77 69 74 68 20 63 6f 6d 70 6c 65 74 65 20 | ...Maybe.you.know.with.complete. |
| 63d20 | 63 65 72 74 61 69 6e 74 79 20 74 68 61 74 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 77 69 6c | certainty.that.an.expression.wil |
| 63d40 | 6c 20 6e 65 76 65 72 20 62 65 20 61 6e 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 20 20 49 6e 20 | l.never.be.an.error..........In. |
| 63d60 | 74 68 69 73 20 63 61 73 65 20 79 6f 75 20 63 61 6e 20 64 6f 20 74 68 69 73 3a 0a 20 20 20 20 20 | this.case.you.can.do.this:...... |
| 63d80 | 20 3c 2f 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 |
| 63da0 | 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 70 61 72 | ok-kw">const</span>.number.=.par |
| 63dc0 | 73 65 55 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 | seU64(<span.class="tok-str">&quo |
| 63de0 | 74 3b 31 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 | t;1234"</span>,.<span.class |
| 63e00 | 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 3c 73 70 61 6e 20 63 | ="tok-number">10</span>).<span.c |
| 63e20 | 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 3c 73 70 61 6e | lass="tok-kw">catch</span>.<span |
| 63e40 | 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 |
| 63e60 | 6e 3e 3b 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 | n>;</code>.......<p>.......Here. |
| 63e80 | 77 65 20 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 | we.know.for.sure.that."1234".wil |
| 63ea0 | 6c 20 70 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 | l.parse.successfully..So.we.put. |
| 63ec0 | 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 6f 6b | the.......<code><span.class="tok |
| 63ee0 | 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 | -kw">unreachable</span></code>.v |
| 63f00 | 61 6c 75 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 20 3c 63 6f | alue.on.the.right.hand.side..<co |
| 63f20 | 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 63 68 61 | de><span.class="tok-kw">unreacha |
| 63f40 | 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 67 65 6e 65 72 61 74 65 73 0a 20 20 20 20 | ble</span></code>.generates..... |
| 63f60 | 20 20 61 20 70 61 6e 69 63 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 44 65 62 75 67 22 3e 44 65 | ..a.panic.in.<a.href="#Debug">De |
| 63f80 | 62 75 67 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 | bug</a>.and.<a.href="#ReleaseSaf |
| 63fa0 | 65 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 61 3e 20 6d 6f 64 65 73 20 61 6e 64 20 75 6e 64 | e">ReleaseSafe</a>.modes.and.und |
| 63fc0 | 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 20 69 6e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 | efined.behavior.in.......<a.href |
| 63fe0 | 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 61 3e 20 | ="#ReleaseFast">ReleaseFast</a>. |
| 64000 | 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 22 3e 52 65 6c 65 | and.<a.href="#ReleaseSmall">Rele |
| 64020 | 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e 20 6d 6f 64 65 73 2e 20 53 6f 2c 20 77 68 69 6c 65 20 77 65 | aseSmall</a>.modes..So,.while.we |
| 64040 | 27 72 65 20 64 65 62 75 67 67 69 6e 67 20 74 68 65 0a 20 20 20 20 20 20 61 70 70 6c 69 63 61 74 | 're.debugging.the.......applicat |
| 64060 | 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 72 | ion,.if.there.<em>was</em>.a.sur |
| 64080 | 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 6f | prise.error.here,.the.applicatio |
| 640a0 | 6e 20 77 6f 75 6c 64 20 63 72 61 73 68 0a 20 20 20 20 20 20 61 70 70 72 6f 70 72 69 61 74 65 6c | n.would.crash.......appropriatel |
| 640c0 | 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 6f | y........</p>.......<p>.......Yo |
| 640e0 | 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 61 | u.may.want.to.take.a.different.a |
| 64100 | 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 74 | ction.for.every.situation..For.t |
| 64120 | 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 65 | hat,.we.combine.......the.<a.hre |
| 64140 | 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 69 | f="#if">if</a>.and.<a.href="#swi |
| 64160 | 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 20 | tch">switch</a>.expression:..... |
| 64180 | 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 |
| 641a0 | 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 |
| 641c0 | 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 7a | le">handle_all_error_scenarios.z |
| 641e0 | 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 |
| 64200 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 | ><span.class="tok-kw">fn</span>. |
| 64220 | 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 |
| 64240 | 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 |
| 64260 | 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 |
| 64280 | 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 |
| 642a0 | 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 28 | ss="tok-kw">if</span>.(parseU64( |
| 642c0 | 73 74 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 | str,.<span.class="tok-number">10 |
| 642e0 | 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 53 | </span>)).|number|.{.........doS |
| 64300 | 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 20 | omethingWithNumber(number);..... |
| 64320 | 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 |
| 64340 | 6e 3e 20 7c 65 72 72 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 | n>.|err|.<span.class="tok-kw">sw |
| 64360 | 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 65 72 72 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | itch</span>.(err).{.........<spa |
| 64380 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 76 | n.class="tok-kw">error</span>.Ov |
| 643a0 | 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 6e | erflow.=>.{.............<span |
| 643c0 | 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 6f | .class="tok-comment">//.handle.o |
| 643e0 | 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 20 | verflow...</span>.........},.... |
| 64400 | 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">/ |
| 64420 | 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 6f | /.we.promise.that.InvalidChar.wo |
| 64440 | 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 6f | n't.happen.(or.crash.in.debug.mo |
| 64460 | 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 73 | de.if.it.does)</span>.........<s |
| 64480 | 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>. |
| 644a0 | 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 74 | InvalidChar.=>.<span.class="t |
| 644c0 | 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 7d | ok-kw">unreachable</span>,.....} |
| 644e0 | 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>.......< |
| 64500 | 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 74 | p>.......Finally,.you.may.want.t |
| 64520 | 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 74 | o.handle.only.some.errors..For.t |
| 64540 | 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 6c | hat,.you.can.capture.the.unhandl |
| 64560 | 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 70 | ed.......errors.in.the.<code><sp |
| 64580 | 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 63 | an.class="tok-kw">else</span></c |
| 645a0 | 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 20 | ode>.case,.which.now.contains.a. |
| 645c0 | 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 20 | narrower.error.set:.......</p>.. |
| 645e0 | 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=" |
| 64600 | 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 64 | zig-cap"><cite.class="file">hand |
| 64620 | 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 74 | le_some_error_scenarios.zig</cit |
| 64640 | 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. |
| 64660 | 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 |
| 64680 | 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 70 | lass="tok-fn">doAnotherThing</sp |
| 646a0 | 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 65 | an>(str:.[]<span.class="tok-type |
| 646c0 | 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 77 | ">u8</span>).<span.class="tok-kw |
| 646e0 | 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 61 | ">error</span>{InvalidChar}!<spa |
| 64700 | 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>.{ |
| 64720 | 0a 20 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 |
| 64740 | 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=" |
| 64760 | 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| |
| 64780 | 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 |
| 647a0 | 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 |
| 647c0 | 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 61 | -kw">else</span>.|err|.<span.cla |
| 647e0 | 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 20 | ss="tok-kw">switch</span>.(err). |
| 64800 | 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 65 | {.........<span.class="tok-kw">e |
| 64820 | 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 20 | rror</span>.Overflow.=>.{.... |
| 64840 | 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 |
| 64860 | 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 0a | t">//.handle.overflow...</span>. |
| 64880 | 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 22 | ........},.........<span.class=" |
| 648a0 | 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 6f | tok-kw">else</span>.=>.|lefto |
| 648c0 | 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 65 | ver_err|.<span.class="tok-kw">re |
| 648e0 | 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 0a | turn</span>.leftover_err,.....}. |
| 64900 | 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 |
| 64920 | 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 6c | >.......You.must.use.the.variabl |
| 64940 | 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 6e | e.capture.syntax..If.you.don't.n |
| 64960 | 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 20 | eed.the.......variable,.you.can. |
| 64980 | 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 20 | capture.with.<code>_</code>.and. |
| 649a0 | 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 73 | avoid.the.......<code><span.clas |
| 649c0 | 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 2e | s="tok-kw">switch</span></code>. |
| 649e0 | 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 |
| 64a00 | 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 |
| 64a20 | 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 69 | s="file">handle_no_error_scenari |
| 64a40 | 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 3c | os.zig</cite></figcaption><pre>< |
| 64a60 | 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 70 | code><span.class="tok-kw">fn</sp |
| 64a80 | 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 66 | an>.<span.class="tok-fn">doADiff |
| 64aa0 | 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 63 | erentThing</span>(str:.[]<span.c |
| 64ac0 | 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 6e | lass="tok-type">u8</span>).<span |
| 64ae0 | 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>.{. |
| 64b00 | 20 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 |
| 64b20 | 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 74 | n>.(parseU64(str,.<span.class="t |
| 64b40 | 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 20 | ok-number">10</span>)).|number|. |
| 64b60 | 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 28 | {.........doSomethingWithNumber( |
| 64b80 | 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 2d | number);.....}.<span.class="tok- |
| 64ba0 | 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 73 | kw">else</span>.|_|.{.........<s |
| 64bc0 | 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 73 | pan.class="tok-comment">//.do.as |
| 64be0 | 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 65 | .you'd.like</span>.....}.}</code |
| 64c00 | 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 65 | ></pre></figure>.......<h4.id="e |
| 64c20 | 72 72 64 65 66 65 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 72 72 64 65 66 65 72 22 | rrdefer"><a.href="#toc-errdefer" |
| 64c40 | 3e 65 72 72 64 65 66 65 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | >errdefer</a>.<a.class="hdr".hre |
| 64c60 | 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 20 | f="#errdefer">..</a></h4>....... |
| 64c80 | 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 6f 74 68 65 72 20 63 6f 6d 70 6f 6e 65 6e 74 20 74 | .<p>.......The.other.component.t |
| 64ca0 | 6f 20 65 72 72 6f 72 20 68 61 6e 64 6c 69 6e 67 20 69 73 20 64 65 66 65 72 20 73 74 61 74 65 6d | o.error.handling.is.defer.statem |
| 64cc0 | 65 6e 74 73 2e 0a 20 20 20 20 20 20 49 6e 20 61 64 64 69 74 69 6f 6e 20 74 6f 20 61 6e 20 75 6e | ents........In.addition.to.an.un |
| 64ce0 | 63 6f 6e 64 69 74 69 6f 6e 61 6c 20 3c 61 20 68 72 65 66 3d 22 23 64 65 66 65 72 22 3e 64 65 66 | conditional.<a.href="#defer">def |
| 64d00 | 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 73 | er</a>,.Zig.has.<code><span.clas |
| 64d20 | 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 65 | s="tok-kw">errdefer</span></code |
| 64d40 | 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 66 | >,.......which.evaluates.the.def |
| 64d60 | 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 70 | erred.expression.on.block.exit.p |
| 64d80 | 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 6e | ath.if.and.only.if.......the.fun |
| 64da0 | 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 6f | ction.returned.with.an.error.fro |
| 64dc0 | 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 70 | m.the.block........</p>.......<p |
| 64de0 | 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 20 | >.......Example:.......</p>..... |
| 64e00 | 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 |
| 64e20 | 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 65 | -cap"><cite.class="file">errdefe |
| 64e40 | 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 6e | r_example.zig</cite></figcaption |
| 64e60 | 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" |
| 64e80 | 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"> |
| 64ea0 | 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 6c | createFoo</span>(param:.<span.cl |
| 64ec0 | 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 20 | ass="tok-type">i32</span>).!Foo. |
| 64ee0 | 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 |
| 64f00 | 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 6b | </span>.foo.=.<span.class="tok-k |
| 64f20 | 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 29 | w">try</span>.tryToAllocateFoo() |
| 64f40 | 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"> |
| 64f60 | 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 65 | //.now.we.have.allocated.foo..we |
| 64f80 | 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 6e | .need.to.free.it.if.the.function |
| 64fa0 | 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 22 | .fails.</span>.....<span.class=" |
| 64fc0 | 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 72 | tok-comment">//.but.we.want.to.r |
| 64fe0 | 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 64 | eturn.it.if.the.function.succeed |
| 65000 | 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 6b | s.</span>.....<span.class="tok-k |
| 65020 | 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 6f | w">errdefer</span>.deallocateFoo |
| 65040 | 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 22 | (foo);......<span.class="tok-kw" |
| 65060 | 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 65 | >const</span>.tmp_buf.=.allocate |
| 65080 | 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 22 | TmpBuffer().<span.class="tok-kw" |
| 650a0 | 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 2d | >orelse</span>.<span.class="tok- |
| 650c0 | 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 |
| 650e0 | 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 3b | ok-kw">error</span>.OutOfMemory; |
| 65100 | 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">/ |
| 65120 | 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 72 | /.tmp_buf.is.truly.a.temporary.r |
| 65140 | 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 6f | esource,.and.we.for.sure.want.to |
| 65160 | 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 6c | .clean.it.up</span>.....<span.cl |
| 65180 | 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 73 | ass="tok-comment">//.before.this |
| 651a0 | 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 3c | .block.leaves.scope</span>.....< |
| 651c0 | 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> |
| 651e0 | 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 0a | .deallocateTmpBuffer(tmp_buf);.. |
| 65200 | 20 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 |
| 65220 | 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 2d | n>.(param.>.<span.class="tok- |
| 65240 | 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 73 | number">1337</span>).<span.class |
| 65260 | 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 |
| 65280 | 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 69 | ass="tok-kw">error</span>.Invali |
| 652a0 | 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 6f | dParam;......<span.class="tok-co |
| 652c0 | 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 6c | mment">//.here.the.errdefer.will |
| 652e0 | 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 73 | .not.run.since.we're.returning.s |
| 65300 | 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 3e | uccess.from.the.function.</span> |
| 65320 | 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">/ |
| 65340 | 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 3e | /.but.the.defer.will.run!</span> |
| 65360 | 0a 20 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 |
| 65380 | 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 67 | </span>.foo;.}</code></pre></fig |
| 653a0 | 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 68 | ure>.......<p>.......The.neat.th |
| 653c0 | 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 72 | ing.about.this.is.that.you.get.r |
| 653e0 | 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 20 | obust.error.handling.without.... |
| 65400 | 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 6f | ...the.verbosity.and.cognitive.o |
| 65420 | 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 65 | verhead.of.trying.to.make.sure.e |
| 65440 | 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 2e | very.exit.path.......is.covered. |
| 65460 | 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 73 | .The.deallocation.code.is.always |
| 65480 | 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 69 | .directly.following.the.allocati |
| 654a0 | 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 0a 20 20 20 20 20 | on.code........</p>............. |
| 654c0 | 20 3c 68 34 20 69 64 3d 22 43 6f 6d 6d 6f 6e 2d 65 72 72 64 65 66 65 72 2d 53 6c 69 70 2d 55 70 | .<h4.id="Common-errdefer-Slip-Up |
| 654e0 | 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6f 6d 6d 6f 6e 2d 65 72 72 64 65 66 65 72 | s"><a.href="#toc-Common-errdefer |
| 65500 | 2d 53 6c 69 70 2d 55 70 73 22 3e 43 6f 6d 6d 6f 6e 20 65 72 72 64 65 66 65 72 20 53 6c 69 70 2d | -Slip-Ups">Common.errdefer.Slip- |
| 65520 | 55 70 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 6f | Ups</a>.<a.class="hdr".href="#Co |
| 65540 | 6d 6d 6f 6e 2d 65 72 72 64 65 66 65 72 2d 53 6c 69 70 2d 55 70 73 22 3e c2 a7 3c 2f 61 3e 3c 2f | mmon-errdefer-Slip-Ups">..</a></ |
| 65560 | 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 73 68 6f 75 6c 64 20 62 | h4>........<p>.......It.should.b |
| 65580 | 65 20 6e 6f 74 65 64 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 | e.noted.that.<code><span.class=" |
| 655a0 | 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 | tok-kw">errdefer</span></code>.s |
| 655c0 | 74 61 74 65 6d 65 6e 74 73 20 6f 6e 6c 79 20 6c 61 73 74 20 75 6e 74 69 6c 20 74 68 65 20 65 6e | tatements.only.last.until.the.en |
| 655e0 | 64 20 6f 66 20 74 68 65 20 62 6c 6f 63 6b 0a 20 20 20 20 20 20 74 68 65 79 20 61 72 65 20 77 72 | d.of.the.block.......they.are.wr |
| 65600 | 69 74 74 65 6e 20 69 6e 2c 20 61 6e 64 20 74 68 65 72 65 66 6f 72 65 20 61 72 65 20 6e 6f 74 20 | itten.in,.and.therefore.are.not. |
| 65620 | 72 75 6e 20 69 66 20 61 6e 20 65 72 72 6f 72 20 69 73 20 72 65 74 75 72 6e 65 64 20 6f 75 74 73 | run.if.an.error.is.returned.outs |
| 65640 | 69 64 65 20 6f 66 20 74 68 61 74 20 62 6c 6f 63 6b 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ide.of.that.block:.......</p>... |
| 65660 | 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 |
| 65680 | 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_ |
| 656a0 | 65 72 72 64 65 66 65 72 5f 73 6c 69 70 5f 75 70 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 | errdefer_slip_ups.zig</cite></fi |
| 656c0 | 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= |
| 656e0 | 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 |
| 65700 | 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 |
| 65720 | 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">" |
| 65740 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ;std"</span>);.<span.class= |
| 65760 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 6c 6c 6f 63 61 74 6f 72 20 | "tok-kw">const</span>.Allocator. |
| 65780 | 3d 20 73 74 64 2e 6d 65 6d 2e 41 6c 6c 6f 63 61 74 6f 72 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | =.std.mem.Allocator;..<span.clas |
| 657a0 | 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 3c 73 | s="tok-kw">const</span>.Foo.=.<s |
| 657c0 | 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> |
| 657e0 | 20 7b 0a 20 20 20 20 64 61 74 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | .{.....data:.<span.class="tok-ty |
| 65800 | 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 61 73 73 3d | pe">u32</span>,.};..<span.class= |
| 65820 | 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=" |
| 65840 | 74 6f 6b 2d 66 6e 22 3e 74 72 79 54 6f 41 6c 6c 6f 63 61 74 65 46 6f 6f 3c 2f 73 70 61 6e 3e 28 | tok-fn">tryToAllocateFoo</span>( |
| 65860 | 61 6c 6c 6f 63 61 74 6f 72 3a 20 41 6c 6c 6f 63 61 74 6f 72 29 20 21 2a 46 6f 6f 20 7b 0a 20 20 | allocator:.Allocator).!*Foo.{... |
| 65880 | 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 |
| 658a0 | 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 63 72 65 61 74 65 28 46 6f 6f 29 3b 0a 7d 0a 0a 3c | pan>.allocator.create(Foo);.}..< |
| 658c0 | 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 |
| 658e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 65 61 6c 6c 6f 63 61 74 65 46 6f 6f | pan.class="tok-fn">deallocateFoo |
| 65900 | 3c 2f 73 70 61 6e 3e 28 61 6c 6c 6f 63 61 74 6f 72 3a 20 41 6c 6c 6f 63 61 74 6f 72 2c 20 66 6f | </span>(allocator:.Allocator,.fo |
| 65920 | 6f 3a 20 2a 46 6f 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | o:.*Foo).<span.class="tok-type"> |
| 65940 | 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 6c 6c 6f 63 61 74 6f 72 2e 64 65 73 74 | void</span>.{.....allocator.dest |
| 65960 | 72 6f 79 28 66 6f 6f 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 | roy(foo);.}..<span.class="tok-kw |
| 65980 | 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" |
| 659a0 | 3e 67 65 74 46 6f 6f 44 61 74 61 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 | >getFooData</span>().!<span.clas |
| 659c0 | 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 3c 73 | s="tok-type">u32</span>.{.....<s |
| 659e0 | 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> |
| 65a00 | 20 3c 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 36 36 3c 2f 73 | .<span.class="tok-number">666</s |
| 65a20 | 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 6e | pan>;.}..<span.class="tok-kw">fn |
| 65a40 | 3c 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 72 65 | </span>.<span.class="tok-fn">cre |
| 65a60 | 61 74 65 46 6f 6f 3c 2f 73 70 61 6e 3e 28 61 6c 6c 6f 63 61 74 6f 72 3a 20 41 6c 6c 6f 63 61 74 | ateFoo</span>(allocator:.Allocat |
| 65a80 | 6f 72 2c 20 70 61 72 61 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | or,.param:.<span.class="tok-type |
| 65aa0 | 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 21 2a 46 6f 6f 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | ">i32</span>).!*Foo.{.....<span. |
| 65ac0 | 63 6c 61 73 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 6f 6f 20 | class="tok-kw">const</span>.foo. |
| 65ae0 | 3d 20 67 65 74 46 6f 6f 3a 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | =.getFoo:.{.........<span.class= |
| 65b00 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 6f 6f 20 3d 20 3c 73 70 61 6e 20 | "tok-kw">var</span>.foo.=.<span. |
| 65b20 | 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 74 72 79 54 6f 41 | class="tok-kw">try</span>.tryToA |
| 65b40 | 6c 6c 6f 63 61 74 65 46 6f 6f 28 61 6c 6c 6f 63 61 74 6f 72 29 3b 0a 20 20 20 20 20 20 20 20 3c | llocateFoo(allocator);.........< |
| 65b60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 | span.class="tok-kw">errdefer</sp |
| 65b80 | 61 6e 3e 20 64 65 61 6c 6c 6f 63 61 74 65 46 6f 6f 28 61 6c 6c 6f 63 61 74 6f 72 2c 20 66 6f 6f | an>.deallocateFoo(allocator,.foo |
| 65ba0 | 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">//. |
| 65bc0 | 4f 6e 6c 79 20 6c 61 73 74 73 20 75 6e 74 69 6c 20 74 68 65 20 65 6e 64 20 6f 66 20 67 65 74 46 | Only.lasts.until.the.end.of.getF |
| 65be0 | 6f 6f 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 | oo</span>..........<span.class=" |
| 65c00 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 43 61 6c 6c 73 20 64 65 61 6c 6c 6f 63 61 74 65 | tok-comment">//.Calls.deallocate |
| 65c20 | 46 6f 6f 20 6f 6e 20 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 66 6f 6f 2e | Foo.on.error</span>.........foo. |
| 65c40 | 64 61 74 61 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 | data.=.<span.class="tok-kw">try< |
| 65c60 | 2f 73 70 61 6e 3e 20 67 65 74 46 6f 6f 44 61 74 61 28 29 3b 0a 0a 20 20 20 20 20 20 20 20 3c 73 | /span>.getFooData();..........<s |
| 65c80 | 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 20 | pan.class="tok-kw">break</span>. |
| 65ca0 | 3a 67 65 74 46 6f 6f 20 66 6f 6f 3b 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | :getFoo.foo;.....};......<span.c |
| 65cc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4f 75 74 73 69 64 65 20 6f 66 | lass="tok-comment">//.Outside.of |
| 65ce0 | 20 74 68 65 20 73 63 6f 70 65 20 6f 66 20 74 68 65 20 65 72 72 64 65 66 65 72 2c 20 73 6f 3c 2f | .the.scope.of.the.errdefer,.so</ |
| 65d00 | 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 |
| 65d20 | 6e 74 22 3e 2f 2f 20 64 65 61 6c 6c 6f 63 61 74 65 46 6f 6f 20 77 69 6c 6c 20 6e 6f 74 20 62 65 | nt">//.deallocateFoo.will.not.be |
| 65d40 | 20 63 61 6c 6c 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | .called.here</span>.....<span.cl |
| 65d60 | 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 61 6d 20 26 67 | ass="tok-kw">if</span>.(param.&g |
| 65d80 | 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 33 33 37 | t;.<span.class="tok-number">1337 |
| 65da0 | 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 72 65 | </span>).<span.class="tok-kw">re |
| 65dc0 | 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" |
| 65de0 | 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 49 6e 76 61 6c 69 64 50 61 72 61 6d 3b 0a 0a 20 20 20 | >error</span>.InvalidParam;..... |
| 65e00 | 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 |
| 65e20 | 61 6e 3e 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 | an>.foo;.}..<span.class="tok-kw" |
| 65e40 | 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 |
| 65e60 | 72 22 3e 26 71 75 6f 74 3b 63 72 65 61 74 65 46 6f 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | r">"createFoo"</span>. |
| 65e80 | 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</ |
| 65ea0 | 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 72 72 6f 72 28 3c 73 | span>.std.testing.expectError(<s |
| 65ec0 | 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>. |
| 65ee0 | 49 6e 76 61 6c 69 64 50 61 72 61 6d 2c 20 63 72 65 61 74 65 46 6f 6f 28 73 74 64 2e 74 65 73 74 | InvalidParam,.createFoo(std.test |
| 65f00 | 69 6e 67 2e 61 6c 6c 6f 63 61 74 6f 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ing.allocator,.<span.class="tok- |
| 65f20 | 6e 75 6d 62 65 72 22 3e 32 34 36 38 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | number">2468</span>));.}</code>< |
| 65f40 | 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 |
| 65f60 | 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 |
| 65f80 | 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 |
| 65fa0 | 20 74 65 73 74 5f 65 72 72 64 65 66 65 72 5f 73 6c 69 70 5f 75 70 73 2e 7a 69 67 3c 2f 6b 62 64 | .test_errdefer_slip_ups.zig</kbd |
| 65fc0 | 3e 0a 31 2f 31 20 74 65 73 74 5f 65 72 72 64 65 66 65 72 5f 73 6c 69 70 5f 75 70 73 2e 74 65 73 | >.1/1.test_errdefer_slip_ups.tes |
| 65fe0 | 74 2e 63 72 65 61 74 65 46 6f 6f 2e 2e 2e 4f 4b 0a 5b 67 70 61 5d 20 28 65 72 72 29 3a 20 6d 65 | t.createFoo...OK.[gpa].(err):.me |
| 66000 | 6d 6f 72 79 20 61 64 64 72 65 73 73 20 30 78 37 66 31 31 66 35 32 31 61 30 30 30 20 6c 65 61 6b | mory.address.0x7f11f521a000.leak |
| 66020 | 65 64 3a 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 | ed:.<span.class="sgr-1m">/home/a |
| 66040 | 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 65 72 72 | ndy/src/zig/doc/langref/test_err |
| 66060 | 64 65 66 65 72 5f 73 6c 69 70 5f 75 70 73 2e 7a 69 67 3a 39 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 | defer_slip_ups.zig:9:28</span>:. |
| 66080 | 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 64 33 63 66 20 69 | <span.class="sgr-2m">0x103d3cf.i |
| 660a0 | 6e 20 74 72 79 54 6f 41 6c 6c 6f 63 61 74 65 46 6f 6f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | n.tryToAllocateFoo.(test)</span> |
| 660c0 | 0a 20 20 20 20 72 65 74 75 72 6e 20 61 6c 6c 6f 63 61 74 6f 72 2e 63 72 65 61 74 65 28 46 6f 6f | .....return.allocator.create(Foo |
| 660e0 | 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 | );............................<s |
| 66100 | 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 |
| 66120 | 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 73 72 63 | an.class="sgr-1m">/home/andy/src |
| 66140 | 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 65 72 72 64 65 66 65 72 5f 73 | /zig/doc/langref/test_errdefer_s |
| 66160 | 6c 69 70 5f 75 70 73 2e 7a 69 67 3a 32 32 3a 33 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | lip_ups.zig:22:39</span>:.<span. |
| 66180 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 64 35 65 35 20 69 6e 20 63 72 65 61 | class="sgr-2m">0x103d5e5.in.crea |
| 661a0 | 74 65 46 6f 6f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 76 61 72 20 | teFoo.(test)</span>.........var. |
| 661c0 | 66 6f 6f 20 3d 20 74 72 79 20 74 72 79 54 6f 41 6c 6c 6f 63 61 74 65 46 6f 6f 28 61 6c 6c 6f 63 | foo.=.try.tryToAllocateFoo(alloc |
| 661e0 | 61 74 6f 72 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ator);.......................... |
| 66200 | 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 |
| 66220 | 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" |
| 66240 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f | >/home/andy/src/zig/doc/langref/ |
| 66260 | 74 65 73 74 5f 65 72 72 64 65 66 65 72 5f 73 6c 69 70 5f 75 70 73 2e 7a 69 67 3a 33 39 3a 36 32 | test_errdefer_slip_ups.zig:39:62 |
| 66280 | 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 |
| 662a0 | 31 30 33 64 38 32 64 20 69 6e 20 74 65 73 74 2e 63 72 65 61 74 65 46 6f 6f 20 28 74 65 73 74 29 | 103d82d.in.test.createFoo.(test) |
| 662c0 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 74 72 79 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 | </span>.....try.std.testing.expe |
| 662e0 | 63 74 45 72 72 6f 72 28 65 72 72 6f 72 2e 49 6e 76 61 6c 69 64 50 61 72 61 6d 2c 20 63 72 65 61 | ctError(error.InvalidParam,.crea |
| 66300 | 74 65 46 6f 6f 28 73 74 64 2e 74 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 61 74 6f 72 2c 20 32 34 36 | teFoo(std.testing.allocator,.246 |
| 66320 | 38 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | 8));............................ |
| 66340 | 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 | ................................ |
| 66360 | 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> |
| 66380 | 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 |
| 663a0 | 2f 73 72 63 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 | /src/zig/lib/compiler/test_runne |
| 663c0 | 72 2e 7a 69 67 3a 31 35 37 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:157:25</span>:.<span.class |
| 663e0 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 64 32 61 30 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 | ="sgr-2m">0x104d2a0.in.mainTermi |
| 66400 | 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 |
| 66420 | 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()).|_|.{............. |
| 66440 | 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 |
| 66460 | 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"> |
| 66480 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f | /home/andy/src/zig/lib/compiler/ |
| 664a0 | 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 33 37 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | test_runner.zig:37:28</span>:.<s |
| 664c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 33 34 30 62 20 69 6e 20 | pan.class="sgr-2m">0x104340b.in. |
| 664e0 | 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 |
| 66500 | 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();............... |
| 66520 | 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 |
| 66540 | 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" |
| 66560 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 | >/home/andy/src/zig/lib/std/star |
| 66580 | 74 2e 7a 69 67 3a 35 31 34 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:514:22</span>:.<span.class |
| 665a0 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 66 39 66 39 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c | ="sgr-2m">0x103f9f9.in.posixCall |
| 665c0 | 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>....... |
| 665e0 | 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();.............. |
| 66600 | 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">^< |
| 66620 | 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 |
| 66640 | 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 | e/andy/src/zig/lib/std/start.zig |
| 66660 | 3a 32 36 36 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 | :266:5</span>:.<span.class="sgr- |
| 66680 | 32 6d 22 3e 30 78 31 30 33 66 35 36 31 20 69 6e 20 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f | 2m">0x103f561.in._start.(test)</ |
| 666a0 | 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.( |
| 666c0 | 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=" |
| 666e0 | 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 74 65 73 74 73 20 70 | sgr-32m">^</span>..All.1.tests.p |
| 66700 | 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 65 64 2e 0a 31 20 74 | assed..1.errors.were.logged..1.t |
| 66720 | 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 3a 20 74 68 65 20 66 | ests.leaked.memory..error:.the.f |
| 66740 | 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 |
| 66760 | 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 73 72 63 2f 7a 69 | h.exit.code.1:./home/andy/src/zi |
| 66780 | 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 35 38 63 30 37 39 63 62 35 35 30 61 64 64 65 66 61 | g/.zig-cache/o/58c079cb550addefa |
| 667a0 | 61 33 35 34 66 37 32 64 37 33 36 61 66 64 37 2f 74 65 73 74 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 | a354f72d736afd7/test.</samp></pr |
| 667c0 | 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 6f 20 | e></figure>........<p>.......To. |
| 667e0 | 65 6e 73 75 72 65 20 74 68 61 74 20 3c 63 6f 64 65 3e 64 65 61 6c 6c 6f 63 61 74 65 46 6f 6f 3c | ensure.that.<code>deallocateFoo< |
| 66800 | 2f 63 6f 64 65 3e 20 69 73 20 70 72 6f 70 65 72 6c 79 20 63 61 6c 6c 65 64 0a 20 20 20 20 20 20 | /code>.is.properly.called....... |
| 66820 | 77 68 65 6e 20 72 65 74 75 72 6e 69 6e 67 20 61 6e 20 65 72 72 6f 72 2c 20 79 6f 75 20 6d 75 73 | when.returning.an.error,.you.mus |
| 66840 | 74 20 61 64 64 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 | t.add.an.<code><span.class="tok- |
| 66860 | 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 6f 75 74 73 69 | kw">errdefer</span></code>.outsi |
| 66880 | 64 65 20 6f 66 20 74 68 65 20 62 6c 6f 63 6b 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | de.of.the.block:.......</p>..... |
| 668a0 | 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 |
| 668c0 | 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 65 72 | -cap"><cite.class="file">test_er |
| 668e0 | 72 64 65 66 65 72 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 | rdefer_block.zig</cite></figcapt |
| 66900 | 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- |
| 66920 | 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 |
| 66940 | 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>( |
| 66960 | 3c 73 70 61 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& |
| 66980 | 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- |
| 669a0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 6c 6c 6f 63 61 74 6f 72 20 3d 20 73 74 64 | kw">const</span>.Allocator.=.std |
| 669c0 | 2e 6d 65 6d 2e 41 6c 6c 6f 63 61 74 6f 72 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .mem.Allocator;..<span.class="to |
| 669e0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 | k-kw">const</span>.Foo.=.<span.c |
| 66a00 | 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>.{... |
| 66a20 | 20 20 64 61 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 22 3e 75 | ..data:.<span.class="tok-type">u |
| 66a40 | 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 2d | 32</span>,.};..<span.class="tok- |
| 66a60 | 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 |
| 66a80 | 6e 22 3e 74 72 79 54 6f 41 6c 6c 6f 63 61 74 65 46 6f 6f 3c 2f 73 70 61 6e 3e 28 61 6c 6c 6f 63 | n">tryToAllocateFoo</span>(alloc |
| 66aa0 | 61 74 6f 72 3a 20 41 6c 6c 6f 63 61 74 6f 72 29 20 21 2a 46 6f 6f 20 7b 0a 20 20 20 20 3c 73 70 | ator:.Allocator).!*Foo.{.....<sp |
| 66ac0 | 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>. |
| 66ae0 | 61 6c 6c 6f 63 61 74 6f 72 2e 63 72 65 61 74 65 28 46 6f 6f 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | allocator.create(Foo);.}..<span. |
| 66b00 | 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 |
| 66b20 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 65 61 6c 6c 6f 63 61 74 65 46 6f 6f 3c 2f 73 70 61 | lass="tok-fn">deallocateFoo</spa |
| 66b40 | 6e 3e 28 61 6c 6c 6f 63 61 74 6f 72 3a 20 41 6c 6c 6f 63 61 74 6f 72 2c 20 66 6f 6f 3a 20 2a 46 | n>(allocator:.Allocator,.foo:.*F |
| 66b60 | 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 69 64 3c | oo).<span.class="tok-type">void< |
| 66b80 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 6c 6c 6f 63 61 74 6f 72 2e 64 65 73 74 72 6f 79 28 66 | /span>.{.....allocator.destroy(f |
| 66ba0 | 6f 6f 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 | oo);.}..<span.class="tok-kw">fn< |
| 66bc0 | 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 67 65 74 46 | /span>.<span.class="tok-fn">getF |
| 66be0 | 6f 6f 44 61 74 61 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 | ooData</span>().!<span.class="to |
| 66c00 | 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 |
| 66c20 | 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 |
| 66c40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 36 36 3c 2f 73 70 61 6e 3e 3b | n.class="tok-number">666</span>; |
| 66c60 | 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 |
| 66c80 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 63 72 65 61 74 65 46 6f | n>.<span.class="tok-fn">createFo |
| 66ca0 | 6f 3c 2f 73 70 61 6e 3e 28 61 6c 6c 6f 63 61 74 6f 72 3a 20 41 6c 6c 6f 63 61 74 6f 72 2c 20 70 | o</span>(allocator:.Allocator,.p |
| 66cc0 | 61 72 61 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 69 33 32 | aram:.<span.class="tok-type">i32 |
| 66ce0 | 3c 2f 73 70 61 6e 3e 29 20 21 2a 46 6f 6f 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | </span>).!*Foo.{.....<span.class |
| 66d00 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 6f 6f 20 3d 20 67 65 74 | ="tok-kw">const</span>.foo.=.get |
| 66d20 | 46 6f 6f 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 6b 2d | Foo:.{.........<span.class="tok- |
| 66d40 | 6b 77 22 3e 76 61 72 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 | kw">var</span>.foo.=.<span.class |
| 66d60 | 3d 22 74 6f 6b 2d 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 | ="tok-kw">try</span>.tryToAlloca |
| 66d80 | 74 65 46 6f 6f 28 61 6c 6c 6f 63 61 74 6f 72 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | teFoo(allocator);.........<span. |
| 66da0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 64 | class="tok-kw">errdefer</span>.d |
| 66dc0 | 65 61 6c 6c 6f 63 61 74 65 46 6f 6f 28 61 6c 6c 6f 63 61 74 6f 72 2c 20 66 6f 6f 29 3b 0a 0a 20 | eallocateFoo(allocator,.foo);... |
| 66de0 | 20 20 20 20 20 20 20 66 6f 6f 2e 64 61 74 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .......foo.data.=.<span.class="t |
| 66e00 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 67 65 74 46 6f 6f 44 61 74 61 28 29 3b 0a | ok-kw">try</span>.getFooData();. |
| 66e20 | 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 72 | .........<span.class="tok-kw">br |
| 66e40 | 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 67 65 74 46 6f 6f 20 66 6f 6f 3b 0a 20 20 20 20 7d 3b 0a 20 | eak</span>.:getFoo.foo;.....};.. |
| 66e60 | 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">//. |
| 66e80 | 54 68 69 73 20 6c 61 73 74 73 20 66 6f 72 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 65 20 66 | This.lasts.for.the.rest.of.the.f |
| 66ea0 | 75 6e 63 74 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 | unction</span>.....<span.class=" |
| 66ec0 | 74 6f 6b 2d 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 | tok-kw">errdefer</span>.dealloca |
| 66ee0 | 74 65 46 6f 6f 28 61 6c 6c 6f 63 61 74 6f 72 2c 20 66 6f 6f 29 3b 0a 0a 20 20 20 20 3c 73 70 61 | teFoo(allocator,.foo);......<spa |
| 66f00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 72 72 6f 72 20 69 | n.class="tok-comment">//.Error.i |
| 66f20 | 73 20 6e 6f 77 20 70 72 6f 70 65 72 6c 79 20 68 61 6e 64 6c 65 64 20 62 79 20 65 72 72 64 65 66 | s.now.properly.handled.by.errdef |
| 66f40 | 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 6b 2d 6b | er</span>.....<span.class="tok-k |
| 66f60 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 70 61 72 61 6d 20 26 67 74 3b 20 3c 73 70 61 6e 20 63 | w">if</span>.(param.>.<span.c |
| 66f80 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 33 33 37 3c 2f 73 70 61 6e 3e 29 20 3c | lass="tok-number">1337</span>).< |
| 66fa0 | 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 |
| 66fc0 | 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 |
| 66fe0 | 61 6e 3e 2e 49 6e 76 61 6c 69 64 50 61 72 61 6d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | an>.InvalidParam;......<span.cla |
| 67000 | 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 6f 6f 3b 0a 7d | ss="tok-kw">return</span>.foo;.} |
| 67020 | 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 |
| 67040 | 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 63 | n>.<span.class="tok-str">"c |
| 67060 | 72 65 61 74 65 46 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 | reateFoo"</span>.{.....<spa |
| 67080 | 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. |
| 670a0 | 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 45 72 72 6f 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | testing.expectError(<span.class= |
| 670c0 | 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 69 64 50 61 72 | "tok-kw">error</span>.InvalidPar |
| 670e0 | 61 6d 2c 20 63 72 65 61 74 65 46 6f 6f 28 73 74 64 2e 74 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 61 | am,.createFoo(std.testing.alloca |
| 67100 | 74 6f 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 32 34 | tor,.<span.class="tok-number">24 |
| 67120 | 36 38 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | 68</span>));.}</code></pre></fig |
| 67140 | 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 |
| 67160 | 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 |
| 67180 | 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 72 72 64 | ><samp>$.<kbd>zig.test.test_errd |
| 671a0 | 65 66 65 72 5f 62 6c 6f 63 6b 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 65 72 | efer_block.zig</kbd>.1/1.test_er |
| 671c0 | 72 64 65 66 65 72 5f 62 6c 6f 63 6b 2e 74 65 73 74 2e 63 72 65 61 74 65 46 6f 6f 2e 2e 2e 4f 4b | rdefer_block.test.createFoo...OK |
| 671e0 | 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 |
| 67200 | 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 65 | e></figure>........<p>.......The |
| 67220 | 20 66 61 63 74 20 74 68 61 74 20 65 72 72 64 65 66 65 72 73 20 6f 6e 6c 79 20 6c 61 73 74 20 66 | .fact.that.errdefers.only.last.f |
| 67240 | 6f 72 20 74 68 65 20 62 6c 6f 63 6b 20 74 68 65 79 20 61 72 65 20 64 65 63 6c 61 72 65 64 20 69 | or.the.block.they.are.declared.i |
| 67260 | 6e 20 69 73 0a 20 20 20 20 20 20 65 73 70 65 63 69 61 6c 6c 79 20 69 6d 70 6f 72 74 61 6e 74 20 | n.is.......especially.important. |
| 67280 | 77 68 65 6e 20 75 73 69 6e 67 20 6c 6f 6f 70 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | when.using.loops:.......</p>.... |
| 672a0 | 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 |
| 672c0 | 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 65 | g-cap"><cite.class="file">test_e |
| 672e0 | 72 72 64 65 66 65 72 5f 6c 6f 6f 70 5f 6c 65 61 6b 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 | rrdefer_loop_leak.zig</cite></fi |
| 67300 | 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= |
| 67320 | 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 |
| 67340 | 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 |
| 67360 | 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">" |
| 67380 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ;std"</span>);.<span.class= |
| 673a0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 6c 6c 6f 63 61 74 6f 72 20 | "tok-kw">const</span>.Allocator. |
| 673c0 | 3d 20 73 74 64 2e 6d 65 6d 2e 41 6c 6c 6f 63 61 74 6f 72 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | =.std.mem.Allocator;..<span.clas |
| 673e0 | 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 3c 73 | s="tok-kw">const</span>.Foo.=.<s |
| 67400 | 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> |
| 67420 | 20 7b 20 64 61 74 61 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 | .{.data:.*<span.class="tok-type" |
| 67440 | 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 74 6f 6b | >u32</span>.};..<span.class="tok |
| 67460 | 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- |
| 67480 | 66 6e 22 3e 67 65 74 44 61 74 61 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 | fn">getData</span>().!<span.clas |
| 674a0 | 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 3c 73 | s="tok-type">u32</span>.{.....<s |
| 674c0 | 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> |
| 674e0 | 20 3c 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 36 36 3c 2f 73 | .<span.class="tok-number">666</s |
| 67500 | 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 6e | pan>;.}..<span.class="tok-kw">fn |
| 67520 | 3c 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 67 65 6e | </span>.<span.class="tok-fn">gen |
| 67540 | 46 6f 6f 73 3c 2f 73 70 61 6e 3e 28 61 6c 6c 6f 63 61 74 6f 72 3a 20 41 6c 6c 6f 63 61 74 6f 72 | Foos</span>(allocator:.Allocator |
| 67560 | 2c 20 6e 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 | ,.num:.<span.class="tok-type">us |
| 67580 | 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 21 5b 5d 46 6f 6f 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ize</span>).![]Foo.{.....<span.c |
| 675a0 | 6c 61 73 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 6f 6f 73 20 | lass="tok-kw">const</span>.foos. |
| 675c0 | 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 6e | =.<span.class="tok-kw">try</span |
| 675e0 | 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 61 6c 6c 6f 63 28 46 6f 6f 2c 20 6e 75 6d 29 3b 0a 20 20 20 | >.allocator.alloc(Foo,.num);.... |
| 67600 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f | .<span.class="tok-kw">errdefer</ |
| 67620 | 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 66 72 65 65 28 66 6f 6f 73 29 3b 0a 0a 20 20 20 | span>.allocator.free(foos);..... |
| 67640 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">for</span> |
| 67660 | 20 28 66 6f 6f 73 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 | .(foos,.<span.class="tok-number" |
| 67680 | 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 29 20 7c 2a 66 6f 6f 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 20 | >0</span>..).|*foo,.i|.{........ |
| 676a0 | 20 66 6f 6f 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 6b 77 22 | .foo.data.=.<span.class="tok-kw" |
| 676c0 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 63 72 65 61 74 65 28 3c 73 70 | >try</span>.allocator.create(<sp |
| 676e0 | 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 3b | an.class="tok-type">u32</span>); |
| 67700 | 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 |
| 67720 | 74 22 3e 2f 2f 20 54 68 69 73 20 65 72 72 64 65 66 65 72 20 64 6f 65 73 20 6e 6f 74 20 6c 61 73 | t">//.This.errdefer.does.not.las |
| 67740 | 74 20 62 65 74 77 65 65 6e 20 69 74 65 72 61 74 69 6f 6e 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | t.between.iterations</span>..... |
| 67760 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 | ....<span.class="tok-kw">errdefe |
| 67780 | 72 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 64 65 73 74 72 6f 79 28 66 6f 6f 2e 64 | r</span>.allocator.destroy(foo.d |
| 677a0 | 61 74 61 29 3b 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ata);..........<span.class="tok- |
| 677c0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 64 61 74 61 20 66 6f 72 20 74 68 65 20 66 69 72 | comment">//.The.data.for.the.fir |
| 677e0 | 73 74 20 33 20 66 6f 6f 73 20 77 69 6c 6c 20 62 65 20 6c 65 61 6b 65 64 3c 2f 73 70 61 6e 3e 0a | st.3.foos.will.be.leaked</span>. |
| 67800 | 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< |
| 67820 | 2f 73 70 61 6e 3e 20 28 69 20 26 67 74 3b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>.(i.>=.<span.class="tok |
| 67840 | 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -number">3</span>).<span.class=" |
| 67860 | 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 |
| 67880 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 54 6f 6f 4d 61 6e 79 46 | s="tok-kw">error</span>.TooManyF |
| 678a0 | 6f 6f 73 3b 0a 0a 20 20 20 20 20 20 20 20 66 6f 6f 2e 64 61 74 61 2e 2a 20 3d 20 3c 73 70 61 6e | oos;..........foo.data.*.=.<span |
| 678c0 | 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 67 65 74 44 61 | .class="tok-kw">try</span>.getDa |
| 678e0 | 74 61 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 74 6f | ta();.....}......<span.class="to |
| 67900 | 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 66 6f 6f 73 3b 0a 7d 0a 0a 3c 73 70 | k-kw">return</span>.foos;.}..<sp |
| 67920 | 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 |
| 67940 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 65 6e 46 6f 6f | pan.class="tok-str">"genFoo |
| 67960 | 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 |
| 67980 | 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 |
| 679a0 | 2e 65 78 70 65 63 74 45 72 72 6f 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .expectError(<span.class="tok-kw |
| 679c0 | 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 54 6f 6f 4d 61 6e 79 46 6f 6f 73 2c 20 67 65 6e 46 | ">error</span>.TooManyFoos,.genF |
| 679e0 | 6f 6f 73 28 73 74 64 2e 74 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 61 74 6f 72 2c 20 3c 73 70 61 6e | oos(std.testing.allocator,.<span |
| 67a00 | 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 29 3b 0a | .class="tok-number">5</span>));. |
| 67a20 | 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>< |
| 67a40 | 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 |
| 67a60 | 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 |
| 67a80 | 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 65 72 72 64 65 66 65 72 5f 6c 6f 6f 70 5f 6c 65 61 | >zig.test.test_errdefer_loop_lea |
| 67aa0 | 6b 2e 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 6c 6f | k.zig</kbd>.1/1.test_errdefer_lo |
| 67ac0 | 6f 70 5f 6c 65 61 6b 2e 74 65 73 74 2e 67 65 6e 46 6f 6f 73 2e 2e 2e 4f 4b 0a 5b 67 70 61 5d 20 | op_leak.test.genFoos...OK.[gpa]. |
| 67ae0 | 28 65 72 72 29 3a 20 6d 65 6d 6f 72 79 20 61 64 64 72 65 73 73 20 30 78 37 66 35 37 63 37 35 37 | (err):.memory.address.0x7f57c757 |
| 67b00 | 38 30 30 30 20 6c 65 61 6b 65 64 3a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d | 8000.leaked:.<span.class="sgr-1m |
| 67b20 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 | ">/home/andy/src/zig/doc/langref |
| 67b40 | 2f 74 65 73 74 5f 65 72 72 64 65 66 65 72 5f 6c 6f 6f 70 5f 6c 65 61 6b 2e 7a 69 67 3a 31 35 3a | /test_errdefer_loop_leak.zig:15: |
| 67b60 | 34 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 22 3e | 40</span>:.<span.class="sgr-2m"> |
| 67b80 | 30 78 31 30 33 64 37 61 36 20 69 6e 20 67 65 6e 46 6f 6f 73 20 28 74 65 73 74 29 3c 2f 73 70 61 | 0x103d7a6.in.genFoos.(test)</spa |
| 67ba0 | 6e 3e 0a 20 20 20 20 20 20 20 20 66 6f 6f 2e 64 61 74 61 20 3d 20 74 72 79 20 61 6c 6c 6f 63 61 | n>.........foo.data.=.try.alloca |
| 67bc0 | 74 6f 72 2e 63 72 65 61 74 65 28 75 33 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | tor.create(u32);................ |
| 67be0 | 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 |
| 67c00 | 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 |
| 67c20 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 | ss="sgr-1m">/home/andy/src/zig/d |
| 67c40 | 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 65 72 72 64 65 66 65 72 5f 6c 6f 6f 70 5f 6c 65 | oc/langref/test_errdefer_loop_le |
| 67c60 | 61 6b 2e 7a 69 67 3a 32 39 3a 35 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ak.zig:29:59</span>:.<span.class |
| 67c80 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 65 30 64 64 20 69 6e 20 74 65 73 74 2e 67 65 6e 46 | ="sgr-2m">0x103e0dd.in.test.genF |
| 67ca0 | 6f 6f 73 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 65 | oos.(test)</span>.....try.std.te |
| 67cc0 | 73 74 69 6e 67 2e 65 78 70 65 63 74 45 72 72 6f 72 28 65 72 72 6f 72 2e 54 6f 6f 4d 61 6e 79 46 | sting.expectError(error.TooManyF |
| 67ce0 | 6f 6f 73 2c 20 67 65 6e 46 6f 6f 73 28 73 74 64 2e 74 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 61 74 | oos,.genFoos(std.testing.allocat |
| 67d00 | 6f 72 2c 20 35 29 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 | or,.5));........................ |
| 67d20 | 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 | ................................ |
| 67d40 | 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 |
| 67d60 | 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 |
| 67d80 | 79 2f 73 72 63 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/src/zig/lib/compiler/test_runn |
| 67da0 | 65 72 2e 7a 69 67 3a 31 35 37 3a 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | er.zig:157:25</span>:.<span.clas |
| 67dc0 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 65 30 31 30 20 69 6e 20 6d 61 69 6e 54 65 72 6d | s="sgr-2m">0x104e010.in.mainTerm |
| 67de0 | 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 |
| 67e00 | 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()).|_|.{............ |
| 67e20 | 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 |
| 67e40 | 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" |
| 67e60 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 | >/home/andy/src/zig/lib/compiler |
| 67e80 | 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 33 37 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c | /test_runner.zig:37:28</span>:.< |
| 67ea0 | 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 33 65 61 62 20 69 6e | span.class="sgr-2m">0x1043eab.in |
| 67ec0 | 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 |
| 67ee0 | 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();.............. |
| 67f00 | 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 |
| 67f20 | 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 |
| 67f40 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 | ">/home/andy/src/zig/lib/std/sta |
| 67f60 | 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | rt.zig:514:22</span>:.<span.clas |
| 67f80 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 30 32 61 39 20 69 6e 20 70 6f 73 69 78 43 61 6c | s="sgr-2m">0x10402a9.in.posixCal |
| 67fa0 | 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>...... |
| 67fc0 | 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();............. |
| 67fe0 | 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">^ |
| 68000 | 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 |
| 68020 | 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | me/andy/src/zig/lib/std/start.zi |
| 68040 | 67 3a 32 36 36 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:266:5</span>:.<span.class="sgr |
| 68060 | 2d 32 6d 22 3e 30 78 31 30 33 66 65 31 31 20 69 6e 20 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c | -2m">0x103fe11.in._start.(test)< |
| 68080 | 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. |
| 680a0 | 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= |
| 680c0 | 22 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 0a 5b 67 70 61 5d 20 28 65 72 72 29 3a | "sgr-32m">^</span>..[gpa].(err): |
| 680e0 | 20 6d 65 6d 6f 72 79 20 61 64 64 72 65 73 73 20 30 78 37 66 35 37 63 37 35 37 38 30 30 34 20 6c | .memory.address.0x7f57c7578004.l |
| 68100 | 65 61 6b 65 64 3a 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 | eaked:.<span.class="sgr-1m">/hom |
| 68120 | 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f | e/andy/src/zig/doc/langref/test_ |
| 68140 | 65 72 72 64 65 66 65 72 5f 6c 6f 6f 70 5f 6c 65 61 6b 2e 7a 69 67 3a 31 35 3a 34 30 3c 2f 73 70 | errdefer_loop_leak.zig:15:40</sp |
| 68160 | 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 33 64 | an>:.<span.class="sgr-2m">0x103d |
| 68180 | 37 61 36 20 69 6e 20 67 65 6e 46 6f 6f 73 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | 7a6.in.genFoos.(test)</span>.... |
| 681a0 | 20 20 20 20 20 66 6f 6f 2e 64 61 74 61 20 3d 20 74 72 79 20 61 6c 6c 6f 63 61 74 6f 72 2e 63 72 | .....foo.data.=.try.allocator.cr |
| 681c0 | 65 61 74 65 28 75 33 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | eate(u32);...................... |
| 681e0 | 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 |
| 68200 | 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 |
| 68220 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e | r-1m">/home/andy/src/zig/doc/lan |
| 68240 | 67 72 65 66 2f 74 65 73 74 5f 65 72 72 64 65 66 65 72 5f 6c 6f 6f 70 5f 6c 65 61 6b 2e 7a 69 67 | gref/test_errdefer_loop_leak.zig |
| 68260 | 3a 32 39 3a 35 39 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 | :29:59</span>:.<span.class="sgr- |
| 68280 | 32 6d 22 3e 30 78 31 30 33 65 30 64 64 20 69 6e 20 74 65 73 74 2e 67 65 6e 46 6f 6f 73 20 28 74 | 2m">0x103e0dd.in.test.genFoos.(t |
| 682a0 | 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 65 73 74 69 6e 67 2e | est)</span>.....try.std.testing. |
| 682c0 | 65 78 70 65 63 74 45 72 72 6f 72 28 65 72 72 6f 72 2e 54 6f 6f 4d 61 6e 79 46 6f 6f 73 2c 20 67 | expectError(error.TooManyFoos,.g |
| 682e0 | 65 6e 46 6f 6f 73 28 73 74 64 2e 74 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 61 74 6f 72 2c 20 35 29 | enFoos(std.testing.allocator,.5) |
| 68300 | 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | );.............................. |
| 68320 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | .............................<sp |
| 68340 | 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 |
| 68360 | 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 73 72 63 2f | n.class="sgr-1m">/home/andy/src/ |
| 68380 | 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 |
| 683a0 | 3a 31 35 37 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 | :157:25</span>:.<span.class="sgr |
| 683c0 | 2d 32 6d 22 3e 30 78 31 30 34 65 30 31 30 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 20 28 | -2m">0x104e010.in.mainTerminal.( |
| 683e0 | 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 |
| 68400 | 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()).|_|.{.................. |
| 68420 | 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">^</ |
| 68440 | 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 |
| 68460 | 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f | /andy/src/zig/lib/compiler/test_ |
| 68480 | 72 75 6e 6e 65 72 2e 7a 69 67 3a 33 37 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | runner.zig:37:28</span>:.<span.c |
| 684a0 | 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 33 65 61 62 20 69 6e 20 6d 61 69 6e 20 | lass="sgr-2m">0x1043eab.in.main. |
| 684c0 | 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 |
| 684e0 | 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();.................... |
| 68500 | 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">^< |
| 68520 | 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 |
| 68540 | 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 | e/andy/src/zig/lib/std/start.zig |
| 68560 | 3a 35 31 34 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 | :514:22</span>:.<span.class="sgr |
| 68580 | 2d 32 6d 22 3e 30 78 31 30 34 30 32 61 39 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 | -2m">0x10402a9.in.posixCallMainA |
| 685a0 | 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>............ |
| 685c0 | 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();................... |
| 685e0 | 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 |
| 68600 | 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 |
| 68620 | 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 36 36 3a | y/src/zig/lib/std/start.zig:266: |
| 68640 | 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 |
| 68660 | 78 31 30 33 66 65 31 31 20 69 6e 20 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | x103fe11.in._start.(test)</span> |
| 68680 | 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 |
| 686a0 | 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 |
| 686c0 | 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 0a 5b 67 70 61 5d 20 28 65 72 72 29 3a 20 6d 65 6d 6f 72 | 2m">^</span>..[gpa].(err):.memor |
| 686e0 | 79 20 61 64 64 72 65 73 73 20 30 78 37 66 35 37 63 37 35 37 38 30 30 38 20 6c 65 61 6b 65 64 3a | y.address.0x7f57c7578008.leaked: |
| 68700 | 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 |
| 68720 | 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 65 72 72 64 65 66 | /src/zig/doc/langref/test_errdef |
| 68740 | 65 72 5f 6c 6f 6f 70 5f 6c 65 61 6b 2e 7a 69 67 3a 31 35 3a 34 30 3c 2f 73 70 61 6e 3e 3a 20 3c | er_loop_leak.zig:15:40</span>:.< |
| 68760 | 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 64 37 61 36 20 69 6e | span.class="sgr-2m">0x103d7a6.in |
| 68780 | 20 67 65 6e 46 6f 6f 73 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 66 | .genFoos.(test)</span>.........f |
| 687a0 | 6f 6f 2e 64 61 74 61 20 3d 20 74 72 79 20 61 6c 6c 6f 63 61 74 6f 72 2e 63 72 65 61 74 65 28 75 | oo.data.=.try.allocator.create(u |
| 687c0 | 33 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | 32);............................ |
| 687e0 | 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 |
| 68800 | 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"> |
| 68820 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 | /home/andy/src/zig/doc/langref/t |
| 68840 | 65 73 74 5f 65 72 72 64 65 66 65 72 5f 6c 6f 6f 70 5f 6c 65 61 6b 2e 7a 69 67 3a 32 39 3a 35 39 | est_errdefer_loop_leak.zig:29:59 |
| 68860 | 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 |
| 68880 | 31 30 33 65 30 64 64 20 69 6e 20 74 65 73 74 2e 67 65 6e 46 6f 6f 73 20 28 74 65 73 74 29 3c 2f | 103e0dd.in.test.genFoos.(test)</ |
| 688a0 | 73 70 61 6e 3e 0a 20 20 20 20 74 72 79 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 | span>.....try.std.testing.expect |
| 688c0 | 45 72 72 6f 72 28 65 72 72 6f 72 2e 54 6f 6f 4d 61 6e 79 46 6f 6f 73 2c 20 67 65 6e 46 6f 6f 73 | Error(error.TooManyFoos,.genFoos |
| 688e0 | 28 73 74 64 2e 74 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 61 74 6f 72 2c 20 35 29 29 3b 0a 20 20 20 | (std.testing.allocator,.5));.... |
| 68900 | 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 | ................................ |
| 68920 | 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 |
| 68940 | 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 |
| 68960 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 | s="sgr-1m">/home/andy/src/zig/li |
| 68980 | 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 31 35 37 3a 32 | b/compiler/test_runner.zig:157:2 |
| 689a0 | 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 |
| 689c0 | 78 31 30 34 65 30 31 30 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 20 28 74 65 73 74 29 3c | x104e010.in.mainTerminal.(test)< |
| 689e0 | 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 28 | /span>.........if.(test_fn.func( |
| 68a00 | 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 20 | )).|_|.{........................ |
| 68a20 | 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>. |
| 68a40 | 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/ |
| 68a60 | 73 72 63 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 72 | src/zig/lib/compiler/test_runner |
| 68a80 | 2e 7a 69 67 3a 33 37 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 | .zig:37:28</span>:.<span.class=" |
| 68aa0 | 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 33 65 61 62 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 | sgr-2m">0x1043eab.in.main.(test) |
| 68ac0 | 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 69 | </span>.........return.mainTermi |
| 68ae0 | 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 20 | nal();.......................... |
| 68b00 | 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> |
| 68b20 | 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 |
| 68b40 | 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 | /src/zig/lib/std/start.zig:514:2 |
| 68b60 | 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 |
| 68b80 | 78 31 30 34 30 32 61 39 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 | x10402a9.in.posixCallMainAndExit |
| 68ba0 | 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 2e | .(test)</span>.............root. |
| 68bc0 | 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 |
| 68be0 | 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 |
| 68c00 | 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 73 72 63 2f | n.class="sgr-1m">/home/andy/src/ |
| 68c20 | 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 36 36 3a 35 3c 2f 73 70 61 | zig/lib/std/start.zig:266:5</spa |
| 68c40 | 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 33 66 65 | n>:.<span.class="sgr-2m">0x103fe |
| 68c60 | 31 31 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 61 | 11.in._start.(test)</span>.....a |
| 68c80 | 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 68 | sm.volatile.(switch.(native_arch |
| 68ca0 | 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 3c | ).{.....<span.class="sgr-32m">^< |
| 68cc0 | 2f 73 70 61 6e 3e 0a 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 33 20 65 72 | /span>..All.1.tests.passed..3.er |
| 68ce0 | 72 6f 72 73 20 77 65 72 65 20 6c 6f 67 67 65 64 2e 0a 31 20 74 65 73 74 73 20 6c 65 61 6b 65 64 | rors.were.logged..1.tests.leaked |
| 68d00 | 20 6d 65 6d 6f 72 79 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 | .memory..error:.the.following.te |
| 68d20 | 73 74 20 63 6f 6d 6d 61 6e 64 20 66 61 69 6c 65 64 20 77 69 74 68 20 65 78 69 74 20 63 6f 64 65 | st.command.failed.with.exit.code |
| 68d40 | 20 31 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 | .1:./home/andy/src/zig/.zig-cach |
| 68d60 | 65 2f 6f 2f 32 39 66 63 64 61 32 37 35 62 37 63 34 32 36 34 31 38 35 33 34 62 36 37 39 38 35 30 | e/o/29fcda275b7c426418534b679850 |
| 68d80 | 66 61 32 65 2f 74 65 73 74 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | fa2e/test.</samp></pre></figure> |
| 68da0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 70 65 63 69 61 6c 20 63 61 72 65 20 6d | ........<p>.......Special.care.m |
| 68dc0 | 75 73 74 20 62 65 20 74 61 6b 65 6e 20 77 69 74 68 20 63 6f 64 65 20 74 68 61 74 20 61 6c 6c 6f | ust.be.taken.with.code.that.allo |
| 68de0 | 63 61 74 65 73 20 69 6e 20 61 20 6c 6f 6f 70 0a 20 20 20 20 20 20 74 6f 20 6d 61 6b 65 20 73 75 | cates.in.a.loop.......to.make.su |
| 68e00 | 72 65 20 74 68 61 74 20 6e 6f 20 6d 65 6d 6f 72 79 20 69 73 20 6c 65 61 6b 65 64 20 77 68 65 6e | re.that.no.memory.is.leaked.when |
| 68e20 | 20 72 65 74 75 72 6e 69 6e 67 20 61 6e 20 65 72 72 6f 72 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | .returning.an.error:.......</p>. |
| 68e40 | 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= |
| 68e60 | 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 |
| 68e80 | 74 5f 65 72 72 64 65 66 65 72 5f 6c 6f 6f 70 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 | t_errdefer_loop.zig</cite></figc |
| 68ea0 | 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 |
| 68ec0 | 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. |
| 68ee0 | 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 |
| 68f00 | 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 |
| 68f20 | 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 |
| 68f40 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 6c 6c 6f 63 61 74 6f 72 20 3d 20 | ok-kw">const</span>.Allocator.=. |
| 68f60 | 73 74 64 2e 6d 65 6d 2e 41 6c 6c 6f 63 61 74 6f 72 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | std.mem.Allocator;..<span.class= |
| 68f80 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 | "tok-kw">const</span>.Foo.=.<spa |
| 68fa0 | 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>.{ |
| 68fc0 | 20 64 61 74 61 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 75 | .data:.*<span.class="tok-type">u |
| 68fe0 | 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 74 6f 6b 2d 6b | 32</span>.};..<span.class="tok-k |
| 69000 | 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 |
| 69020 | 22 3e 67 65 74 44 61 74 61 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">getData</span>().!<span.class= |
| 69040 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | "tok-type">u32</span>.{.....<spa |
| 69060 | 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>.< |
| 69080 | 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 36 36 3c 2f 73 70 61 | span.class="tok-number">666</spa |
| 690a0 | 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 2f | n>;.}..<span.class="tok-kw">fn</ |
| 690c0 | 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 67 65 6e 46 6f | span>.<span.class="tok-fn">genFo |
| 690e0 | 6f 73 3c 2f 73 70 61 6e 3e 28 61 6c 6c 6f 63 61 74 6f 72 3a 20 41 6c 6c 6f 63 61 74 6f 72 2c 20 | os</span>(allocator:.Allocator,. |
| 69100 | 6e 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 7a | num:.<span.class="tok-type">usiz |
| 69120 | 65 3c 2f 73 70 61 6e 3e 29 20 21 5b 5d 46 6f 6f 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | e</span>).![]Foo.{.....<span.cla |
| 69140 | 73 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 6f 6f 73 20 3d 20 | ss="tok-kw">const</span>.foos.=. |
| 69160 | 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>. |
| 69180 | 61 6c 6c 6f 63 61 74 6f 72 2e 61 6c 6c 6f 63 28 46 6f 6f 2c 20 6e 75 6d 29 3b 0a 20 20 20 20 3c | allocator.alloc(Foo,.num);.....< |
| 691a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 | span.class="tok-kw">errdefer</sp |
| 691c0 | 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 66 72 65 65 28 66 6f 6f 73 29 3b 0a 0a 20 20 20 20 3c | an>.allocator.free(foos);......< |
| 691e0 | 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 55 73 65 64 | span.class="tok-comment">//.Used |
| 69200 | 20 74 6f 20 74 72 61 63 6b 20 68 6f 77 20 6d 61 6e 79 20 66 6f 6f 73 20 68 61 76 65 20 62 65 65 | .to.track.how.many.foos.have.bee |
| 69220 | 6e 20 69 6e 69 74 69 61 6c 69 7a 65 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | n.initialized</span>.....<span.c |
| 69240 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 28 69 6e 63 6c 75 64 69 6e 67 | lass="tok-comment">//.(including |
| 69260 | 20 74 68 65 69 72 20 64 61 74 61 20 62 65 69 6e 67 20 61 6c 6c 6f 63 61 74 65 64 29 3c 2f 73 70 | .their.data.being.allocated)</sp |
| 69280 | 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 |
| 692a0 | 3c 2f 73 70 61 6e 3e 20 6e 75 6d 5f 61 6c 6c 6f 63 61 74 65 64 3a 20 3c 73 70 61 6e 20 63 6c 61 | </span>.num_allocated:.<span.cla |
| 692c0 | 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 70 | ss="tok-type">usize</span>.=.<sp |
| 692e0 | 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>;. |
| 69300 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 | ....<span.class="tok-kw">errdefe |
| 69320 | 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 6b 77 22 3e 66 6f | r</span>.<span.class="tok-kw">fo |
| 69340 | 72 3c 2f 73 70 61 6e 3e 20 28 66 6f 6f 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | r</span>.(foos[<span.class="tok- |
| 69360 | 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 6e 75 6d 5f 61 6c 6c 6f 63 61 74 65 64 5d | number">0</span>..num_allocated] |
| 69380 | 29 20 7c 66 6f 6f 7c 20 7b 0a 20 20 20 20 20 20 20 20 61 6c 6c 6f 63 61 74 6f 72 2e 64 65 73 74 | ).|foo|.{.........allocator.dest |
| 693a0 | 72 6f 79 28 66 6f 6f 2e 64 61 74 61 29 3b 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | roy(foo.data);.....};.....<span. |
| 693c0 | 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 6f 73 2c | class="tok-kw">for</span>.(foos, |
| 693e0 | 20 3c 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 |
| 69400 | 6e 3e 2e 2e 29 20 7c 2a 66 6f 6f 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 66 6f 6f 2e 64 61 | n>..).|*foo,.i|.{.........foo.da |
| 69420 | 74 61 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 | ta.=.<span.class="tok-kw">try</s |
| 69440 | 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 63 72 65 61 74 65 28 3c 73 70 61 6e 20 63 6c 61 73 | pan>.allocator.create(<span.clas |
| 69460 | 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 20 20 20 20 20 20 | s="tok-type">u32</span>);....... |
| 69480 | 20 20 6e 75 6d 5f 61 6c 6c 6f 63 61 74 65 64 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ..num_allocated.+=.<span.class=" |
| 694a0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 20 20 20 20 3c | tok-number">1</span>;..........< |
| 694c0 | 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 69 | span.class="tok-kw">if</span>.(i |
| 694e0 | 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 22 3e | .>=.<span.class="tok-number"> |
| 69500 | 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 6b 77 22 3e 72 | 3</span>).<span.class="tok-kw">r |
| 69520 | 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 |
| 69540 | 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 54 6f 6f 4d 61 6e 79 46 6f 6f 73 3b 0a 0a 20 20 20 | ">error</span>.TooManyFoos;..... |
| 69560 | 20 20 20 20 20 66 6f 6f 2e 64 61 74 61 2e 2a 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .....foo.data.*.=.<span.class="t |
| 69580 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 67 65 74 44 61 74 61 28 29 3b 0a 20 20 20 | ok-kw">try</span>.getData();.... |
| 695a0 | 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 65 74 | .}......<span.class="tok-kw">ret |
| 695c0 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 66 6f 6f 73 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | urn</span>.foos;.}..<span.class= |
| 695e0 | 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 |
| 69600 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 65 6e 46 6f 6f 73 26 71 75 6f 74 3b 3c 2f | ="tok-str">"genFoos"</ |
| 69620 | 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" |
| 69640 | 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 45 72 | >try</span>.std.testing.expectEr |
| 69660 | 72 6f 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 | ror(<span.class="tok-kw">error</ |
| 69680 | 73 70 61 6e 3e 2e 54 6f 6f 4d 61 6e 79 46 6f 6f 73 2c 20 67 65 6e 46 6f 6f 73 28 73 74 64 2e 74 | span>.TooManyFoos,.genFoos(std.t |
| 696a0 | 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 61 74 6f 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | esting.allocator,.<span.class="t |
| 696c0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | ok-number">5</span>));.}</code>< |
| 696e0 | 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 |
| 69700 | 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 |
| 69720 | 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 |
| 69740 | 20 74 65 73 74 5f 65 72 72 64 65 66 65 72 5f 6c 6f 6f 70 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f | .test_errdefer_loop.zig</kbd>.1/ |
| 69760 | 31 20 74 65 73 74 5f 65 72 72 64 65 66 65 72 5f 6c 6f 6f 70 2e 74 65 73 74 2e 67 65 6e 46 6f 6f | 1.test_errdefer_loop.test.genFoo |
| 69780 | 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 61 6d | s...OK.All.1.tests.passed..</sam |
| 697a0 | 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>............... |
| 697c0 | 3c 70 3e 0a 20 20 20 20 20 20 41 20 63 6f 75 70 6c 65 20 6f 66 20 6f 74 68 65 72 20 74 69 64 62 | <p>.......A.couple.of.other.tidb |
| 697e0 | 69 74 73 20 61 62 6f 75 74 20 65 72 72 6f 72 20 68 61 6e 64 6c 69 6e 67 3a 0a 20 20 20 20 20 20 | its.about.error.handling:....... |
| 69800 | 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 54 68 65 73 | </p>.......<ul>.........<li>Thes |
| 69820 | 65 20 70 72 69 6d 69 74 69 76 65 73 20 67 69 76 65 20 65 6e 6f 75 67 68 20 65 78 70 72 65 73 73 | e.primitives.give.enough.express |
| 69840 | 69 76 65 6e 65 73 73 20 74 68 61 74 20 69 74 27 73 20 63 6f 6d 70 6c 65 74 65 6c 79 20 70 72 61 | iveness.that.it's.completely.pra |
| 69860 | 63 74 69 63 61 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 20 68 61 76 65 20 66 61 69 6c 69 | ctical.............to.have.faili |
| 69880 | 6e 67 20 74 6f 20 63 68 65 63 6b 20 66 6f 72 20 61 6e 20 65 72 72 6f 72 20 62 65 20 61 20 63 6f | ng.to.check.for.an.error.be.a.co |
| 698a0 | 6d 70 69 6c 65 20 65 72 72 6f 72 2e 20 49 66 20 79 6f 75 20 72 65 61 6c 6c 79 20 77 61 6e 74 0a | mpile.error..If.you.really.want. |
| 698c0 | 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 20 69 67 6e 6f 72 65 20 74 68 65 20 65 72 72 6f 72 2c | ............to.ignore.the.error, |
| 698e0 | 20 79 6f 75 20 63 61 6e 20 61 64 64 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .you.can.add.<code><span.class=" |
| 69900 | 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 |
| 69920 | 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 63 6f | ="tok-kw">unreachable</span></co |
| 69940 | 64 65 3e 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 20 74 68 65 20 61 64 64 65 | de>.and.............get.the.adde |
| 69960 | 64 20 62 65 6e 65 66 69 74 20 6f 66 20 63 72 61 73 68 69 6e 67 20 69 6e 20 44 65 62 75 67 20 61 | d.benefit.of.crashing.in.Debug.a |
| 69980 | 6e 64 20 52 65 6c 65 61 73 65 53 61 66 65 20 6d 6f 64 65 73 20 69 66 20 79 6f 75 72 20 61 73 73 | nd.ReleaseSafe.modes.if.your.ass |
| 699a0 | 75 6d 70 74 69 6f 6e 20 77 61 73 20 77 72 6f 6e 67 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e | umption.was.wrong..........</li> |
| 699c0 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 53 69 6e 63 65 20 5a 69 | .........<li>...........Since.Zi |
| 699e0 | 67 20 75 6e 64 65 72 73 74 61 6e 64 73 20 65 72 72 6f 72 20 74 79 70 65 73 2c 20 69 74 20 63 61 | g.understands.error.types,.it.ca |
| 69a00 | 6e 20 70 72 65 2d 77 65 69 67 68 74 20 62 72 61 6e 63 68 65 73 20 69 6e 20 66 61 76 6f 72 20 6f | n.pre-weight.branches.in.favor.o |
| 69a20 | 66 0a 20 20 20 20 20 20 20 20 20 20 65 72 72 6f 72 73 20 6e 6f 74 20 6f 63 63 75 72 72 69 6e 67 | f...........errors.not.occurring |
| 69a40 | 2e 20 4a 75 73 74 20 61 20 73 6d 61 6c 6c 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 20 62 65 6e 65 | ..Just.a.small.optimization.bene |
| 69a60 | 66 69 74 20 74 68 61 74 20 69 73 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 0a 20 20 20 20 20 20 | fit.that.is.not.available....... |
| 69a80 | 20 20 20 20 69 6e 20 6f 74 68 65 72 20 6c 61 6e 67 75 61 67 65 73 2e 0a 20 20 20 20 20 20 20 20 | ....in.other.languages.......... |
| 69aa0 | 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 53 65 65 20 61 | </li>.......</ul>.......<p>See.a |
| 69ac0 | 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 65 66 65 72 | lso:</p><ul>.<li><a.href="#defer |
| 69ae0 | 22 3e 64 65 66 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 | ">defer</a></li>.<li><a.href="#i |
| 69b00 | 66 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 73 77 69 | f">if</a></li>.<li><a.href="#swi |
| 69b20 | 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 0a 20 20 20 | tch">switch</a></li>.</ul>...... |
| 69b40 | 20 20 20 3c 70 3e 41 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 69 73 20 63 72 65 61 74 65 64 20 | ...<p>An.error.union.is.created. |
| 69b60 | 77 69 74 68 20 74 68 65 20 3c 63 6f 64 65 3e 21 3c 2f 63 6f 64 65 3e 20 62 69 6e 61 72 79 20 6f | with.the.<code>!</code>.binary.o |
| 69b80 | 70 65 72 61 74 6f 72 2e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 75 73 65 20 63 6f 6d 70 69 | perator........You.can.use.compi |
| 69ba0 | 6c 65 2d 74 69 6d 65 20 72 65 66 6c 65 63 74 69 6f 6e 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 | le-time.reflection.to.access.the |
| 69bc0 | 20 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 | .child.type.of.an.error.union:</ |
| 69be0 | 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 |
| 69c00 | 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"> |
| 69c20 | 74 65 73 74 5f 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 | test_error_union.zig</cite></fig |
| 69c40 | 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=" |
| 69c60 | 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 |
| 69c80 | 70 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< |
| 69ca0 | 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 |
| 69cc0 | 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 |
| 69ce0 | 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< |
| 69d00 | 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 |
| 69d20 | 6f 74 3b 65 72 72 6f 72 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | ot;error.union"</span>.{... |
| 69d40 | 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 |
| 69d60 | 3e 20 66 6f 6f 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e | >.foo:.<span.class="tok-type">an |
| 69d80 | 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | yerror</span>!<span.class="tok-t |
| 69da0 | 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 |
| 69dc0 | 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 | ok-null">undefined</span>;...... |
| 69de0 | 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 43 6f 65 | <span.class="tok-comment">//.Coe |
| 69e00 | 72 63 65 20 66 72 6f 6d 20 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 | rce.from.child.type.of.an.error. |
| 69e20 | 75 6e 69 6f 6e 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c | union:</span>.....foo.=.<span.cl |
| 69e40 | 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 0a 20 | ass="tok-number">1234</span>;... |
| 69e60 | 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">//. |
| 69e80 | 43 6f 65 72 63 65 20 66 72 6f 6d 20 61 6e 20 65 72 72 6f 72 20 73 65 74 3a 3c 2f 73 70 61 6e 3e | Coerce.from.an.error.set:</span> |
| 69ea0 | 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 6b 77 22 3e | .....foo.=.<span.class="tok-kw"> |
| 69ec0 | 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 53 6f 6d 65 45 72 72 6f 72 3b 0a 0a 20 20 20 20 3c 73 70 | error</span>.SomeError;......<sp |
| 69ee0 | 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 55 73 65 20 63 6f | an.class="tok-comment">//.Use.co |
| 69f00 | 6d 70 69 6c 65 2d 74 69 6d 65 20 72 65 66 6c 65 63 74 69 6f 6e 20 74 6f 20 61 63 63 65 73 73 20 | mpile-time.reflection.to.access. |
| 69f20 | 74 68 65 20 70 61 79 6c 6f 61 64 20 74 79 70 65 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 | the.payload.type.of.an.error.uni |
| 69f40 | 6f 6e 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | on:</span>.....<span.class="tok- |
| 69f60 | 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- |
| 69f80 | 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 3c 73 70 61 6e | kw">comptime</span>.expect(<span |
| 69fa0 | 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 2f | .class="tok-builtin">@typeInfo</ |
| 69fc0 | 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 22 3e | span>(<span.class="tok-builtin"> |
| 69fe0 | 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 66 6f 6f 29 29 2e 45 72 72 6f 72 55 6e 69 6f 6e 2e | @TypeOf</span>(foo)).ErrorUnion. |
| 6a000 | 70 61 79 6c 6f 61 64 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 | payload.==.<span.class="tok-type |
| 6a020 | 22 3e 69 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 | ">i32</span>);......<span.class= |
| 6a040 | 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 |
| 6a060 | 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 65 72 72 6f 72 | e.reflection.to.access.the.error |
| 6a080 | 20 73 65 74 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 | .set.type.of.an.error.union:</sp |
| 6a0a0 | 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 79 | an>.....<span.class="tok-kw">try |
| 6a0c0 | 3c 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 | </span>.<span.class="tok-kw">com |
| 6a0e0 | 70 74 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 | ptime</span>.expect(<span.class= |
| 6a100 | 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>(< |
| 6a120 | 73 70 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 |
| 6a140 | 3c 2f 73 70 61 6e 3e 28 66 6f 6f 29 29 2e 45 72 72 6f 72 55 6e 69 6f 6e 2e 65 72 72 6f 72 5f 73 | </span>(foo)).ErrorUnion.error_s |
| 6a160 | 65 74 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 61 6e 79 | et.==.<span.class="tok-type">any |
| 6a180 | 65 72 72 6f 72 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 | error</span>);.}</code></pre></f |
| 6a1a0 | 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= |
| 6a1c0 | 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 |
| 6a1e0 | 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 65 72 | re><samp>$.<kbd>zig.test.test_er |
| 6a200 | 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 65 73 74 5f 65 72 72 | ror_union.zig</kbd>.1/1.test_err |
| 6a220 | 6f 72 5f 75 6e 69 6f 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 | or_union.test.error.union...OK.A |
| 6a240 | 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> |
| 6a260 | 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 4d 65 72 67 69 6e 67 | </figure>........<h4.id="Merging |
| 6a280 | 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4d 65 72 67 69 | -Error-Sets"><a.href="#toc-Mergi |
| 6a2a0 | 6e 67 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e 4d 65 72 67 69 6e 67 20 45 72 72 6f 72 20 53 65 74 | ng-Error-Sets">Merging.Error.Set |
| 6a2c0 | 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4d 65 72 67 | s</a>.<a.class="hdr".href="#Merg |
| 6a2e0 | 69 6e 67 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 | ing-Error-Sets">..</a></h4>..... |
| 6a300 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 65 20 74 68 65 20 3c 63 6f 64 65 3e 7c 7c 3c 2f 63 | ...<p>.......Use.the.<code>||</c |
| 6a320 | 6f 64 65 3e 20 6f 70 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 | ode>.operator.to.merge.two.error |
| 6a340 | 20 73 65 74 73 20 74 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 | .sets.together..The.resulting... |
| 6a360 | 20 20 20 20 65 72 72 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 | ....error.set.contains.the.error |
| 6a380 | 73 20 6f 66 20 62 6f 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 | s.of.both.error.sets..Doc.commen |
| 6a3a0 | 74 73 20 66 72 6f 6d 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 | ts.from.the.left-hand.......side |
| 6a3c0 | 20 6f 76 65 72 72 69 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 | .override.doc.comments.from.the. |
| 6a3e0 | 72 69 67 68 74 2d 68 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 | right-hand.side..In.this.example |
| 6a400 | 2c 20 74 68 65 20 64 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 | ,.the.doc.......comments.for.<co |
| 6a420 | 64 65 3e 43 2e 50 61 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 | de>C.PathNotFound</code>.is.<cod |
| 6a440 | 65 3e 41 20 64 6f 63 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 | e>A.doc.comment</code>........</ |
| 6a460 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 65 73 70 65 63 | p>.......<p>.......This.is.espec |
| 6a480 | 69 61 6c 6c 79 20 75 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 | ially.useful.for.functions.which |
| 6a4a0 | 20 72 65 74 75 72 6e 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 | .return.different.error.sets.dep |
| 6a4c0 | 65 6e 64 69 6e 67 0a 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 | ending.......on.<a.href="#compti |
| 6a4e0 | 6d 65 22 3e 63 6f 6d 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 | me">comptime</a>.branches..For.e |
| 6a500 | 78 61 6d 70 6c 65 2c 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 | xample,.the.Zig.standard.library |
| 6a520 | 20 75 73 65 73 0a 20 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 | .uses.......<code>LinuxFileOpenE |
| 6a540 | 72 72 6f 72 20 7c 7c 20 57 69 6e 64 6f 77 73 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 3c 2f 63 6f | rror.||.WindowsFileOpenError</co |
| 6a560 | 64 65 3e 20 66 6f 72 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 20 6f 66 20 6f 70 65 6e 69 6e 67 | de>.for.the.error.set.of.opening |
| 6a580 | 0a 20 20 20 20 20 20 66 69 6c 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | .......files........</p>.......< |
| 6a5a0 | 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 |
| 6a5c0 | 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 65 72 67 69 | p"><cite.class="file">test_mergi |
| 6a5e0 | 6e 67 5f 65 72 72 6f 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 | ng_error_sets.zig</cite></figcap |
| 6a600 | 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 |
| 6a620 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | -kw">const</span>.A.=.<span.clas |
| 6a640 | 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 4e 6f 74 | s="tok-kw">error</span>{.....Not |
| 6a660 | 44 69 72 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | Dir,......<span.class="tok-comme |
| 6a680 | 6e 74 22 3e 2f 2f 2f 20 41 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 | nt">///.A.doc.comment</span>.... |
| 6a6a0 | 20 50 61 74 68 4e 6f 74 46 6f 75 6e 64 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .PathNotFound,.};.<span.class="t |
| 6a6c0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 20 3d 20 3c 73 70 61 6e 20 63 6c | ok-kw">const</span>.B.=.<span.cl |
| 6a6e0 | 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 4f | ass="tok-kw">error</span>{.....O |
| 6a700 | 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | utOfMemory,......<span.class="to |
| 6a720 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 42 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 3c 2f 73 70 | k-comment">///.B.doc.comment</sp |
| 6a740 | 61 6e 3e 0a 20 20 20 20 50 61 74 68 4e 6f 74 46 6f 75 6e 64 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 | an>.....PathNotFound,.};..<span. |
| 6a760 | 63 6c 61 73 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 20 3d 20 | class="tok-kw">const</span>.C.=. |
| 6a780 | 41 20 7c 7c 20 42 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e | A.||.B;..<span.class="tok-kw">fn |
| 6a7a0 | 3c 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 |
| 6a7c0 | 3c 2f 73 70 61 6e 3e 28 29 20 43 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | </span>().C!<span.class="tok-typ |
| 6a7e0 | 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 |
| 6a800 | 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 |
| 6a820 | 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 4e 6f 74 44 69 72 | ass="tok-kw">error</span>.NotDir |
| 6a840 | 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</ |
| 6a860 | 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 |
| 6a880 | 74 3b 6d 65 72 67 65 20 65 72 72 6f 72 20 73 65 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | t;merge.error.sets"</span>. |
| 6a8a0 | 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 |
| 6a8c0 | 70 61 6e 3e 20 28 66 6f 6f 28 29 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | pan>.(foo()).{.........<span.cla |
| 6a8e0 | 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 3c | ss="tok-builtin">@panic</span>(< |
| 6a900 | 73 70 61 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 65 78 70 | span.class="tok-str">"unexp |
| 6a920 | 65 63 74 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e | ected"</span>);.....}.<span |
| 6a940 | 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 72 | .class="tok-kw">else</span>.|err |
| 6a960 | 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 73 | |.<span.class="tok-kw">switch</s |
| 6a980 | 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 73 | pan>.(err).{.........<span.class |
| 6a9a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 75 74 4f 66 4d 65 6d 6f | ="tok-kw">error</span>.OutOfMemo |
| 6a9c0 | 72 79 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | ry.=>.<span.class="tok-builti |
| 6a9e0 | 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n">@panic</span>(<span.class="to |
| 6aa00 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 75 6e 65 78 70 65 63 74 65 64 26 71 75 6f 74 3b 3c 2f 73 | k-str">"unexpected"</s |
| 6aa20 | 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>),.........<span.class="tok- |
| 6aa40 | 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 50 61 74 68 4e 6f 74 46 6f 75 6e 64 20 3d 26 | kw">error</span>.PathNotFound.=& |
| 6aa60 | 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 | gt;.<span.class="tok-builtin">@p |
| 6aa80 | 61 6e 69 63 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | anic</span>(<span.class="tok-str |
| 6aaa0 | 22 3e 26 71 75 6f 74 3b 75 6e 65 78 70 65 63 74 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | ">"unexpected"</span>) |
| 6aac0 | 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 |
| 6aae0 | 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4e 6f 74 44 69 72 20 3d 26 67 74 3b 20 7b 7d 2c 0a 20 20 20 | rror</span>.NotDir.=>.{},.... |
| 6ab00 | 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 |
| 6ab20 | 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"> |
| 6ab40 | 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>$.< |
| 6ab60 | 6b 62 64 3e 7a 69 67 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 | kbd>zig.test.test_merging_error_ |
| 6ab80 | 73 65 74 73 2e 7a 69 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 | sets.zig</kbd>.1/1.test_merging_ |
| 6aba0 | 65 72 72 6f 72 5f 73 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 | error_sets.test.merge.error.sets |
| 6abc0 | 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 |
| 6abe0 | 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>...............< |
| 6ac00 | 68 34 20 69 64 3d 22 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 | h4.id="Inferred-Error-Sets"><a.h |
| 6ac20 | 72 65 66 3d 22 23 74 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 | ref="#toc-Inferred-Error-Sets">I |
| 6ac40 | 6e 66 65 72 72 65 64 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 | nferred.Error.Sets</a>.<a.class= |
| 6ac60 | 22 68 64 72 22 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 | "hdr".href="#Inferred-Error-Sets |
| 6ac80 | 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 20 20 42 | ">..</a></h4>........<p>.......B |
| 6aca0 | 65 63 61 75 73 65 20 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 | ecause.many.functions.in.Zig.ret |
| 6acc0 | 75 72 6e 20 61 20 70 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 | urn.a.possible.error,.Zig.suppor |
| 6ace0 | 74 73 20 69 6e 66 65 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 | ts.inferring.the.error.set...... |
| 6ad00 | 20 20 54 6f 20 69 6e 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 | ..To.infer.the.error.set.for.a.f |
| 6ad20 | 75 6e 63 74 69 6f 6e 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 | unction,.prepend.the.<code>!</co |
| 6ad40 | 64 65 3e 20 6f 70 65 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 | de>.operator.to.the.function...s |
| 6ad60 | 20 72 65 74 75 72 6e 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 | .return.type,.like.<code>!T</cod |
| 6ad80 | 65 3e 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 | e>:.......</p>.......<figure><fi |
| 6ada0 | 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 |
| 6adc0 | 6c 61 73 73 3d 22 66 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 | lass="file">test_inferred_error_ |
| 6ade0 | 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 72 65 | sets.zig</cite></figcaption><pre |
| 6ae00 | 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 6e 74 22 | ><code><span.class="tok-comment" |
| 6ae20 | 3e 2f 2f 20 57 69 74 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 | >//.With.an.inferred.error.set</ |
| 6ae40 | 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 70 75 62 3c 2f | span>.<span.class="tok-kw">pub</ |
| 6ae60 | 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 |
| 6ae80 | 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 64 64 5f 69 6e | pan>.<span.class="tok-fn">add_in |
| 6aea0 | 66 65 72 72 65 64 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ferred</span>(<span.class="tok-k |
| 6aec0 | 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 |
| 6aee0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 | s="tok-type">type</span>,.a:.T,. |
| 6af00 | 62 3a 20 54 29 20 21 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- |
| 6af20 | 6b 77 22 3e 63 6f 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 | kw">const</span>.ov.=.<span.clas |
| 6af40 | 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 65 72 66 6c 6f 77 | s="tok-builtin">@addWithOverflow |
| 6af60 | 3c 2f 73 70 61 6e 3e 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 | </span>(a,.b);.....<span.class=" |
| 6af80 | 74 6f 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 | tok-kw">if</span>.(ov[<span.clas |
| 6afa0 | 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 21 3d 20 3c 73 70 61 | s="tok-number">1</span>].!=.<spa |
| 6afc0 | 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 20 3c | n.class="tok-number">0</span>).< |
| 6afe0 | 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 |
| 6b000 | 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 |
| 6b020 | 61 6e 3e 2e 4f 76 65 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 | an>.Overflow;.....<span.class="t |
| 6b040 | 6f 6b 2d 6b 77 22 3e 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 | ok-kw">return</span>.ov[<span.cl |
| 6b060 | 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 7d 0a 0a 3c | ass="tok-number">0</span>];.}..< |
| 6b080 | 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 68 | span.class="tok-comment">//.With |
| 6b0a0 | 20 61 6e 20 65 78 70 6c 69 63 69 74 20 65 72 72 6f 72 20 73 65 74 3c 2f 73 70 61 6e 3e 0a 3c 73 | .an.explicit.error.set</span>.<s |
| 6b0c0 | 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 |
| 6b0e0 | 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 |
| 6b100 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 5f 65 78 70 6c 69 63 69 74 3c 2f | an.class="tok-fn">add_explicit</ |
| 6b120 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 | span>(<span.class="tok-kw">compt |
| 6b140 | 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ime</span>.T:.<span.class="tok-t |
| 6b160 | 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 45 72 | ype">type</span>,.a:.T,.b:.T).Er |
| 6b180 | 72 6f 72 21 54 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ror!T.{.....<span.class="tok-kw" |
| 6b1a0 | 3e 63 6f 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 | >const</span>.ov.=.<span.class=" |
| 6b1c0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 | tok-builtin">@addWithOverflow</s |
| 6b1e0 | 70 61 6e 3e 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 | pan>(a,.b);.....<span.class="tok |
| 6b200 | 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 22 | -kw">if</span>.(ov[<span.class=" |
| 6b220 | 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 63 | tok-number">1</span>].!=.<span.c |
| 6b240 | 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 61 | lass="tok-number">0</span>).<spa |
| 6b260 | 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>.< |
| 6b280 | 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> |
| 6b2a0 | 2e 4f 76 65 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 | .Overflow;.....<span.class="tok- |
| 6b2c0 | 6b 77 22 3e 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 | kw">return</span>.ov[<span.class |
| 6b2e0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 0a 0a 3c 73 70 61 | ="tok-number">0</span>];.}..<spa |
| 6b300 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 45 72 | n.class="tok-kw">const</span>.Er |
| 6b320 | 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 72 6f 72 | ror.=.<span.class="tok-kw">error |
| 6b340 | 3c 2f 73 70 61 6e 3e 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 | </span>{.....Overflow,.};..<span |
| 6b360 | 20 63 6c 61 73 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 |
| 6b380 | 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 |
| 6b3a0 | 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 |
| 6b3c0 | 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 | ">"std"</span>);..<spa |
| 6b3e0 | 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 |
| 6b400 | 61 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 66 65 72 72 65 | an.class="tok-str">"inferre |
| 6b420 | 64 20 65 72 72 6f 72 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 | d.error.set"</span>.{.....< |
| 6b440 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 | span.class="tok-kw">if</span>.(a |
| 6b460 | 64 64 5f 69 6e 66 65 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 | dd_inferred(<span.class="tok-typ |
| 6b480 | 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | e">u8</span>,.<span.class="tok-n |
| 6b4a0 | 75 6d 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 | umber">255</span>,.<span.class=" |
| 6b4c0 | 74 6f 6b 2d 6e 75 6d 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 | tok-number">1</span>)).|_|.<span |
| 6b4e0 | 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 |
| 6b500 | 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 |
| 6b520 | 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 |
| 6b540 | 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 |
| 6b560 | 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 |
| 6b580 | 76 65 72 66 6c 6f 77 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 | verflow.=>.{},.<span.class="t |
| 6b5a0 | 6f 6b 2d 63 6f 6d 6d 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 | ok-comment">//.ok</span>.....}.} |
| 6b5c0 | 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 |
| 6b5e0 | 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 |
| 6b600 | 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> |
| 6b620 | 7a 69 67 20 74 65 73 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 | zig.test.test_inferred_error_set |
| 6b640 | 73 2e 7a 69 67 3c 2f 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 | s.zig</kbd>.1/1.test_inferred_er |
| 6b660 | 72 6f 72 5f 73 65 74 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 | ror_sets.test.inferred.error.set |
| 6b680 | 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 |
| 6b6a0 | 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>..... |
| 6b6c0 | 20 20 57 68 65 6e 20 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 | ..When.a.function.has.an.inferre |
| 6b6e0 | 64 20 65 72 72 6f 72 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 | d.error.set,.that.function.becom |
| 6b700 | 65 73 20 67 65 6e 65 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 | es.generic.and.thus.it.becomes.. |
| 6b720 | 20 20 20 20 20 74 72 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 | .....trickier.to.do.certain.thin |
| 6b740 | 67 73 20 77 69 74 68 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 | gs.with.it,.such.as.obtain.a.fun |
| 6b760 | 63 74 69 6f 6e 20 70 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 | ction.pointer,.or.have.an.error. |
| 6b780 | 20 20 20 20 20 20 73 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 | ......set.that.is.consistent.acr |
| 6b7a0 | 6f 73 73 20 64 69 66 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 | oss.different.build.targets..Add |
| 6b7c0 | 69 74 69 6f 6e 61 6c 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 | itionally,.inferred.error.sets.. |
| 6b7e0 | 20 20 20 20 20 61 72 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 | .....are.incompatible.with.recur |
| 6b800 | 73 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 | sion........</p>.......<p>...... |
| 6b820 | 20 49 6e 20 74 68 65 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 | .In.these.situations,.it.is.reco |
| 6b840 | 6d 6d 65 6e 64 65 64 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 | mmended.to.use.an.explicit.error |
| 6b860 | 20 73 65 74 2e 20 59 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 | .set..You.can.generally.start... |
| 6b880 | 20 20 20 20 77 69 74 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 | ....with.an.empty.error.set.and. |
| 6b8a0 | 6c 65 74 20 63 6f 6d 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 | let.compile.errors.guide.you.tow |
| 6b8c0 | 61 72 64 20 63 6f 6d 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 | ard.completing.the.set........</ |
| 6b8e0 | 70 3e 0a 20 20 20 20 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 | p>.......<p>.......These.limitat |
| 6b900 | 69 6f 6e 73 20 6d 61 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 | ions.may.be.overcome.in.a.future |
| 6b920 | 20 76 65 72 73 69 6f 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 | .version.of.Zig........</p>..... |
| 6b940 | 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 72 6f 72 2d 52 65 | ................<h3.id="Error-Re |
| 6b960 | 74 75 72 6e 2d 54 72 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 | turn-Traces"><a.href="#toc-Error |
| 6b980 | 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 6e 20 54 72 61 | -Return-Traces">Error.Return.Tra |
| 6b9a0 | 63 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 45 72 | ces</a>.<a.class="hdr".href="#Er |
| 6b9c0 | 72 6f 72 2d 52 65 74 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 | ror-Return-Traces">..</a></h3>.. |
| 6b9e0 | 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 75 72 6e 20 54 72 61 | ......<p>.......Error.Return.Tra |
| 6ba00 | 63 65 73 20 73 68 6f 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 | ces.show.all.the.points.in.the.c |
| 6ba20 | 6f 64 65 20 74 68 61 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 | ode.that.an.error.was.returned.t |
| 6ba40 | 6f 20 74 68 65 20 63 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 | o.the.calling.function..This.mak |
| 6ba60 | 65 73 20 69 74 20 70 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 | es.it.practical.to.use.<a.href=" |
| 6ba80 | 23 74 72 79 22 3e 74 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 | #try">try</a>.everywhere.and.the |
| 6baa0 | 6e 20 73 74 69 6c 6c 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 | n.still.be.able.to.know.what.hap |
| 6bac0 | 70 65 6e 65 64 20 69 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 | pened.if.an.error.ends.up.bubbli |
| 6bae0 | 6e 67 20 61 6c 6c 20 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 | ng.all.the.way.out.of.your.appli |
| 6bb00 | 63 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 66 69 67 75 72 65 | cation........</p>.......<figure |
| 6bb20 | 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 |
| 6bb40 | 74 65 20 63 6c 61 73 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 | te.class="file">error_return_tra |
| 6bb60 | 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 3c 70 72 65 3e 3c | ce.zig</cite></figcaption><pre>< |
| 6bb80 | 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 |
| 6bba0 | 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 |
| 6bbc0 | 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 |
| 6bbe0 | 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 76 | pan>().!<span.class="tok-type">v |
| 6bc00 | 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 |
| 6bc20 | 6b 2d 6b 77 22 3e 74 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 | k-kw">try</span>.foo(<span.class |
| 6bc40 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 | ="tok-number">12</span>);.}..<sp |
| 6bc60 | 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 |
| 6bc80 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c | n.class="tok-fn">foo</span>(x:.< |
| 6bca0 | 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> |
| 6bcc0 | 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</ |
| 6bce0 | 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" |
| 6bd00 | 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 78 20 26 67 74 3b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >if</span>.(x.>=.<span.class= |
| 6bd20 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 | "tok-number">5</span>).{........ |
| 6bd40 | 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> |
| 6bd60 | 20 62 61 72 28 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | .bar();.....}.<span.class="tok-k |
| 6bd80 | 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | w">else</span>.{.........<span.c |
| 6bda0 | 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 32 28 29 | lass="tok-kw">try</span>.bang2() |
| 6bdc0 | 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"> |
| 6bde0 | 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 |
| 6be00 | 61 72 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ar</span>().!<span.class="tok-ty |
| 6be20 | 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 |
| 6be40 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 61 7a 28 29 29 20 7b 0a 20 | s="tok-kw">if</span>.(baz()).{.. |
| 6be60 | 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< |
| 6be80 | 2f 73 70 61 6e 3e 20 71 75 75 78 28 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | /span>.quux();.....}.<span.class |
| 6bea0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 3c 73 70 61 | ="tok-kw">else</span>.|err|.<spa |
| 6bec0 | 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>.( |
| 6bee0 | 65 72 72 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | err).{.........<span.class="tok- |
| 6bf00 | 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 20 3d 26 | kw">error</span>.FileNotFound.=& |
| 6bf20 | 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 74 72 79 3c 2f 73 70 | gt;.<span.class="tok-kw">try</sp |
| 6bf40 | 61 6e 3e 20 68 65 6c 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 | an>.hello(),.....}.}..<span.clas |
| 6bf60 | 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 |
| 6bf80 | 3d 22 74 6f 6b 2d 66 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 | ="tok-fn">baz</span>().!<span.cl |
| 6bfa0 | 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>.{.... |
| 6bfc0 | 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> |
| 6bfe0 | 20 62 61 6e 67 31 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .bang1();.}..<span.class="tok-kw |
| 6c000 | 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" |
| 6c020 | 3e 71 75 75 78 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >quux</span>().!<span.class="tok |
| 6c040 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | -type">void</span>.{.....<span.c |
| 6c060 | 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 32 28 29 | lass="tok-kw">try</span>.bang2() |
| 6c080 | 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 |
| 6c0a0 | 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 68 65 6c 6c 6f 3c 2f | an>.<span.class="tok-fn">hello</ |
| 6c0c0 | 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"> |
| 6c0e0 | 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 |
| 6c100 | 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 |
| 6c120 | 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 |
| 6c140 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 6e 67 31 3c 2f 73 70 61 6e 3e 28 29 | an.class="tok-fn">bang1</span>() |
| 6c160 | 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 |
| 6c180 | 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"> |
| 6c1a0 | 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 6b | return</span>.<span.class="tok-k |
| 6c1c0 | 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 0a 7d 0a | w">error</span>.FileNotFound;.}. |
| 6c1e0 | 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>. |
| 6c200 | 3c 73 70 61 6e 20 63 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 | <span.class="tok-fn">bang2</span |
| 6c220 | 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 |
| 6c240 | 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 |
| 6c260 | 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 |
| 6c280 | 6b 2d 6b 77 22 3e 65 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 | k-kw">error</span>.PermissionDen |
| 6c2a0 | 69 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 66 69 67 | ied;.}</code></pre></figure><fig |
| 6c2c0 | 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 |
| 6c2e0 | 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>$ |
| 6c300 | 20 3c 6b 62 64 3e 7a 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 | .<kbd>zig.build-exe.error_return |
| 6c320 | 5f 74 72 61 63 65 2e 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 | _trace.zig</kbd>.$.<kbd>./error_ |
| 6c340 | 72 65 74 75 72 6e 5f 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 | return_trace</kbd>.error:.Permis |
| 6c360 | 73 69 6f 6e 44 65 6e 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 | sionDenied.<span.class="sgr-1m"> |
| 6c380 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 65 | /home/andy/src/zig/doc/langref/e |
| 6c3a0 | 72 72 6f 72 5f 72 65 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 | rror_return_trace.zig:34:5</span |
| 6c3c0 | 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 33 34 65 30 | >:.<span.class="sgr-2m">0x1034e0 |
| 6c3e0 | 38 20 69 6e 20 62 61 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 | 8.in.bang1.(error_return_trace)< |
| 6c400 | 2f 73 70 61 6e 3e 0a 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 | /span>.....return.error.FileNotF |
| 6c420 | 6f 75 6e 64 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 | ound;.....<span.class="sgr-32m"> |
| 6c440 | 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 |
| 6c460 | 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 65 72 72 | ome/andy/src/zig/doc/langref/err |
| 6c480 | 6f 72 5f 72 65 74 75 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 | or_return_trace.zig:22:5</span>: |
| 6c4a0 | 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 34 66 31 33 20 | .<span.class="sgr-2m">0x1034f13. |
| 6c4c0 | 69 6e 20 62 61 7a 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 | in.baz.(error_return_trace)</spa |
| 6c4e0 | 6e 3e 0a 20 20 20 20 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 | n>.....try.bang1();.....<span.cl |
| 6c500 | 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 |
| 6c520 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 | ss="sgr-1m">/home/andy/src/zig/d |
| 6c540 | 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 65 2e 7a 69 | oc/langref/error_return_trace.zi |
| 6c560 | 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 72 2d | g:38:5</span>:.<span.class="sgr- |
| 6c580 | 32 6d 22 3e 30 78 31 30 33 34 66 33 38 20 69 6e 20 62 61 6e 67 32 20 28 65 72 72 6f 72 5f 72 65 | 2m">0x1034f38.in.bang2.(error_re |
| 6c5a0 | 74 75 72 6e 5f 74 72 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 | turn_trace)</span>.....return.er |
| 6c5c0 | 72 6f 72 2e 50 65 72 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 | ror.PermissionDenied;.....<span. |
| 6c5e0 | 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 |
| 6c600 | 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 73 72 63 2f 7a 69 67 | lass="sgr-1m">/home/andy/src/zig |
| 6c620 | 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 65 2e | /doc/langref/error_return_trace. |
| 6c640 | 7a 69 67 3a 33 30 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:30:5</span>:.<span.class="sg |
| 6c660 | 72 2d 32 6d 22 3e 30 78 31 30 33 34 66 61 33 20 69 6e 20 68 65 6c 6c 6f 20 28 65 72 72 6f 72 5f | r-2m">0x1034fa3.in.hello.(error_ |
| 6c680 | 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 62 61 6e | return_trace)</span>.....try.ban |
| 6c6a0 | 67 32 28 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 | g2();.....<span.class="sgr-32m"> |
| 6c6c0 | 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 |
| 6c6e0 | 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 65 72 72 | ome/andy/src/zig/doc/langref/err |
| 6c700 | 6f 72 5f 72 65 74 75 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 | or_return_trace.zig:17:31</span> |
| 6c720 | 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 33 35 30 35 61 | :.<span.class="sgr-2m">0x103505a |
| 6c740 | 20 69 6e 20 62 61 72 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 | .in.bar.(error_return_trace)</sp |
| 6c760 | 61 6e 3e 0a 20 20 20 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 | an>.........error.FileNotFound.= |
| 6c780 | 26 67 74 3b 20 74 72 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 | >.try.hello(),............... |
| 6c7a0 | 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 |
| 6c7c0 | 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- |
| 6c7e0 | 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 | 1m">/home/andy/src/zig/doc/langr |
| 6c800 | 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 37 3a 39 3c 2f 73 | ef/error_return_trace.zig:7:9</s |
| 6c820 | 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 33 | pan>:.<span.class="sgr-2m">0x103 |
| 6c840 | 35 31 34 30 20 69 6e 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 | 5140.in.foo.(error_return_trace) |
| 6c860 | 3c 2f 73 70 61 6e 3e 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 | </span>.........try.bar();...... |
| 6c880 | 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 |
| 6c8a0 | 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 |
| 6c8c0 | 79 2f 73 72 63 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/src/zig/doc/langref/error_retu |
| 6c8e0 | 72 6e 5f 74 72 61 63 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 | rn_trace.zig:2:5</span>:.<span.c |
| 6c900 | 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 35 31 39 38 20 69 6e 20 6d 61 69 6e 20 | lass="sgr-2m">0x1035198.in.main. |
| 6c920 | 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>..... |
| 6c940 | 74 72 79 20 66 6f 6f 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 | try.foo(12);.....<span.class="sg |
| 6c960 | 72 2d 33 32 6d 22 3e 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 | r-32m">^</span>.</samp></pre></f |
| 6c980 | 69 67 75 72 65 3e 0a 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 | igure>........<p>.......Look.clo |
| 6c9a0 | 73 65 6c 79 20 61 74 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 | sely.at.this.example..This.is.no |
| 6c9c0 | 20 73 74 61 63 6b 20 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 | .stack.trace........</p>.......< |
| 6c9e0 | 70 3e 0a 20 20 20 20 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 | p>.......You.can.see.that.the.fi |
| 6ca00 | 6e 61 6c 20 65 72 72 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 | nal.error.bubbled.up.was.<code>P |
| 6ca20 | 65 72 6d 69 73 73 69 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 | ermissionDenied</code>,......... |
| 6ca40 | 20 20 62 75 74 20 74 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 | ..but.the.original.error.that.st |
| 6ca60 | 61 72 74 65 64 20 74 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 | arted.this.whole.thing.was.<code |
| 6ca80 | 3e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 3c 2f 63 6f 64 65 3e 2e 20 49 6e 20 74 68 65 20 3c 63 6f | >FileNotFound</code>..In.the.<co |
| 6caa0 | 64 65 3e 62 61 72 3c 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 | de>bar</code>.function,.the.code |
| 6cac0 | 20 68 61 6e 64 6c 65 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 | .handles.the.original.error.code |
| 6cae0 | 2c 0a 20 20 20 20 20 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 | ,.......and.then.returns.another |
| 6cb00 | 20 6f 6e 65 2c 20 66 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 | .one,.from.the.switch.statement. |
| 6cb20 | 20 45 72 72 6f 72 20 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 | .Error.Return.Traces.make.this.c |
| 6cb40 | 6c 65 61 72 2c 20 77 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 | lear,.whereas.a.stack.trace.woul |
| 6cb60 | 64 20 6c 6f 6f 6b 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | d.look.like.this:.......</p>.... |
| 6cb80 | 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 |
| 6cba0 | 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 61 63 6b 5f | g-cap"><cite.class="file">stack_ |
| 6cbc0 | 74 72 61 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 3c 70 72 | trace.zig</cite></figcaption><pr |
| 6cbe0 | 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 |
| 6cc00 | 3c 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< |
| 6cc20 | 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 |
| 6cc40 | 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" |
| 6cc60 | 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 3c 73 70 61 6e 20 63 6c 61 | >void</span>.{.....foo(<span.cla |
| 6cc80 | 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 29 3b 0a 7d 0a 0a 3c | ss="tok-number">12</span>);.}..< |
| 6cca0 | 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 |
| 6ccc0 | 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 78 3a | pan.class="tok-fn">foo</span>(x: |
| 6cce0 | 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 |
| 6cd00 | 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c | n>).<span.class="tok-type">void< |
| 6cd20 | 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 |
| 6cd40 | 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 78 20 26 67 74 3b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">if</span>.(x.>=.<span.class |
| 6cd60 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 | ="tok-number">5</span>).{....... |
| 6cd80 | 20 20 62 61 72 28 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ..bar();.....}.<span.class="tok- |
| 6cda0 | 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 62 61 6e 67 32 28 | kw">else</span>.{.........bang2( |
| 6cdc0 | 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | );.....}.}..<span.class="tok-kw" |
| 6cde0 | 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"> |
| 6ce00 | 62 61 72 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | bar</span>().<span.class="tok-ty |
| 6ce20 | 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 |
| 6ce40 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 61 7a 28 29 29 20 7b 0a 20 | s="tok-kw">if</span>.(baz()).{.. |
| 6ce60 | 20 20 20 20 20 20 20 71 75 75 78 28 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .......quux();.....}.<span.class |
| 6ce80 | 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>.{......... |
| 6cea0 | 68 65 6c 6c 6f 28 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | hello();.....}.}..<span.class="t |
| 6cec0 | 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 |
| 6cee0 | 6b 2d 66 6e 22 3e 62 61 7a 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-fn">baz</span>().<span.class=" |
| 6cf00 | 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 70 61 | tok-type">bool</span>.{.....<spa |
| 6cf20 | 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 62 | n.class="tok-kw">return</span>.b |
| 6cf40 | 61 6e 67 31 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ang1();.}..<span.class="tok-kw"> |
| 6cf60 | 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 71 | fn</span>.<span.class="tok-fn">q |
| 6cf80 | 75 75 78 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | uux</span>().<span.class="tok-ty |
| 6cfa0 | 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 62 61 6e 67 32 28 29 3b 0a 7d | pe">void</span>.{.....bang2();.} |
| 6cfc0 | 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> |
| 6cfe0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 68 65 6c 6c 6f 3c 2f 73 70 61 | .<span.class="tok-fn">hello</spa |
| 6d000 | 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 |
| 6d020 | 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 20 | </span>.{.....bang2();.}..<span. |
| 6d040 | 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 |
| 6d060 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 6e 67 31 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 | lass="tok-fn">bang1</span>().<sp |
| 6d080 | 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>. |
| 6d0a0 | 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 |
| 6d0c0 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | n</span>.<span.class="tok-null"> |
| 6d0e0 | 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | false</span>;.}..<span.class="to |
| 6d100 | 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 |
| 6d120 | 2d 66 6e 22 3e 62 61 6e 67 32 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -fn">bang2</span>().<span.class= |
| 6d140 | 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 |
| 6d160 | 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 |
| 6d180 | 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">" |
| 6d1a0 | 3b 50 65 72 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b | ;PermissionDenied"</span>); |
| 6d1c0 | 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> |
| 6d1e0 | 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 |
| 6d200 | 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 |
| 6d220 | 64 3e 7a 69 67 20 62 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 | d>zig.build-exe.stack_trace.zig< |
| 6d240 | 2f 6b 62 64 3e 0a 24 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 | /kbd>.$.<kbd>./stack_trace</kbd> |
| 6d260 | 0a 74 68 72 65 61 64 20 33 35 37 30 37 36 34 20 70 61 6e 69 63 3a 20 50 65 72 6d 69 73 73 69 6f | .thread.3570764.panic:.Permissio |
| 6d280 | 6e 44 65 6e 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 | nDenied.<span.class="sgr-1m">/ho |
| 6d2a0 | 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 73 74 61 63 | me/andy/src/zig/doc/langref/stac |
| 6d2c0 | 6b 5f 74 72 61 63 65 2e 7a 69 67 3a 33 38 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | k_trace.zig:38:5</span>:.<span.c |
| 6d2e0 | 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 39 33 32 30 20 69 6e 20 62 61 6e 67 32 | lass="sgr-2m">0x1039320.in.bang2 |
| 6d300 | 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 40 70 61 6e 69 63 | .(stack_trace)</span>.....@panic |
| 6d320 | 28 26 71 75 6f 74 3b 50 65 72 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 26 71 75 6f 74 3b 29 3b 0a | ("PermissionDenied");. |
| 6d340 | 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 |
| 6d360 | 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 |
| 6d380 | 64 79 2f 73 72 63 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 | dy/src/zig/doc/langref/stack_tra |
| 6d3a0 | 63 65 2e 7a 69 67 3a 33 30 3a 31 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ce.zig:30:10</span>:.<span.class |
| 6d3c0 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 36 38 62 64 38 20 69 6e 20 68 65 6c 6c 6f 20 28 73 74 | ="sgr-2m">0x1068bd8.in.hello.(st |
| 6d3e0 | 61 63 6b 5f 74 72 61 63 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 62 61 6e 67 32 28 29 3b 0a 20 | ack_trace)</span>.....bang2();.. |
| 6d400 | 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">^< |
| 6d420 | 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 |
| 6d440 | 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 73 74 61 63 6b | e/andy/src/zig/doc/langref/stack |
| 6d460 | 5f 74 72 61 63 65 2e 7a 69 67 3a 31 37 3a 31 34 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | _trace.zig:17:14</span>:.<span.c |
| 6d480 | 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 39 32 66 63 20 69 6e 20 62 61 72 20 28 | lass="sgr-2m">0x10392fc.in.bar.( |
| 6d4a0 | 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 68 65 6c 6c | stack_trace)</span>.........hell |
| 6d4c0 | 6f 28 29 3b 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 | o();..............<span.class="s |
| 6d4e0 | 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 |
| 6d500 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e | r-1m">/home/andy/src/zig/doc/lan |
| 6d520 | 67 72 65 66 2f 73 74 61 63 6b 5f 74 72 61 63 65 2e 7a 69 67 3a 37 3a 31 32 3c 2f 73 70 61 6e 3e | gref/stack_trace.zig:7:12</span> |
| 6d540 | 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 33 37 32 31 63 | :.<span.class="sgr-2m">0x103721c |
| 6d560 | 20 69 6e 20 66 6f 6f 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 | .in.foo.(stack_trace)</span>.... |
| 6d580 | 20 20 20 20 20 62 61 72 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | .....bar();............<span.cla |
| 6d5a0 | 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 |
| 6d5c0 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f | s="sgr-1m">/home/andy/src/zig/do |
| 6d5e0 | 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 32 3a 38 3c 2f 73 | c/langref/stack_trace.zig:2:8</s |
| 6d600 | 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 33 | pan>:.<span.class="sgr-2m">0x103 |
| 6d620 | 35 31 39 64 20 69 6e 20 6d 61 69 6e 20 28 73 74 61 63 6b 5f 74 72 61 63 65 29 3c 2f 73 70 61 6e | 519d.in.main.(stack_trace)</span |
| 6d640 | 3e 0a 20 20 20 20 66 6f 6f 28 31 32 29 3b 0a 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | >.....foo(12);........<span.clas |
| 6d660 | 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 |
| 6d680 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 | ="sgr-1m">/home/andy/src/zig/lib |
| 6d6a0 | 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | /std/start.zig:514:22</span>:.<s |
| 6d6c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 34 61 34 39 20 69 6e 20 | pan.class="sgr-2m">0x1034a49.in. |
| 6d6e0 | 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 73 74 61 63 6b 5f 74 72 61 63 | posixCallMainAndExit.(stack_trac |
| 6d700 | 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 6d 61 69 6e 28 | e)</span>.............root.main( |
| 6d720 | 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 |
| 6d740 | 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 |
| 6d760 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c | ss="sgr-1m">/home/andy/src/zig/l |
| 6d780 | 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 36 36 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c | ib/std/start.zig:266:5</span>:.< |
| 6d7a0 | 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 34 35 62 31 20 69 6e | span.class="sgr-2m">0x10345b1.in |
| 6d7c0 | 20 5f 73 74 61 72 74 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 | ._start.(stack_trace)</span>.... |
| 6d7e0 | 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 72 | .asm.volatile.(switch.(native_ar |
| 6d800 | 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 3e | ch).{.....<span.class="sgr-32m"> |
| 6d820 | 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 3f | ^</span>.<span.class="sgr-1m">?? |
| 6d840 | 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 32 | ?:?:?</span>:.<span.class="sgr-2 |
| 6d860 | 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 63 | m">0x0.in.???.(???)</span>.(proc |
| 6d880 | 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 70 | ess.terminated.by.signal).</samp |
| 6d8a0 | 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>..... |
| 6d8c0 | 20 20 48 65 72 65 2c 20 74 68 65 20 73 74 61 63 6b 20 74 72 61 63 65 20 64 6f 65 73 20 6e 6f 74 | ..Here,.the.stack.trace.does.not |
| 6d8e0 | 20 65 78 70 6c 61 69 6e 20 68 6f 77 20 74 68 65 20 63 6f 6e 74 72 6f 6c 0a 20 20 20 20 20 20 66 | .explain.how.the.control.......f |
| 6d900 | 6c 6f 77 20 69 6e 20 3c 63 6f 64 65 3e 62 61 72 3c 2f 63 6f 64 65 3e 20 67 6f 74 20 74 6f 20 74 | low.in.<code>bar</code>.got.to.t |
| 6d920 | 68 65 20 3c 63 6f 64 65 3e 68 65 6c 6c 6f 28 29 3c 2f 63 6f 64 65 3e 20 63 61 6c 6c 2e 0a 20 20 | he.<code>hello()</code>.call.... |
| 6d940 | 20 20 20 20 4f 6e 65 20 77 6f 75 6c 64 20 68 61 76 65 20 74 6f 20 6f 70 65 6e 20 61 20 64 65 62 | ....One.would.have.to.open.a.deb |
| 6d960 | 75 67 67 65 72 20 6f 72 20 66 75 72 74 68 65 72 20 69 6e 73 74 72 75 6d 65 6e 74 20 74 68 65 20 | ugger.or.further.instrument.the. |
| 6d980 | 61 70 70 6c 69 63 61 74 69 6f 6e 0a 20 20 20 20 20 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 66 69 | application.......in.order.to.fi |
| 6d9a0 | 6e 64 20 6f 75 74 2e 20 54 68 65 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 65 2c 20 | nd.out..The.error.return.trace,. |
| 6d9c0 | 6f 6e 20 74 68 65 20 6f 74 68 65 72 20 68 61 6e 64 2c 0a 20 20 20 20 20 20 73 68 6f 77 73 20 65 | on.the.other.hand,.......shows.e |
| 6d9e0 | 78 61 63 74 6c 79 20 68 6f 77 20 74 68 65 20 65 72 72 6f 72 20 62 75 62 62 6c 65 64 20 75 70 2e | xactly.how.the.error.bubbled.up. |
| 6da00 | 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 |
| 6da20 | 20 64 65 62 75 67 67 69 6e 67 20 66 65 61 74 75 72 65 20 6d 61 6b 65 73 20 69 74 20 65 61 73 69 | .debugging.feature.makes.it.easi |
| 6da40 | 65 72 20 74 6f 20 69 74 65 72 61 74 65 20 71 75 69 63 6b 6c 79 20 6f 6e 20 63 6f 64 65 20 74 68 | er.to.iterate.quickly.on.code.th |
| 6da60 | 61 74 0a 20 20 20 20 20 20 72 6f 62 75 73 74 6c 79 20 68 61 6e 64 6c 65 73 20 61 6c 6c 20 65 72 | at.......robustly.handles.all.er |
| 6da80 | 72 6f 72 20 63 6f 6e 64 69 74 69 6f 6e 73 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 | ror.conditions..This.means.that. |
| 6daa0 | 5a 69 67 20 64 65 76 65 6c 6f 70 65 72 73 0a 20 20 20 20 20 20 77 69 6c 6c 20 6e 61 74 75 72 61 | Zig.developers.......will.natura |
| 6dac0 | 6c 6c 79 20 66 69 6e 64 20 74 68 65 6d 73 65 6c 76 65 73 20 77 72 69 74 69 6e 67 20 63 6f 72 72 | lly.find.themselves.writing.corr |
| 6dae0 | 65 63 74 2c 20 72 6f 62 75 73 74 20 63 6f 64 65 20 69 6e 20 6f 72 64 65 72 0a 20 20 20 20 20 20 | ect,.robust.code.in.order....... |
| 6db00 | 74 6f 20 69 6e 63 72 65 61 73 65 20 74 68 65 69 72 20 64 65 76 65 6c 6f 70 6d 65 6e 74 20 70 61 | to.increase.their.development.pa |
| 6db20 | 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 20 20 45 | ce........</p>.......<p>.......E |
| 6db40 | 72 72 6f 72 20 52 65 74 75 72 6e 20 54 72 61 63 65 73 20 61 72 65 20 65 6e 61 62 6c 65 64 20 62 | rror.Return.Traces.are.enabled.b |
| 6db60 | 79 20 64 65 66 61 75 6c 74 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 44 65 62 75 67 22 3e 44 65 | y.default.in.<a.href="#Debug">De |
| 6db80 | 62 75 67 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 | bug</a>.and.<a.href="#ReleaseSaf |
| 6dba0 | 65 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 61 3e 20 62 75 69 6c 64 73 20 61 6e 64 20 64 69 | e">ReleaseSafe</a>.builds.and.di |
| 6dbc0 | 73 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 52 | sabled.by.default.in.<a.href="#R |
| 6dbe0 | 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 61 3e 20 61 6e 64 20 | eleaseFast">ReleaseFast</a>.and. |
| 6dc00 | 3c 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 | <a.href="#ReleaseSmall">ReleaseS |
| 6dc20 | 6d 61 6c 6c 3c 2f 61 3e 20 62 75 69 6c 64 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | mall</a>.builds........</p>..... |
| 6dc40 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 61 72 65 20 61 20 66 65 77 20 77 61 79 73 | ..<p>.......There.are.a.few.ways |
| 6dc60 | 20 74 6f 20 61 63 74 69 76 61 74 65 20 74 68 69 73 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 | .to.activate.this.error.return.t |
| 6dc80 | 72 61 63 69 6e 67 20 66 65 61 74 75 72 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | racing.feature:.......</p>...... |
| 6dca0 | 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 65 74 75 72 6e 20 61 6e 20 65 72 72 6f | .<ul>.........<li>Return.an.erro |
| 6dcc0 | 72 20 66 72 6f 6d 20 6d 61 69 6e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6e 20 | r.from.main</li>.........<li>An. |
| 6dce0 | 65 72 72 6f 72 20 6d 61 6b 65 73 20 69 74 73 20 77 61 79 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 | error.makes.its.way.to.<code><sp |
| 6dd00 | 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 20 3c | an.class="tok-kw">catch</span>.< |
| 6dd20 | 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 3c | span.class="tok-kw">unreachable< |
| 6dd40 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 79 6f 75 20 68 61 76 65 20 6e 6f 74 20 6f | /span></code>.and.you.have.not.o |
| 6dd60 | 76 65 72 72 69 64 64 65 6e 20 74 68 65 20 64 65 66 61 75 6c 74 20 70 61 6e 69 63 20 68 61 6e 64 | verridden.the.default.panic.hand |
| 6dd80 | 6c 65 72 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 55 73 65 20 3c 61 20 68 72 65 66 | ler</li>.........<li>Use.<a.href |
| 6dda0 | 3d 22 23 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 22 3e 65 72 72 6f 72 52 65 74 75 72 6e | ="#errorReturnTrace">errorReturn |
| 6ddc0 | 54 72 61 63 65 3c 2f 61 3e 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 | Trace</a>.to.access.the.current. |
| 6dde0 | 72 65 74 75 72 6e 20 74 72 61 63 65 2e 20 59 6f 75 20 63 61 6e 20 75 73 65 20 3c 63 6f 64 65 3e | return.trace..You.can.use.<code> |
| 6de00 | 73 74 64 2e 64 65 62 75 67 2e 64 75 6d 70 53 74 61 63 6b 54 72 61 63 65 3c 2f 63 6f 64 65 3e 20 | std.debug.dumpStackTrace</code>. |
| 6de20 | 74 6f 20 70 72 69 6e 74 20 69 74 2e 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 | to.print.it..This.function.retur |
| 6de40 | 6e 73 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 3c 61 20 68 72 65 66 3d 22 23 6e 75 6c 6c | ns.comptime-known.<a.href="#null |
| 6de60 | 22 3e 6e 75 6c 6c 3c 2f 61 3e 20 77 68 65 6e 20 62 75 69 6c 64 69 6e 67 20 77 69 74 68 6f 75 74 | ">null</a>.when.building.without |
| 6de80 | 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 69 6e 67 20 73 75 70 70 6f 72 74 2e 3c 2f | .error.return.tracing.support.</ |
| 6dea0 | 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 49 6d | li>.......</ul>.......<h4.id="Im |
| 6dec0 | 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2d 44 65 74 61 69 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 | plementation-Details"><a.href="# |
| 6dee0 | 74 6f 63 2d 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2d 44 65 74 61 69 6c 73 22 3e 49 6d 70 6c | toc-Implementation-Details">Impl |
| 6df00 | 65 6d 65 6e 74 61 74 69 6f 6e 20 44 65 74 61 69 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | ementation.Details</a>.<a.class= |
| 6df20 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2d 44 65 74 61 | "hdr".href="#Implementation-Deta |
| 6df40 | 69 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 20 20 | ils">..</a></h4>........<p>..... |
| 6df60 | 20 20 54 6f 20 61 6e 61 6c 79 7a 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 63 6f 73 74 2c 20 74 | ..To.analyze.performance.cost,.t |
| 6df80 | 68 65 72 65 20 61 72 65 20 74 77 6f 20 63 61 73 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | here.are.two.cases:.......</p>.. |
| 6dfa0 | 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 77 68 65 6e 20 6e 6f 20 65 72 | .....<ul>.........<li>when.no.er |
| 6dfc0 | 72 6f 72 73 20 61 72 65 20 72 65 74 75 72 6e 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | rors.are.returned</li>.........< |
| 6dfe0 | 6c 69 3e 77 68 65 6e 20 72 65 74 75 72 6e 69 6e 67 20 65 72 72 6f 72 73 3c 2f 6c 69 3e 0a 20 20 | li>when.returning.errors</li>... |
| 6e000 | 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 46 6f 72 20 74 68 | ....</ul>.......<p>.......For.th |
| 6e020 | 65 20 63 61 73 65 20 77 68 65 6e 20 6e 6f 20 65 72 72 6f 72 73 20 61 72 65 20 72 65 74 75 72 6e | e.case.when.no.errors.are.return |
| 6e040 | 65 64 2c 20 74 68 65 20 63 6f 73 74 20 69 73 20 61 20 73 69 6e 67 6c 65 20 6d 65 6d 6f 72 79 20 | ed,.the.cost.is.a.single.memory. |
| 6e060 | 77 72 69 74 65 20 6f 70 65 72 61 74 69 6f 6e 2c 20 6f 6e 6c 79 20 69 6e 20 74 68 65 20 66 69 72 | write.operation,.only.in.the.fir |
| 6e080 | 73 74 20 6e 6f 6e 2d 66 61 69 6c 61 62 6c 65 20 66 75 6e 63 74 69 6f 6e 20 69 6e 20 74 68 65 20 | st.non-failable.function.in.the. |
| 6e0a0 | 63 61 6c 6c 20 67 72 61 70 68 20 74 68 61 74 20 63 61 6c 6c 73 20 61 20 66 61 69 6c 61 62 6c 65 | call.graph.that.calls.a.failable |
| 6e0c0 | 20 66 75 6e 63 74 69 6f 6e 2c 20 69 2e 65 2e 20 77 68 65 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 | .function,.i.e..when.a.function. |
| 6e0e0 | 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 74 6f 6b | returning.<code><span.class="tok |
| 6e100 | 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 63 61 6c 6c 73 20 | -type">void</span></code>.calls. |
| 6e120 | 61 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | a.function.returning.<code><span |
| 6e140 | 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 3c 2f 63 6f | .class="tok-kw">error</span></co |
| 6e160 | 64 65 3e 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a 65 | de>........This.is.to.initialize |
| 6e180 | 20 74 68 69 73 20 73 74 72 75 63 74 20 69 6e 20 74 68 65 20 73 74 61 63 6b 20 6d 65 6d 6f 72 79 | .this.struct.in.the.stack.memory |
| 6e1a0 | 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 |
| 6e1c0 | 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 |
| 6e1e0 | 73 73 3d 22 66 69 6c 65 22 3e 73 74 61 63 6b 5f 74 72 61 63 65 5f 73 74 72 75 63 74 2e 7a 69 67 | ss="file">stack_trace_struct.zig |
| 6e200 | 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>< |
| 6e220 | 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>.< |
| 6e240 | 73 70 61 6e 20 63 6c 61 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> |
| 6e260 | 20 53 74 61 63 6b 54 72 61 63 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | .StackTrace.=.<span.class="tok-k |
| 6e280 | 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 69 6e 64 65 78 3a 20 3c 73 | w">struct</span>.{.....index:.<s |
| 6e2a0 | 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 |
| 6e2c0 | 3e 2c 0a 20 20 20 20 69 6e 73 74 72 75 63 74 69 6f 6e 5f 61 64 64 72 65 73 73 65 73 3a 20 5b 4e | >,.....instruction_addresses:.[N |
| 6e2e0 | 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 73 69 7a 65 3c 2f 73 | ]<span.class="tok-type">usize</s |
| 6e300 | 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 75 72 65 3e 0a 20 | pan>,.};</code></pre></figure>.. |
| 6e320 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 65 72 65 2c 20 4e 20 69 73 20 74 68 65 20 6d 61 | .....<p>.......Here,.N.is.the.ma |
| 6e340 | 78 69 6d 75 6d 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 64 65 70 74 68 20 61 73 20 64 65 74 | ximum.function.call.depth.as.det |
| 6e360 | 65 72 6d 69 6e 65 64 20 62 79 20 63 61 6c 6c 20 67 72 61 70 68 20 61 6e 61 6c 79 73 69 73 2e 20 | ermined.by.call.graph.analysis.. |
| 6e380 | 52 65 63 75 72 73 69 6f 6e 20 69 73 20 69 67 6e 6f 72 65 64 20 61 6e 64 20 63 6f 75 6e 74 73 20 | Recursion.is.ignored.and.counts. |
| 6e3a0 | 66 6f 72 20 32 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | for.2........</p>.......<p>..... |
| 6e3c0 | 20 20 41 20 70 6f 69 6e 74 65 72 20 74 6f 20 3c 63 6f 64 65 3e 53 74 61 63 6b 54 72 61 63 65 3c | ..A.pointer.to.<code>StackTrace< |
| 6e3e0 | 2f 63 6f 64 65 3e 20 69 73 20 70 61 73 73 65 64 20 61 73 20 61 20 73 65 63 72 65 74 20 70 61 72 | /code>.is.passed.as.a.secret.par |
| 6e400 | 61 6d 65 74 65 72 20 74 6f 20 65 76 65 72 79 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 63 61 | ameter.to.every.function.that.ca |
| 6e420 | 6e 20 72 65 74 75 72 6e 20 61 6e 20 65 72 72 6f 72 2c 20 62 75 74 20 69 74 27 73 20 61 6c 77 61 | n.return.an.error,.but.it's.alwa |
| 6e440 | 79 73 20 74 68 65 20 66 69 72 73 74 20 70 61 72 61 6d 65 74 65 72 2c 20 73 6f 20 69 74 20 63 61 | ys.the.first.parameter,.so.it.ca |
| 6e460 | 6e 20 6c 69 6b 65 6c 79 20 73 69 74 20 69 6e 20 61 20 72 65 67 69 73 74 65 72 20 61 6e 64 20 73 | n.likely.sit.in.a.register.and.s |
| 6e480 | 74 61 79 20 74 68 65 72 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | tay.there........</p>.......<p>. |
| 6e4a0 | 20 20 20 20 20 20 54 68 61 74 27 73 20 69 74 20 66 6f 72 20 74 68 65 20 70 61 74 68 20 77 68 65 | ......That's.it.for.the.path.whe |
| 6e4c0 | 6e 20 6e 6f 20 65 72 72 6f 72 73 20 6f 63 63 75 72 2e 20 49 74 27 73 20 70 72 61 63 74 69 63 61 | n.no.errors.occur..It's.practica |
| 6e4e0 | 6c 6c 79 20 66 72 65 65 20 69 6e 20 74 65 72 6d 73 20 6f 66 20 70 65 72 66 6f 72 6d 61 6e 63 65 | lly.free.in.terms.of.performance |
| 6e500 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 | ........</p>.......<p>.......Whe |
| 6e520 | 6e 20 67 65 6e 65 72 61 74 69 6e 67 20 74 68 65 20 63 6f 64 65 20 66 6f 72 20 61 20 66 75 6e 63 | n.generating.the.code.for.a.func |
| 6e540 | 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 2c 20 6a 75 73 74 | tion.that.returns.an.error,.just |
| 6e560 | 20 62 65 66 6f 72 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 | .before.the.<code><span.class="t |
| 6e580 | 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 |
| 6e5a0 | 65 6d 65 6e 74 20 28 6f 6e 6c 79 20 66 6f 72 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | ement.(only.for.the.<code><span. |
| 6e5c0 | 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 63 6f | class="tok-kw">return</span></co |
| 6e5e0 | 64 65 3e 20 73 74 61 74 65 6d 65 6e 74 73 20 74 68 61 74 20 72 65 74 75 72 6e 20 65 72 72 6f 72 | de>.statements.that.return.error |
| 6e600 | 73 29 2c 20 5a 69 67 20 67 65 6e 65 72 61 74 65 73 20 61 20 63 61 6c 6c 20 74 6f 20 74 68 69 73 | s),.Zig.generates.a.call.to.this |
| 6e620 | 20 66 75 6e 63 74 69 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 | .function:.......</p>.......<fig |
| 6e640 | 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"> |
| 6e660 | 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 7a 69 67 5f 72 65 74 75 72 6e 5f 65 72 | <cite.class="file">zig_return_er |
| 6e680 | 72 6f 72 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 | ror_fn.zig</cite></figcaption><p |
| 6e6a0 | 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 6e | re><code><span.class="tok-commen |
| 6e6c0 | 74 22 3e 2f 2f 20 6d 61 72 6b 65 64 20 61 73 20 26 71 75 6f 74 3b 6e 6f 2d 69 6e 6c 69 6e 65 26 | t">//.marked.as."no-inline& |
| 6e6e0 | 71 75 6f 74 3b 20 69 6e 20 4c 4c 56 4d 20 49 52 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | quot;.in.LLVM.IR</span>.<span.cl |
| 6e700 | 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 |
| 6e720 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 5f 5f 7a 69 67 5f 72 65 74 75 72 6e 5f 65 72 72 6f 72 3c 2f | ss="tok-fn">__zig_return_error</ |
| 6e740 | 73 70 61 6e 3e 28 73 74 61 63 6b 5f 74 72 61 63 65 3a 20 2a 53 74 61 63 6b 54 72 61 63 65 29 20 | span>(stack_trace:.*StackTrace). |
| 6e760 | 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 |
| 6e780 | 6e 3e 20 7b 0a 20 20 20 20 73 74 61 63 6b 5f 74 72 61 63 65 2e 69 6e 73 74 72 75 63 74 69 6f 6e | n>.{.....stack_trace.instruction |
| 6e7a0 | 5f 61 64 64 72 65 73 73 65 73 5b 73 74 61 63 6b 5f 74 72 61 63 65 2e 69 6e 64 65 78 5d 20 3d 20 | _addresses[stack_trace.index].=. |
| 6e7c0 | 3c 73 70 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 74 75 72 | <span.class="tok-builtin">@retur |
| 6e7e0 | 6e 41 64 64 72 65 73 73 3c 2f 73 70 61 6e 3e 28 29 3b 0a 20 20 20 20 73 74 61 63 6b 5f 74 72 61 | nAddress</span>();.....stack_tra |
| 6e800 | 63 65 2e 69 6e 64 65 78 20 3d 20 28 73 74 61 63 6b 5f 74 72 61 63 65 2e 69 6e 64 65 78 20 2b 20 | ce.index.=.(stack_trace.index.+. |
| 6e820 | 3c 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 |
| 6e840 | 3e 29 20 25 20 4e 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 | >).%.N;.}</code></pre></figure>. |
| 6e860 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 63 6f 73 74 20 69 73 20 32 20 6d 61 | ......<p>.......The.cost.is.2.ma |
| 6e880 | 74 68 20 6f 70 65 72 61 74 69 6f 6e 73 20 70 6c 75 73 20 73 6f 6d 65 20 6d 65 6d 6f 72 79 20 72 | th.operations.plus.some.memory.r |
| 6e8a0 | 65 61 64 73 20 61 6e 64 20 77 72 69 74 65 73 2e 20 54 68 65 20 6d 65 6d 6f 72 79 20 61 63 63 65 | eads.and.writes..The.memory.acce |
| 6e8c0 | 73 73 65 64 20 69 73 20 63 6f 6e 73 74 72 61 69 6e 65 64 20 61 6e 64 20 73 68 6f 75 6c 64 20 72 | ssed.is.constrained.and.should.r |
| 6e8e0 | 65 6d 61 69 6e 20 63 61 63 68 65 64 20 66 6f 72 20 74 68 65 20 64 75 72 61 74 69 6f 6e 20 6f 66 | emain.cached.for.the.duration.of |
| 6e900 | 20 74 68 65 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 62 75 62 62 6c 69 6e 67 2e 0a 20 20 20 20 | .the.error.return.bubbling...... |
| 6e920 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 73 20 66 6f 72 20 63 6f | ..</p>.......<p>.......As.for.co |
| 6e940 | 64 65 20 73 69 7a 65 20 63 6f 73 74 2c 20 31 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 62 65 | de.size.cost,.1.function.call.be |
| 6e960 | 66 6f 72 65 20 61 20 72 65 74 75 72 6e 20 73 74 61 74 65 6d 65 6e 74 20 69 73 20 6e 6f 20 62 69 | fore.a.return.statement.is.no.bi |
| 6e980 | 67 20 64 65 61 6c 2e 20 45 76 65 6e 20 73 6f 2c 0a 20 20 20 20 20 20 49 20 68 61 76 65 20 3c 61 | g.deal..Even.so,.......I.have.<a |
| 6e9a0 | 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 |
| 6e9c0 | 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 36 39 30 22 3e 61 20 70 6c 61 6e 3c 2f 61 3e 20 74 6f 20 | g/zig/issues/690">a.plan</a>.to. |
| 6e9e0 | 6d 61 6b 65 20 74 68 65 20 63 61 6c 6c 20 74 6f 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 5f 5f 7a | make.the.call.to.......<code>__z |
| 6ea00 | 69 67 5f 72 65 74 75 72 6e 5f 65 72 72 6f 72 3c 2f 63 6f 64 65 3e 20 61 20 74 61 69 6c 20 63 61 | ig_return_error</code>.a.tail.ca |
| 6ea20 | 6c 6c 2c 20 77 68 69 63 68 20 62 72 69 6e 67 73 20 74 68 65 20 63 6f 64 65 20 73 69 7a 65 20 63 | ll,.which.brings.the.code.size.c |
| 6ea40 | 6f 73 74 20 64 6f 77 6e 20 74 6f 20 61 63 74 75 61 6c 6c 79 20 7a 65 72 6f 2e 20 57 68 61 74 20 | ost.down.to.actually.zero..What. |
| 6ea60 | 69 73 20 61 20 72 65 74 75 72 6e 20 73 74 61 74 65 6d 65 6e 74 20 69 6e 20 63 6f 64 65 20 77 69 | is.a.return.statement.in.code.wi |
| 6ea80 | 74 68 6f 75 74 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 69 6e 67 20 63 61 6e 20 62 | thout.error.return.tracing.can.b |
| 6eaa0 | 65 63 6f 6d 65 20 61 20 6a 75 6d 70 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 69 6e 20 63 6f 64 65 | ecome.a.jump.instruction.in.code |
| 6eac0 | 20 77 69 74 68 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 69 6e 67 2e 0a 20 20 20 20 | .with.error.return.tracing...... |
| 6eae0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 | ..</p>.......................... |
| 6eb00 | 20 20 3c 68 32 20 69 64 3d 22 4f 70 74 69 6f 6e 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | ..<h2.id="Optionals"><a.href="#t |
| 6eb20 | 6f 63 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 | oc-Optionals">Optionals</a>.<a.c |
| 6eb40 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e c2 a7 3c | lass="hdr".href="#Optionals">..< |
| 6eb60 | 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 4f 6e 65 20 61 72 | /a></h2>........<p>.......One.ar |
| 6eb80 | 65 61 20 74 68 61 74 20 5a 69 67 20 70 72 6f 76 69 64 65 73 20 73 61 66 65 74 79 20 77 69 74 68 | ea.that.Zig.provides.safety.with |
| 6eba0 | 6f 75 74 20 63 6f 6d 70 72 6f 6d 69 73 69 6e 67 20 65 66 66 69 63 69 65 6e 63 79 20 6f 72 0a 20 | out.compromising.efficiency.or.. |
| 6ebc0 | 20 20 20 20 20 72 65 61 64 61 62 69 6c 69 74 79 20 69 73 20 77 69 74 68 20 74 68 65 20 6f 70 74 | .....readability.is.with.the.opt |
| 6ebe0 | 69 6f 6e 61 6c 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 | ional.type........</p>.......<p> |
| 6ec00 | 0a 20 20 20 20 20 20 54 68 65 20 71 75 65 73 74 69 6f 6e 20 6d 61 72 6b 20 73 79 6d 62 6f 6c 69 | .......The.question.mark.symboli |
| 6ec20 | 7a 65 73 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 2e 20 59 6f 75 20 63 61 6e 20 63 | zes.the.optional.type..You.can.c |
| 6ec40 | 6f 6e 76 65 72 74 20 61 20 74 79 70 65 20 74 6f 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 0a 20 20 20 | onvert.a.type.to.an.optional.... |
| 6ec60 | 20 20 20 74 79 70 65 20 62 79 20 70 75 74 74 69 6e 67 20 61 20 71 75 65 73 74 69 6f 6e 20 6d 61 | ...type.by.putting.a.question.ma |
| 6ec80 | 72 6b 20 69 6e 20 66 72 6f 6e 74 20 6f 66 20 69 74 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 | rk.in.front.of.it,.like.this:... |
| 6eca0 | 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 |
| 6ecc0 | 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=" |
| 6ece0 | 66 69 6c 65 22 3e 6f 70 74 69 6f 6e 61 6c 5f 69 6e 74 65 67 65 72 2e 7a 69 67 3c 2f 63 69 74 65 | file">optional_integer.zig</cite |
| 6ed00 | 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 |
| 6ed20 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6e 6f 72 6d 61 6c 20 69 6e 74 | lass="tok-comment">//.normal.int |
| 6ed40 | 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 6f 6b 2d 6b 77 22 | eger</span>.<span.class="tok-kw" |
| 6ed60 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 6f 72 6d 61 6c 5f 69 6e 74 3a 20 3c 73 70 61 6e 20 | >const</span>.normal_int:.<span. |
| 6ed80 | 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 |
| 6eda0 | 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 61 | pan.class="tok-number">1234</spa |
| 6edc0 | 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 3e 2f | n>;..<span.class="tok-comment">/ |
| 6ede0 | 2f 20 6f 70 74 69 6f 6e 61 6c 20 69 6e 74 65 67 65 72 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | /.optional.integer</span>.<span. |
| 6ee00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 | class="tok-kw">const</span>.opti |
| 6ee20 | 6f 6e 61 6c 5f 69 6e 74 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | onal_int:.?<span.class="tok-type |
| 6ee40 | 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- |
| 6ee60 | 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | number">5678</span>;</code></pre |
| 6ee80 | 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 4e 6f 77 20 | ></figure>........<p>.......Now. |
| 6eea0 | 74 68 65 20 76 61 72 69 61 62 6c 65 20 3c 63 6f 64 65 3e 6f 70 74 69 6f 6e 61 6c 5f 69 6e 74 3c | the.variable.<code>optional_int< |
| 6eec0 | 2f 63 6f 64 65 3e 20 63 6f 75 6c 64 20 62 65 20 61 6e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | /code>.could.be.an.<code><span.c |
| 6eee0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | lass="tok-type">i32</span></code |
| 6ef00 | 3e 2c 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 6e 75 6c | >,.or.<code><span.class="tok-nul |
| 6ef20 | 6c 22 3e 6e 75 6c 6c 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 | l">null</span></code>........</p |
| 6ef40 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 73 74 65 61 64 20 6f 66 20 69 6e 74 | >.......<p>.......Instead.of.int |
| 6ef60 | 65 67 65 72 73 2c 20 6c 65 74 27 73 20 74 61 6c 6b 20 61 62 6f 75 74 20 70 6f 69 6e 74 65 72 73 | egers,.let's.talk.about.pointers |
| 6ef80 | 2e 20 4e 75 6c 6c 20 72 65 66 65 72 65 6e 63 65 73 20 61 72 65 20 74 68 65 20 73 6f 75 72 63 65 | ..Null.references.are.the.source |
| 6efa0 | 20 6f 66 20 6d 61 6e 79 20 72 75 6e 74 69 6d 65 0a 20 20 20 20 20 20 65 78 63 65 70 74 69 6f 6e | .of.many.runtime.......exception |
| 6efc0 | 73 2c 20 61 6e 64 20 65 76 65 6e 20 73 74 61 6e 64 20 61 63 63 75 73 65 64 20 6f 66 20 62 65 69 | s,.and.even.stand.accused.of.bei |
| 6efe0 | 6e 67 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 6c 75 | ng.......<a.href="https://www.lu |
| 6f000 | 63 69 64 63 68 61 72 74 2e 63 6f 6d 2f 74 65 63 68 62 6c 6f 67 2f 32 30 31 35 2f 30 38 2f 33 31 | cidchart.com/techblog/2015/08/31 |
| 6f020 | 2f 74 68 65 2d 77 6f 72 73 74 2d 6d 69 73 74 61 6b 65 2d 6f 66 2d 63 6f 6d 70 75 74 65 72 2d 73 | /the-worst-mistake-of-computer-s |
| 6f040 | 63 69 65 6e 63 65 2f 22 3e 74 68 65 20 77 6f 72 73 74 20 6d 69 73 74 61 6b 65 20 6f 66 20 63 6f | cience/">the.worst.mistake.of.co |
| 6f060 | 6d 70 75 74 65 72 20 73 63 69 65 6e 63 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | mputer.science</a>........</p>.. |
| 6f080 | 20 20 20 20 20 3c 70 3e 5a 69 67 20 64 6f 65 73 20 6e 6f 74 20 68 61 76 65 20 74 68 65 6d 2e 3c | .....<p>Zig.does.not.have.them.< |
| 6f0a0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 73 74 65 61 64 2c 20 79 6f 75 | /p>.......<p>.......Instead,.you |
| 6f0c0 | 20 63 61 6e 20 75 73 65 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 2e 20 54 68 | .can.use.an.optional.pointer..Th |
| 6f0e0 | 69 73 20 73 65 63 72 65 74 6c 79 20 63 6f 6d 70 69 6c 65 73 20 64 6f 77 6e 20 74 6f 20 61 20 6e | is.secretly.compiles.down.to.a.n |
| 6f100 | 6f 72 6d 61 6c 20 70 6f 69 6e 74 65 72 2c 0a 20 20 20 20 20 20 73 69 6e 63 65 20 77 65 20 6b 6e | ormal.pointer,.......since.we.kn |
| 6f120 | 6f 77 20 77 65 20 63 61 6e 20 75 73 65 20 30 20 61 73 20 74 68 65 20 6e 75 6c 6c 20 76 61 6c 75 | ow.we.can.use.0.as.the.null.valu |
| 6f140 | 65 20 66 6f 72 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 2e 20 42 75 74 20 74 68 65 | e.for.the.optional.type..But.the |
| 6f160 | 20 63 6f 6d 70 69 6c 65 72 0a 20 20 20 20 20 20 63 61 6e 20 63 68 65 63 6b 20 79 6f 75 72 20 77 | .compiler.......can.check.your.w |
| 6f180 | 6f 72 6b 20 61 6e 64 20 6d 61 6b 65 20 73 75 72 65 20 79 6f 75 20 64 6f 6e 27 74 20 61 73 73 69 | ork.and.make.sure.you.don't.assi |
| 6f1a0 | 67 6e 20 6e 75 6c 6c 20 74 6f 20 73 6f 6d 65 74 68 69 6e 67 20 74 68 61 74 20 63 61 6e 27 74 20 | gn.null.to.something.that.can't. |
| 6f1c0 | 62 65 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 0a 20 20 | be.null........</p>.......<p>... |
| 6f1e0 | 20 20 20 20 54 79 70 69 63 61 6c 6c 79 20 74 68 65 20 64 6f 77 6e 73 69 64 65 20 6f 66 20 6e 6f | ....Typically.the.downside.of.no |
| 6f200 | 74 20 68 61 76 69 6e 67 20 6e 75 6c 6c 20 69 73 20 74 68 61 74 20 69 74 20 6d 61 6b 65 73 20 74 | t.having.null.is.that.it.makes.t |
| 6f220 | 68 65 20 63 6f 64 65 20 6d 6f 72 65 20 76 65 72 62 6f 73 65 20 74 6f 0a 20 20 20 20 20 20 77 72 | he.code.more.verbose.to.......wr |
| 6f240 | 69 74 65 2e 20 42 75 74 2c 20 6c 65 74 27 73 20 63 6f 6d 70 61 72 65 20 73 6f 6d 65 20 65 71 75 | ite..But,.let's.compare.some.equ |
| 6f260 | 69 76 61 6c 65 6e 74 20 43 20 63 6f 64 65 20 61 6e 64 20 5a 69 67 20 63 6f 64 65 2e 0a 20 20 20 | ivalent.C.code.and.Zig.code..... |
| 6f280 | 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 61 73 6b 3a 20 63 61 | ...</p>.......<p>.......Task:.ca |
| 6f2a0 | 6c 6c 20 6d 61 6c 6c 6f 63 2c 20 69 66 20 74 68 65 20 72 65 73 75 6c 74 20 69 73 20 6e 75 6c 6c | ll.malloc,.if.the.result.is.null |
| 6f2c0 | 2c 20 72 65 74 75 72 6e 20 6e 75 6c 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | ,.return.null........</p>....... |
| 6f2e0 | 3c 70 3e 43 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 | <p>C.code</p>.......<figure><fig |
| 6f300 | 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 73 | caption.class="c-cap"><cite.clas |
| 6f320 | 73 3d 22 66 69 6c 65 22 3e 63 61 6c 6c 5f 6d 61 6c 6c 6f 63 5f 69 6e 5f 63 2e 63 3c 2f 63 69 74 | s="file">call_malloc_in_c.c</cit |
| 6f340 | 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 2f 2f 20 6d 61 6c | e></figcaption><pre><code>//.mal |
| 6f360 | 6c 6f 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 | loc.prototype.included.for.refer |
| 6f380 | 65 6e 63 65 0a 76 6f 69 64 20 2a 6d 61 6c 6c 6f 63 28 73 69 7a 65 5f 74 20 73 69 7a 65 29 3b 0a | ence.void.*malloc(size_t.size);. |
| 6f3a0 | 0a 73 74 72 75 63 74 20 46 6f 6f 20 2a 64 6f 5f 61 5f 74 68 69 6e 67 28 76 6f 69 64 29 20 7b 0a | .struct.Foo.*do_a_thing(void).{. |
| 6f3c0 | 20 20 20 20 63 68 61 72 20 2a 70 74 72 20 3d 20 6d 61 6c 6c 6f 63 28 31 32 33 34 29 3b 0a 20 20 | ....char.*ptr.=.malloc(1234);... |
| 6f3e0 | 20 20 69 66 20 28 21 70 74 72 29 20 72 65 74 75 72 6e 20 4e 55 4c 4c 3b 0a 20 20 20 20 2f 2f 20 | ..if.(!ptr).return.NULL;.....//. |
| 6f400 | 2e 2e 2e 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 | ....}</code></pre></figure>..... |
| 6f420 | 20 20 3c 70 3e 5a 69 67 20 63 6f 64 65 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e | ..<p>Zig.code</p>.......<figure> |
| 6f440 | 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 |
| 6f460 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 61 6c 6c 5f 6d 61 6c 6c 6f 63 5f 66 72 6f 6d 5f | e.class="file">call_malloc_from_ |
| 6f480 | 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> |
| 6f4a0 | 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"> |
| 6f4c0 | 2f 2f 20 6d 61 6c 6c 6f 63 20 70 72 6f 74 6f 74 79 70 65 20 69 6e 63 6c 75 64 65 64 20 66 6f 72 | //.malloc.prototype.included.for |
| 6f4e0 | 20 72 65 66 65 72 65 6e 63 65 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .reference</span>.<span.class="t |
| 6f500 | 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-kw">extern</span>.<span.class |
| 6f520 | 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= |
| 6f540 | 22 74 6f 6b 2d 66 6e 22 3e 6d 61 6c 6c 6f 63 3c 2f 73 70 61 6e 3e 28 73 69 7a 65 3a 20 3c 73 70 | "tok-fn">malloc</span>(size:.<sp |
| 6f560 | 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> |
| 6f580 | 29 20 3f 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c | ).?[*]<span.class="tok-type">u8< |
| 6f5a0 | 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 66 6e | /span>;..<span.class="tok-kw">fn |
| 6f5c0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 41 | </span>.<span.class="tok-fn">doA |
| 6f5e0 | 54 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 29 20 3f 2a 46 6f 6f 20 7b 0a 20 20 20 20 3c 73 70 61 6e | Thing</span>().?*Foo.{.....<span |
| 6f600 | 20 63 6c 61 73 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 |
| 6f620 | 20 3d 20 6d 61 6c 6c 6f 63 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | .=.malloc(<span.class="tok-numbe |
| 6f640 | 72 22 3e 31 32 33 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 | r">1234</span>).<span.class="tok |
| 6f660 | 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 73 3d 22 | -kw">orelse</span>.<span.class=" |
| 6f680 | 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 |
| 6f6a0 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 | s="tok-null">null</span>;....._. |
| 6f6c0 | 3d 20 70 74 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 | =.ptr;.<span.class="tok-comment" |
| 6f6e0 | 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 3c 2f 66 | >//....</span>.}</code></pre></f |
| 6f700 | 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 48 65 72 65 2c 20 5a | igure>.......<p>.........Here,.Z |
| 6f720 | 69 67 20 69 73 20 61 74 20 6c 65 61 73 74 20 61 73 20 63 6f 6e 76 65 6e 69 65 6e 74 2c 20 69 66 | ig.is.at.least.as.convenient,.if |
| 6f740 | 20 6e 6f 74 20 6d 6f 72 65 2c 20 74 68 61 6e 20 43 2e 20 41 6e 64 2c 20 74 68 65 20 74 79 70 65 | .not.more,.than.C..And,.the.type |
| 6f760 | 20 6f 66 20 22 70 74 72 22 0a 20 20 20 20 20 20 20 20 69 73 20 3c 63 6f 64 65 3e 5b 2a 5d 3c 73 | .of."ptr".........is.<code>[*]<s |
| 6f780 | 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 3c 2f | pan.class="tok-type">u8</span></ |
| 6f7a0 | 63 6f 64 65 3e 20 3c 65 6d 3e 6e 6f 74 3c 2f 65 6d 3e 20 3c 63 6f 64 65 3e 3f 5b 2a 5d 3c 73 70 | code>.<em>not</em>.<code>?[*]<sp |
| 6f7c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 | an.class="tok-type">u8</span></c |
| 6f7e0 | 6f 64 65 3e 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 | ode>..The.<code><span.class="tok |
| 6f800 | 2d 6b 77 22 3e 6f 72 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 | -kw">orelse</span></code>.keywor |
| 6f820 | 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 6e 77 72 61 70 70 65 64 20 | d.....................unwrapped. |
| 6f840 | 74 68 65 20 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 20 61 6e 64 20 74 68 65 72 65 66 6f 72 65 20 | the.optional.type.and.therefore. |
| 6f860 | 3c 63 6f 64 65 3e 70 74 72 3c 2f 63 6f 64 65 3e 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 | <code>ptr</code>.is.guaranteed.t |
| 6f880 | 6f 20 62 65 20 6e 6f 6e 2d 6e 75 6c 6c 20 65 76 65 72 79 77 68 65 72 65 0a 20 20 20 20 20 20 20 | o.be.non-null.everywhere........ |
| 6f8a0 | 20 69 74 20 69 73 20 75 73 65 64 20 69 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 | .it.is.used.in.the.function..... |
| 6f8c0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 68 65 20 6f 74 | ...</p>.......<p>.........The.ot |
| 6f8e0 | 68 65 72 20 66 6f 72 6d 20 6f 66 20 63 68 65 63 6b 69 6e 67 20 61 67 61 69 6e 73 74 20 4e 55 4c | her.form.of.checking.against.NUL |
| 6f900 | 4c 20 79 6f 75 20 6d 69 67 68 74 20 73 65 65 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 74 68 69 73 3a | L.you.might.see.looks.like.this: |
| 6f920 | 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 |
| 6f940 | 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 73 73 3d | ption.class="c-cap"><cite.class= |
| 6f960 | 22 66 69 6c 65 22 3e 63 68 65 63 6b 69 6e 67 5f 6e 75 6c 6c 5f 69 6e 5f 63 2e 63 3c 2f 63 69 74 | "file">checking_null_in_c.c</cit |
| 6f980 | 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 76 6f 69 64 20 64 | e></figcaption><pre><code>void.d |
| 6f9a0 | 6f 5f 61 5f 74 68 69 6e 67 28 73 74 72 75 63 74 20 46 6f 6f 20 2a 66 6f 6f 29 20 7b 0a 20 20 20 | o_a_thing(struct.Foo.*foo).{.... |
| 6f9c0 | 20 2f 2f 20 64 6f 20 73 6f 6d 65 20 73 74 75 66 66 0a 0a 20 20 20 20 69 66 20 28 66 6f 6f 29 20 | .//.do.some.stuff......if.(foo). |
| 6f9e0 | 7b 0a 20 20 20 20 20 20 20 20 64 6f 5f 73 6f 6d 65 74 68 69 6e 67 5f 77 69 74 68 5f 66 6f 6f 28 | {.........do_something_with_foo( |
| 6fa00 | 66 6f 6f 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 2f 2f 20 64 6f 20 73 6f 6d 65 20 73 74 75 66 | foo);.....}......//.do.some.stuf |
| 6fa20 | 66 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 | f.}</code></pre></figure>....... |
| 6fa40 | 3c 70 3e 0a 20 20 20 20 20 20 20 20 49 6e 20 5a 69 67 20 79 6f 75 20 63 61 6e 20 61 63 63 6f 6d | <p>.........In.Zig.you.can.accom |
| 6fa60 | 70 6c 69 73 68 20 74 68 65 20 73 61 6d 65 20 74 68 69 6e 67 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | plish.the.same.thing:.......</p> |
| 6fa80 | 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 |
| 6faa0 | 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 68 | ="zig-cap"><cite.class="file">ch |
| 6fac0 | 65 63 6b 69 6e 67 5f 6e 75 6c 6c 5f 69 6e 5f 7a 69 67 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 | ecking_null_in_zig.zig</cite></f |
| 6fae0 | 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 |
| 6fb00 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 | ="tok-kw">const</span>.Foo.=.<sp |
| 6fb20 | 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>. |
| 6fb40 | 7b 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 | {};.<span.class="tok-kw">fn</spa |
| 6fb60 | 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 53 6f 6d 65 74 68 | n>.<span.class="tok-fn">doSometh |
| 6fb80 | 69 6e 67 57 69 74 68 46 6f 6f 3c 2f 73 70 61 6e 3e 28 66 6f 6f 3a 20 2a 46 6f 6f 29 20 3c 73 70 | ingWithFoo</span>(foo:.*Foo).<sp |
| 6fba0 | 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>. |
| 6fbc0 | 7b 0a 20 20 20 20 5f 20 3d 20 66 6f 6f 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | {....._.=.foo;.}..<span.class="t |
| 6fbe0 | 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 |
| 6fc00 | 6b 2d 66 6e 22 3e 64 6f 41 54 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 6f 70 74 69 6f 6e 61 6c 5f 66 | k-fn">doAThing</span>(optional_f |
| 6fc20 | 6f 6f 3a 20 3f 2a 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 | oo:.?*Foo).<span.class="tok-type |
| 6fc40 | 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= |
| 6fc60 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 64 6f 20 73 6f 6d 65 20 73 74 75 66 66 3c 2f | "tok-comment">//.do.some.stuff</ |
| 6fc80 | 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"> |
| 6fca0 | 69 66 3c 2f 73 70 61 6e 3e 20 28 6f 70 74 69 6f 6e 61 6c 5f 66 6f 6f 29 20 7c 66 6f 6f 7c 20 7b | if</span>.(optional_foo).|foo|.{ |
| 6fcc0 | 0a 20 20 20 20 20 20 20 20 64 6f 53 6f 6d 65 74 68 69 6e 67 57 69 74 68 46 6f 6f 28 66 6f 6f 29 | .........doSomethingWithFoo(foo) |
| 6fce0 | 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 |
| 6fd00 | 6d 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 7d | mment">//.do.some.stuff</span>.} |
| 6fd20 | 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 70 | </code></pre></figure>........<p |
| 6fd40 | 3e 0a 20 20 20 20 20 20 4f 6e 63 65 20 61 67 61 69 6e 2c 20 74 68 65 20 6e 6f 74 61 62 6c 65 20 | >.......Once.again,.the.notable. |
| 6fd60 | 74 68 69 6e 67 20 68 65 72 65 20 69 73 20 74 68 61 74 20 69 6e 73 69 64 65 20 74 68 65 20 69 66 | thing.here.is.that.inside.the.if |
| 6fd80 | 20 62 6c 6f 63 6b 2c 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 66 6f 6f 3c 2f 63 6f 64 65 3e 20 69 | .block,.......<code>foo</code>.i |
| 6fda0 | 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 2c | s.no.longer.an.optional.pointer, |
| 6fdc0 | 20 69 74 20 69 73 20 61 20 70 6f 69 6e 74 65 72 2c 20 77 68 69 63 68 0a 20 20 20 20 20 20 63 61 | .it.is.a.pointer,.which.......ca |
| 6fde0 | 6e 6e 6f 74 20 62 65 20 6e 75 6c 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | nnot.be.null........</p>.......< |
| 6fe00 | 70 3e 0a 20 20 20 20 20 20 4f 6e 65 20 62 65 6e 65 66 69 74 20 74 6f 20 74 68 69 73 20 69 73 20 | p>.......One.benefit.to.this.is. |
| 6fe20 | 74 68 61 74 20 66 75 6e 63 74 69 6f 6e 73 20 77 68 69 63 68 20 74 61 6b 65 20 70 6f 69 6e 74 65 | that.functions.which.take.pointe |
| 6fe40 | 72 73 20 61 73 20 61 72 67 75 6d 65 6e 74 73 20 63 61 6e 0a 20 20 20 20 20 20 62 65 20 61 6e 6e | rs.as.arguments.can.......be.ann |
| 6fe60 | 6f 74 61 74 65 64 20 77 69 74 68 20 74 68 65 20 22 6e 6f 6e 6e 75 6c 6c 22 20 61 74 74 72 69 62 | otated.with.the."nonnull".attrib |
| 6fe80 | 75 74 65 20 2d 20 3c 63 6f 64 65 3e 5f 5f 61 74 74 72 69 62 75 74 65 5f 5f 28 28 6e 6f 6e 6e 75 | ute.-.<code>__attribute__((nonnu |
| 6fea0 | 6c 6c 29 29 3c 2f 63 6f 64 65 3e 20 69 6e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 | ll))</code>.in.......<a.href="ht |
| 6fec0 | 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 63 | tps://gcc.gnu.org/onlinedocs/gcc |
| 6fee0 | 2d 34 2e 30 2e 30 2f 67 63 63 2f 46 75 6e 63 74 69 6f 6e 2d 41 74 74 72 69 62 75 74 65 73 2e 68 | -4.0.0/gcc/Function-Attributes.h |
| 6ff00 | 74 6d 6c 22 3e 47 43 43 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 54 68 65 20 6f 70 74 69 6d 69 7a 65 | tml">GCC</a>........The.optimize |
| 6ff20 | 72 20 63 61 6e 20 73 6f 6d 65 74 69 6d 65 73 20 6d 61 6b 65 20 62 65 74 74 65 72 20 64 65 63 69 | r.can.sometimes.make.better.deci |
| 6ff40 | 73 69 6f 6e 73 20 6b 6e 6f 77 69 6e 67 20 74 68 61 74 20 70 6f 69 6e 74 65 72 20 61 72 67 75 6d | sions.knowing.that.pointer.argum |
| 6ff60 | 65 6e 74 73 0a 20 20 20 20 20 20 63 61 6e 6e 6f 74 20 62 65 20 6e 75 6c 6c 2e 0a 20 20 20 20 20 | ents.......cannot.be.null....... |
| 6ff80 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 4f 70 74 69 6f 6e 61 6c 2d 54 79 70 | .</p>.......<h3.id="Optional-Typ |
| 6ffa0 | 65 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 54 79 70 65 22 3e | e"><a.href="#toc-Optional-Type"> |
| 6ffc0 | 4f 70 74 69 6f 6e 61 6c 20 54 79 70 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | Optional.Type</a>.<a.class="hdr" |
| 6ffe0 | 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 54 79 70 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | .href="#Optional-Type">..</a></h |
| 70000 | 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 6e 20 6f 70 74 69 6f 6e 61 6c 20 69 73 20 63 72 65 61 | 3>........<p>An.optional.is.crea |
| 70020 | 74 65 64 20 62 79 20 70 75 74 74 69 6e 67 20 3c 63 6f 64 65 3e 3f 3c 2f 63 6f 64 65 3e 20 69 6e | ted.by.putting.<code>?</code>.in |
| 70040 | 20 66 72 6f 6e 74 20 6f 66 20 61 20 74 79 70 65 2e 20 59 6f 75 20 63 61 6e 20 75 73 65 20 63 6f | .front.of.a.type..You.can.use.co |
| 70060 | 6d 70 69 6c 65 2d 74 69 6d 65 0a 20 20 20 20 20 20 72 65 66 6c 65 63 74 69 6f 6e 20 74 6f 20 61 | mpile-time.......reflection.to.a |
| 70080 | 63 63 65 73 73 20 74 68 65 20 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 61 6e 20 6f 70 74 69 6f | ccess.the.child.type.of.an.optio |
| 700a0 | 6e 61 6c 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 | nal:</p>.......<figure><figcapti |
| 700c0 | 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=" |
| 700e0 | 66 69 6c 65 22 3e 74 65 73 74 5f 6f 70 74 69 6f 6e 61 6c 5f 74 79 70 65 2e 7a 69 67 3c 2f 63 69 | file">test_optional_type.zig</ci |
| 70100 | 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 |
| 70120 | 20 63 6c 61 73 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 |
| 70140 | 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"> |
| 70160 | 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- |
| 70180 | 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 |
| 701a0 | 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 |
| 701c0 | 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- |
| 701e0 | 73 74 72 22 3e 26 71 75 6f 74 3b 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 26 71 75 6f 74 3b 3c 2f | str">"optional.type"</ |
| 70200 | 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 |
| 70220 | 6d 65 6e 74 22 3e 2f 2f 20 44 65 63 6c 61 72 65 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 61 6e 64 | ment">//.Declare.an.optional.and |
| 70240 | 20 63 6f 65 72 63 65 20 66 72 6f 6d 20 6e 75 6c 6c 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | .coerce.from.null:</span>.....<s |
| 70260 | 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 66 6f | pan.class="tok-kw">var</span>.fo |
| 70280 | 6f 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 | o:.?<span.class="tok-type">i32</ |
| 702a0 | 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e | span>.=.<span.class="tok-null">n |
| 702c0 | 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ull</span>;......<span.class="to |
| 702e0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 43 6f 65 72 63 65 20 66 72 6f 6d 20 63 68 69 6c 64 20 | k-comment">//.Coerce.from.child. |
| 70300 | 74 79 70 65 20 6f 66 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 | type.of.an.optional</span>.....f |
| 70320 | 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 | oo.=.<span.class="tok-number">12 |
| 70340 | 33 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 34</span>;......<span.class="tok |
| 70360 | 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 65 20 72 65 | -comment">//.Use.compile-time.re |
| 70380 | 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 70 | flection.to.access.the.child.typ |
| 703a0 | 65 20 6f 66 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | e.of.the.optional:</span>.....<s |
| 703c0 | 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 73 | pan.class="tok-kw">try</span>.<s |
| 703e0 | 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 |
| 70400 | 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 |
| 70420 | 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | in">@typeInfo</span>(<span.class |
| 70440 | 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 66 6f | ="tok-builtin">@TypeOf</span>(fo |
| 70460 | 6f 29 29 2e 4f 70 74 69 6f 6e 61 6c 2e 63 68 69 6c 64 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | o)).Optional.child.==.<span.clas |
| 70480 | 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 7d 3c 2f 63 6f 64 | s="tok-type">i32</span>);.}</cod |
| 704a0 | 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 |
| 704c0 | 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 |
| 704e0 | 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 |
| 70500 | 65 73 74 20 74 65 73 74 5f 6f 70 74 69 6f 6e 61 6c 5f 74 79 70 65 2e 7a 69 67 3c 2f 6b 62 64 3e | est.test_optional_type.zig</kbd> |
| 70520 | 0a 31 2f 31 20 74 65 73 74 5f 6f 70 74 69 6f 6e 61 6c 5f 74 79 70 65 2e 74 65 73 74 2e 6f 70 74 | .1/1.test_optional_type.test.opt |
| 70540 | 69 6f 6e 61 6c 20 74 79 70 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 | ional.type...OK.All.1.tests.pass |
| 70560 | 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>...... |
| 70580 | 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 6e 75 6c 6c 22 3e 3c 61 20 68 72 65 66 3d 22 | .........<h3.id="null"><a.href=" |
| 705a0 | 23 74 6f 63 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | #toc-null">null</a>.<a.class="hd |
| 705c0 | 72 22 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 | r".href="#null">..</a></h3>..... |
| 705e0 | 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 68 72 65 66 3d 22 | ...<p>.......Just.like.<a.href=" |
| 70600 | 23 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 2c 20 3c 63 6f 64 65 | #undefined">undefined</a>,.<code |
| 70620 | 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 |
| 70640 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 69 74 73 20 6f 77 6e 20 74 79 70 65 2c 20 61 6e 64 | an></code>.has.its.own.type,.and |
| 70660 | 20 74 68 65 20 6f 6e 6c 79 20 77 61 79 20 74 6f 20 75 73 65 20 69 74 20 69 73 20 74 6f 0a 20 20 | .the.only.way.to.use.it.is.to... |
| 70680 | 20 20 20 20 63 61 73 74 20 69 74 20 74 6f 20 61 20 64 69 66 66 65 72 65 6e 74 20 74 79 70 65 3a | ....cast.it.to.a.different.type: |
| 706a0 | 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 |
| 706c0 | 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 |
| 706e0 | 73 3d 22 66 69 6c 65 22 3e 6e 75 6c 6c 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | s="file">null.zig</cite></figcap |
| 70700 | 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 |
| 70720 | 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 76 61 6c 75 65 | -kw">const</span>.optional_value |
| 70740 | 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 |
| 70760 | 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 |
| 70780 | 6c 6c 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 65 3e | ll</span>;</code></pre></figure> |
| 707a0 | 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 4f 70 74 69 6f 6e 61 6c 2d | ...............<h3.id="Optional- |
| 707c0 | 50 6f 69 6e 74 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4f 70 74 69 6f 6e 61 6c | Pointers"><a.href="#toc-Optional |
| 707e0 | 2d 50 6f 69 6e 74 65 72 73 22 3e 4f 70 74 69 6f 6e 61 6c 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e | -Pointers">Optional.Pointers</a> |
| 70800 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d | .<a.class="hdr".href="#Optional- |
| 70820 | 50 6f 69 6e 74 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | Pointers">..</a></h3>........<p> |
| 70840 | 41 6e 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 20 69 73 20 67 75 61 72 61 6e 74 65 65 | An.optional.pointer.is.guarantee |
| 70860 | 64 20 74 6f 20 62 65 20 74 68 65 20 73 61 6d 65 20 73 69 7a 65 20 61 73 20 61 20 70 6f 69 6e 74 | d.to.be.the.same.size.as.a.point |
| 70880 | 65 72 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 6e | er..The.<code><span.class="tok-n |
| 708a0 | 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 66 0a 20 20 20 20 20 | ull">null</span></code>.of...... |
| 708c0 | 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 | .the.optional.is.guaranteed.to.b |
| 708e0 | 65 20 61 64 64 72 65 73 73 20 30 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | e.address.0.</p>.......<figure>< |
| 70900 | 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 |
| 70920 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 6f 70 74 69 6f 6e 61 6c 5f 70 6f 69 6e | .class="file">test_optional_poin |
| 70940 | 74 65 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 | ter.zig</cite></figcaption><pre> |
| 70960 | 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 |
| 70980 | 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 |
| 709a0 | 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. |
| 709c0 | 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"< |
| 709e0 | 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 |
| 70a00 | 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. |
| 70a20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6f 70 74 69 6f 6e 61 6c 20 70 | class="tok-str">"optional.p |
| 70a40 | 6f 69 6e 74 65 72 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | ointers"</span>.{.....<span |
| 70a60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 50 6f 69 6e 74 65 72 73 | .class="tok-comment">//.Pointers |
| 70a80 | 20 63 61 6e 6e 6f 74 20 62 65 20 6e 75 6c 6c 2e 20 49 66 20 79 6f 75 20 77 61 6e 74 20 61 20 6e | .cannot.be.null..If.you.want.a.n |
| 70aa0 | 75 6c 6c 20 70 6f 69 6e 74 65 72 2c 20 75 73 65 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 3c 2f 73 | ull.pointer,.use.the.optional</s |
| 70ac0 | 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 |
| 70ae0 | 74 22 3e 2f 2f 20 70 72 65 66 69 78 20 60 3f 60 20 74 6f 20 6d 61 6b 65 20 74 68 65 20 70 6f 69 | t">//.prefix.`?`.to.make.the.poi |
| 70b00 | 6e 74 65 72 20 74 79 70 65 20 6f 70 74 69 6f 6e 61 6c 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | nter.type.optional.</span>.....< |
| 70b20 | 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 |
| 70b40 | 74 72 3a 20 3f 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | tr:.?*<span.class="tok-type">i32 |
| 70b60 | 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 | </span>.=.<span.class="tok-null" |
| 70b80 | 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 3d 22 | >null</span>;......<span.class=" |
| 70ba0 | 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 |
| 70bc0 | 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. |
| 70be0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | class="tok-number">1</span>;.... |
| 70c00 | 20 70 74 72 20 3d 20 26 61 6d 70 3b 78 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .ptr.=.&x;......<span.class= |
| 70c20 | 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 72 2e 3f | "tok-kw">try</span>.expect(ptr.? |
| 70c40 | 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 31 | .*.==.<span.class="tok-number">1 |
| 70c60 | 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- |
| 70c80 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 73 20 61 72 | comment">//.Optional.pointers.ar |
| 70ca0 | 65 20 74 68 65 20 73 61 6d 65 20 73 69 7a 65 20 61 73 20 6e 6f 72 6d 61 6c 20 70 6f 69 6e 74 65 | e.the.same.size.as.normal.pointe |
| 70cc0 | 72 73 2c 20 62 65 63 61 75 73 65 20 70 6f 69 6e 74 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | rs,.because.pointer</span>.....< |
| 70ce0 | 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 |
| 70d00 | 65 20 30 20 69 73 20 75 73 65 64 20 61 73 20 74 68 65 20 6e 75 6c 6c 20 76 61 6c 75 65 2e 3c 2f | e.0.is.used.as.the.null.value.</ |
| 70d20 | 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 74 | span>.....<span.class="tok-kw">t |
| 70d40 | 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 |
| 70d60 | 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 3f 2a 3c 73 70 61 | k-builtin">@sizeOf</span>(?*<spa |
| 70d80 | 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 3d | n.class="tok-type">i32</span>).= |
| 70da0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a | =.<span.class="tok-builtin">@siz |
| 70dc0 | 65 4f 66 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | eOf</span>(*<span.class="tok-typ |
| 70de0 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | e">i32</span>));.}</code></pre>< |
| 70e00 | 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 |
| 70e20 | 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> |
| 70e40 | 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_ |
| 70e60 | 6f 70 74 69 6f 6e 61 6c 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 | optional_pointer.zig</kbd>.1/1.t |
| 70e80 | 65 73 74 5f 6f 70 74 69 6f 6e 61 6c 5f 70 6f 69 6e 74 65 72 2e 74 65 73 74 2e 6f 70 74 69 6f 6e | est_optional_pointer.test.option |
| 70ea0 | 61 6c 20 70 6f 69 6e 74 65 72 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 | al.pointers...OK.All.1.tests.pas |
| 70ec0 | 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>..... |
| 70ee0 | 20 20 20 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 | ...........<p>See.also:</p><ul>. |
| 70f00 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 77 68 69 6c 65 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 | <li><a.href="#while-with-Optiona |
| 70f20 | 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 3c 2f 6c 69 | ls">while.with.Optionals</a></li |
| 70f40 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 66 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c | >.<li><a.href="#if-with-Optional |
| 70f60 | 73 22 3e 69 66 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 2f | s">if.with.Optionals</a></li>.</ |
| 70f80 | 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 43 61 73 74 69 6e | ul>...............<h2.id="Castin |
| 70fa0 | 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 61 73 74 69 6e 67 22 3e 43 61 73 74 69 6e | g"><a.href="#toc-Casting">Castin |
| 70fc0 | 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 61 73 74 | g</a>.<a.class="hdr".href="#Cast |
| 70fe0 | 69 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | ing">..</a></h2>........<p>..... |
| 71000 | 20 20 41 20 3c 73 74 72 6f 6e 67 3e 74 79 70 65 20 63 61 73 74 3c 2f 73 74 72 6f 6e 67 3e 20 63 | ..A.<strong>type.cast</strong>.c |
| 71020 | 6f 6e 76 65 72 74 73 20 61 20 76 61 6c 75 65 20 6f 66 20 6f 6e 65 20 74 79 70 65 20 74 6f 20 61 | onverts.a.value.of.one.type.to.a |
| 71040 | 6e 6f 74 68 65 72 2e 0a 20 20 20 20 20 20 5a 69 67 20 68 61 73 20 3c 61 20 68 72 65 66 3d 22 23 | nother........Zig.has.<a.href="# |
| 71060 | 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 3e | Type-Coercion">Type.Coercion</a> |
| 71080 | 20 66 6f 72 20 63 6f 6e 76 65 72 73 69 6f 6e 73 20 74 68 61 74 20 61 72 65 20 6b 6e 6f 77 6e 20 | .for.conversions.that.are.known. |
| 710a0 | 74 6f 20 62 65 20 63 6f 6d 70 6c 65 74 65 6c 79 20 73 61 66 65 20 61 6e 64 20 75 6e 61 6d 62 69 | to.be.completely.safe.and.unambi |
| 710c0 | 67 75 6f 75 73 2c 0a 20 20 20 20 20 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 45 78 70 6c 69 | guous,.......and.<a.href="#Expli |
| 710e0 | 63 69 74 2d 43 61 73 74 73 22 3e 45 78 70 6c 69 63 69 74 20 43 61 73 74 73 3c 2f 61 3e 20 66 6f | cit-Casts">Explicit.Casts</a>.fo |
| 71100 | 72 20 63 6f 6e 76 65 72 73 69 6f 6e 73 20 74 68 61 74 20 6f 6e 65 20 77 6f 75 6c 64 20 6e 6f 74 | r.conversions.that.one.would.not |
| 71120 | 20 77 61 6e 74 20 74 6f 20 68 61 70 70 65 6e 20 6f 6e 20 61 63 63 69 64 65 6e 74 2e 0a 20 20 20 | .want.to.happen.on.accident..... |
| 71140 | 20 20 20 54 68 65 72 65 20 69 73 20 61 6c 73 6f 20 61 20 74 68 69 72 64 20 6b 69 6e 64 20 6f 66 | ...There.is.also.a.third.kind.of |
| 71160 | 20 74 79 70 65 20 63 6f 6e 76 65 72 73 69 6f 6e 20 63 61 6c 6c 65 64 20 3c 61 20 68 72 65 66 3d | .type.conversion.called.<a.href= |
| 71180 | 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 70 | "#Peer-Type-Resolution">Peer.Typ |
| 711a0 | 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 0a 20 20 20 20 20 20 74 68 65 20 63 | e.Resolution</a>.for.......the.c |
| 711c0 | 61 73 65 20 77 68 65 6e 20 61 20 72 65 73 75 6c 74 20 74 79 70 65 20 6d 75 73 74 20 62 65 20 64 | ase.when.a.result.type.must.be.d |
| 711e0 | 65 63 69 64 65 64 20 67 69 76 65 6e 20 6d 75 6c 74 69 70 6c 65 20 6f 70 65 72 61 6e 64 20 74 79 | ecided.given.multiple.operand.ty |
| 71200 | 70 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 79 | pes........</p>.......<h3.id="Ty |
| 71220 | 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d | pe-Coercion"><a.href="#toc-Type- |
| 71240 | 43 6f 65 72 63 69 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 | Coercion">Type.Coercion</a>.<a.c |
| 71260 | 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 22 | lass="hdr".href="#Type-Coercion" |
| 71280 | 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 79 | >..</a></h3>........<p>.......Ty |
| 712a0 | 70 65 20 63 6f 65 72 63 69 6f 6e 20 6f 63 63 75 72 73 20 77 68 65 6e 20 6f 6e 65 20 74 79 70 65 | pe.coercion.occurs.when.one.type |
| 712c0 | 20 69 73 20 65 78 70 65 63 74 65 64 2c 20 62 75 74 20 64 69 66 66 65 72 65 6e 74 20 74 79 70 65 | .is.expected,.but.different.type |
| 712e0 | 20 69 73 20 70 72 6f 76 69 64 65 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | .is.provided:.......</p>.......< |
| 71300 | 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 |
| 71320 | 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 79 70 65 5f | p"><cite.class="file">test_type_ |
| 71340 | 63 6f 65 72 63 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 | coercion.zig</cite></figcaption> |
| 71360 | 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"> |
| 71380 | 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 |
| 713a0 | 22 3e 26 71 75 6f 74 3b 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 76 61 72 69 61 62 6c 65 | ">"type.coercion.-.variable |
| 713c0 | 20 64 65 63 6c 61 72 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 | .declaration"</span>.{..... |
| 713e0 | 3c 73 70 61 6e 20 63 6c 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 |
| 71400 | 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f | >.a:.<span.class="tok-type">u8</ |
| 71420 | 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" |
| 71440 | 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >1</span>;.....<span.class="tok- |
| 71460 | 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 3d | kw">const</span>.b:.<span.class= |
| 71480 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 61 3b 0a 20 20 20 20 5f | "tok-type">u16</span>.=.a;....._ |
| 714a0 | 20 3d 20 62 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 | .=.b;.}..<span.class="tok-kw">te |
| 714c0 | 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"> |
| 714e0 | 26 71 75 6f 74 3b 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 66 75 6e 63 74 69 6f 6e 20 63 | "type.coercion.-.function.c |
| 71500 | 61 6c 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 | all"</span>.{.....<span.cla |
| 71520 | 73 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 61 | ss="tok-kw">const</span>.a:.<spa |
| 71540 | 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>.=.< |
| 71560 | 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> |
| 71580 | 3b 0a 20 20 20 20 66 6f 6f 28 61 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ;.....foo(a);.}..<span.class="to |
| 715a0 | 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 |
| 715c0 | 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -fn">foo</span>(b:.<span.class=" |
| 715e0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-type">u16</span>).<span.clas |
| 71600 | 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 5f | s="tok-type">void</span>.{....._ |
| 71620 | 20 3d 20 62 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 | .=.b;.}..<span.class="tok-kw">te |
| 71640 | 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"> |
| 71660 | 26 71 75 6f 74 3b 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 | "type.coercion.-.@as.builti |
| 71680 | 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 |
| 716a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 | ="tok-kw">const</span>.a:.<span. |
| 716c0 | 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 70 | class="tok-type">u8</span>.=.<sp |
| 716e0 | 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>;. |
| 71700 | 20 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</ |
| 71720 | 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 6b 2d 62 75 69 6c 74 | span>.b.=.<span.class="tok-built |
| 71740 | 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | in">@as</span>(<span.class="tok- |
| 71760 | 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 2c 20 61 29 3b 0a 20 20 20 20 5f 20 3d 20 62 3b | type">u16</span>,.a);....._.=.b; |
| 71780 | 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> |
| 717a0 | 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 |
| 717c0 | 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 |
| 717e0 | 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 74 79 70 65 5f 63 6f 65 72 63 69 6f 6e 2e 7a 69 | d>zig.test.test_type_coercion.zi |
| 71800 | 67 3c 2f 6b 62 64 3e 0a 31 2f 33 20 74 65 73 74 5f 74 79 70 65 5f 63 6f 65 72 63 69 6f 6e 2e 74 | g</kbd>.1/3.test_type_coercion.t |
| 71820 | 65 73 74 2e 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 | est.type.coercion.-.variable.dec |
| 71840 | 6c 61 72 61 74 69 6f 6e 2e 2e 2e 4f 4b 0a 32 2f 33 20 74 65 73 74 5f 74 79 70 65 5f 63 6f 65 72 | laration...OK.2/3.test_type_coer |
| 71860 | 63 69 6f 6e 2e 74 65 73 74 2e 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 66 75 6e 63 74 69 | cion.test.type.coercion.-.functi |
| 71880 | 6f 6e 20 63 61 6c 6c 2e 2e 2e 4f 4b 0a 33 2f 33 20 74 65 73 74 5f 74 79 70 65 5f 63 6f 65 72 63 | on.call...OK.3/3.test_type_coerc |
| 718a0 | 69 6f 6e 2e 74 65 73 74 2e 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 40 61 73 20 62 75 69 | ion.test.type.coercion.-.@as.bui |
| 718c0 | 6c 74 69 6e 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 | ltin...OK.All.3.tests.passed..</ |
| 718e0 | 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>. |
| 71900 | 20 20 20 20 20 20 54 79 70 65 20 63 6f 65 72 63 69 6f 6e 73 20 61 72 65 20 6f 6e 6c 79 20 61 6c | ......Type.coercions.are.only.al |
| 71920 | 6c 6f 77 65 64 20 77 68 65 6e 20 69 74 20 69 73 20 63 6f 6d 70 6c 65 74 65 6c 79 20 75 6e 61 6d | lowed.when.it.is.completely.unam |
| 71940 | 62 69 67 75 6f 75 73 20 68 6f 77 20 74 6f 20 67 65 74 20 66 72 6f 6d 20 6f 6e 65 20 74 79 70 65 | biguous.how.to.get.from.one.type |
| 71960 | 20 74 6f 20 61 6e 6f 74 68 65 72 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 68 65 20 74 72 61 6e 73 | .to.another,.......and.the.trans |
| 71980 | 66 6f 72 6d 61 74 69 6f 6e 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 73 61 | formation.is.guaranteed.to.be.sa |
| 719a0 | 66 65 2e 20 54 68 65 72 65 20 69 73 20 6f 6e 65 20 65 78 63 65 70 74 69 6f 6e 2c 20 77 68 69 63 | fe..There.is.one.exception,.whic |
| 719c0 | 68 20 69 73 20 3c 61 20 68 72 65 66 3d 22 23 43 2d 50 6f 69 6e 74 65 72 73 22 3e 43 20 50 6f 69 | h.is.<a.href="#C-Pointers">C.Poi |
| 719e0 | 6e 74 65 72 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 34 20 | nters</a>........</p>.......<h4. |
| 71a00 | 69 64 3d 22 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 74 72 69 63 74 65 72 2d 51 75 61 6c 69 | id="Type-Coercion-Stricter-Quali |
| 71a20 | 66 69 63 61 74 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 | fication"><a.href="#toc-Type-Coe |
| 71a40 | 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 22 3e 54 79 | rcion-Stricter-Qualification">Ty |
| 71a60 | 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 53 74 72 69 63 74 65 72 20 51 75 61 6c 69 66 69 63 61 74 | pe.Coercion:.Stricter.Qualificat |
| 71a80 | 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 54 79 | ion</a>.<a.class="hdr".href="#Ty |
| 71aa0 | 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 74 72 69 63 74 65 72 2d 51 75 61 6c 69 66 69 63 61 74 69 | pe-Coercion-Stricter-Qualificati |
| 71ac0 | 6f 6e 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 20 | on">..</a></h4>........<p>...... |
| 71ae0 | 20 56 61 6c 75 65 73 20 77 68 69 63 68 20 68 61 76 65 20 74 68 65 20 73 61 6d 65 20 72 65 70 72 | .Values.which.have.the.same.repr |
| 71b00 | 65 73 65 6e 74 61 74 69 6f 6e 20 61 74 20 72 75 6e 74 69 6d 65 20 63 61 6e 20 62 65 20 63 61 73 | esentation.at.runtime.can.be.cas |
| 71b20 | 74 20 74 6f 20 69 6e 63 72 65 61 73 65 20 74 68 65 20 73 74 72 69 63 74 6e 65 73 73 0a 20 20 20 | t.to.increase.the.strictness.... |
| 71b40 | 20 20 20 6f 66 20 74 68 65 20 71 75 61 6c 69 66 69 65 72 73 2c 20 6e 6f 20 6d 61 74 74 65 72 20 | ...of.the.qualifiers,.no.matter. |
| 71b60 | 68 6f 77 20 6e 65 73 74 65 64 20 74 68 65 20 71 75 61 6c 69 66 69 65 72 73 20 61 72 65 3a 0a 20 | how.nested.the.qualifiers.are:.. |
| 71b80 | 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>...........< |
| 71ba0 | 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 77 22 3e 63 6f | li><code><span.class="tok-kw">co |
| 71bc0 | 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 6e 6f 6e 2d 63 6f 6e 73 74 20 74 6f | nst</span></code>.-.non-const.to |
| 71be0 | 20 63 6f 6e 73 74 20 69 73 20 61 6c 6c 6f 77 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | .const.is.allowed</li>.......... |
| 71c00 | 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 77 22 3e | .<li><code><span.class="tok-kw"> |
| 71c20 | 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 6e 6f 6e 2d 76 6f 6c | volatile</span></code>.-.non-vol |
| 71c40 | 61 74 69 6c 65 20 74 6f 20 76 6f 6c 61 74 69 6c 65 20 69 73 20 61 6c 6c 6f 77 65 64 3c 2f 6c 69 | atile.to.volatile.is.allowed</li |
| 71c60 | 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 |
| 71c80 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d | s="tok-kw">align</span></code>.- |
| 71ca0 | 20 62 69 67 67 65 72 20 74 6f 20 73 6d 61 6c 6c 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 69 73 20 | .bigger.to.smaller.alignment.is. |
| 71cc0 | 61 6c 6c 6f 77 65 64 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 | allowed.</li>...........<li><a.h |
| 71ce0 | 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 6f 72 20 73 65 74 73 | ref="#Error-Set-Type">error.sets |
| 71d00 | 3c 2f 61 3e 20 74 6f 20 73 75 70 65 72 73 65 74 73 20 69 73 20 61 6c 6c 6f 77 65 64 3c 2f 6c 69 | </a>.to.supersets.is.allowed</li |
| 71d20 | 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 |
| 71d40 | 65 73 65 20 63 61 73 74 73 20 61 72 65 20 6e 6f 2d 6f 70 73 20 61 74 20 72 75 6e 74 69 6d 65 20 | ese.casts.are.no-ops.at.runtime. |
| 71d60 | 73 69 6e 63 65 20 74 68 65 20 76 61 6c 75 65 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 64 | since.the.value.representation.d |
| 71d80 | 6f 65 73 20 6e 6f 74 20 63 68 61 6e 67 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | oes.not.change........</p>...... |
| 71da0 | 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- |
| 71dc0 | 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 6e 6f 5f | cap"><cite.class="file">test_no_ |
| 71de0 | 6f 70 5f 63 61 73 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 | op_casts.zig</cite></figcaption> |
| 71e00 | 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"> |
| 71e20 | 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 |
| 71e40 | 22 3e 26 71 75 6f 74 3b 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 63 6f 6e 73 74 20 71 75 | ">"type.coercion.-.const.qu |
| 71e60 | 61 6c 69 66 69 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 | alification"</span>.{.....< |
| 71e80 | 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 |
| 71ea0 | 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 |
| 71ec0 | 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 |
| 71ee0 | 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 |
| 71f00 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">const</span>.b:.*<span.class=" |
| 71f20 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 61 3b 0a 20 | tok-type">i32</span>.=.&a;.. |
| 71f40 | 20 20 20 66 6f 6f 28 62 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ...foo(b);.}..<span.class="tok-k |
| 71f60 | 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 |
| 71f80 | 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 5f 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">foo</span>(_:.*<span.class="to |
| 71fa0 | 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=" |
| 71fc0 | 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 |
| 71fe0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 3c 2f 63 6f 64 | s="tok-type">void</span>.{}</cod |
| 72000 | 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 |
| 72020 | 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 |
| 72040 | 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 |
| 72060 | 65 73 74 20 74 65 73 74 5f 6e 6f 5f 6f 70 5f 63 61 73 74 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 | est.test_no_op_casts.zig</kbd>.1 |
| 72080 | 2f 31 20 74 65 73 74 5f 6e 6f 5f 6f 70 5f 63 61 73 74 73 2e 74 65 73 74 2e 74 79 70 65 20 63 6f | /1.test_no_op_casts.test.type.co |
| 720a0 | 65 72 63 69 6f 6e 20 2d 20 63 6f 6e 73 74 20 71 75 61 6c 69 66 69 63 61 74 69 6f 6e 2e 2e 2e 4f | ercion.-.const.qualification...O |
| 720c0 | 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 |
| 720e0 | 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 49 6e | re></figure>........<p>.......In |
| 72100 | 20 61 64 64 69 74 69 6f 6e 2c 20 70 6f 69 6e 74 65 72 73 20 63 6f 65 72 63 65 20 74 6f 20 63 6f | .addition,.pointers.coerce.to.co |
| 72120 | 6e 73 74 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 73 3a 0a 20 20 20 20 20 20 3c 2f 70 | nst.optional.pointers:.......</p |
| 72140 | 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 |
| 72160 | 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 |
| 72180 | 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 74 69 6f 6e 61 | est_pointer_coerce_const_optiona |
| 721a0 | 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 3e 3c 63 | l.zig</cite></figcaption><pre><c |
| 721c0 | 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</ |
| 721e0 | 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 |
| 72200 | 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 |
| 72220 | 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 |
| 72240 | 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</ |
| 72260 | 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 |
| 72280 | 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 2f 73 | t;.<span.class="tok-kw">const</s |
| 722a0 | 70 61 6e 3e 20 6d 65 6d 20 3d 20 73 74 64 2e 6d 65 6d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | pan>.mem.=.std.mem;..<span.class |
| 722c0 | 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 |
| 722e0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 61 73 74 20 2a 5b 31 5d 5b 2a 5d 63 6f | s="tok-str">"cast.*[1][*]co |
| 72300 | 6e 73 74 20 75 38 20 74 6f 20 5b 2a 5d 63 6f 6e 73 74 20 3f 5b 2a 5d 63 6f 6e 73 74 20 75 38 26 | nst.u8.to.[*]const.?[*]const.u8& |
| 72320 | 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=" |
| 72340 | 74 6f 6b 2d 6b 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 | tok-kw">const</span>.window_name |
| 72360 | 20 3d 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f | .=.[<span.class="tok-number">1</ |
| 72380 | 73 70 61 6e 3e 5d 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 | span>][*]<span.class="tok-kw">co |
| 723a0 | 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 |
| 723c0 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | ">u8</span>{<span.class="tok-str |
| 723e0 | 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 73 70 61 6e 3e | ">"window.name"</span> |
| 72400 | 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 |
| 72420 | 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | t</span>.x:.[*]<span.class="tok- |
| 72440 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3f 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | kw">const</span>.?[*]<span.class |
| 72460 | 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 |
| 72480 | 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 6d 70 3b 77 | ss="tok-type">u8</span>.=.&w |
| 724a0 | 69 6e 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 | indow_name;.....<span.class="tok |
| 724c0 | 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(< |
| 724e0 | 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>, |
| 72500 | 20 73 74 64 2e 6d 65 6d 2e 73 6c 69 63 65 54 6f 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .std.mem.sliceTo(<span.class="to |
| 72520 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 5b 2a 3a 3c 73 70 61 6e 20 63 | k-builtin">@as</span>([*:<span.c |
| 72540 | 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 |
| 72560 | 20 63 6c 61 73 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 |
| 72580 | 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 3c | an.class="tok-type">u8</span>,.< |
| 725a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 43 61 73 | span.class="tok-builtin">@ptrCas |
| 725c0 | 74 3c 2f 73 70 61 6e 3e 28 78 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | t</span>(x[<span.class="tok-numb |
| 725e0 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 2e 3f 29 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | er">0</span>].?)),.<span.class=" |
| 72600 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 63 6c 61 | tok-number">0</span>),.<span.cla |
| 72620 | 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 20 6e 61 6d 65 26 71 | ss="tok-str">"window.name&q |
| 72640 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 | uot;</span>));.}</code></pre></f |
| 72660 | 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= |
| 72680 | 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 |
| 726a0 | 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 6f | re><samp>$.<kbd>zig.test.test_po |
| 726c0 | 69 6e 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 | inter_coerce_const_optional.zig< |
| 726e0 | 2f 6b 62 64 3e 0a 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 | /kbd>.1/1.test_pointer_coerce_co |
| 72700 | 6e 73 74 5f 6f 70 74 69 6f 6e 61 6c 2e 74 65 73 74 2e 63 61 73 74 20 2a 5b 31 5d 5b 2a 5d 63 6f | nst_optional.test.cast.*[1][*]co |
| 72720 | 6e 73 74 20 75 38 20 74 6f 20 5b 2a 5d 63 6f 6e 73 74 20 3f 5b 2a 5d 63 6f 6e 73 74 20 75 38 2e | nst.u8.to.[*]const.?[*]const.u8. |
| 72740 | 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> |
| 72760 | 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 68 | </pre></figure>...............<h |
| 72780 | 34 20 69 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 | 4.id="Type-Coercion-Integer-and- |
| 727a0 | 46 6c 6f 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 | Float-Widening"><a.href="#toc-Ty |
| 727c0 | 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 49 6e 74 65 67 65 72 2d 61 6e 64 2d 46 6c 6f 61 74 2d 57 69 | pe-Coercion-Integer-and-Float-Wi |
| 727e0 | 64 65 6e 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 | dening">Type.Coercion:.Integer.a |
| 72800 | 6e 64 20 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 | nd.Float.Widening</a>.<a.class=" |
| 72820 | 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 49 6e 74 65 67 65 | hdr".href="#Type-Coercion-Intege |
| 72840 | 72 2d 61 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 | r-and-Float-Widening">..</a></h4 |
| 72860 | 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 22 23 49 6e 74 | >........<p>.......<a.href="#Int |
| 72880 | 65 67 65 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 | egers">Integers</a>.coerce.to.in |
| 728a0 | 74 65 67 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 | teger.types.which.can.represent. |
| 728c0 | 65 76 65 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 | every.value.of.the.old.type,.and |
| 728e0 | 20 6c 69 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 | .likewise.......<a.href="#Floats |
| 72900 | 22 3e 46 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 | ">Floats</a>.coerce.to.float.typ |
| 72920 | 65 73 20 77 68 69 63 68 20 63 61 6e 20 72 65 70 72 65 73 65 6e 74 20 65 76 65 72 79 20 76 61 6c | es.which.can.represent.every.val |
| 72940 | 75 65 20 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 | ue.of.the.old.type........</p>.. |
| 72960 | 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=" |
| 72980 | 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 |
| 729a0 | 5f 69 6e 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 | _integer_widening.zig</cite></fi |
| 729c0 | 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= |
| 729e0 | 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 |
| 72a00 | 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 |
| 72a20 | 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">" |
| 72a40 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ;std"</span>);.<span.class= |
| 72a60 | 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 69 6e 20 3d 20 | "tok-kw">const</span>.builtin.=. |
| 72a80 | 3c 73 70 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 |
| 72aa0 | 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">& |
| 72ac0 | 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 0a 3c 73 70 61 | quot;builtin"</span>);.<spa |
| 72ae0 | 6e 20 63 6c 61 73 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 |
| 72b00 | 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 |
| 72b20 | 20 63 6c 61 73 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 |
| 72b40 | 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 |
| 72b60 | 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 |
| 72b80 | 74 72 22 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 | tr">"integer.widening" |
| 72ba0 | 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 |
| 72bc0 | 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 22 | w">const</span>.a:.<span.class=" |
| 72be0 | 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 |
| 72c00 | 73 3d 22 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 | s="tok-number">250</span>;.....< |
| 72c20 | 73 70 61 6e 20 63 6c 61 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> |
| 72c40 | 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 31 36 3c 2f | .b:.<span.class="tok-type">u16</ |
| 72c60 | 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 3d 22 74 6f 6b 2d | span>.=.a;.....<span.class="tok- |
| 72c80 | 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 63 6c 61 73 73 3d | kw">const</span>.c:.<span.class= |
| 72ca0 | 22 74 6f 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 | "tok-type">u32</span>.=.b;.....< |
| 72cc0 | 73 70 61 6e 20 63 6c 61 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> |
| 72ce0 | 20 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f | .d:.<span.class="tok-type">u64</ |
| 72d00 | 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 73 3d 22 74 6f 6b 2d | span>.=.c;.....<span.class="tok- |
| 72d20 | 6b 77 22 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 | kw">const</span>.e:.<span.class= |
| 72d40 | 22 74 6f 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 | "tok-type">u64</span>.=.d;.....< |
| 72d60 | 73 70 61 6e 20 63 6c 61 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> |
| 72d80 | 20 66 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 32 38 3c | .f:.<span.class="tok-type">u128< |
| 72da0 | 2f 73 70 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 | /span>.=.e;.....<span.class="tok |
| 72dc0 | 2d 6b 77 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 | -kw">try</span>.expect(f.==.a);. |
| 72de0 | 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 |
| 72e00 | 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">" |
| 72e20 | 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 20 73 69 67 | implicit.unsigned.integer.to.sig |
| 72e40 | 6e 65 64 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 | ned.integer"</span>.{.....< |
| 72e60 | 73 70 61 6e 20 63 6c 61 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> |
| 72e80 | 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 | .a:.<span.class="tok-type">u8</s |
| 72ea0 | 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"> |
| 72ec0 | 32 35 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 250</span>;.....<span.class="tok |
| 72ee0 | 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 |
| 72f00 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 61 3b 0a 20 20 20 20 | ="tok-type">i16</span>.=.a;..... |
| 72f20 | 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>. |
| 72f40 | 65 78 70 65 63 74 28 62 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | expect(b.==.<span.class="tok-num |
| 72f60 | 62 65 72 22 3e 32 35 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ber">250</span>);.}..<span.class |
| 72f80 | 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 |
| 72fa0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6c 6f 61 74 20 77 69 64 65 6e 69 6e 67 | s="tok-str">"float.widening |
| 72fc0 | 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= |
| 72fe0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 | "tok-kw">const</span>.a:.<span.c |
| 73000 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 | lass="tok-type">f16</span>.=.<sp |
| 73020 | 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 61 | an.class="tok-number">12.34</spa |
| 73040 | 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 |
| 73060 | 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | st</span>.b:.<span.class="tok-ty |
| 73080 | 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 61 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | pe">f32</span>.=.a;.....<span.cl |
| 730a0 | 61 73 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 73 70 | ass="tok-kw">const</span>.c:.<sp |
| 730c0 | 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 20 3d | an.class="tok-type">f64</span>.= |
| 730e0 | 20 62 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | .b;.....<span.class="tok-kw">con |
| 73100 | 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 |
| 73120 | 70 65 22 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 | pe">f128</span>.=.c;.....<span.c |
| 73140 | 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( |
| 73160 | 64 20 3d 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 | d.==.a);.}</code></pre></figure> |
| 73180 | 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 |
| 731a0 | 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 |
| 731c0 | 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 6e 74 65 67 65 72 5f | mp>$.<kbd>zig.test.test_integer_ |
| 731e0 | 77 69 64 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 | widening.zig</kbd>.1/3.test_inte |
| 73200 | 67 65 72 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 | ger_widening.test.integer.wideni |
| 73220 | 6e 67 2e 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 | ng...OK.2/3.test_integer_widenin |
| 73240 | 67 2e 74 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 | g.test.implicit.unsigned.integer |
| 73260 | 20 74 6f 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 | .to.signed.integer...OK.3/3.test |
| 73280 | 5f 69 6e 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 | _integer_widening.test.float.wid |
| 732a0 | 65 6e 69 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 | ening...OK.All.3.tests.passed..< |
| 732c0 | 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>........... |
| 732e0 | 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 46 6c 6f 61 74 2d | ....<h4.id="Type-Coercion-Float- |
| 73300 | 74 6f 2d 49 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 | to-Int"><a.href="#toc-Type-Coerc |
| 73320 | 69 6f 6e 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 | ion-Float-to-Int">Type.Coercion: |
| 73340 | 20 46 6c 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 | .Float.to.Int</a>.<a.class="hdr" |
| 73360 | 20 68 72 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 | .href="#Type-Coercion-Float-to-I |
| 73380 | 6e 74 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 20 | nt">..</a></h4>........<p>...... |
| 733a0 | 20 41 20 63 6f 6d 70 69 6c 65 72 20 65 72 72 6f 72 20 69 73 20 61 70 70 72 6f 70 72 69 61 74 65 | .A.compiler.error.is.appropriate |
| 733c0 | 20 62 65 63 61 75 73 65 20 74 68 69 73 20 61 6d 62 69 67 75 6f 75 73 20 65 78 70 72 65 73 73 69 | .because.this.ambiguous.expressi |
| 733e0 | 6f 6e 20 6c 65 61 76 65 73 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a 20 20 20 20 20 20 74 77 6f | on.leaves.the.compiler.......two |
| 73400 | 20 63 68 6f 69 63 65 73 20 61 62 6f 75 74 20 74 68 65 20 63 6f 65 72 63 69 6f 6e 2e 0a 20 20 20 | .choices.about.the.coercion..... |
| 73420 | 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 43 | ...</p>.......<ul>.........<li>C |
| 73440 | 61 73 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 6e 75 6d 62 65 | ast.<code><span.class="tok-numbe |
| 73460 | 72 22 3e 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 | r">54.0</span></code>.to.<code>< |
| 73480 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 | span.class="tok-type">comptime_i |
| 734a0 | 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 73 75 6c 74 69 6e 67 20 69 6e 20 3c 63 | nt</span></code>.resulting.in.<c |
| 734c0 | 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 61 | ode><span.class="tok-builtin">@a |
| 734e0 | 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | s</span>(<span.class="tok-type"> |
| 73500 | 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | comptime_int</span>,.<span.class |
| 73520 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 2c | ="tok-number">10</span>)</code>, |
| 73540 | 20 77 68 69 63 68 20 69 73 20 63 61 73 74 65 64 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | .which.is.casted.to.<code><span. |
| 73560 | 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 3c | class="tok-builtin">@as</span>(< |
| 73580 | 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> |
| 735a0 | 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 |
| 735c0 | 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 3c 6c 69 3e 43 61 | pan>)</code></li>.........<li>Ca |
| 735e0 | 73 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 6e 75 6d 62 65 72 | st.<code><span.class="tok-number |
| 73600 | 22 3e 35 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 | ">5</span></code>.to.<code><span |
| 73620 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 66 6c 6f 61 74 | .class="tok-type">comptime_float |
| 73640 | 3c 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 | </span></code>.resulting.in.<cod |
| 73660 | 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 3c | e><span.class="tok-builtin">@as< |
| 73680 | 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 6f | /span>(<span.class="tok-type">co |
| 736a0 | 6d 70 74 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 | mptime_float</span>,.<span.class |
| 736c0 | 3d 22 74 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 | ="tok-number">10.8</span>)</code |
| 736e0 | 3e 2c 20 77 68 69 63 68 20 69 73 20 63 61 73 74 65 64 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 | >,.which.is.casted.to.<code><spa |
| 73700 | 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> |
| 73720 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 | (<span.class="tok-type">f32</spa |
| 73740 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 2e | n>,.<span.class="tok-number">10. |
| 73760 | 38 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c | 8</span>)</code></li>.......</ul |
| 73780 | 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 |
| 737a0 | 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 |
| 737c0 | 65 73 74 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 | est_ambiguous_coercion.zig</cite |
| 737e0 | 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 |
| 73800 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 43 6f 6d 70 69 6c 65 20 74 69 | lass="tok-comment">//.Compile.ti |
| 73820 | 6d 65 20 63 6f 65 72 63 69 6f 6e 20 6f 66 20 66 6c 6f 61 74 20 74 6f 20 69 6e 74 3c 2f 73 70 61 | me.coercion.of.float.to.int</spa |
| 73840 | 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 |
| 73860 | 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">" |
| 73880 | 69 6d 70 6c 69 63 69 74 20 63 61 73 74 20 74 6f 20 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 26 71 75 | implicit.cast.to.comptime_int&qu |
| 738a0 | 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 |
| 738c0 | 6b 2d 6b 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 | k-kw">const</span>.f:.<span.clas |
| 738e0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 | s="tok-type">f32</span>.=.<span. |
| 73900 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 34 2e 30 3c 2f 73 70 61 6e 3e 20 2f | class="tok-number">54.0</span>./ |
| 73920 | 20 3c 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 |
| 73940 | 6e 3e 3b 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 | n>;....._.=.f;.}</code></pre></f |
| 73960 | 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= |
| 73980 | 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 |
| 739a0 | 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 61 6d | re><samp>$.<kbd>zig.test.test_am |
| 739c0 | 62 69 67 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 | biguous_coercion.zig</kbd>.<span |
| 739e0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 | .class="sgr-1m">doc/langref/test |
| 73a00 | 5f 61 6d 62 69 67 75 6f 75 73 5f 63 6f 65 72 63 69 6f 6e 2e 7a 69 67 3a 33 3a 32 35 3a 20 3c 2f | _ambiguous_coercion.zig:3:25:.</ |
| 73a20 | 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 |
| 73a40 | 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 6d | :.</span><span.class="sgr-1m">am |
| 73a60 | 62 69 67 75 6f 75 73 20 63 6f 65 72 63 69 6f 6e 20 6f 66 20 64 69 76 69 73 69 6f 6e 20 6f 70 65 | biguous.coercion.of.division.ope |
| 73a80 | 72 61 6e 64 73 20 27 63 6f 6d 70 74 69 6d 65 5f 66 6c 6f 61 74 27 20 61 6e 64 20 27 63 6f 6d 70 | rands.'comptime_float'.and.'comp |
| 73aa0 | 74 69 6d 65 5f 69 6e 74 27 3b 20 6e 6f 6e 2d 7a 65 72 6f 20 72 65 6d 61 69 6e 64 65 72 20 27 34 | time_int';.non-zero.remainder.'4 |
| 73ac0 | 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 66 3a 20 66 33 32 20 3d 20 35 34 2e 30 | '.</span>....const.f:.f32.=.54.0 |
| 73ae0 | 20 2f 20 35 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 | ./.5;....................<span.c |
| 73b00 | 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 7e 7e 7e 7e 7e 5e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a | lass="sgr-32m">~~~~~^~~.</span>. |
| 73b20 | 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>.......... |
| 73b40 | 20 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 53 6c 69 63 65 | .....<h4.id="Type-Coercion-Slice |
| 73b60 | 73 2d 41 72 72 61 79 73 2d 61 6e 64 2d 50 6f 69 6e 74 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 | s-Arrays-and-Pointers"><a.href=" |
| 73b80 | 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 6c 69 63 65 73 2d 41 72 72 61 79 73 | #toc-Type-Coercion-Slices-Arrays |
| 73ba0 | 2d 61 6e 64 2d 50 6f 69 6e 74 65 72 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 53 6c | -and-Pointers">Type.Coercion:.Sl |
| 73bc0 | 69 63 65 73 2c 20 41 72 72 61 79 73 20 61 6e 64 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 3c 61 | ices,.Arrays.and.Pointers</a>.<a |
| 73be0 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f | .class="hdr".href="#Type-Coercio |
| 73c00 | 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 c2 a7 | n-Slices-Arrays-and-Pointers">.. |
| 73c20 | 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | </a></h4>........<figure><figcap |
| 73c40 | 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 |
| 73c60 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 65 72 63 65 5f 73 6c 69 63 65 73 5f 61 72 72 61 79 | ="file">test_coerce_slices_array |
| 73c80 | 73 5f 61 6e 64 5f 70 6f 69 6e 74 65 72 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | s_and_pointers.zig</cite></figca |
| 73ca0 | 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 |
| 73cc0 | 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 |
| 73ce0 | 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 |
| 73d00 | 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 |
| 73d20 | 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 |
| 73d40 | 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. |
| 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 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 59 6f 75 20 63 61 6e 20 61 73 73 69 67 6e 20 63 6f 6e | k-comment">//.You.can.assign.con |
| 73da0 | 73 74 61 6e 74 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 61 72 72 61 79 73 20 74 6f 20 61 20 73 6c | stant.pointers.to.arrays.to.a.sl |
| 73dc0 | 69 63 65 20 77 69 74 68 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ice.with</span>.<span.class="tok |
| 73de0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 6f 6e 73 74 20 6d 6f 64 69 66 69 65 72 20 6f 6e 20 74 | -comment">//.const.modifier.on.t |
| 73e00 | 68 65 20 65 6c 65 6d 65 6e 74 20 74 79 70 65 2e 20 55 73 65 66 75 6c 20 69 6e 20 70 61 72 74 69 | he.element.type..Useful.in.parti |
| 73e20 | 63 75 6c 61 72 20 66 6f 72 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | cular.for</span>.<span.class="to |
| 73e40 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 2e 3c 2f | k-comment">//.String.literals.</ |
| 73e60 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c | span>.<span.class="tok-kw">test< |
| 73e80 | 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 |
| 73ea0 | 6f 74 3b 2a 63 6f 6e 73 74 20 5b 4e 5d 54 20 74 6f 20 5b 5d 63 6f 6e 73 74 20 54 26 71 75 6f 74 | ot;*const.[N]T.to.[]const.T" |
| 73ec0 | 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- |
| 73ee0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 31 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 | kw">const</span>.x1:.[]<span.cla |
| 73f00 | 73 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 |
| 73f20 | 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 |
| 73f40 | 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 |
| 73f60 | 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 |
| 73f80 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 32 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c | -kw">const</span>.x2:.[]<span.cl |
| 73fa0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ass="tok-kw">const</span>.<span. |
| 73fc0 | 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 6d | class="tok-type">u8</span>.=.&am |
| 73fe0 | 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 73 | p;[<span.class="tok-number">5</s |
| 74000 | 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</ |
| 74020 | 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 27 | span>{.<span.class="tok-str">'h' |
| 74040 | 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">' |
| 74060 | 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 22 | e'</span>,.<span.class="tok-str" |
| 74080 | 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 74 | >'l'</span>,.<span.class="tok-st |
| 740a0 | 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 2d | r">'l'</span>,.<span.class="tok- |
| 740c0 | 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 20 | number">111</span>.};.....<span. |
| 740e0 | 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 |
| 74100 | 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 79 | (std.mem.eql(<span.class="tok-ty |
| 74120 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 78 31 2c 20 78 32 29 29 3b 0a 0a 20 20 20 20 3c 73 | pe">u8</span>,.x1,.x2));......<s |
| 74140 | 70 61 6e 20 63 6c 61 73 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>. |
| 74160 | 79 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | y:.[]<span.class="tok-kw">const< |
| 74180 | 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 66 33 | /span>.<span.class="tok-type">f3 |
| 741a0 | 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 22 74 6f | 2</span>.=.&[<span.class="to |
| 741c0 | 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 22 | k-number">2</span>]<span.class=" |
| 741e0 | 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 73 | tok-type">f32</span>{.<span.clas |
| 74200 | 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 6e | s="tok-number">1.2</span>,.<span |
| 74220 | 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 7d | .class="tok-number">3.4</span>.} |
| 74240 | 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</ |
| 74260 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>.expect(y[<span.class="tok- |
| 74280 | 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 73 | number">0</span>].==.<span.class |
| 742a0 | 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 7d 0a 0a 3c 73 | ="tok-number">1.2</span>);.}..<s |
| 742c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4c 69 6b 65 77 | pan.class="tok-comment">//.Likew |
| 742e0 | 69 73 65 2c 20 69 74 20 77 6f 72 6b 73 20 77 68 65 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 | ise,.it.works.when.the.destinati |
| 74300 | 6f 6e 20 74 79 70 65 20 69 73 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 2e 3c 2f 73 70 61 6e | on.type.is.an.error.union.</span |
| 74320 | 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 |
| 74340 | 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 2a | n>.<span.class="tok-str">"* |
| 74360 | 63 6f 6e 73 74 20 5b 4e 5d 54 20 74 6f 20 45 21 5b 5d 63 6f 6e 73 74 20 54 26 71 75 6f 74 3b 3c | const.[N]T.to.E![]const.T"< |
| 74380 | 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 |
| 743a0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 31 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">const</span>.x1:.<span.class=" |
| 743c0 | 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 5b 5d 3c 73 70 61 | tok-type">anyerror</span>![]<spa |
| 743e0 | 6e 20 63 6c 61 73 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 |
| 74400 | 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>.= |
| 74420 | 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 |
| 74440 | 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | lo"</span>;.....<span.class |
| 74460 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 32 3a 20 3c 73 70 61 6e | ="tok-kw">const</span>.x2:.<span |
| 74480 | 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 |
| 744a0 | 3e 21 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | >![]<span.class="tok-kw">const</ |
| 744c0 | 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< |
| 744e0 | 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>.=.&[<span.class="tok- |
| 74500 | 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | number">5</span>]<span.class="to |
| 74520 | 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-type">u8</span>{.<span.class=" |
| 74540 | 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 73 | tok-str">'h'</span>,.<span.class |
| 74560 | 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 61 | ="tok-str">'e'</span>,.<span.cla |
| 74580 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | ss="tok-str">'l'</span>,.<span.c |
| 745a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | lass="tok-str">'l'</span>,.<span |
| 745c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 31 31 3c 2f 73 70 61 6e 3e 20 7d | .class="tok-number">111</span>.} |
| 745e0 | 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</ |
| 74600 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 74 64 2e 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 | span>.expect(std.mem.eql(<span.c |
| 74620 | 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 |
| 74640 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 78 31 2c 20 3c | .class="tok-kw">try</span>.x1,.< |
| 74660 | 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 78 | span.class="tok-kw">try</span>.x |
| 74680 | 32 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | 2));......<span.class="tok-kw">c |
| 746a0 | 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 6b 2d | onst</span>.y:.<span.class="tok- |
| 746c0 | 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 5b 5d 3c 73 70 61 6e 20 63 6c | type">anyerror</span>![]<span.cl |
| 746e0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ass="tok-kw">const</span>.<span. |
| 74700 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 | class="tok-type">f32</span>.=.&a |
| 74720 | 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</ |
| 74740 | 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 |
| 74760 | 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 |
| 74780 | 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 |
| 747a0 | 75 6d 62 65 72 22 3e 33 2e 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | umber">3.4</span>.};.....<span.c |
| 747c0 | 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( |
| 747e0 | 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> |
| 74800 | 20 79 29 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f | .y)[<span.class="tok-number">0</ |
| 74820 | 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | span>].==.<span.class="tok-numbe |
| 74840 | 72 22 3e 31 2e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | r">1.2</span>);.}..<span.class=" |
| 74860 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4c 69 6b 65 77 69 73 65 2c 20 69 74 20 77 6f 72 | tok-comment">//.Likewise,.it.wor |
| 74880 | 6b 73 20 77 68 65 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 20 69 73 20 | ks.when.the.destination.type.is. |
| 748a0 | 61 6e 20 6f 70 74 69 6f 6e 61 6c 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | an.optional.</span>.<span.class= |
| 748c0 | 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 |
| 748e0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2a 63 6f 6e 73 74 20 5b 4e 5d 54 20 74 6f 20 | ="tok-str">"*const.[N]T.to. |
| 74900 | 3f 5b 5d 63 6f 6e 73 74 20 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | ?[]const.T"</span>.{.....<s |
| 74920 | 70 61 6e 20 63 6c 61 73 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>. |
| 74940 | 78 31 3a 20 3f 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | x1:.?[]<span.class="tok-kw">cons |
| 74960 | 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"> |
| 74980 | 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 |
| 749a0 | 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>;..... |
| 749c0 | 3c 73 70 61 6e 20 63 6c 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 |
| 749e0 | 3e 20 78 32 3a 20 3f 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | >.x2:.?[]<span.class="tok-kw">co |
| 74a00 | 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 |
| 74a20 | 22 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 | ">u8</span>.=.&[<span.class= |
| 74a40 | 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 61 73 | "tok-number">5</span>]<span.clas |
| 74a60 | 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 6c | s="tok-type">u8</span>{.<span.cl |
| 74a80 | 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 6e 20 | ass="tok-str">'h'</span>,.<span. |
| 74aa0 | 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 70 61 | class="tok-str">'e'</span>,.<spa |
| 74ac0 | 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 73 | n.class="tok-str">'l'</span>,.<s |
| 74ae0 | 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>,. |
| 74b00 | 3c 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 | <span.class="tok-number">111</sp |
| 74b20 | 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"> |
| 74b40 | 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 |
| 74b60 | 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>,. |
| 74b80 | 78 31 2e 3f 2c 20 78 32 2e 3f 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | x1.?,.x2.?));......<span.class=" |
| 74ba0 | 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 5b 5d 3c 73 70 61 6e | tok-kw">const</span>.y:.?[]<span |
| 74bc0 | 20 63 6c 61 73 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 |
| 74be0 | 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>.= |
| 74c00 | 20 26 61 6d 70 3b 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | .&[<span.class="tok-number"> |
| 74c20 | 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 74 79 70 65 22 3e | 2</span>]<span.class="tok-type"> |
| 74c40 | 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 6d | f32</span>{.<span.class="tok-num |
| 74c60 | 62 65 72 22 3e 31 2e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ber">1.2</span>,.<span.class="to |
| 74c80 | 6b 2d 6e 75 6d 62 65 72 22 3e 33 2e 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 | k-number">3.4</span>.};.....<spa |
| 74ca0 | 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 |
| 74cc0 | 63 74 28 79 2e 3f 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | ct(y.?[<span.class="tok-number"> |
| 74ce0 | 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | 0</span>].==.<span.class="tok-nu |
| 74d00 | 6d 62 65 72 22 3e 31 2e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | mber">1.2</span>);.}..<span.clas |
| 74d20 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 6e 20 74 68 69 73 20 63 61 73 74 2c | s="tok-comment">//.In.this.cast, |
| 74d40 | 20 74 68 65 20 61 72 72 61 79 20 6c 65 6e 67 74 68 20 62 65 63 6f 6d 65 73 20 74 68 65 20 73 6c | .the.array.length.becomes.the.sl |
| 74d60 | 69 63 65 20 6c 65 6e 67 74 68 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ice.length.</span>.<span.class=" |
| 74d80 | 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= |
| 74da0 | 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 5b 5d 54 26 71 75 6f | "tok-str">"*[N]T.to.[]T&quo |
| 74dc0 | 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 |
| 74de0 | 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 20 63 6c 61 73 | -kw">var</span>.buf:.[<span.clas |
| 74e00 | 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 |
| 74e20 | 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 |
| 74e40 | 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 |
| 74e60 | 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 22 74 6f | t;</span>.*;.....<span.class="to |
| 74e80 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c | k-kw">const</span>.x:.[]<span.cl |
| 74ea0 | 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 6d 70 3b | ass="tok-type">u8</span>.=.& |
| 74ec0 | 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 2d 6b 77 22 3e 74 72 | buf;.....<span.class="tok-kw">tr |
| 74ee0 | 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 61 | y</span>.expect(std.mem.eql(<spa |
| 74f00 | 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 2c | n.class="tok-type">u8</span>,.x, |
| 74f20 | 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 |
| 74f40 | 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 |
| 74f60 | 61 73 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 66 32 20 3d | ass="tok-kw">const</span>.buf2.= |
| 74f80 | 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 73 70 | .[<span.class="tok-number">2</sp |
| 74fa0 | 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 3c 2f | an>]<span.class="tok-type">f32</ |
| 74fc0 | 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 22 3e | span>{.<span.class="tok-number"> |
| 74fe0 | 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 75 6d | 1.2</span>,.<span.class="tok-num |
| 75000 | 62 65 72 22 3e 33 2e 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ber">3.4</span>.};.....<span.cla |
| 75020 | 73 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 32 3a 20 5b 5d 3c | ss="tok-kw">const</span>.x2:.[]< |
| 75040 | 73 70 61 6e 20 63 6c 61 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> |
| 75060 | 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 61 | .<span.class="tok-type">f32</spa |
| 75080 | 6e 3e 20 3d 20 26 61 6d 70 3b 62 75 66 32 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | n>.=.&buf2;.....<span.class= |
| 750a0 | 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 |
| 750c0 | 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 66 33 | em.eql(<span.class="tok-type">f3 |
| 750e0 | 32 3c 2f 73 70 61 6e 3e 2c 20 78 32 2c 20 26 61 6d 70 3b 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | 2</span>,.x2,.&[<span.class= |
| 75100 | 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 |
| 75120 | 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 |
| 75140 | 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 |
| 75160 | 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 |
| 75180 | 3e 20 7d 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | >.}));.}..<span.class="tok-comme |
| 751a0 | 6e 74 22 3e 2f 2f 20 53 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 61 | nt">//.Single-item.pointers.to.a |
| 751c0 | 72 72 61 79 73 20 63 61 6e 20 62 65 20 63 6f 65 72 63 65 64 20 74 6f 20 6d 61 6e 79 2d 69 74 65 | rrays.can.be.coerced.to.many-ite |
| 751e0 | 6d 20 70 6f 69 6e 74 65 72 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | m.pointers.</span>.<span.class=" |
| 75200 | 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= |
| 75220 | 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 5b 2a 5d 54 26 71 75 | "tok-str">"*[N]T.to.[*]T&qu |
| 75240 | 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 |
| 75260 | 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 20 63 6c 61 | k-kw">var</span>.buf:.[<span.cla |
| 75280 | 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 20 63 | ss="tok-number">5</span>]<span.c |
| 752a0 | 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 |
| 752c0 | 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 |
| 752e0 | 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 22 74 | ot;</span>.*;.....<span.class="t |
| 75300 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 5b 2a 5d 3c 73 70 61 6e 20 | ok-kw">const</span>.x:.[*]<span. |
| 75320 | 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 6d | class="tok-type">u8</span>.=.&am |
| 75340 | 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 2d 6b 77 22 3e | p;buf;.....<span.class="tok-kw"> |
| 75360 | 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 78 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | try</span>.expect(x[<span.class= |
| 75380 | 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 20 3c 73 70 61 6e 20 | "tok-number">4</span>].==.<span. |
| 753a0 | 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 29 3b 0a 20 20 20 | class="tok-str">'o'</span>);.... |
| 753c0 | 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 78 5b | .<span.class="tok-comment">//.x[ |
| 753e0 | 35 5d 20 77 6f 75 6c 64 20 62 65 20 61 6e 20 75 6e 63 61 75 67 68 74 20 6f 75 74 20 6f 66 20 62 | 5].would.be.an.uncaught.out.of.b |
| 75400 | 6f 75 6e 64 73 20 70 6f 69 6e 74 65 72 20 64 65 72 65 66 65 72 65 6e 63 65 21 3c 2f 73 70 61 6e | ounds.pointer.dereference!</span |
| 75420 | 3e 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f | >.}..<span.class="tok-comment">/ |
| 75440 | 2f 20 4c 69 6b 65 77 69 73 65 2c 20 69 74 20 77 6f 72 6b 73 20 77 68 65 6e 20 74 68 65 20 64 65 | /.Likewise,.it.works.when.the.de |
| 75460 | 73 74 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 | stination.type.is.an.optional.</ |
| 75480 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c | span>.<span.class="tok-kw">test< |
| 754a0 | 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 |
| 754c0 | 6f 74 3b 2a 5b 4e 5d 54 20 74 6f 20 3f 5b 2a 5d 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | ot;*[N]T.to.?[*]T"</span>.{ |
| 754e0 | 0a 20 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 |
| 75500 | 70 61 6e 3e 20 62 75 66 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | pan>.buf:.[<span.class="tok-numb |
| 75520 | 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | er">5</span>]<span.class="tok-ty |
| 75540 | 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 |
| 75560 | 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 2e 2a | -str">"hello"</span>.* |
| 75580 | 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 |
| 755a0 | 3c 2f 73 70 61 6e 3e 20 78 3a 20 3f 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | </span>.x:.?[*]<span.class="tok- |
| 755c0 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 62 75 66 3b 0a 20 20 20 20 | type">u8</span>.=.&buf;..... |
| 755e0 | 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>. |
| 75600 | 65 78 70 65 63 74 28 78 2e 3f 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | expect(x.?[<span.class="tok-numb |
| 75620 | 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | er">4</span>].==.<span.class="to |
| 75640 | 6b 2d 73 74 72 22 3e 27 6f 27 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | k-str">'o'</span>);.}..<span.cla |
| 75660 | 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 65 6d 20 | ss="tok-comment">//.Single-item. |
| 75680 | 70 6f 69 6e 74 65 72 73 20 63 61 6e 20 62 65 20 63 61 73 74 20 74 6f 20 6c 65 6e 2d 31 20 73 69 | pointers.can.be.cast.to.len-1.si |
| 756a0 | 6e 67 6c 65 2d 69 74 65 6d 20 61 72 72 61 79 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | ngle-item.arrays.</span>.<span.c |
| 756c0 | 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. |
| 756e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2a 54 20 74 6f 20 2a 5b 31 5d | class="tok-str">"*T.to.*[1] |
| 75700 | 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 |
| 75720 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c | ="tok-kw">var</span>.x:.<span.cl |
| 75740 | 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 |
| 75760 | 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> |
| 75780 | 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 |
| 757a0 | 3c 2f 73 70 61 6e 3e 20 79 3a 20 2a 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | </span>.y:.*[<span.class="tok-nu |
| 757c0 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | mber">1</span>]<span.class="tok- |
| 757e0 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 78 3b 0a 20 20 20 20 3c | type">i32</span>.=.&x;.....< |
| 75800 | 73 70 61 6e 20 63 6c 61 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> |
| 75820 | 20 7a 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 | .z:.[*]<span.class="tok-type">i3 |
| 75840 | 32 3c 2f 73 70 61 6e 3e 20 3d 20 79 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | 2</span>.=.y;.....<span.class="t |
| 75860 | 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 7a 5b 3c 73 70 61 6e | ok-kw">try</span>.expect(z[<span |
| 75880 | 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>].== |
| 758a0 | 20 3c 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</ |
| 758c0 | 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>< |
| 758e0 | 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- |
| 75900 | 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 |
| 75920 | 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 73 6c | p>$.<kbd>zig.test.test_coerce_sl |
| 75940 | 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 69 67 3c 2f 6b 62 | ices_arrays_and_pointers.zig</kb |
| 75960 | 64 3e 0a 31 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 | d>.1/7.test_coerce_slices_arrays |
| 75980 | 5f 61 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 | _and_pointers.test.*const.[N]T.t |
| 759a0 | 6f 20 5b 5d 63 6f 6e 73 74 20 54 2e 2e 2e 4f 4b 0a 32 2f 37 20 74 65 73 74 5f 63 6f 65 72 63 65 | o.[]const.T...OK.2/7.test_coerce |
| 759c0 | 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 |
| 759e0 | 2e 2a 63 6f 6e 73 74 20 5b 4e 5d 54 20 74 6f 20 45 21 5b 5d 63 6f 6e 73 74 20 54 2e 2e 2e 4f 4b | .*const.[N]T.to.E![]const.T...OK |
| 75a00 | 0a 33 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 | .3/7.test_coerce_slices_arrays_a |
| 75a20 | 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. |
| 75a40 | 3f 5b 5d 63 6f 6e 73 74 20 54 2e 2e 2e 4f 4b 0a 34 2f 37 20 74 65 73 74 5f 63 6f 65 72 63 65 5f | ?[]const.T...OK.4/7.test_coerce_ |
| 75a60 | 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 2e | slices_arrays_and_pointers.test. |
| 75a80 | 2a 5b 4e 5d 54 20 74 6f 20 5b 5d 54 2e 2e 2e 4f 4b 0a 35 2f 37 20 74 65 73 74 5f 63 6f 65 72 63 | *[N]T.to.[]T...OK.5/7.test_coerc |
| 75aa0 | 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 73 | e_slices_arrays_and_pointers.tes |
| 75ac0 | 74 2e 2a 5b 4e 5d 54 20 74 6f 20 5b 2a 5d 54 2e 2e 2e 4f 4b 0a 36 2f 37 20 74 65 73 74 5f 63 6f | t.*[N]T.to.[*]T...OK.6/7.test_co |
| 75ae0 | 65 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 | erce_slices_arrays_and_pointers. |
| 75b00 | 74 65 73 74 2e 2a 5b 4e 5d 54 20 74 6f 20 3f 5b 2a 5d 54 2e 2e 2e 4f 4b 0a 37 2f 37 20 74 65 73 | test.*[N]T.to.?[*]T...OK.7/7.tes |
| 75b20 | 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 70 6f 69 6e 74 | t_coerce_slices_arrays_and_point |
| 75b40 | 65 72 73 2e 74 65 73 74 2e 2a 54 20 74 6f 20 2a 5b 31 5d 54 2e 2e 2e 4f 4b 0a 41 6c 6c 20 37 20 | ers.test.*T.to.*[1]T...OK.All.7. |
| 75b60 | 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 |
| 75b80 | 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> |
| 75ba0 | 0a 3c 6c 69 3e 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 | .<li><a.href="#C-Pointers">C.Poi |
| 75bc0 | 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 | nters</a></li>.</ul>............ |
| 75be0 | 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 4f 70 74 69 6f 6e 61 | ...<h4.id="Type-Coercion-Optiona |
| 75c00 | 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d | ls"><a.href="#toc-Type-Coercion- |
| 75c20 | 4f 70 74 69 6f 6e 61 6c 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 4f 70 74 69 6f 6e | Optionals">Type.Coercion:.Option |
| 75c40 | 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 54 79 | als</a>.<a.class="hdr".href="#Ty |
| 75c60 | 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | pe-Coercion-Optionals">..</a></h |
| 75c80 | 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 70 61 79 6c 6f 61 64 20 | 4>........<p>.......The.payload. |
| 75ca0 | 74 79 70 65 20 6f 66 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 | type.of.<a.href="#Optionals">Opt |
| 75cc0 | 69 6f 6e 61 6c 73 3c 2f 61 3e 2c 20 61 73 20 77 65 6c 6c 20 61 73 20 3c 61 20 68 72 65 66 3d 22 | ionals</a>,.as.well.as.<a.href=" |
| 75ce0 | 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e 2c 20 63 6f 65 72 63 65 20 74 6f 20 74 68 65 20 6f | #null">null</a>,.coerce.to.the.o |
| 75d00 | 70 74 69 6f 6e 61 6c 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 | ptional.type........</p>.......< |
| 75d20 | 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 |
| 75d40 | 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 72 63 | p"><cite.class="file">test_coerc |
| 75d60 | 65 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 | e_optionals.zig</cite></figcapti |
| 75d80 | 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 |
| 75da0 | 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 |
| 75dc0 | 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>(< |
| 75de0 | 73 70 61 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 |
| 75e00 | 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 |
| 75e20 | 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 |
| 75e40 | 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 |
| 75e60 | 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- |
| 75e80 | 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 26 71 | str">"coerce.to.optionals&q |
| 75ea0 | 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 |
| 75ec0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3f 3c 73 70 61 6e 20 63 6c | ok-kw">const</span>.x:.?<span.cl |
| 75ee0 | 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 |
| 75f00 | 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> |
| 75f20 | 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 |
| 75f40 | 3c 2f 73 70 61 6e 3e 20 79 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | </span>.y:.?<span.class="tok-typ |
| 75f60 | 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 |
| 75f80 | 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | -null">null</span>;......<span.c |
| 75fa0 | 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( |
| 75fc0 | 78 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 | x.?.==.<span.class="tok-number"> |
| 75fe0 | 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 |
| 76000 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 79 20 3d 3d 20 3c 73 | ok-kw">try</span>.expect(y.==.<s |
| 76020 | 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> |
| 76040 | 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 |
| 76060 | 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"> |
| 76080 | 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>$.< |
| 760a0 | 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 6f 70 74 69 6f 6e 61 | kbd>zig.test.test_coerce_optiona |
| 760c0 | 6c 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 6f 70 74 | ls.zig</kbd>.1/1.test_coerce_opt |
| 760e0 | 69 6f 6e 61 6c 73 2e 74 65 73 74 2e 63 6f 65 72 63 65 20 74 6f 20 6f 70 74 69 6f 6e 61 6c 73 2e | ionals.test.coerce.to.optionals. |
| 76100 | 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> |
| 76120 | 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 4f 70 74 69 6f 6e | </pre></figure>........<p>Option |
| 76140 | 61 6c 73 20 77 6f 72 6b 20 6e 65 73 74 65 64 20 69 6e 73 69 64 65 20 74 68 65 20 3c 61 20 68 72 | als.work.nested.inside.the.<a.hr |
| 76160 | 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 | ef="#Error-Union-Type">Error.Uni |
| 76180 | 6f 6e 20 54 79 70 65 3c 2f 61 3e 2c 20 74 6f 6f 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 | on.Type</a>,.too:</p>.......<fig |
| 761a0 | 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"> |
| 761c0 | 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 72 63 65 5f 6f | <cite.class="file">test_coerce_o |
| 761e0 | 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 69 67 3c | ptional_wrapped_error_union.zig< |
| 76200 | 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 |
| 76220 | 70 61 6e 20 63 6c 61 73 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>. |
| 76240 | 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"> |
| 76260 | 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- |
| 76280 | 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 |
| 762a0 | 70 61 6e 20 63 6c 61 73 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>. |
| 762c0 | 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 |
| 762e0 | 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>.< |
| 76300 | 73 70 61 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 |
| 76320 | 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. |
| 76340 | 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 |
| 76360 | 6c 61 73 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 | lass="tok-kw">const</span>.x:.<s |
| 76380 | 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 |
| 763a0 | 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 69 33 32 | pan>!?<span.class="tok-type">i32 |
| 763c0 | 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 |
| 763e0 | 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 3d | r">1234</span>;.....<span.class= |
| 76400 | 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 61 6e 20 63 | "tok-kw">const</span>.y:.<span.c |
| 76420 | 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>! |
| 76440 | 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 61 | ?<span.class="tok-type">i32</spa |
| 76460 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c | n>.=.<span.class="tok-null">null |
| 76480 | 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 6b | </span>;......<span.class="tok-k |
| 764a0 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e 20 63 6c 61 73 | w">try</span>.expect((<span.clas |
| 764c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 78 29 2e 3f 20 3d 3d 20 3c 73 | s="tok-kw">try</span>.x).?.==.<s |
| 764e0 | 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 61 | pan.class="tok-number">1234</spa |
| 76500 | 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | n>);.....<span.class="tok-kw">tr |
| 76520 | 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 |
| 76540 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 79 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | k-kw">try</span>.y).==.<span.cla |
| 76560 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 | ss="tok-null">null</span>);.}</c |
| 76580 | 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 |
| 765a0 | 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</ |
| 765c0 | 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 |
| 765e0 | 20 74 65 73 74 20 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 | .test.test_coerce_optional_wrapp |
| 76600 | 65 64 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 65 73 | ed_error_union.zig</kbd>.1/1.tes |
| 76620 | 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 65 72 72 6f 72 5f | t_coerce_optional_wrapped_error_ |
| 76640 | 75 6e 69 6f 6e 2e 74 65 73 74 2e 63 6f 65 72 63 65 20 74 6f 20 6f 70 74 69 6f 6e 61 6c 73 20 77 | union.test.coerce.to.optionals.w |
| 76660 | 72 61 70 70 65 64 20 69 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 | rapped.in.error.union...OK.All.1 |
| 76680 | 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 |
| 766a0 | 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 65 | gure>...............<h4.id="Type |
| 766c0 | 2d 43 6f 65 72 63 69 6f 6e 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d | -Coercion-Error-Unions"><a.href= |
| 766e0 | 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 | "#toc-Type-Coercion-Error-Unions |
| 76700 | 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 45 72 72 6f 72 20 55 6e 69 6f 6e 73 3c 2f 61 | ">Type.Coercion:.Error.Unions</a |
| 76720 | 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 | >.<a.class="hdr".href="#Type-Coe |
| 76740 | 72 63 69 6f 6e 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a | rcion-Error-Unions">..</a></h4>. |
| 76760 | 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 20 70 61 79 6c 6f 61 64 20 74 79 70 65 20 6f 66 20 61 6e | .......<p>The.payload.type.of.an |
| 76780 | 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 72 | .<a.href="#Error-Union-Type">Err |
| 767a0 | 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 20 61 73 20 77 65 6c 6c 20 61 73 20 74 68 65 | or.Union.Type</a>.as.well.as.the |
| 767c0 | 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 45 72 72 6f 72 | .<a.href="#Error-Set-Type">Error |
| 767e0 | 20 53 65 74 20 54 79 70 65 3c 2f 61 3e 0a 20 20 20 20 20 20 63 6f 65 72 63 65 20 74 6f 20 74 68 | .Set.Type</a>.......coerce.to.th |
| 76800 | 65 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 74 79 70 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | e.error.union.type:.......</p>.. |
| 76820 | 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=" |
| 76840 | 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 |
| 76860 | 5f 63 6f 65 72 63 65 5f 74 6f 5f 65 72 72 6f 72 5f 75 6e 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 | _coerce_to_error_union.zig</cite |
| 76880 | 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 |
| 768a0 | 6c 61 73 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.= |
| 768c0 | 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 |
| 768e0 | 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"> |
| 76900 | 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 |
| 76920 | 6c 61 73 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 |
| 76940 | 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 |
| 76960 | 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. |
| 76980 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 65 72 63 69 6f 6e 20 74 | class="tok-str">"coercion.t |
| 769a0 | 6f 20 65 72 72 6f 72 20 75 6e 69 6f 6e 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | o.error.unions"</span>.{... |
| 769c0 | 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 |
| 769e0 | 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 61 6e | an>.x:.<span.class="tok-type">an |
| 76a00 | 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | yerror</span>!<span.class="tok-t |
| 76a20 | 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 |
| 76a40 | 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 61 | ok-number">1234</span>;.....<spa |
| 76a60 | 6e 20 63 6c 61 73 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 | n.class="tok-kw">const</span>.y: |
| 76a80 | 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 |
| 76aa0 | 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | </span>!<span.class="tok-type">i |
| 76ac0 | 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 6b 77 22 | 32</span>.=.<span.class="tok-kw" |
| 76ae0 | 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 46 61 69 6c 75 72 65 3b 0a 0a 20 20 20 20 3c 73 70 61 | >error</span>.Failure;......<spa |
| 76b00 | 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 |
| 76b20 | 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 73 70 | ct((<span.class="tok-kw">try</sp |
| 76b40 | 61 6e 3e 20 78 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 | an>.x).==.<span.class="tok-numbe |
| 76b60 | 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 73 | r">1234</span>);.....<span.class |
| 76b80 | 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 |
| 76ba0 | 2e 65 78 70 65 63 74 45 72 72 6f 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .expectError(<span.class="tok-kw |
| 76bc0 | 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 46 61 69 6c 75 72 65 2c 20 79 29 3b 0a 7d 3c 2f 63 | ">error</span>.Failure,.y);.}</c |
| 76be0 | 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 |
| 76c00 | 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</ |
| 76c20 | 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 |
| 76c40 | 20 74 65 73 74 20 74 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 | .test.test_coerce_to_error_union |
| 76c60 | 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 74 6f 5f 65 72 | .zig</kbd>.1/1.test_coerce_to_er |
| 76c80 | 72 6f 72 5f 75 6e 69 6f 6e 2e 74 65 73 74 2e 63 6f 65 72 63 69 6f 6e 20 74 6f 20 65 72 72 6f 72 | ror_union.test.coercion.to.error |
| 76ca0 | 20 75 6e 69 6f 6e 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 | .unions...OK.All.1.tests.passed. |
| 76cc0 | 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>......... |
| 76ce0 | 20 20 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 43 6f 6d 70 | ......<h4.id="Type-Coercion-Comp |
| 76d00 | 69 6c 65 2d 54 69 6d 65 2d 4b 6e 6f 77 6e 2d 4e 75 6d 62 65 72 73 22 3e 3c 61 20 68 72 65 66 3d | ile-Time-Known-Numbers"><a.href= |
| 76d20 | 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 | "#toc-Type-Coercion-Compile-Time |
| 76d40 | 2d 4b 6e 6f 77 6e 2d 4e 75 6d 62 65 72 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 43 | -Known-Numbers">Type.Coercion:.C |
| 76d60 | 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 4b 6e 6f 77 6e 20 4e 75 6d 62 65 72 73 3c 2f 61 3e 20 3c 61 | ompile-Time.Known.Numbers</a>.<a |
| 76d80 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f | .class="hdr".href="#Type-Coercio |
| 76da0 | 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 c2 a7 | n-Compile-Time-Known-Numbers">.. |
| 76dc0 | 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 57 68 65 6e 20 61 20 6e 75 6d 62 65 | </a></h4>........<p>When.a.numbe |
| 76de0 | 72 20 69 73 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d | r.is.<a.href="#comptime">comptim |
| 76e00 | 65 3c 2f 61 3e 2d 6b 6e 6f 77 6e 20 74 6f 20 62 65 20 72 65 70 72 65 73 65 6e 74 61 62 6c 65 20 | e</a>-known.to.be.representable. |
| 76e20 | 69 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 2c 0a 20 20 20 20 20 20 69 | in.the.destination.type,.......i |
| 76e40 | 74 20 6d 61 79 20 62 65 20 63 6f 65 72 63 65 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | t.may.be.coerced:.......</p>.... |
| 76e60 | 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 |
| 76e80 | 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 63 | g-cap"><cite.class="file">test_c |
| 76ea0 | 6f 65 72 63 65 5f 6c 61 72 67 65 5f 74 6f 5f 73 6d 61 6c 6c 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c | oerce_large_to_small.zig</cite>< |
| 76ec0 | 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 |
| 76ee0 | 73 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.=.< |
| 76f00 | 73 70 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 |
| 76f20 | 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 |
| 76f40 | 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 |
| 76f60 | 73 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. |
| 76f80 | 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 |
| 76fa0 | 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 |
| 76fc0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 65 72 63 69 6e 67 20 6c 61 72 | ass="tok-str">"coercing.lar |
| 76fe0 | 67 65 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 74 6f 20 73 6d 61 6c 6c 65 72 20 6f 6e 65 20 77 | ge.integer.type.to.smaller.one.w |
| 77000 | 68 65 6e 20 76 61 6c 75 65 20 69 73 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 74 6f 20 66 | hen.value.is.comptime-known.to.f |
| 77020 | 69 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | it"</span>.{.....<span.clas |
| 77040 | 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 |
| 77060 | 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 3c | .class="tok-type">u64</span>.=.< |
| 77080 | 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 |
| 770a0 | 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 |
| 770c0 | 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 6b 2d 74 79 | st</span>.y:.<span.class="tok-ty |
| 770e0 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 78 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | pe">u8</span>.=.x;.....<span.cla |
| 77100 | 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 79 20 | ss="tok-kw">try</span>.expect(y. |
| 77120 | 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 35 35 3c | ==.<span.class="tok-number">255< |
| 77140 | 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> |
| 77160 | 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 |
| 77180 | 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 |
| 771a0 | 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 65 5f 6c | mp>$.<kbd>zig.test.test_coerce_l |
| 771c0 | 61 72 67 65 5f 74 6f 5f 73 6d 61 6c 6c 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 | arge_to_small.zig</kbd>.1/1.test |
| 771e0 | 5f 63 6f 65 72 63 65 5f 6c 61 72 67 65 5f 74 6f 5f 73 6d 61 6c 6c 2e 74 65 73 74 2e 63 6f 65 72 | _coerce_large_to_small.test.coer |
| 77200 | 63 69 6e 67 20 6c 61 72 67 65 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 74 6f 20 73 6d 61 6c 6c | cing.large.integer.type.to.small |
| 77220 | 65 72 20 6f 6e 65 20 77 68 65 6e 20 76 61 6c 75 65 20 69 73 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e | er.one.when.value.is.comptime-kn |
| 77240 | 6f 77 6e 20 74 6f 20 66 69 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 | own.to.fit...OK.All.1.tests.pass |
| 77260 | 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>...... |
| 77280 | 20 20 0a 20 20 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 55 | .........<h4.id="Type-Coercion-U |
| 772a0 | 6e 69 6f 6e 73 2d 61 6e 64 2d 45 6e 75 6d 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 | nions-and-Enums"><a.href="#toc-T |
| 772c0 | 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 3e 54 | ype-Coercion-Unions-and-Enums">T |
| 772e0 | 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 73 3c 2f | ype.Coercion:.Unions.and.Enums</ |
| 77300 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f | a>.<a.class="hdr".href="#Type-Co |
| 77320 | 65 72 63 69 6f 6e 2d 55 6e 69 6f 6e 73 2d 61 6e 64 2d 45 6e 75 6d 73 22 3e c2 a7 3c 2f 61 3e 3c | ercion-Unions-and-Enums">..</a>< |
| 77340 | 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 61 67 67 65 64 20 75 6e 69 6f 6e 73 20 63 61 6e | /h4>........<p>Tagged.unions.can |
| 77360 | 20 62 65 20 63 6f 65 72 63 65 64 20 74 6f 20 65 6e 75 6d 73 2c 20 61 6e 64 20 65 6e 75 6d 73 20 | .be.coerced.to.enums,.and.enums. |
| 77380 | 63 61 6e 20 62 65 20 63 6f 65 72 63 65 64 20 74 6f 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 73 0a | can.be.coerced.to.tagged.unions. |
| 773a0 | 20 20 20 20 20 20 77 68 65 6e 20 74 68 65 79 20 61 72 65 20 3c 61 20 68 72 65 66 3d 22 23 63 6f | ......when.they.are.<a.href="#co |
| 773c0 | 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 65 | mptime">comptime</a>-known.to.be |
| 773e0 | 20 61 20 66 69 65 6c 64 20 6f 66 20 74 68 65 20 75 6e 69 6f 6e 20 74 68 61 74 20 68 61 73 20 6f | .a.field.of.the.union.that.has.o |
| 77400 | 6e 6c 79 20 6f 6e 65 20 70 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 2c 20 73 75 63 68 20 61 73 0a | nly.one.possible.value,.such.as. |
| 77420 | 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 76 6f 69 64 22 3e 76 6f 69 64 3c 2f 61 3e 3a 0a | ......<a.href="#void">void</a>:. |
| 77440 | 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 |
| 77460 | 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 |
| 77480 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 65 72 63 65 5f 75 6e 69 6f 6e 73 5f 65 6e 75 6d 73 | ="file">test_coerce_unions_enums |
| 774a0 | 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 |
| 774c0 | 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 |
| 774e0 | 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 |
| 77500 | 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= |
| 77520 | 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> |
| 77540 | 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 |
| 77560 | 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 |
| 77580 | 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 |
| 775a0 | 70 61 6e 3e 20 45 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 | pan>.E.=.<span.class="tok-kw">en |
| 775c0 | 75 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 | um</span>.{.....one,.....two,... |
| 775e0 | 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 6b 2d 6b 77 | ..three,.};..<span.class="tok-kw |
| 77600 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 55 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">const</span>.U.=.<span.class=" |
| 77620 | 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 28 45 29 20 7b 0a 20 20 20 20 6f 6e | tok-kw">union</span>(E).{.....on |
| 77640 | 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | e:.<span.class="tok-type">i32</s |
| 77660 | 70 61 6e 3e 2c 0a 20 20 20 20 74 77 6f 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>,.....two:.<span.class="tok- |
| 77680 | 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 74 68 72 65 65 2c 0a 7d 3b 0a | type">f32</span>,.....three,.};. |
| 776a0 | 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 |
| 776c0 | 6e 3e 20 55 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 | n>.U2.=.<span.class="tok-kw">uni |
| 776e0 | 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 |
| 77700 | 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 |
| 77720 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 62 3a 20 | ="tok-type">void</span>,.....b:. |
| 77740 | 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 |
| 77760 | 3e 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c | >,......<span.class="tok-kw">fn< |
| 77780 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 61 67 3c | /span>.<span.class="tok-fn">tag< |
| 777a0 | 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 55 32 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | /span>(self:.U2).<span.class="to |
| 777c0 | 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 20 20 20 20 3c | k-type">usize</span>.{.........< |
| 777e0 | 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 |
| 77800 | 3e 20 28 73 65 6c 66 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 61 20 3d 26 67 74 3b 20 | >.(self).{..............a.=>. |
| 77820 | 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 |
| 77840 | 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 3c 2f 73 | n>.<span.class="tok-number">1</s |
| 77860 | 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 62 20 3d 26 67 74 3b 20 3c 73 70 61 6e | pan>,..............b.=>.<span |
| 77880 | 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 |
| 778a0 | 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>, |
| 778c0 | 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | .........}.....}.};..<span.class |
| 778e0 | 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 |
| 77900 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 65 72 63 69 6f 6e 20 62 65 74 77 65 | s="tok-str">"coercion.betwe |
| 77920 | 65 6e 20 75 6e 69 6f 6e 73 20 61 6e 64 20 65 6e 75 6d 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | en.unions.and.enums"</span> |
| 77940 | 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 |
| 77960 | 74 3c 2f 73 70 61 6e 3e 20 75 20 3d 20 55 7b 20 2e 74 77 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | t</span>.u.=.U{..two.=.<span.cla |
| 77980 | 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 3b 0a | ss="tok-number">12.34</span>.};. |
| 779a0 | 20 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</ |
| 779c0 | 73 70 61 6e 3e 20 65 3a 20 45 20 3d 20 75 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>.e:.E.=.u;.<span.class="tok |
| 779e0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 6f 65 72 63 65 20 75 6e 69 6f 6e 20 74 6f 20 65 6e 75 | -comment">//.coerce.union.to.enu |
| 77a00 | 6d 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 | m</span>.....<span.class="tok-kw |
| 77a20 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 65 20 3d 3d 20 45 2e 74 77 6f 29 3b | ">try</span>.expect(e.==.E.two); |
| 77a40 | 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | ......<span.class="tok-kw">const |
| 77a60 | 3c 2f 73 70 61 6e 3e 20 74 68 72 65 65 20 3d 20 45 2e 74 68 72 65 65 3b 0a 20 20 20 20 3c 73 70 | </span>.three.=.E.three;.....<sp |
| 77a80 | 61 6e 20 63 6c 61 73 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 | an.class="tok-kw">const</span>.u |
| 77aa0 | 5f 32 3a 20 55 20 3d 20 74 68 72 65 65 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | _2:.U.=.three;.<span.class="tok- |
| 77ac0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 6f 65 72 63 65 20 65 6e 75 6d 20 74 6f 20 75 6e 69 6f 6e | comment">//.coerce.enum.to.union |
| 77ae0 | 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" |
| 77b00 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 75 5f 32 20 3d 3d 20 45 2e 74 68 72 65 | >try</span>.expect(u_2.==.E.thre |
| 77b20 | 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 63 6f | e);......<span.class="tok-kw">co |
| 77b40 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 5f 33 3a 20 55 20 3d 20 2e 74 68 72 65 65 3b 20 3c 73 70 61 | nst</span>.u_3:.U.=..three;.<spa |
| 77b60 | 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 65 20 | n.class="tok-comment">//.coerce. |
| 77b80 | 65 6e 75 6d 20 6c 69 74 65 72 61 6c 20 74 6f 20 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | enum.literal.to.union</span>.... |
| 77ba0 | 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> |
| 77bc0 | 20 65 78 70 65 63 74 28 75 5f 33 20 3d 3d 20 45 2e 74 68 72 65 65 29 3b 0a 0a 20 20 20 20 3c 73 | .expect(u_3.==.E.three);......<s |
| 77be0 | 70 61 6e 20 63 6c 61 73 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>. |
| 77c00 | 75 5f 34 3a 20 55 32 20 3d 20 2e 61 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | u_4:.U2.=..a;.<span.class="tok-c |
| 77c20 | 6f 6d 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 | omment">//.coerce.enum.literal.t |
| 77c40 | 6f 20 75 6e 69 6f 6e 20 77 69 74 68 20 69 6e 66 65 72 72 65 64 20 65 6e 75 6d 20 74 61 67 20 74 | o.union.with.inferred.enum.tag.t |
| 77c60 | 79 70 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ype.</span>.....<span.class="tok |
| 77c80 | 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 34 2e 74 61 67 28 29 | -kw">try</span>.expect(u_4.tag() |
| 77ca0 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f | .==.<span.class="tok-number">1</ |
| 77cc0 | 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 |
| 77ce0 | 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 65 78 61 6d 70 6c 65 20 | mment">//.The.following.example. |
| 77d00 | 69 73 20 69 6e 76 61 6c 69 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | is.invalid.</span>.....<span.cla |
| 77d20 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 72 72 6f 72 3a 20 63 6f 65 72 63 | ss="tok-comment">//.error:.coerc |
| 77d40 | 69 6f 6e 20 66 72 6f 6d 20 65 6e 75 6d 20 27 40 54 79 70 65 4f 66 28 2e 65 6e 75 6d 5f 6c 69 74 | ion.from.enum.'@TypeOf(.enum_lit |
| 77d60 | 65 72 61 6c 29 27 20 74 6f 20 75 6e 69 6f 6e 20 27 74 65 73 74 5f 63 6f 65 72 63 65 5f 75 6e 69 | eral)'.to.union.'test_coerce_uni |
| 77d80 | 6f 6e 73 5f 65 6e 75 6d 2e 55 32 27 20 6d 75 73 74 20 69 6e 69 74 69 61 6c 69 7a 65 20 27 66 33 | ons_enum.U2'.must.initialize.'f3 |
| 77da0 | 32 27 20 66 69 65 6c 64 20 27 62 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | 2'.field.'b'</span>.....<span.cl |
| 77dc0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 76 61 72 20 75 5f 35 3a 20 55 32 20 | ass="tok-comment">//var.u_5:.U2. |
| 77de0 | 3d 20 2e 62 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 6f | =..b;</span>.....<span.class="to |
| 77e00 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 74 72 79 20 65 78 70 65 63 74 28 75 5f 35 2e 74 61 67 28 | k-comment">//try.expect(u_5.tag( |
| 77e20 | 29 20 3d 3d 20 32 29 3b 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f | ).==.2);</span>.}</code></pre></ |
| 77e40 | 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 |
| 77e60 | 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>< |
| 77e80 | 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 |
| 77ea0 | 6f 65 72 63 65 5f 75 6e 69 6f 6e 73 5f 65 6e 75 6d 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 | oerce_unions_enums.zig</kbd>.1/1 |
| 77ec0 | 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 75 6e 69 6f 6e 73 5f 65 6e 75 6d 73 2e 74 65 73 74 2e 63 | .test_coerce_unions_enums.test.c |
| 77ee0 | 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 75 6d 73 | oercion.between.unions.and.enums |
| 77f00 | 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 |
| 77f20 | 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 61 | ></pre></figure>........<p>See.a |
| 77f40 | 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e | lso:</p><ul>.<li><a.href="#union |
| 77f60 | 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 | ">union</a></li>.<li><a.href="#e |
| 77f80 | 6e 75 6d 22 3e 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 | num">enum</a></li>.</ul>........ |
| 77fa0 | 0a 20 20 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 75 6e 64 | .......<h4.id="Type-Coercion-und |
| 77fc0 | 65 66 69 6e 65 64 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 | efined"><a.href="#toc-Type-Coerc |
| 77fe0 | 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 20 75 6e | ion-undefined">Type.Coercion:.un |
| 78000 | 64 65 66 69 6e 65 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | defined</a>.<a.class="hdr".href= |
| 78020 | 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 6e 64 65 66 69 6e 65 64 22 3e c2 a7 3c 2f 61 | "#Type-Coercion-undefined">..</a |
| 78040 | 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 22 23 75 6e 64 65 66 | ></h4>........<p><a.href="#undef |
| 78060 | 69 6e 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 20 63 61 6e 20 62 65 20 63 6f 65 72 63 | ined">undefined</a>.can.be.coerc |
| 78080 | 65 64 20 74 6f 20 61 6e 79 20 74 79 70 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 | ed.to.any.type.</p>............. |
| 780a0 | 20 20 3c 68 34 20 69 64 3d 22 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 54 75 70 6c 65 73 2d 74 | ..<h4.id="Type-Coercion-Tuples-t |
| 780c0 | 6f 2d 41 72 72 61 79 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 | o-Arrays"><a.href="#toc-Type-Coe |
| 780e0 | 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 6f 65 | rcion-Tuples-to-Arrays">Type.Coe |
| 78100 | 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 20 3c 61 20 63 | rcion:.Tuples.to.Arrays</a>.<a.c |
| 78120 | 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- |
| 78140 | 54 75 70 6c 65 73 2d 74 6f 2d 41 72 72 61 79 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 | Tuples-to-Arrays">..</a></h4>... |
| 78160 | 20 20 20 20 20 3c 70 3e 3c 61 20 68 72 65 66 3d 22 23 54 75 70 6c 65 73 22 3e 54 75 70 6c 65 73 | .....<p><a.href="#Tuples">Tuples |
| 78180 | 3c 2f 61 3e 20 63 61 6e 20 62 65 20 63 6f 65 72 63 65 64 20 74 6f 20 61 72 72 61 79 73 2c 20 69 | </a>.can.be.coerced.to.arrays,.i |
| 781a0 | 66 20 61 6c 6c 20 6f 66 20 74 68 65 20 66 69 65 6c 64 73 20 68 61 76 65 20 74 68 65 20 73 61 6d | f.all.of.the.fields.have.the.sam |
| 781c0 | 65 20 74 79 70 65 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 | e.type.</p>.......<figure><figca |
| 781e0 | 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 |
| 78200 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 65 72 63 65 5f 74 75 70 6c 65 73 5f 61 72 72 61 | s="file">test_coerce_tuples_arra |
| 78220 | 79 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 | ys.zig</cite></figcaption><pre>< |
| 78240 | 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< |
| 78260 | 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 |
| 78280 | 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 |
| 782a0 | 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 |
| 782c0 | 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< |
| 782e0 | 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 |
| 78300 | 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< |
| 78320 | 2f 73 70 61 6e 3e 20 54 75 70 6c 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>.Tuple.=.<span.class="tok- |
| 78340 | 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 6c 61 73 73 3d | kw">struct</span>.{.<span.class= |
| 78360 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | "tok-type">u8</span>,.<span.clas |
| 78380 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 3c 73 70 61 6e 20 | s="tok-type">u8</span>.};.<span. |
| 783a0 | 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 |
| 783c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 65 72 63 69 6f 6e 20 | .class="tok-str">"coercion. |
| 783e0 | 66 72 6f 6d 20 68 6f 6d 6f 67 65 6e 6f 75 73 20 74 75 70 6c 65 20 74 6f 20 61 72 72 61 79 26 71 | from.homogenous.tuple.to.array&q |
| 78400 | 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 |
| 78420 | 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 3a 20 54 75 70 6c 65 | ok-kw">const</span>.tuple:.Tuple |
| 78440 | 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 35 | .=..{.<span.class="tok-number">5 |
| 78460 | 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 |
| 78480 | 22 3e 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 74 | ">6</span>.};.....<span.class="t |
| 784a0 | 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 3a 20 5b 3c 73 70 61 | ok-kw">const</span>.array:.[<spa |
| 784c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 3c 73 | n.class="tok-number">2</span>]<s |
| 784e0 | 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>.= |
| 78500 | 20 74 75 70 6c 65 3b 0a 20 20 20 20 5f 20 3d 20 61 72 72 61 79 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | .tuple;....._.=.array;.}</code>< |
| 78520 | 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 |
| 78540 | 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 |
| 78560 | 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 |
| 78580 | 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 74 75 70 6c 65 73 5f 61 72 72 61 79 73 2e 7a 69 67 3c 2f | .test_coerce_tuples_arrays.zig</ |
| 785a0 | 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 74 75 70 6c 65 73 5f 61 72 72 61 | kbd>.1/1.test_coerce_tuples_arra |
| 785c0 | 79 73 2e 74 65 73 74 2e 63 6f 65 72 63 69 6f 6e 20 66 72 6f 6d 20 68 6f 6d 6f 67 65 6e 6f 75 73 | ys.test.coercion.from.homogenous |
| 785e0 | 20 74 75 70 6c 65 20 74 6f 20 61 72 72 61 79 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 | .tuple.to.array...OK.All.1.tests |
| 78600 | 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>. |
| 78620 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 45 78 | ......................<h3.id="Ex |
| 78640 | 70 6c 69 63 69 74 2d 43 61 73 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 78 70 6c | plicit-Casts"><a.href="#toc-Expl |
| 78660 | 69 63 69 74 2d 43 61 73 74 73 22 3e 45 78 70 6c 69 63 69 74 20 43 61 73 74 73 3c 2f 61 3e 20 3c | icit-Casts">Explicit.Casts</a>.< |
| 78680 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 78 70 6c 69 63 69 74 2d 43 61 | a.class="hdr".href="#Explicit-Ca |
| 786a0 | 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 3e 0a 20 20 20 20 | sts">..</a></h3>........<p>..... |
| 786c0 | 20 20 45 78 70 6c 69 63 69 74 20 63 61 73 74 73 20 61 72 65 20 70 65 72 66 6f 72 6d 65 64 20 76 | ..Explicit.casts.are.performed.v |
| 786e0 | 69 61 20 3c 61 20 68 72 65 66 3d 22 23 42 75 69 6c 74 69 6e 2d 46 75 6e 63 74 69 6f 6e 73 22 3e | ia.<a.href="#Builtin-Functions"> |
| 78700 | 42 75 69 6c 74 69 6e 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 53 6f 6d | Builtin.Functions</a>........Som |
| 78720 | 65 20 65 78 70 6c 69 63 69 74 20 63 61 73 74 73 20 61 72 65 20 73 61 66 65 3b 20 73 6f 6d 65 20 | e.explicit.casts.are.safe;.some. |
| 78740 | 61 72 65 20 6e 6f 74 2e 0a 20 20 20 20 20 20 53 6f 6d 65 20 65 78 70 6c 69 63 69 74 20 63 61 73 | are.not........Some.explicit.cas |
| 78760 | 74 73 20 70 65 72 66 6f 72 6d 20 6c 61 6e 67 75 61 67 65 2d 6c 65 76 65 6c 20 61 73 73 65 72 74 | ts.perform.language-level.assert |
| 78780 | 69 6f 6e 73 3b 20 73 6f 6d 65 20 64 6f 20 6e 6f 74 2e 0a 20 20 20 20 20 20 53 6f 6d 65 20 65 78 | ions;.some.do.not........Some.ex |
| 787a0 | 70 6c 69 63 69 74 20 63 61 73 74 73 20 61 72 65 20 6e 6f 2d 6f 70 73 20 61 74 20 72 75 6e 74 69 | plicit.casts.are.no-ops.at.runti |
| 787c0 | 6d 65 3b 20 73 6f 6d 65 20 61 72 65 20 6e 6f 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | me;.some.are.not........</p>.... |
| 787e0 | 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="# |
| 78800 | 62 69 74 43 61 73 74 22 3e 40 62 69 74 43 61 73 74 3c 2f 61 3e 20 2d 20 63 68 61 6e 67 65 20 74 | bitCast">@bitCast</a>.-.change.t |
| 78820 | 79 70 65 20 62 75 74 20 6d 61 69 6e 74 61 69 6e 20 62 69 74 20 72 65 70 72 65 73 65 6e 74 61 74 | ype.but.maintain.bit.representat |
| 78840 | 69 6f 6e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 | ion</li>...........<li><a.href=" |
| 78860 | 23 61 6c 69 67 6e 43 61 73 74 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 61 3e 20 2d 20 6d 61 6b | #alignCast">@alignCast</a>.-.mak |
| 78880 | 65 20 61 20 70 6f 69 6e 74 65 72 20 68 61 76 65 20 6d 6f 72 65 20 61 6c 69 67 6e 6d 65 6e 74 3c | e.a.pointer.have.more.alignment< |
| 788a0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 | /li>...........<li><a.href="#enu |
| 788c0 | 6d 46 72 6f 6d 49 6e 74 22 3e 40 65 6e 75 6d 46 72 6f 6d 49 6e 74 3c 2f 61 3e 20 2d 20 6f 62 74 | mFromInt">@enumFromInt</a>.-.obt |
| 788e0 | 61 69 6e 20 61 6e 20 65 6e 75 6d 20 76 61 6c 75 65 20 62 61 73 65 64 20 6f 6e 20 69 74 73 20 69 | ain.an.enum.value.based.on.its.i |
| 78900 | 6e 74 65 67 65 72 20 74 61 67 20 76 61 6c 75 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | nteger.tag.value</li>........... |
| 78920 | 3c 6c 69 3e 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 | <li><a.href="#errorFromInt">@err |
| 78940 | 6f 72 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 72 72 6f 72 20 | orFromInt</a>.-.obtain.an.error. |
| 78960 | 63 6f 64 65 20 62 61 73 65 64 20 6f 6e 20 69 74 73 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 3c | code.based.on.its.integer.value< |
| 78980 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 72 72 | /li>...........<li><a.href="#err |
| 789a0 | 6f 72 43 61 73 74 22 3e 40 65 72 72 6f 72 43 61 73 74 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 | orCast">@errorCast</a>.-.convert |
| 789c0 | 20 74 6f 20 61 20 73 6d 61 6c 6c 65 72 20 65 72 72 6f 72 20 73 65 74 3c 2f 6c 69 3e 0a 20 20 20 | .to.a.smaller.error.set</li>.... |
| 789e0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 66 6c 6f 61 74 43 61 73 74 22 3e | .......<li><a.href="#floatCast"> |
| 78a00 | 40 66 6c 6f 61 74 43 61 73 74 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 61 20 6c 61 72 67 65 | @floatCast</a>.-.convert.a.large |
| 78a20 | 72 20 66 6c 6f 61 74 20 74 6f 20 61 20 73 6d 61 6c 6c 65 72 20 66 6c 6f 61 74 3c 2f 6c 69 3e 0a | r.float.to.a.smaller.float</li>. |
| 78a40 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 66 6c 6f 61 74 46 72 6f | ..........<li><a.href="#floatFro |
| 78a60 | 6d 49 6e 74 22 3e 40 66 6c 6f 61 74 46 72 6f 6d 49 6e 74 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 | mInt">@floatFromInt</a>.-.conver |
| 78a80 | 74 20 61 6e 20 69 6e 74 65 67 65 72 20 74 6f 20 61 20 66 6c 6f 61 74 20 76 61 6c 75 65 3c 2f 6c | t.an.integer.to.a.float.value</l |
| 78aa0 | 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 43 61 | i>...........<li><a.href="#intCa |
| 78ac0 | 73 74 22 3e 40 69 6e 74 43 61 73 74 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 62 65 74 77 65 | st">@intCast</a>.-.convert.betwe |
| 78ae0 | 65 6e 20 69 6e 74 65 67 65 72 20 74 79 70 65 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | en.integer.types</li>........... |
| 78b00 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 46 72 6f 6d 42 6f 6f 6c 22 3e 40 69 6e 74 46 | <li><a.href="#intFromBool">@intF |
| 78b20 | 72 6f 6d 42 6f 6f 6c 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 74 72 75 65 20 74 6f 20 31 20 | romBool</a>.-.convert.true.to.1. |
| 78b40 | 61 6e 64 20 66 61 6c 73 65 20 74 6f 20 30 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c | and.false.to.0</li>...........<l |
| 78b60 | 69 3e 3c 61 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 6f | i><a.href="#intFromEnum">@intFro |
| 78b80 | 6d 45 6e 75 6d 3c 2f 61 3e 20 2d 20 6f 62 74 61 69 6e 20 74 68 65 20 69 6e 74 65 67 65 72 20 74 | mEnum</a>.-.obtain.the.integer.t |
| 78ba0 | 61 67 20 76 61 6c 75 65 20 6f 66 20 61 6e 20 65 6e 75 6d 20 6f 72 20 74 61 67 67 65 64 20 75 6e | ag.value.of.an.enum.or.tagged.un |
| 78bc0 | 69 6f 6e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 | ion</li>...........<li><a.href=" |
| 78be0 | 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 3c 2f 61 3e | #intFromError">@intFromError</a> |
| 78c00 | 20 2d 20 6f 62 74 61 69 6e 20 74 68 65 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 20 6f 66 20 61 | .-.obtain.the.integer.value.of.a |
| 78c20 | 6e 20 65 72 72 6f 72 20 63 6f 64 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | n.error.code</li>...........<li> |
| 78c40 | 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 22 3e 40 69 6e 74 46 72 6f 6d | <a.href="#intFromFloat">@intFrom |
| 78c60 | 46 6c 6f 61 74 3c 2f 61 3e 20 2d 20 6f 62 74 61 69 6e 20 74 68 65 20 69 6e 74 65 67 65 72 20 70 | Float</a>.-.obtain.the.integer.p |
| 78c80 | 61 72 74 20 6f 66 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 | art.of.a.float.value</li>....... |
| 78ca0 | 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 50 74 72 22 3e 40 69 | ....<li><a.href="#intFromPtr">@i |
| 78cc0 | 6e 74 46 72 6f 6d 50 74 72 3c 2f 61 3e 20 2d 20 6f 62 74 61 69 6e 20 74 68 65 20 61 64 64 72 65 | ntFromPtr</a>.-.obtain.the.addre |
| 78ce0 | 73 73 20 6f 66 20 61 20 70 6f 69 6e 74 65 72 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | ss.of.a.pointer</li>...........< |
| 78d00 | 6c 69 3e 3c 61 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 | li><a.href="#ptrFromInt">@ptrFro |
| 78d20 | 6d 49 6e 74 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 61 6e 20 61 64 64 72 65 73 73 20 74 6f | mInt</a>.-.convert.an.address.to |
| 78d40 | 20 61 20 70 6f 69 6e 74 65 72 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | .a.pointer</li>...........<li><a |
| 78d60 | 20 68 72 65 66 3d 22 23 70 74 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 74 3c 2f 61 3e 20 2d 20 | .href="#ptrCast">@ptrCast</a>.-. |
| 78d80 | 63 6f 6e 76 65 72 74 20 62 65 74 77 65 65 6e 20 70 6f 69 6e 74 65 72 20 74 79 70 65 73 3c 2f 6c | convert.between.pointer.types</l |
| 78da0 | 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 74 72 75 6e 63 | i>...........<li><a.href="#trunc |
| 78dc0 | 61 74 65 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 62 65 74 | ate">@truncate</a>.-.convert.bet |
| 78de0 | 77 65 65 6e 20 69 6e 74 65 67 65 72 20 74 79 70 65 73 2c 20 63 68 6f 70 70 69 6e 67 20 6f 66 66 | ween.integer.types,.chopping.off |
| 78e00 | 20 62 69 74 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 0a 0a 20 | .bits</li>.......</ul>.......... |
| 78e20 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f | .....<h3.id="Peer-Type-Resolutio |
| 78e40 | 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c | n"><a.href="#toc-Peer-Type-Resol |
| 78e60 | 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>. |
| 78e80 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d | <a.class="hdr".href="#Peer-Type- |
| 78ea0 | 52 65 73 6f 6c 75 74 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c | Resolution">..</a></h3>........< |
| 78ec0 | 70 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 20 6f 63 63 75 72 73 20 69 6e | p>Peer.Type.Resolution.occurs.in |
| 78ee0 | 20 74 68 65 73 65 20 70 6c 61 63 65 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | .these.places:</p>.......<ul>... |
| 78f00 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 69 74 | ......<li><a.href="#switch">swit |
| 78f20 | 63 68 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 20 20 20 20 | ch</a>.expressions</li>......... |
| 78f40 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 66 22 3e 69 66 3c 2f 61 3e 20 65 78 70 72 65 73 73 | <li><a.href="#if">if</a>.express |
| 78f60 | 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="# |
| 78f80 | 77 68 69 6c 65 22 3e 77 68 69 6c 65 3c 2f 61 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 3c 2f 6c 69 | while">while</a>.expressions</li |
| 78fa0 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 | >.........<li><a.href="#for">for |
| 78fc0 | 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 20 20 20 20 3c 6c | </a>.expressions</li>.........<l |
| 78fe0 | 69 3e 4d 75 6c 74 69 70 6c 65 20 62 72 65 61 6b 20 73 74 61 74 65 6d 65 6e 74 73 20 69 6e 20 61 | i>Multiple.break.statements.in.a |
| 79000 | 20 62 6c 6f 63 6b 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 6f 6d 65 20 3c 61 20 | .block</li>.........<li>Some.<a. |
| 79020 | 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 62 69 6e 61 72 | href="#Table-of-Operators">binar |
| 79040 | 79 20 6f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c | y.operations</a></li>.......</ul |
| 79060 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 6b 69 6e 64 20 6f 66 20 74 | >.......<p>.......This.kind.of.t |
| 79080 | 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 20 63 68 6f 6f 73 65 73 20 61 20 74 79 70 65 20 74 68 | ype.resolution.chooses.a.type.th |
| 790a0 | 61 74 20 61 6c 6c 20 70 65 65 72 20 74 79 70 65 73 20 63 61 6e 20 63 6f 65 72 63 65 20 69 6e 74 | at.all.peer.types.can.coerce.int |
| 790c0 | 6f 2e 20 48 65 72 65 20 61 72 65 0a 20 20 20 20 20 20 73 6f 6d 65 20 65 78 61 6d 70 6c 65 73 3a | o..Here.are.......some.examples: |
| 790e0 | 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 |
| 79100 | 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 |
| 79120 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 70 65 65 72 5f 74 79 70 65 5f 72 65 73 6f 6c 75 74 69 | s="file">test_peer_type_resoluti |
| 79140 | 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 3c | on.zig</cite></figcaption><pre>< |
| 79160 | 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< |
| 79180 | 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 |
| 791a0 | 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 |
| 791c0 | 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 |
| 791e0 | 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< |
| 79200 | 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 |
| 79220 | 63 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ct;.<span.class="tok-kw">const</ |
| 79240 | 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 73 74 64 2e 6d 65 6d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | span>.mem.=.std.mem;..<span.clas |
| 79260 | 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 |
| 79280 | 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. |
| 792a0 | 69 6e 74 20 77 69 64 65 6e 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | int.widening"</span>.{..... |
| 792c0 | 3c 73 70 61 6e 20 63 6c 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 |
| 792e0 | 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 38 3c 2f | >.a:.<span.class="tok-type">i8</ |
| 79300 | 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" |
| 79320 | 3e 31 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >12</span>;.....<span.class="tok |
| 79340 | 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 |
| 79360 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | ="tok-type">i16</span>.=.<span.c |
| 79380 | 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 3b 0a 20 20 20 | lass="tok-number">34</span>;.... |
| 793a0 | 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 |
| 793c0 | 6e 3e 20 63 20 3d 20 61 20 2b 20 62 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n>.c.=.a.+.b;.....<span.class="t |
| 793e0 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 63 20 3d 3d 20 3c 73 | ok-kw">try</span>.expect(c.==.<s |
| 79400 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 36 3c 2f 73 70 61 6e 3e | pan.class="tok-number">46</span> |
| 79420 | 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< |
| 79440 | 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 |
| 79460 | 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 63 29 20 3d 3d 20 3c 73 70 | uiltin">@TypeOf</span>(c).==.<sp |
| 79480 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 31 36 3c 2f 73 70 61 6e 3e 29 3b | an.class="tok-type">i16</span>); |
| 794a0 | 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 |
| 794c0 | 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">" |
| 794e0 | 3b 70 65 65 72 20 72 65 73 6f 6c 76 65 20 61 72 72 61 79 73 20 6f 66 20 64 69 66 66 65 72 65 6e | ;peer.resolve.arrays.of.differen |
| 79500 | 74 20 73 69 7a 65 20 74 6f 20 63 6f 6e 73 74 20 73 6c 69 63 65 26 71 75 6f 74 3b 3c 2f 73 70 61 | t.size.to.const.slice"</spa |
| 79520 | 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 |
| 79540 | 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 6e 20 63 6c | y</span>.expect(mem.eql(<span.cl |
| 79560 | 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 6c 54 6f | ass="tok-type">u8</span>,.boolTo |
| 79580 | 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 75 65 3c | Str(<span.class="tok-null">true< |
| 795a0 | 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 22 3e 26 | /span>),.<span.class="tok-str">& |
| 795c0 | 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 20 3c 73 | quot;true"</span>));.....<s |
| 795e0 | 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 |
| 79600 | 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | pect(mem.eql(<span.class="tok-ty |
| 79620 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 6f 6f 6c 54 6f 53 74 72 28 3c 73 70 61 6e 20 63 | pe">u8</span>,.boolToStr(<span.c |
| 79640 | 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 2c 20 3c | lass="tok-null">false</span>),.< |
| 79660 | 73 70 61 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 61 6c 73 65 | span.class="tok-str">"false |
| 79680 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | "</span>));.....<span.class |
| 796a0 | 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 |
| 796c0 | 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 74 | ="tok-kw">comptime</span>.expect |
| 796e0 | 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | (mem.eql(<span.class="tok-type"> |
| 79700 | 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 73 | u8</span>,.boolToStr(<span.class |
| 79720 | 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 20 | ="tok-null">true</span>),.<span. |
| 79740 | 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 3b | class="tok-str">"true" |
| 79760 | 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- |
| 79780 | 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- |
| 797a0 | 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 6d 65 6d 2e 65 | kw">comptime</span>.expect(mem.e |
| 797c0 | 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 |
| 797e0 | 61 6e 3e 2c 20 62 6f 6f 6c 54 6f 53 74 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | an>,.boolToStr(<span.class="tok- |
| 79800 | 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | null">false</span>),.<span.class |
| 79820 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 61 6c 73 65 26 71 75 6f 74 3b 3c 2f 73 70 | ="tok-str">"false"</sp |
| 79840 | 61 6e 3e 29 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e | an>));.}.<span.class="tok-kw">fn |
| 79860 | 3c 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 6f 6f | </span>.<span.class="tok-fn">boo |
| 79880 | 6c 54 6f 53 74 72 3c 2f 73 70 61 6e 3e 28 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | lToStr</span>(b:.<span.class="to |
| 798a0 | 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 | k-type">bool</span>).[]<span.cla |
| 798c0 | 73 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 |
| 798e0 | 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 20 | lass="tok-type">u8</span>.{..... |
| 79900 | 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 |
| 79920 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e | n>.<span.class="tok-kw">if</span |
| 79940 | 3e 20 28 62 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | >.(b).<span.class="tok-str">&quo |
| 79960 | 74 3b 74 72 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t;true"</span>.<span.class= |
| 79980 | 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 73 73 | "tok-kw">else</span>.<span.class |
| 799a0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 61 6c 73 65 26 71 75 6f 74 3b 3c 2f 73 70 | ="tok-str">"false"</sp |
| 799c0 | 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 74 65 73 | an>;.}..<span.class="tok-kw">tes |
| 799e0 | 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">& |
| 79a00 | 71 75 6f 74 3b 70 65 65 72 20 72 65 73 6f 6c 76 65 20 61 72 72 61 79 20 61 6e 64 20 63 6f 6e 73 | quot;peer.resolve.array.and.cons |
| 79a20 | 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 |
| 79a40 | 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 74 65 73 74 50 | .class="tok-kw">try</span>.testP |
| 79a60 | 65 65 72 52 65 73 6f 6c 76 65 41 72 72 61 79 43 6f 6e 73 74 53 6c 69 63 65 28 3c 73 70 61 6e 20 | eerResolveArrayConstSlice(<span. |
| 79a80 | 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>);.. |
| 79aa0 | 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 |
| 79ac0 | 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 |
| 79ae0 | 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 79 43 6f 6e 73 | </span>.testPeerResolveArrayCons |
| 79b00 | 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 6c 22 3e 74 72 | tSlice(<span.class="tok-null">tr |
| 79b20 | 75 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ue</span>);.}.<span.class="tok-k |
| 79b40 | 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 |
| 79b60 | 22 3e 74 65 73 74 50 65 65 72 52 65 73 6f 6c 76 65 41 72 72 61 79 43 6f 6e 73 74 53 6c 69 63 65 | ">testPeerResolveArrayConstSlice |
| 79b80 | 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 |
| 79ba0 | 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">bool</span>).!<span.class="tok |
| 79bc0 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | -type">void</span>.{.....<span.c |
| 79be0 | 6c 61 73 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 | lass="tok-kw">const</span>.value |
| 79c00 | 31 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 | 1.=.<span.class="tok-kw">if</spa |
| 79c20 | 6e 3e 20 28 62 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | n>.(b).<span.class="tok-str">&qu |
| 79c40 | 6f 74 3b 61 6f 65 75 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ot;aoeu"</span>.<span.class |
| 79c60 | 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 73 | ="tok-kw">else</span>.<span.clas |
| 79c80 | 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 5b 5d 3c 73 70 | s="tok-builtin">@as</span>([]<sp |
| 79ca0 | 61 6e 20 63 6c 61 73 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>.< |
| 79cc0 | 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>, |
| 79ce0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7a 7a 26 | .<span.class="tok-str">"zz& |
| 79d00 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | quot;</span>);.....<span.class=" |
| 79d20 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 32 20 3d 20 3c 73 | tok-kw">const</span>.value2.=.<s |
| 79d40 | 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 62 29 | pan.class="tok-kw">if</span>.(b) |
| 79d60 | 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</ |
| 79d80 | 73 70 61 6e 3e 28 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | span>([]<span.class="tok-kw">con |
| 79da0 | 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" |
| 79dc0 | 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 73 74 72 | >u8</span>,.<span.class="tok-str |
| 79de0 | 22 3e 26 71 75 6f 74 3b 7a 7a 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 | ">"zz"</span>).<span.c |
| 79e00 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | lass="tok-kw">else</span>.<span. |
| 79e20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 6f 65 75 26 71 75 6f 74 3b | class="tok-str">"aoeu" |
| 79e40 | 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 |
| 79e60 | 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 |
| 79e80 | 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 |
| 79ea0 | 6c 75 65 31 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | lue1,.<span.class="tok-str">&quo |
| 79ec0 | 74 3b 61 6f 65 75 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e | t;aoeu"</span>));.....<span |
| 79ee0 | 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 |
| 79f00 | 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" |
| 79f20 | 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 32 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >u8</span>,.value2,.<span.class= |
| 79f40 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7a 7a 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | "tok-str">"zz"</span>) |
| 79f60 | 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< |
| 79f80 | 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 |
| 79fa0 | 6f 74 3b 70 65 65 72 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 3f 54 20 61 6e 64 20 | ot;peer.type.resolution:.?T.and. |
| 79fc0 | 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 |
| 79fe0 | 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 72 | ="tok-kw">try</span>.expect(peer |
| 7a000 | 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 73 73 3d 22 74 | TypeTAndOptionalT(<span.class="t |
| 7a020 | 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 6c 61 73 | ok-null">true</span>,.<span.clas |
| 7a040 | 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>).?.==. |
| 7a060 | 3c 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 |
| 7a080 | 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 |
| 7a0a0 | 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 65 65 72 54 79 70 65 54 41 6e 64 4f 70 74 69 6f | </span>.expect(peerTypeTAndOptio |
| 7a0c0 | 6e 61 6c 54 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 | nalT(<span.class="tok-null">fals |
| 7a0e0 | 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 | e</span>,.<span.class="tok-null" |
| 7a100 | 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >false</span>).?.==.<span.class= |
| 7a120 | 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 3c 73 70 61 | "tok-number">3</span>);.....<spa |
| 7a140 | 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> |
| 7a160 | 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"> |
| 7a180 | 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 65 65 72 54 79 70 65 54 41 6e 64 4f 70 | try</span>.expect(peerTypeTAndOp |
| 7a1a0 | 74 69 6f 6e 61 6c 54 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 | tionalT(<span.class="tok-null">t |
| 7a1c0 | 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | rue</span>,.<span.class="tok-nul |
| 7a1e0 | 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | l">false</span>).?.==.<span.clas |
| 7a200 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 | s="tok-number">0</span>);....... |
| 7a220 | 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 |
| 7a240 | 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 61 6c 54 28 3c | >.expect(peerTypeTAndOptionalT(< |
| 7a260 | 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 |
| 7a280 | 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 61 6c 73 65 | n>,.<span.class="tok-null">false |
| 7a2a0 | 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 6f 6b 2d 6e | </span>).?.==.<span.class="tok-n |
| 7a2c0 | 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 0a 3c 73 70 61 6e 20 | umber">3</span>);.....}.}.<span. |
| 7a2e0 | 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 |
| 7a300 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 65 72 54 79 70 65 54 41 6e 64 4f 70 74 69 6f 6e | lass="tok-fn">peerTypeTAndOption |
| 7a320 | 61 6c 54 3c 2f 73 70 61 6e 3e 28 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | alT</span>(c:.<span.class="tok-t |
| 7a340 | 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 73 | ype">bool</span>,.b:.<span.class |
| 7a360 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3f 3c 73 70 61 6e 20 | ="tok-type">bool</span>).?<span. |
| 7a380 | 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 0a | class="tok-type">usize</span>.{. |
| 7a3a0 | 20 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 |
| 7a3c0 | 6e 3e 20 28 63 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n>.(c).{.........<span.class="to |
| 7a3e0 | 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= |
| 7a400 | 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 61 | "tok-kw">if</span>.(b).<span.cla |
| 7a420 | 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 61 6e 20 | ss="tok-null">null</span>.<span. |
| 7a440 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | class="tok-kw">else</span>.<span |
| 7a460 | 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>( |
| 7a480 | 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 |
| 7a4a0 | 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 3c | an>,.<span.class="tok-number">0< |
| 7a4c0 | 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 73 73 3d | /span>);.....}......<span.class= |
| 7a4e0 | 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 |
| 7a500 | 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 |
| 7a520 | 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>, |
| 7a540 | 20 3c 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 |
| 7a560 | 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 |
| 7a580 | 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">& |
| 7a5a0 | 71 75 6f 74 3b 70 65 65 72 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 2a 5b 30 5d 75 | quot;peer.type.resolution:.*[0]u |
| 7a5c0 | 38 20 61 6e 64 20 5b 5d 63 6f 6e 73 74 20 75 38 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | 8.and.[]const.u8"</span>.{. |
| 7a5e0 | 20 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 |
| 7a600 | 61 6e 3e 20 65 78 70 65 63 74 28 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 | an>.expect(peerTypeEmptyArrayAnd |
| 7a620 | 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 | Slice(<span.class="tok-null">tru |
| 7a640 | 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | e</span>,.<span.class="tok-str"> |
| 7a660 | 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6c 65 6e 20 3d 3d 20 3c 73 | "hi"</span>).len.==.<s |
| 7a680 | 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>) |
| 7a6a0 | 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</ |
| 7a6c0 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 | span>.expect(peerTypeEmptyArrayA |
| 7a6e0 | 6e 64 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 | ndSlice(<span.class="tok-null">f |
| 7a700 | 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | alse</span>,.<span.class="tok-st |
| 7a720 | 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6c 65 6e 20 3d 3d | r">"hi"</span>).len.== |
| 7a740 | 20 3c 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 |
| 7a760 | 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 6f | n>);.....<span.class="tok-kw">co |
| 7a780 | 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | mptime</span>.{.........<span.cl |
| 7a7a0 | 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 |
| 7a7c0 | 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. |
| 7a7e0 | 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 |
| 7a800 | 70 61 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 | pan.class="tok-str">"hi&quo |
| 7a820 | 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 74 | t;</span>).len.==.<span.class="t |
| 7a840 | 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 3c 73 | ok-number">0</span>);.........<s |
| 7a860 | 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 |
| 7a880 | 70 65 63 74 28 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 28 | pect(peerTypeEmptyArrayAndSlice( |
| 7a8a0 | 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 |
| 7a8c0 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | an>,.<span.class="tok-str">" |
| 7a8e0 | 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 | ;hi"</span>).len.==.<span.c |
| 7a900 | 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 20 20 20 | lass="tok-number">1</span>);.... |
| 7a920 | 20 7d 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 | .}.}.<span.class="tok-kw">fn</sp |
| 7a940 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 65 72 54 79 70 | an>.<span.class="tok-fn">peerTyp |
| 7a960 | 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 | eEmptyArrayAndSlice</span>(a:.<s |
| 7a980 | 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> |
| 7a9a0 | 2c 20 73 6c 69 63 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ,.slice:.[]<span.class="tok-kw"> |
| 7a9c0 | 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 |
| 7a9e0 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pe">u8</span>).[]<span.class="to |
| 7aa00 | 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=" |
| 7aa20 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | tok-type">u8</span>.{.....<span. |
| 7aa40 | 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 29 20 7b 0a 20 | class="tok-kw">if</span>.(a).{.. |
| 7aa60 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 | .......<span.class="tok-kw">retu |
| 7aa80 | 72 6e 3c 2f 73 70 61 6e 3e 20 26 61 6d 70 3b 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | rn</span>.&[_]<span.class="t |
| 7aaa0 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 7d 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 | ok-type">u8</span>{};.....}..... |
| 7aac0 | 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 |
| 7aae0 | 61 6e 3e 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | an>.slice[<span.class="tok-numbe |
| 7ab00 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | r">0</span>..<span.class="tok-nu |
| 7ab20 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | mber">1</span>];.}.<span.class=" |
| 7ab40 | 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= |
| 7ab60 | 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 65 73 6f 6c 75 | "tok-str">"peer.type.resolu |
| 7ab80 | 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 61 6e | tion:.*[0]u8,.[]const.u8,.and.an |
| 7aba0 | 79 65 72 72 6f 72 21 5b 5d 75 38 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 7b | yerror![]u8"</span>.{.....{ |
| 7abc0 | 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 76 61 | .........<span.class="tok-kw">va |
| 7abe0 | 72 3c 2f 73 70 61 6e 3e 20 64 61 74 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | r</span>.data.=.<span.class="tok |
| 7ac00 | 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 2e 2a 3b 0a 20 | -str">"hi"</span>.*;.. |
| 7ac20 | 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 |
| 7ac40 | 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 64 61 74 61 5b 3c 73 70 61 6e 20 63 6c 61 73 | t</span>.slice.=.data[<span.clas |
| 7ac60 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 3b 0a 20 20 20 20 | s="tok-number">0</span>..];..... |
| 7ac80 | 20 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 |
| 7aca0 | 61 6e 3e 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | an>.expect((<span.class="tok-kw" |
| 7acc0 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e | >try</span>.peerTypeEmptyArrayAn |
| 7ace0 | 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | dSliceAndError(<span.class="tok- |
| 7ad00 | 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 65 29 29 2e 6c 65 6e 20 3d | null">true</span>,.slice)).len.= |
| 7ad20 | 3d 20 3c 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 |
| 7ad40 | 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 6b | an>);.........<span.class="tok-k |
| 7ad60 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e 20 63 6c 61 73 | w">try</span>.expect((<span.clas |
| 7ad80 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 65 65 72 54 79 70 65 45 6d | s="tok-kw">try</span>.peerTypeEm |
| 7ada0 | 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 28 3c 73 70 61 6e 20 63 | ptyArrayAndSliceAndError(<span.c |
| 7adc0 | 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 73 6c | lass="tok-null">false</span>,.sl |
| 7ade0 | 69 63 65 29 29 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ice)).len.==.<span.class="tok-nu |
| 7ae00 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e | mber">1</span>);.....}.....<span |
| 7ae20 | 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>. |
| 7ae40 | 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 76 | {.........<span.class="tok-kw">v |
| 7ae60 | 61 72 3c 2f 73 70 61 6e 3e 20 64 61 74 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ar</span>.data.=.<span.class="to |
| 7ae80 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2e 2a 3b 0a | k-str">"hi"</span>.*;. |
| 7aea0 | 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 |
| 7aec0 | 73 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 64 61 74 61 5b 3c 73 70 61 6e 20 63 6c 61 | st</span>.slice.=.data[<span.cla |
| 7aee0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 3b 0a 20 20 20 | ss="tok-number">0</span>..];.... |
| 7af00 | 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 |
| 7af20 | 70 61 6e 3e 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | pan>.expect((<span.class="tok-kw |
| 7af40 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 | ">try</span>.peerTypeEmptyArrayA |
| 7af60 | 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ndSliceAndError(<span.class="tok |
| 7af80 | 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 65 29 29 2e 6c 65 6e 20 | -null">true</span>,.slice)).len. |
| 7afa0 | 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 |
| 7afc0 | 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- |
| 7afe0 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e 20 63 6c 61 | kw">try</span>.expect((<span.cla |
| 7b000 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 65 65 72 54 79 70 65 45 | ss="tok-kw">try</span>.peerTypeE |
| 7b020 | 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 28 3c 73 70 61 6e 20 | mptyArrayAndSliceAndError(<span. |
| 7b040 | 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 73 | class="tok-null">false</span>,.s |
| 7b060 | 6c 69 63 65 29 29 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | lice)).len.==.<span.class="tok-n |
| 7b080 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 0a 3c 73 70 61 6e 20 | umber">1</span>);.....}.}.<span. |
| 7b0a0 | 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 |
| 7b0c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 | lass="tok-fn">peerTypeEmptyArray |
| 7b0e0 | 41 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e | AndSliceAndError</span>(a:.<span |
| 7b100 | 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 20 73 | .class="tok-type">bool</span>,.s |
| 7b120 | 6c 69 63 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | lice:.[]<span.class="tok-type">u |
| 7b140 | 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 22 | 8</span>).<span.class="tok-type" |
| 7b160 | 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 22 | >anyerror</span>![]<span.class=" |
| 7b180 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | tok-type">u8</span>.{.....<span. |
| 7b1a0 | 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 29 20 7b 0a 20 | class="tok-kw">if</span>.(a).{.. |
| 7b1c0 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 | .......<span.class="tok-kw">retu |
| 7b1e0 | 72 6e 3c 2f 73 70 61 6e 3e 20 26 61 6d 70 3b 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | rn</span>.&[_]<span.class="t |
| 7b200 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 7d 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 | ok-type">u8</span>{};.....}..... |
| 7b220 | 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 |
| 7b240 | 61 6e 3e 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | an>.slice[<span.class="tok-numbe |
| 7b260 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | r">0</span>..<span.class="tok-nu |
| 7b280 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | mber">1</span>];.}..<span.class= |
| 7b2a0 | 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 |
| 7b2c0 | 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 65 73 6f 6c | ="tok-str">"peer.type.resol |
| 7b2e0 | 75 74 69 6f 6e 3a 20 2a 63 6f 6e 73 74 20 54 20 61 6e 64 20 3f 2a 54 26 71 75 6f 74 3b 3c 2f 73 | ution:.*const.T.and.?*T"</s |
| 7b300 | 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"> |
| 7b320 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | const</span>.a:.*<span.class="to |
| 7b340 | 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=" |
| 7b360 | 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | tok-type">usize</span>.=.<span.c |
| 7b380 | 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</ |
| 7b3a0 | 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 |
| 7b3c0 | 78 31 32 33 34 35 36 37 38 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | x123456780</span>);.....<span.cl |
| 7b3e0 | 61 73 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 3f 2a 3c | ass="tok-kw">const</span>.b:.?*< |
| 7b400 | 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 |
| 7b420 | 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 6e 22 3e 40 | n>.=.<span.class="tok-builtin">@ |
| 7b440 | 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 61 73 73 3d 22 74 | ptrFromInt</span>(<span.class="t |
| 7b460 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 33 34 35 36 37 38 30 3c 2f 73 70 61 6e 3e 29 3b 0a | ok-number">0x123456780</span>);. |
| 7b480 | 20 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 |
| 7b4a0 | 61 6e 3e 20 65 78 70 65 63 74 28 61 20 3d 3d 20 62 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | an>.expect(a.==.b);.....<span.cl |
| 7b4c0 | 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 62 | ass="tok-kw">try</span>.expect(b |
| 7b4e0 | 20 3d 3d 20 61 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .==.a);.}..<span.class="tok-kw"> |
| 7b500 | 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 |
| 7b520 | 22 3e 26 71 75 6f 74 3b 70 65 65 72 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 65 72 | ">"peer.type.resolution:.er |
| 7b540 | 72 6f 72 20 75 6e 69 6f 6e 20 73 77 69 74 63 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | ror.union.switch"</span>.{. |
| 7b560 | 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">// |
| 7b580 | 20 54 68 65 20 6e 6f 6e 2d 65 72 72 6f 72 20 61 6e 64 20 65 72 72 6f 72 20 63 61 73 65 73 20 61 | .The.non-error.and.error.cases.a |
| 7b5a0 | 72 65 20 6f 6e 6c 79 20 70 65 65 72 73 20 69 66 20 74 68 65 20 65 72 72 6f 72 20 63 61 73 65 20 | re.only.peers.if.the.error.case. |
| 7b5c0 | 69 73 20 6a 75 73 74 20 61 20 73 77 69 74 63 68 20 65 78 70 72 65 73 73 69 6f 6e 3b 3c 2f 73 70 | is.just.a.switch.expression;</sp |
| 7b5e0 | 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 |
| 7b600 | 22 3e 2f 2f 20 74 68 65 20 70 61 74 74 65 72 6e 20 60 69 66 20 28 78 29 20 7b 2e 2e 2e 7d 20 65 | ">//.the.pattern.`if.(x).{...}.e |
| 7b620 | 6c 73 65 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 2e | lse.|err|.blk:.{.switch.(err).{. |
| 7b640 | 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 3c 2f 73 70 | ..}.}`.does.not.consider.the</sp |
| 7b660 | 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 |
| 7b680 | 22 3e 2f 2f 20 6e 6f 6e 2d 65 72 72 6f 72 20 61 6e 64 20 65 72 72 6f 72 20 63 61 73 65 20 74 6f | ">//.non-error.and.error.case.to |
| 7b6a0 | 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 20 63 6c 61 73 | .be.peers.</span>.....<span.clas |
| 7b6c0 | 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 63 | s="tok-kw">var</span>.a:.<span.c |
| 7b6e0 | 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 20 41 2c 20 42 | lass="tok-kw">error</span>{.A,.B |
| 7b700 | 2c 20 43 20 7d 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 | ,.C.}!<span.class="tok-type">u32 |
| 7b720 | 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 |
| 7b740 | 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 61 3b 0a 20 20 20 | r">0</span>;....._.=.&a;.... |
| 7b760 | 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 |
| 7b780 | 6e 3e 20 62 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 | n>.b.=.<span.class="tok-kw">if</ |
| 7b7a0 | 73 70 61 6e 3e 20 28 61 29 20 7c 78 7c 0a 20 20 20 20 20 20 20 20 78 20 2b 20 3c 73 70 61 6e 20 | span>.(a).|x|.........x.+.<span. |
| 7b7c0 | 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 0a 20 20 20 20 | class="tok-number">3</span>..... |
| 7b7e0 | 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> |
| 7b800 | 20 7c 65 72 72 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 | .|err|.<span.class="tok-kw">swit |
| 7b820 | 63 68 3c 2f 73 70 61 6e 3e 20 28 65 72 72 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | ch</span>.(err).{.........<span. |
| 7b840 | 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 20 3d 26 | class="tok-kw">error</span>.A.=& |
| 7b860 | 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 30 3c 2f | gt;.<span.class="tok-number">0</ |
| 7b880 | 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- |
| 7b8a0 | 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 61 6e 20 63 | kw">error</span>.B.=>.<span.c |
| 7b8c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 | lass="tok-number">1</span>,..... |
| 7b8e0 | 20 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 | ....<span.class="tok-kw">error</ |
| 7b900 | 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 6f 6b 2d 6e | span>.C.=>.<span.class="tok-n |
| 7b920 | 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 20 3c 73 70 | ull">null</span>,.....};.....<sp |
| 7b940 | 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 |
| 7b960 | 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 |
| 7b980 | 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 62 29 20 3d 3d 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ypeOf</span>(b).==.?<span.class= |
| 7b9a0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 | "tok-type">u32</span>);......<sp |
| 7b9c0 | 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 6e 6f | an.class="tok-comment">//.The.no |
| 7b9e0 | 6e 2d 65 72 72 6f 72 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 | n-error.and.error.cases.are.only |
| 7ba00 | 20 70 65 65 72 73 20 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 | .peers.if.the.error.case.is.just |
| 7ba20 | 20 61 20 73 77 69 74 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 | .a.switch.expression;</span>.... |
| 7ba40 | 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 |
| 7ba60 | 65 20 70 61 74 74 65 72 6e 20 60 78 20 63 61 74 63 68 20 7c 65 72 72 7c 20 62 6c 6b 3a 20 7b 20 | e.pattern.`x.catch.|err|.blk:.{. |
| 7ba80 | 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 74 20 63 | switch.(err).{...}.}`.does.not.c |
| 7baa0 | 6f 6e 73 69 64 65 72 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 60 78 60 3c 2f 73 70 61 6e 3e | onsider.the.unwrapped.`x`</span> |
| 7bac0 | 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">/ |
| 7bae0 | 2f 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 | /.and.error.case.to.be.peers.</s |
| 7bb00 | 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 6f | pan>.....<span.class="tok-kw">co |
| 7bb20 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | nst</span>.c.=.a.<span.class="to |
| 7bb40 | 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 3c 73 70 61 6e 20 63 | k-kw">catch</span>.|err|.<span.c |
| 7bb60 | 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 |
| 7bb80 | 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" |
| 7bba0 | 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 |
| 7bbc0 | 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>,........ |
| 7bbe0 | 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 |
| 7bc00 | 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 |
| 7bc20 | 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 |
| 7bc40 | 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.=>. |
| 7bc60 | 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 |
| 7bc80 | 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- |
| 7bca0 | 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 |
| 7bcc0 | 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 63 | s="tok-builtin">@TypeOf</span>(c |
| 7bce0 | 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 |
| 7bd00 | 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 |
| 7bd20 | 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 |
| 7bd40 | 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 |
| 7bd60 | 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 65 65 72 5f 74 79 | amp>$.<kbd>zig.test.test_peer_ty |
| 7bd80 | 70 65 5f 72 65 73 6f 6c 75 74 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 38 20 74 65 73 74 | pe_resolution.zig</kbd>.1/8.test |
| 7bda0 | 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 65 72 20 | _peer_type_resolution.test.peer. |
| 7bdc0 | 72 65 73 6f 6c 76 65 20 69 6e 74 20 77 69 64 65 6e 69 6e 67 2e 2e 2e 4f 4b 0a 32 2f 38 20 74 65 | resolve.int.widening...OK.2/8.te |
| 7bde0 | 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 65 | st_peer_type_resolution.test.pee |
| 7be00 | 72 20 72 65 73 6f 6c 76 65 20 61 72 72 61 79 73 20 6f 66 20 64 69 66 66 65 72 65 6e 74 20 73 69 | r.resolve.arrays.of.different.si |
| 7be20 | 7a 65 20 74 6f 20 63 6f 6e 73 74 20 73 6c 69 63 65 2e 2e 2e 4f 4b 0a 33 2f 38 20 74 65 73 74 5f | ze.to.const.slice...OK.3/8.test_ |
| 7be40 | 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 65 72 20 72 | peer_type_resolution.test.peer.r |
| 7be60 | 65 73 6f 6c 76 65 20 61 72 72 61 79 20 61 6e 64 20 63 6f 6e 73 74 20 73 6c 69 63 65 2e 2e 2e 4f | esolve.array.and.const.slice...O |
| 7be80 | 4b 0a 34 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.4/8.test_peer_type_resolution. |
| 7bea0 | 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 3f 54 20 61 6e | test.peer.type.resolution:.?T.an |
| 7bec0 | 64 20 54 2e 2e 2e 4f 4b 0a 35 2f 38 20 74 65 73 74 5f 70 65 65 72 5f 74 79 70 65 5f 72 65 73 6f | d.T...OK.5/8.test_peer_type_reso |
| 7bee0 | 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 6c 75 74 69 6f 6e | lution.test.peer.type.resolution |
| 7bf00 | 3a 20 2a 5b 30 5d 75 38 20 61 6e 64 20 5b 5d 63 6f 6e 73 74 20 75 38 2e 2e 2e 4f 4b 0a 36 2f 38 | :.*[0]u8.and.[]const.u8...OK.6/8 |
| 7bf20 | 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 74 65 73 74 2e | .test_peer_type_resolution.test. |
| 7bf40 | 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 5b 5d | peer.type.resolution:.*[0]u8,.[] |
| 7bf60 | 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 2e 2e 2e 4f 4b | const.u8,.and.anyerror![]u8...OK |
| 7bf80 | 0a 37 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 74 | .7/8.test_peer_type_resolution.t |
| 7bfa0 | 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 2a 63 6f 6e 73 74 | est.peer.type.resolution:.*const |
| 7bfc0 | 20 54 20 61 6e 64 20 3f 2a 54 2e 2e 2e 4f 4b 0a 38 2f 38 20 74 65 73 74 5f 70 65 65 72 5f 74 79 | .T.and.?*T...OK.8/8.test_peer_ty |
| 7bfe0 | 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 72 65 73 | pe_resolution.test.peer.type.res |
| 7c000 | 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 63 68 2e 2e 2e 4f 4b | olution:.error.union.switch...OK |
| 7c020 | 0a 41 6c 6c 20 38 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.8.tests.passed..</samp></pr |
| 7c040 | 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 20 20 20 | e></figure>..................... |
| 7c060 | 20 20 3c 68 32 20 69 64 3d 22 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e 3c 61 20 68 72 65 | ..<h2.id="Zero-Bit-Types"><a.hre |
| 7c080 | 66 3d 22 23 74 6f 63 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e 5a 65 72 6f 20 42 69 74 | f="#toc-Zero-Bit-Types">Zero.Bit |
| 7c0a0 | 20 54 79 70 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 | .Types</a>.<a.class="hdr".href=" |
| 7c0c0 | 23 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | #Zero-Bit-Types">..</a></h2>.... |
| 7c0e0 | 20 20 20 20 3c 70 3e 46 6f 72 20 73 6f 6d 65 20 74 79 70 65 73 2c 20 3c 61 20 68 72 65 66 3d 22 | ....<p>For.some.types,.<a.href=" |
| 7c100 | 23 73 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 20 69 73 20 30 3a 3c 2f 70 3e 0a 20 | #sizeOf">@sizeOf</a>.is.0:</p>.. |
| 7c120 | 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 61 20 68 72 65 66 3d | .....<ul>...........<li><a.href= |
| 7c140 | 22 23 76 6f 69 64 22 3e 76 6f 69 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | "#void">void</a></li>........... |
| 7c160 | 3c 6c 69 3e 54 68 65 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 | <li>The.<a.href="#Integers">Inte |
| 7c180 | 67 65 72 73 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 6b 2d | gers</a>.<code><span.class="tok- |
| 7c1a0 | 74 79 70 65 22 3e 75 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 | type">u0</span></code>.and.<code |
| 7c1c0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 30 3c 2f 73 70 61 6e | ><span.class="tok-type">i0</span |
| 7c1e0 | 3e 3c 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ></code>.</li>...........<li><a. |
| 7c200 | 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 | href="#Arrays">Arrays</a>.and.<a |
| 7c220 | 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 77 69 74 | .href="#Vectors">Vectors</a>.wit |
| 7c240 | 68 20 6c 65 6e 20 30 2c 20 6f 72 20 77 69 74 68 20 61 6e 20 65 6c 65 6d 65 6e 74 20 74 79 70 65 | h.len.0,.or.with.an.element.type |
| 7c260 | 20 74 68 61 74 20 69 73 20 61 20 7a 65 72 6f 20 62 69 74 20 74 79 70 65 2e 3c 2f 6c 69 3e 0a 20 | .that.is.a.zero.bit.type.</li>.. |
| 7c280 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6e 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e | .........<li>An.<a.href="#enum"> |
| 7c2a0 | 65 6e 75 6d 3c 2f 61 3e 20 77 69 74 68 20 6f 6e 6c 79 20 31 20 74 61 67 2e 3c 2f 6c 69 3e 0a 20 | enum</a>.with.only.1.tag.</li>.. |
| 7c2c0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 | .........<li>A.<a.href="#struct" |
| 7c2e0 | 3e 73 74 72 75 63 74 3c 2f 61 3e 20 77 69 74 68 20 61 6c 6c 20 66 69 65 6c 64 73 20 62 65 69 6e | >struct</a>.with.all.fields.bein |
| 7c300 | 67 20 7a 65 72 6f 20 62 69 74 20 74 79 70 65 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | g.zero.bit.types.</li>.......... |
| 7c320 | 20 3c 6c 69 3e 41 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 | .<li>A.<a.href="#union">union</a |
| 7c340 | 3e 20 77 69 74 68 20 6f 6e 6c 79 20 31 20 66 69 65 6c 64 20 77 68 69 63 68 20 69 73 20 61 20 7a | >.with.only.1.field.which.is.a.z |
| 7c360 | 65 72 6f 20 62 69 74 20 74 79 70 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 | ero.bit.type.</li>.......</ul>.. |
| 7c380 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 73 65 20 74 79 70 65 73 20 63 61 6e 20 6f | .....<p>.......These.types.can.o |
| 7c3a0 | 6e 6c 79 20 65 76 65 72 20 68 61 76 65 20 6f 6e 65 20 70 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 | nly.ever.have.one.possible.value |
| 7c3c0 | 2c 20 61 6e 64 20 74 68 75 73 0a 20 20 20 20 20 20 72 65 71 75 69 72 65 20 30 20 62 69 74 73 20 | ,.and.thus.......require.0.bits. |
| 7c3e0 | 74 6f 20 72 65 70 72 65 73 65 6e 74 2e 20 43 6f 64 65 20 74 68 61 74 20 6d 61 6b 65 73 20 75 73 | to.represent..Code.that.makes.us |
| 7c400 | 65 20 6f 66 20 74 68 65 73 65 20 74 79 70 65 73 20 69 73 0a 20 20 20 20 20 20 6e 6f 74 20 69 6e | e.of.these.types.is.......not.in |
| 7c420 | 63 6c 75 64 65 64 20 69 6e 20 74 68 65 20 66 69 6e 61 6c 20 67 65 6e 65 72 61 74 65 64 20 63 6f | cluded.in.the.final.generated.co |
| 7c440 | 64 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 | de:.......</p>.......<figure><fi |
| 7c460 | 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 |
| 7c480 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 7a 65 72 6f 5f 62 69 74 5f 74 79 70 65 73 2e 7a 69 67 3c 2f | lass="file">zero_bit_types.zig</ |
| 7c4a0 | 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 |
| 7c4c0 | 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 20 | an.class="tok-kw">export</span>. |
| 7c4e0 | 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>.< |
| 7c500 | 73 70 61 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 | span.class="tok-fn">entry</span> |
| 7c520 | 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</ |
| 7c540 | 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" |
| 7c560 | 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- |
| 7c580 | 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 3c 73 70 61 | type">void</span>.=.{};.....<spa |
| 7c5a0 | 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 3c | n.class="tok-kw">var</span>.y:.< |
| 7c5c0 | 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 |
| 7c5e0 | 3e 20 3d 20 7b 7d 3b 0a 20 20 20 20 78 20 3d 20 79 3b 0a 20 20 20 20 79 20 3d 20 78 3b 0a 7d 3c | >.=.{};.....x.=.y;.....y.=.x;.}< |
| 7c600 | 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 70 3e | /code></pre></figure>........<p> |
| 7c620 | 57 68 65 6e 20 74 68 69 73 20 74 75 72 6e 73 20 69 6e 74 6f 20 6d 61 63 68 69 6e 65 20 63 6f 64 | When.this.turns.into.machine.cod |
| 7c640 | 65 2c 20 74 68 65 72 65 20 69 73 20 6e 6f 20 63 6f 64 65 20 67 65 6e 65 72 61 74 65 64 20 69 6e | e,.there.is.no.code.generated.in |
| 7c660 | 20 74 68 65 0a 20 20 20 20 20 20 62 6f 64 79 20 6f 66 20 3c 63 6f 64 65 3e 65 6e 74 72 79 3c 2f | .the.......body.of.<code>entry</ |
| 7c680 | 63 6f 64 65 3e 2c 20 65 76 65 6e 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 44 65 62 75 67 22 3e | code>,.even.in.<a.href="#Debug"> |
| 7c6a0 | 44 65 62 75 67 3c 2f 61 3e 20 6d 6f 64 65 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 6f 6e 20 | Debug</a>.mode..For.example,.on. |
| 7c6c0 | 78 38 36 5f 36 34 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 30 30 30 | x86_64:</p>.......<pre><code>000 |
| 7c6e0 | 30 30 30 30 30 30 30 30 30 30 30 31 30 20 26 6c 74 3b 65 6e 74 72 79 26 67 74 3b 3a 0a 20 20 31 | 0000000000010.<entry>:...1 |
| 7c700 | 30 3a 09 35 35 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 09 70 75 73 68 20 20 20 | 0:.55....................push... |
| 7c720 | 25 72 62 70 0a 20 20 31 31 3a 09 34 38 20 38 39 20 65 35 20 20 20 20 20 20 20 20 20 20 20 20 20 | %rbp...11:.48.89.e5............. |
| 7c740 | 09 6d 6f 76 20 20 20 20 25 72 73 70 2c 25 72 62 70 0a 20 20 31 34 3a 09 35 64 20 20 20 20 20 20 | .mov....%rsp,%rbp...14:.5d...... |
| 7c760 | 20 20 20 20 20 20 20 20 20 20 20 20 20 09 70 6f 70 20 20 20 20 25 72 62 70 0a 20 20 31 35 3a 09 | ..............pop....%rbp...15:. |
| 7c780 | 63 33 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 09 72 65 74 71 20 20 20 3c 2f 63 | c3....................retq...</c |
| 7c7a0 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 73 65 20 61 73 73 65 6d 62 | ode></pre>.......<p>These.assemb |
| 7c7c0 | 6c 79 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 20 64 6f 20 6e 6f 74 20 68 61 76 65 20 61 6e 79 20 | ly.instructions.do.not.have.any. |
| 7c7e0 | 63 6f 64 65 20 61 73 73 6f 63 69 61 74 65 64 20 77 69 74 68 20 74 68 65 20 76 6f 69 64 20 76 61 | code.associated.with.the.void.va |
| 7c800 | 6c 75 65 73 20 2d 0a 20 20 20 20 20 20 74 68 65 79 20 6f 6e 6c 79 20 70 65 72 66 6f 72 6d 20 74 | lues.-.......they.only.perform.t |
| 7c820 | 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 70 72 6f 6c 6f 67 75 65 20 61 6e 64 20 65 70 | he.function.call.prologue.and.ep |
| 7c840 | 69 6c 6f 67 75 65 2e 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 76 6f 69 64 22 | ilogue.</p>........<h3.id="void" |
| 7c860 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 76 6f 69 64 22 3e 76 6f 69 64 3c 2f 61 3e 20 3c 61 | ><a.href="#toc-void">void</a>.<a |
| 7c880 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 76 6f 69 64 22 3e c2 a7 3c 2f 61 3e | .class="hdr".href="#void">..</a> |
| 7c8a0 | 3c 2f 68 33 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 | </h3>........<p>.......<code><sp |
| 7c8c0 | 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>< |
| 7c8e0 | 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c 20 66 6f 72 20 69 6e 73 74 61 6e 74 | /code>.can.be.useful.for.instant |
| 7c900 | 69 61 74 69 6e 67 20 67 65 6e 65 72 69 63 20 74 79 70 65 73 2e 20 46 6f 72 20 65 78 61 6d 70 6c | iating.generic.types..For.exampl |
| 7c920 | 65 2c 20 67 69 76 65 6e 20 61 0a 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 4d 61 70 28 4b | e,.given.a...........<code>Map(K |
| 7c940 | 65 79 2c 20 56 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 2c 20 6f 6e 65 20 63 61 6e 20 70 61 73 73 20 | ey,.Value)</code>,.one.can.pass. |
| 7c960 | 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 6f 69 | <code><span.class="tok-type">voi |
| 7c980 | 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 6f 72 20 74 68 65 20 3c 63 6f 64 65 3e 56 61 | d</span></code>.for.the.<code>Va |
| 7c9a0 | 6c 75 65 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | lue</code>...................... |
| 7c9c0 | 20 74 79 70 65 20 74 6f 20 6d 61 6b 65 20 69 74 20 69 6e 74 6f 20 61 20 3c 63 6f 64 65 3e 53 65 | .type.to.make.it.into.a.<code>Se |
| 7c9e0 | 74 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 | t</code>:.......</p>.......<figu |
| 7ca00 | 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">< |
| 7ca20 | 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 76 6f 69 64 5f 69 6e 5f 68 | cite.class="file">test_void_in_h |
| 7ca40 | 61 73 68 6d 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 | ashmap.zig</cite></figcaption><p |
| 7ca60 | 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 |
| 7ca80 | 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 |
| 7caa0 | 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. |
| 7cac0 | 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"< |
| 7cae0 | 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 |
| 7cb00 | 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. |
| 7cb20 | 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 |
| 7cb40 | 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"> |
| 7cb60 | 26 71 75 6f 74 3b 74 75 72 6e 20 48 61 73 68 4d 61 70 20 69 6e 74 6f 20 61 20 73 65 74 20 77 69 | "turn.HashMap.into.a.set.wi |
| 7cb80 | 74 68 20 76 6f 69 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | th.void"</span>.{.....<span |
| 7cba0 | 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 61 70 20 3d | .class="tok-kw">var</span>.map.= |
| 7cbc0 | 20 73 74 64 2e 41 75 74 6f 48 61 73 68 4d 61 70 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .std.AutoHashMap(<span.class="to |
| 7cbe0 | 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 61 73 73 3d | k-type">i32</span>,.<span.class= |
| 7cc00 | 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 29 2e 69 6e 69 74 28 73 74 64 | "tok-type">void</span>).init(std |
| 7cc20 | 2e 74 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 61 74 6f 72 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | .testing.allocator);.....<span.c |
| 7cc40 | 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 6d 61 70 2e 64 | lass="tok-kw">defer</span>.map.d |
| 7cc60 | 65 69 6e 69 74 28 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | einit();......<span.class="tok-k |
| 7cc80 | 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 6e 20 63 6c 61 73 | w">try</span>.map.put(<span.clas |
| 7cca0 | 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 7b 7d 29 3b 0a 20 20 | s="tok-number">1</span>,.{});... |
| 7ccc0 | 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 |
| 7cce0 | 3e 20 6d 61 70 2e 70 75 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | >.map.put(<span.class="tok-numbe |
| 7cd00 | 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 7b 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | r">2</span>,.{});......<span.cla |
| 7cd20 | 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 6d 61 | ss="tok-kw">try</span>.expect(ma |
| 7cd40 | 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 6b 2d 6e 75 6d 62 | p.contains(<span.class="tok-numb |
| 7cd60 | 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | er">2</span>));.....<span.class= |
| 7cd80 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 21 6d 61 70 2e | "tok-kw">try</span>.expect(!map. |
| 7cda0 | 63 6f 6e 74 61 69 6e 73 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | contains(<span.class="tok-number |
| 7cdc0 | 22 3e 33 3c 2f 73 70 61 6e 3e 29 29 3b 0a 0a 20 20 20 20 5f 20 3d 20 6d 61 70 2e 72 65 6d 6f 76 | ">3</span>));......_.=.map.remov |
| 7cde0 | 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 32 3c 2f 73 70 | e(<span.class="tok-number">2</sp |
| 7ce00 | 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 |
| 7ce20 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 21 6d 61 70 2e 63 6f 6e 74 61 69 6e 73 28 3c | ry</span>.expect(!map.contains(< |
| 7ce40 | 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> |
| 7ce60 | 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 |
| 7ce80 | 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" |
| 7cea0 | 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>$. |
| 7cec0 | 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 6e 5f 68 61 73 68 6d | <kbd>zig.test.test_void_in_hashm |
| 7cee0 | 61 70 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 76 6f 69 64 5f 69 6e 5f 68 61 | ap.zig</kbd>.1/1.test_void_in_ha |
| 7cf00 | 73 68 6d 61 70 2e 74 65 73 74 2e 74 75 72 6e 20 48 61 73 68 4d 61 70 20 69 6e 74 6f 20 61 20 73 | shmap.test.turn.HashMap.into.a.s |
| 7cf20 | 65 74 20 77 69 74 68 20 76 6f 69 64 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 | et.with.void...OK.All.1.tests.pa |
| 7cf40 | 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>.... |
| 7cf60 | 20 20 20 20 3c 70 3e 4e 6f 74 65 20 74 68 61 74 20 74 68 69 73 20 69 73 20 64 69 66 66 65 72 65 | ....<p>Note.that.this.is.differe |
| 7cf80 | 6e 74 20 66 72 6f 6d 20 75 73 69 6e 67 20 61 20 64 75 6d 6d 79 20 76 61 6c 75 65 20 66 6f 72 20 | nt.from.using.a.dummy.value.for. |
| 7cfa0 | 74 68 65 20 68 61 73 68 20 6d 61 70 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 42 79 20 75 73 69 | the.hash.map.value........By.usi |
| 7cfc0 | 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 74 79 70 65 22 3e | ng.<code><span.class="tok-type"> |
| 7cfe0 | 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 73 20 74 68 65 20 74 79 70 65 20 6f | void</span></code>.as.the.type.o |
| 7d000 | 66 20 74 68 65 20 76 61 6c 75 65 2c 20 74 68 65 20 68 61 73 68 20 6d 61 70 20 65 6e 74 72 79 20 | f.the.value,.the.hash.map.entry. |
| 7d020 | 74 79 70 65 20 68 61 73 20 6e 6f 20 76 61 6c 75 65 20 66 69 65 6c 64 2c 20 61 6e 64 0a 20 20 20 | type.has.no.value.field,.and.... |
| 7d040 | 20 20 20 74 68 75 73 20 74 68 65 20 68 61 73 68 20 6d 61 70 20 74 61 6b 65 73 20 75 70 20 6c 65 | ...thus.the.hash.map.takes.up.le |
| 7d060 | 73 73 20 73 70 61 63 65 2e 20 46 75 72 74 68 65 72 2c 20 61 6c 6c 20 74 68 65 20 63 6f 64 65 20 | ss.space..Further,.all.the.code. |
| 7d080 | 74 68 61 74 20 64 65 61 6c 73 20 77 69 74 68 20 73 74 6f 72 69 6e 67 20 61 6e 64 20 6c 6f 61 64 | that.deals.with.storing.and.load |
| 7d0a0 | 69 6e 67 20 74 68 65 0a 20 20 20 20 20 20 76 61 6c 75 65 20 69 73 20 64 65 6c 65 74 65 64 2c 20 | ing.the.......value.is.deleted,. |
| 7d0c0 | 61 73 20 73 65 65 6e 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 | as.seen.above........</p>....... |
| 7d0e0 | 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 6f 6b | <p>.......<code><span.class="tok |
| 7d100 | 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 69 73 20 64 69 73 | -type">void</span></code>.is.dis |
| 7d120 | 74 69 6e 63 74 20 66 72 6f 6d 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | tinct.from.<code><span.class="to |
| 7d140 | 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 65 3e 2e | k-type">anyopaque</span></code>. |
| 7d160 | 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 74 79 | .......<code><span.class="tok-ty |
| 7d180 | 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 61 20 6b 6e 6f | pe">void</span></code>.has.a.kno |
| 7d1a0 | 77 6e 20 73 69 7a 65 20 6f 66 20 30 20 62 79 74 65 73 2c 20 61 6e 64 20 3c 63 6f 64 65 3e 3c 73 | wn.size.of.0.bytes,.and.<code><s |
| 7d1c0 | 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 65 3c 2f | pan.class="tok-type">anyopaque</ |
| 7d1e0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 61 6e 20 75 6e 6b 6e 6f 77 6e 2c 20 62 75 74 | span></code>.has.an.unknown,.but |
| 7d200 | 20 6e 6f 6e 2d 7a 65 72 6f 2c 20 73 69 7a 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | .non-zero,.size........</p>..... |
| 7d220 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 78 70 72 65 73 73 69 6f 6e 73 20 6f 66 20 74 79 70 65 20 | ..<p>.......Expressions.of.type. |
| 7d240 | 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 6f 69 | <code><span.class="tok-type">voi |
| 7d260 | 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 72 65 20 74 68 65 20 6f 6e 6c 79 20 6f 6e 65 | d</span></code>.are.the.only.one |
| 7d280 | 73 20 77 68 6f 73 65 20 76 61 6c 75 65 20 63 61 6e 20 62 65 20 69 67 6e 6f 72 65 64 2e 20 46 6f | s.whose.value.can.be.ignored..Fo |
| 7d2a0 | 72 20 65 78 61 6d 70 6c 65 2c 20 69 67 6e 6f 72 69 6e 67 0a 20 20 20 20 20 20 61 20 6e 6f 6e 2d | r.example,.ignoring.......a.non- |
| 7d2c0 | 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 6f 69 | <code><span.class="tok-type">voi |
| 7d2e0 | 64 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 69 73 20 61 20 | d</span></code>.expression.is.a. |
| 7d300 | 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | compile.error:.......</p>....... |
| 7d320 | 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 |
| 7d340 | 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 78 70 72 | ap"><cite.class="file">test_expr |
| 7d360 | 65 73 73 69 6f 6e 5f 69 67 6e 6f 72 65 64 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | ession_ignored.zig</cite></figca |
| 7d380 | 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 |
| 7d3a0 | 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 |
| 7d3c0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 67 6e 6f 72 69 6e 67 20 65 78 70 72 65 73 73 69 6f | ok-str">"ignoring.expressio |
| 7d3e0 | 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 66 6f 6f 28 29 | n.value"</span>.{.....foo() |
| 7d400 | 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 |
| 7d420 | 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 70 | an>.<span.class="tok-fn">foo</sp |
| 7d440 | 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 69 33 32 | an>().<span.class="tok-type">i32 |
| 7d460 | 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 |
| 7d480 | 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 |
| 7d4a0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | k-number">1234</span>;.}</code>< |
| 7d4c0 | 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 |
| 7d4e0 | 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 |
| 7d500 | 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 |
| 7d520 | 20 74 65 73 74 5f 65 78 70 72 65 73 73 69 6f 6e 5f 69 67 6e 6f 72 65 64 2e 7a 69 67 3c 2f 6b 62 | .test_expression_ignored.zig</kb |
| 7d540 | 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 | d>.<span.class="sgr-1m">doc/lang |
| 7d560 | 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 2e 7a 69 67 3a | ref/test_expression_ignored.zig: |
| 7d580 | 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 72 2d 33 31 6d | 2:8:.</span><span.class="sgr-31m |
| 7d5a0 | 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 |
| 7d5c0 | 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 6e 6f 72 65 64 | -1m">value.of.type.'i32'.ignored |
| 7d5e0 | 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 6e 20 63 6c 61 | .</span>....foo();.....<span.cla |
| 7d600 | 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 73 70 61 6e 20 | ss="sgr-32m">~~~^~.</span><span. |
| 7d620 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f | class="sgr-1m">doc/langref/test_ |
| 7d640 | 65 78 70 72 65 73 73 69 6f 6e 5f 69 67 6e 6f 72 65 64 2e 7a 69 67 3a 32 3a 38 3a 20 3c 2f 73 70 | expression_ignored.zig:2:8:.</sp |
| 7d660 | 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:.< |
| 7d680 | 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 6c 6c 20 6e | /span><span.class="sgr-1m">all.n |
| 7d6a0 | 6f 6e 2d 76 6f 69 64 20 76 61 6c 75 65 73 20 6d 75 73 74 20 62 65 20 75 73 65 64 0a 3c 2f 73 70 | on-void.values.must.be.used.</sp |
| 7d6c0 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 | an><span.class="sgr-1m">doc/lang |
| 7d6e0 | 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 2e 7a 69 67 3a | ref/test_expression_ignored.zig: |
| 7d700 | 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 72 2d 33 36 6d | 2:8:.</span><span.class="sgr-36m |
| 7d720 | 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 2d | ">note:.</span><span.class="sgr- |
| 7d740 | 31 6d 22 3e 74 6f 20 64 69 73 63 61 72 64 20 74 68 65 20 76 61 6c 75 65 2c 20 61 73 73 69 67 6e | 1m">to.discard.the.value,.assign |
| 7d760 | 20 69 74 20 74 6f 20 27 5f 27 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e | .it.to.'_'.</span>.</samp></pre> |
| 7d780 | 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 48 6f 77 65 76 65 72 2c 20 69 66 20 | </figure>........<p>However,.if. |
| 7d7a0 | 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 68 61 73 20 74 79 70 65 20 3c 63 6f 64 65 3e 3c 73 | the.expression.has.type.<code><s |
| 7d7c0 | 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> |
| 7d7e0 | 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 72 65 20 77 69 6c 6c 20 62 65 20 6e 6f 20 65 72 72 6f 72 2e | </code>,.there.will.be.no.error. |
| 7d800 | 20 45 78 70 72 65 73 73 69 6f 6e 20 72 65 73 75 6c 74 73 20 63 61 6e 20 62 65 20 65 78 70 6c 69 | .Expression.results.can.be.expli |
| 7d820 | 63 69 74 6c 79 20 69 67 6e 6f 72 65 64 20 62 79 20 61 73 73 69 67 6e 69 6e 67 20 74 68 65 6d 20 | citly.ignored.by.assigning.them. |
| 7d840 | 74 6f 20 3c 63 6f 64 65 3e 5f 3c 2f 63 6f 64 65 3e 2e 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 | to.<code>_</code>..</p>.......<f |
| 7d860 | 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 |
| 7d880 | 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 76 6f 69 64 5f 69 | "><cite.class="file">test_void_i |
| 7d8a0 | 67 6e 6f 72 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 | gnored.zig</cite></figcaption><p |
| 7d8c0 | 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 65 | re><code><span.class="tok-kw">te |
| 7d8e0 | 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"> |
| 7d900 | 26 71 75 6f 74 3b 76 6f 69 64 20 69 73 20 69 67 6e 6f 72 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 | "void.is.ignored"</spa |
| 7d920 | 6e 3e 20 7b 0a 20 20 20 20 72 65 74 75 72 6e 73 56 6f 69 64 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e | n>.{.....returnsVoid();.}..<span |
| 7d940 | 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 |
| 7d960 | 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 6c 69 63 69 74 | n.class="tok-str">"explicit |
| 7d980 | 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 26 71 75 6f | ly.ignoring.expression.value&quo |
| 7d9a0 | 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 66 6f 6f 28 29 3b 0a 7d 0a 0a 3c 73 | t;</span>.{....._.=.foo();.}..<s |
| 7d9c0 | 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 |
| 7d9e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 72 65 74 75 72 6e 73 56 6f 69 64 3c 2f 73 | an.class="tok-fn">returnsVoid</s |
| 7da00 | 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 |
| 7da20 | 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 6b | id</span>.{}..<span.class="tok-k |
| 7da40 | 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 |
| 7da60 | 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">foo</span>().<span.class="tok- |
| 7da80 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | type">i32</span>.{.....<span.cla |
| 7daa0 | 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. |
| 7dac0 | 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>;. |
| 7dae0 | 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>< |
| 7db00 | 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 |
| 7db20 | 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 |
| 7db40 | 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 76 6f 69 64 5f 69 67 6e 6f 72 65 64 2e 7a 69 67 3c | >zig.test.test_void_ignored.zig< |
| 7db60 | 2f 6b 62 64 3e 0a 31 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 | /kbd>.1/2.test_void_ignored.test |
| 7db80 | 2e 76 6f 69 64 20 69 73 20 69 67 6e 6f 72 65 64 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 76 | .void.is.ignored...OK.2/2.test_v |
| 7dba0 | 6f 69 64 5f 69 67 6e 6f 72 65 64 2e 74 65 73 74 2e 65 78 70 6c 69 63 69 74 6c 79 20 69 67 6e 6f | oid_ignored.test.explicitly.igno |
| 7dbc0 | 72 69 6e 67 20 65 78 70 72 65 73 73 69 6f 6e 20 76 61 6c 75 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 | ring.expression.value...OK.All.2 |
| 7dbe0 | 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 |
| 7dc00 | 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. |
| 7dc20 | 69 64 3d 22 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 2d 53 65 6d 61 6e 74 69 63 73 22 3e 3c | id="Result-Location-Semantics">< |
| 7dc40 | 61 20 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 2d 53 65 6d | a.href="#toc-Result-Location-Sem |
| 7dc60 | 61 6e 74 69 63 73 22 3e 52 65 73 75 6c 74 20 4c 6f 63 61 74 69 6f 6e 20 53 65 6d 61 6e 74 69 63 | antics">Result.Location.Semantic |
| 7dc80 | 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 65 73 75 | s</a>.<a.class="hdr".href="#Resu |
| 7dca0 | 6c 74 2d 4c 6f 63 61 74 69 6f 6e 2d 53 65 6d 61 6e 74 69 63 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | lt-Location-Semantics">..</a></h |
| 7dcc0 | 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 44 75 72 69 6e 67 20 63 6f 6d 70 69 | 2>........<p>.......During.compi |
| 7dce0 | 6c 61 74 69 6f 6e 2c 20 65 76 65 72 79 20 5a 69 67 20 65 78 70 72 65 73 73 69 6f 6e 20 61 6e 64 | lation,.every.Zig.expression.and |
| 7dd00 | 20 73 75 62 2d 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 61 73 73 69 67 6e 65 64 20 6f 70 74 69 | .sub-expression.is.assigned.opti |
| 7dd20 | 6f 6e 61 6c 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 0a 20 20 20 20 20 20 69 6e 66 6f 72 | onal.result.location.......infor |
| 7dd40 | 6d 61 74 69 6f 6e 2e 20 54 68 69 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 64 69 63 74 61 74 65 | mation..This.information.dictate |
| 7dd60 | 73 20 77 68 61 74 20 74 79 70 65 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 73 68 6f 75 6c | s.what.type.the.expression.shoul |
| 7dd80 | 64 20 68 61 76 65 20 28 69 74 73 20 72 65 73 75 6c 74 20 74 79 70 65 29 2c 20 61 6e 64 0a 20 20 | d.have.(its.result.type),.and... |
| 7dda0 | 20 20 20 20 77 68 65 72 65 20 74 68 65 20 72 65 73 75 6c 74 69 6e 67 20 76 61 6c 75 65 20 73 68 | ....where.the.resulting.value.sh |
| 7ddc0 | 6f 75 6c 64 20 62 65 20 70 6c 61 63 65 64 20 69 6e 20 6d 65 6d 6f 72 79 20 28 69 74 73 20 72 65 | ould.be.placed.in.memory.(its.re |
| 7dde0 | 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 29 2e 20 54 68 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 | sult.location)..The.information. |
| 7de00 | 69 73 0a 20 20 20 20 20 20 6f 70 74 69 6f 6e 61 6c 20 69 6e 20 74 68 65 20 73 65 6e 73 65 20 74 | is.......optional.in.the.sense.t |
| 7de20 | 68 61 74 20 6e 6f 74 20 65 76 65 72 79 20 65 78 70 72 65 73 73 69 6f 6e 20 68 61 73 20 74 68 69 | hat.not.every.expression.has.thi |
| 7de40 | 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 3a 20 61 73 73 69 67 6e 6d 65 6e 74 20 74 6f 0a 20 20 20 | s.information:.assignment.to.... |
| 7de60 | 20 20 20 3c 63 6f 64 65 3e 5f 3c 2f 63 6f 64 65 3e 2c 20 66 6f 72 20 69 6e 73 74 61 6e 63 65 2c | ...<code>_</code>,.for.instance, |
| 7de80 | 20 64 6f 65 73 20 6e 6f 74 20 70 72 6f 76 69 64 65 20 61 6e 79 20 69 6e 66 6f 72 6d 61 74 69 6f | .does.not.provide.any.informatio |
| 7dea0 | 6e 20 61 62 6f 75 74 20 74 68 65 20 74 79 70 65 20 6f 66 20 61 6e 0a 20 20 20 20 20 20 65 78 70 | n.about.the.type.of.an.......exp |
| 7dec0 | 72 65 73 73 69 6f 6e 2c 20 6e 6f 72 20 64 6f 65 73 20 69 74 20 70 72 6f 76 69 64 65 20 61 20 63 | ression,.nor.does.it.provide.a.c |
| 7dee0 | 6f 6e 63 72 65 74 65 20 6d 65 6d 6f 72 79 20 6c 6f 63 61 74 69 6f 6e 20 74 6f 20 70 6c 61 63 65 | oncrete.memory.location.to.place |
| 7df00 | 20 69 74 20 69 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | .it.in........</p>.......<p>.... |
| 7df20 | 20 20 20 41 73 20 61 20 6d 6f 74 69 76 61 74 69 6e 67 20 65 78 61 6d 70 6c 65 2c 20 63 6f 6e 73 | ...As.a.motivating.example,.cons |
| 7df40 | 69 64 65 72 20 74 68 65 20 73 74 61 74 65 6d 65 6e 74 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ider.the.statement.<code><span.c |
| 7df60 | 6c 61 73 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 | lass="tok-kw">const</span>.x:.<s |
| 7df80 | 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>. |
| 7dfa0 | 3d 20 3c 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 | =.<span.class="tok-number">42</s |
| 7dfc0 | 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e 2e 20 54 68 65 20 74 79 70 65 0a 20 20 20 20 20 20 61 6e 6e | pan>;</code>..The.type.......ann |
| 7dfe0 | 6f 74 61 74 69 6f 6e 20 68 65 72 65 20 70 72 6f 76 69 64 65 73 20 61 20 72 65 73 75 6c 74 20 74 | otation.here.provides.a.result.t |
| 7e000 | 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 74 6f 6b 2d 74 79 | ype.of.<code><span.class="tok-ty |
| 7e020 | 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 74 68 65 20 69 6e 69 | pe">u32</span></code>.to.the.ini |
| 7e040 | 74 69 61 6c 69 7a 61 74 69 6f 6e 20 65 78 70 72 65 73 73 69 6f 6e 0a 20 20 20 20 20 20 3c 63 6f | tialization.expression.......<co |
| 7e060 | 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 32 3c 2f | de><span.class="tok-number">42</ |
| 7e080 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 69 6e 73 74 72 75 63 74 69 6e 67 20 74 68 65 20 63 6f | span></code>,.instructing.the.co |
| 7e0a0 | 6d 70 69 6c 65 72 20 74 6f 20 63 6f 65 72 63 65 20 74 68 69 73 20 69 6e 74 65 67 65 72 20 28 69 | mpiler.to.coerce.this.integer.(i |
| 7e0c0 | 6e 69 74 61 6c 6c 79 20 6f 66 20 74 79 70 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 | nitally.of.type.......<code><spa |
| 7e0e0 | 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< |
| 7e100 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 20 74 6f 20 74 68 69 73 20 74 79 70 65 2e 20 57 65 20 | /span></code>).to.this.type..We. |
| 7e120 | 77 69 6c 6c 20 73 65 65 20 6d 6f 72 65 20 65 78 61 6d 70 6c 65 73 20 73 68 6f 72 74 6c 79 2e 0a | will.see.more.examples.shortly.. |
| 7e140 | 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. |
| 7e160 | 69 73 20 6e 6f 74 20 61 6e 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 64 65 74 61 69 6c 3a | is.not.an.implementation.detail: |
| 7e180 | 20 74 68 65 20 6c 6f 67 69 63 20 6f 75 74 6c 69 6e 65 64 20 61 62 6f 76 65 20 69 73 20 63 6f 64 | .the.logic.outlined.above.is.cod |
| 7e1a0 | 69 66 69 65 64 20 69 6e 74 6f 20 74 68 65 20 5a 69 67 20 6c 61 6e 67 75 61 67 65 0a 20 20 20 20 | ified.into.the.Zig.language..... |
| 7e1c0 | 20 20 73 70 65 63 69 66 69 63 61 74 69 6f 6e 2c 20 61 6e 64 20 69 73 20 74 68 65 20 70 72 69 6d | ..specification,.and.is.the.prim |
| 7e1e0 | 61 72 79 20 6d 65 63 68 61 6e 69 73 6d 20 6f 66 20 74 79 70 65 20 69 6e 66 65 72 65 6e 63 65 20 | ary.mechanism.of.type.inference. |
| 7e200 | 69 6e 20 74 68 65 20 6c 61 6e 67 75 61 67 65 2e 20 54 68 69 73 20 73 79 73 74 65 6d 20 69 73 0a | in.the.language..This.system.is. |
| 7e220 | 20 20 20 20 20 20 63 6f 6c 6c 65 63 74 69 76 65 6c 79 20 72 65 66 65 72 72 65 64 20 74 6f 20 61 | ......collectively.referred.to.a |
| 7e240 | 73 20 22 52 65 73 75 6c 74 20 4c 6f 63 61 74 69 6f 6e 20 53 65 6d 61 6e 74 69 63 73 22 2e 0a 20 | s."Result.Location.Semantics"... |
| 7e260 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 52 65 73 75 6c 74 2d 54 | .....</p>.......<h3.id="Result-T |
| 7e280 | 79 70 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 73 75 6c 74 2d 54 79 70 65 73 | ypes"><a.href="#toc-Result-Types |
| 7e2a0 | 22 3e 52 65 73 75 6c 74 20 54 79 70 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | ">Result.Types</a>.<a.class="hdr |
| 7e2c0 | 22 20 68 72 65 66 3d 22 23 52 65 73 75 6c 74 2d 54 79 70 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | ".href="#Result-Types">..</a></h |
| 7e2e0 | 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 73 75 6c 74 20 74 79 70 65 73 | 3>........<p>.......Result.types |
| 7e300 | 20 61 72 65 20 70 72 6f 70 61 67 61 74 65 64 20 72 65 63 75 72 73 69 76 65 6c 79 20 74 68 72 6f | .are.propagated.recursively.thro |
| 7e320 | 75 67 68 20 65 78 70 72 65 73 73 69 6f 6e 73 20 77 68 65 72 65 20 70 6f 73 73 69 62 6c 65 2e 20 | ugh.expressions.where.possible.. |
| 7e340 | 46 6f 72 20 69 6e 73 74 61 6e 63 65 2c 20 69 66 20 74 68 65 0a 20 20 20 20 20 20 65 78 70 72 65 | For.instance,.if.the.......expre |
| 7e360 | 73 73 69 6f 6e 20 3c 63 6f 64 65 3e 26 61 6d 70 3b 65 3c 2f 63 6f 64 65 3e 20 68 61 73 20 72 65 | ssion.<code>&e</code>.has.re |
| 7e380 | 73 75 6c 74 20 74 79 70 65 20 3c 63 6f 64 65 3e 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | sult.type.<code>*<span.class="to |
| 7e3a0 | 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 2c 20 74 68 65 6e 0a | k-type">u32</span></code>,.then. |
| 7e3c0 | 20 20 20 20 20 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 | ......<code>e</code>.is.given.a. |
| 7e3e0 | 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 61 73 73 | result.type.of.<code><span.class |
| 7e400 | 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 2c 20 61 | ="tok-type">u32</span></code>,.a |
| 7e420 | 6c 6c 6f 77 69 6e 67 20 74 68 65 0a 20 20 20 20 20 20 6c 61 6e 67 75 61 67 65 20 74 6f 20 70 65 | llowing.the.......language.to.pe |
| 7e440 | 72 66 6f 72 6d 20 74 68 69 73 20 63 6f 65 72 63 69 6f 6e 20 62 65 66 6f 72 65 20 74 61 6b 69 6e | rform.this.coercion.before.takin |
| 7e460 | 67 20 61 20 72 65 66 65 72 65 6e 63 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | g.a.reference........</p>....... |
| 7e480 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 72 65 73 75 6c 74 20 74 79 70 65 20 6d 65 63 68 61 6e | <p>.......The.result.type.mechan |
| 7e4a0 | 69 73 6d 20 69 73 20 75 74 69 6c 69 7a 65 64 20 62 79 20 63 61 73 74 69 6e 67 20 62 75 69 6c 74 | ism.is.utilized.by.casting.built |
| 7e4c0 | 69 6e 73 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ins.such.as.<code><span.class="t |
| 7e4e0 | 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 3c 2f 63 6f 64 | ok-builtin">@intCast</span></cod |
| 7e500 | 65 3e 2e 0a 20 20 20 20 20 20 52 61 74 68 65 72 20 74 68 61 6e 20 74 61 6b 69 6e 67 20 61 73 20 | e>........Rather.than.taking.as. |
| 7e520 | 61 6e 20 61 72 67 75 6d 65 6e 74 20 74 68 65 20 74 79 70 65 20 74 6f 20 63 61 73 74 20 74 6f 2c | an.argument.the.type.to.cast.to, |
| 7e540 | 20 74 68 65 73 65 20 62 75 69 6c 74 69 6e 73 20 75 73 65 20 74 68 65 69 72 20 72 65 73 75 6c 74 | .these.builtins.use.their.result |
| 7e560 | 20 74 79 70 65 20 74 6f 0a 20 20 20 20 20 20 64 65 74 65 72 6d 69 6e 65 20 74 68 69 73 20 69 6e | .type.to.......determine.this.in |
| 7e580 | 66 6f 72 6d 61 74 69 6f 6e 2e 20 54 68 65 20 72 65 73 75 6c 74 20 74 79 70 65 20 69 73 20 6f 66 | formation..The.result.type.is.of |
| 7e5a0 | 74 65 6e 20 6b 6e 6f 77 6e 20 66 72 6f 6d 20 63 6f 6e 74 65 78 74 3b 20 77 68 65 72 65 20 69 74 | ten.known.from.context;.where.it |
| 7e5c0 | 20 69 73 20 6e 6f 74 2c 20 74 68 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | .is.not,.the.......<code><span.c |
| 7e5e0 | 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 3c 2f 63 | lass="tok-builtin">@as</span></c |
| 7e600 | 6f 64 65 3e 20 62 75 69 6c 74 69 6e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 65 78 70 6c | ode>.builtin.can.be.used.to.expl |
| 7e620 | 69 63 69 74 6c 79 20 70 72 6f 76 69 64 65 20 61 20 72 65 73 75 6c 74 20 74 79 70 65 2e 0a 20 20 | icitly.provide.a.result.type.... |
| 7e640 | 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 65 20 63 61 6e 20 | ....</p>.......<p>.......We.can. |
| 7e660 | 62 72 65 61 6b 20 64 6f 77 6e 20 74 68 65 20 72 65 73 75 6c 74 20 74 79 70 65 73 20 66 6f 72 20 | break.down.the.result.types.for. |
| 7e680 | 65 61 63 68 20 63 6f 6d 70 6f 6e 65 6e 74 20 6f 66 20 61 20 73 69 6d 70 6c 65 20 65 78 70 72 65 | each.component.of.a.simple.expre |
| 7e6a0 | 73 73 69 6f 6e 20 61 73 20 66 6f 6c 6c 6f 77 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | ssion.as.follows:.......</p>.... |
| 7e6c0 | 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 |
| 7e6e0 | 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 73 75 6c 74 | g-cap"><cite.class="file">result |
| 7e700 | 5f 74 79 70 65 5f 70 72 6f 70 61 67 61 74 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 | _type_propagation.zig</cite></fi |
| 7e720 | 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= |
| 7e740 | 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 75 61 | "tok-kw">const</span>.expectEqua |
| 7e760 | 6c 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 | l.=.<span.class="tok-builtin">@i |
| 7e780 | 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 |
| 7e7a0 | 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 | r">"std"</span>).testi |
| 7e7c0 | 6e 67 2e 65 78 70 65 63 74 45 71 75 61 6c 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ng.expectEqual;.<span.class="tok |
| 7e7e0 | 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 |
| 7e800 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 65 73 75 6c 74 20 74 79 70 65 20 70 72 6f 70 61 67 61 | k-str">"result.type.propaga |
| 7e820 | 74 65 73 20 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 26 71 | tes.through.struct.initializer&q |
| 7e840 | 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 |
| 7e860 | 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 63 6c | ok-kw">const</span>.S.=.<span.cl |
| 7e880 | 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 78 3a 20 | ass="tok-kw">struct</span>.{.x:. |
| 7e8a0 | 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 |
| 7e8c0 | 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 63 6f | >.};.....<span.class="tok-kw">co |
| 7e8e0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | nst</span>.val:.<span.class="tok |
| 7e900 | 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -type">u64</span>.=.<span.class= |
| 7e920 | 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 20 20 20 20 3c 73 70 | "tok-number">123</span>;.....<sp |
| 7e940 | 61 6e 20 63 6c 61 73 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 |
| 7e960 | 3a 20 53 20 3d 20 2e 7b 20 2e 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | :.S.=..{..x.=.<span.class="tok-b |
| 7e980 | 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 29 20 7d 3b 0a | uiltin">@intCast</span>(val).};. |
| 7e9a0 | 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">// |
| 7e9c0 | 20 2e 7b 20 2e 78 20 3d 20 40 69 6e 74 43 61 73 74 28 76 61 6c 29 20 7d 20 20 20 68 61 73 20 72 | ..{..x.=.@intCast(val).}...has.r |
| 7e9e0 | 65 73 75 6c 74 20 74 79 70 65 20 60 53 60 20 64 75 65 20 74 6f 20 74 68 65 20 74 79 70 65 20 61 | esult.type.`S`.due.to.the.type.a |
| 7ea00 | 6e 6e 6f 74 61 74 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 | nnotation</span>.....<span.class |
| 7ea20 | 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 20 40 69 6e 74 43 61 | ="tok-comment">//.........@intCa |
| 7ea40 | 73 74 28 76 61 6c 29 20 20 20 20 20 68 61 73 20 72 65 73 75 6c 74 20 74 79 70 65 20 60 75 33 32 | st(val).....has.result.type.`u32 |
| 7ea60 | 60 20 64 75 65 20 74 6f 20 74 68 65 20 74 79 70 65 20 6f 66 20 74 68 65 20 66 69 65 6c 64 20 60 | `.due.to.the.type.of.the.field.` |
| 7ea80 | 53 2e 78 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 | S.x`</span>.....<span.class="tok |
| 7eaa0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 | -comment">//..................va |
| 7eac0 | 6c 20 20 20 20 20 20 68 61 73 20 6e 6f 20 72 65 73 75 6c 74 20 74 79 70 65 2c 20 61 73 20 69 74 | l......has.no.result.type,.as.it |
| 7eae0 | 20 69 73 20 70 65 72 6d 69 74 74 65 64 20 74 6f 20 62 65 20 61 6e 79 20 69 6e 74 65 67 65 72 20 | .is.permitted.to.be.any.integer. |
| 7eb00 | 74 79 70 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | type</span>.....<span.class="tok |
| 7eb20 | 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 70 61 | -kw">try</span>.expectEqual(<spa |
| 7eb40 | 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> |
| 7eb60 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 | (<span.class="tok-type">u32</spa |
| 7eb80 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 | n>,.<span.class="tok-number">123 |
| 7eba0 | 3c 2f 73 70 61 6e 3e 29 2c 20 73 2e 78 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f | </span>),.s.x);.}</code></pre></ |
| 7ebc0 | 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 |
| 7ebe0 | 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>< |
| 7ec00 | 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 72 65 73 75 6c 74 | pre><samp>$.<kbd>zig.test.result |
| 7ec20 | 5f 74 79 70 65 5f 70 72 6f 70 61 67 61 74 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 | _type_propagation.zig</kbd>.1/1. |
| 7ec40 | 72 65 73 75 6c 74 5f 74 79 70 65 5f 70 72 6f 70 61 67 61 74 69 6f 6e 2e 74 65 73 74 2e 72 65 73 | result_type_propagation.test.res |
| 7ec60 | 75 6c 74 20 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 | ult.type.propagates.through.stru |
| 7ec80 | 63 74 20 69 6e 69 74 69 61 6c 69 7a 65 72 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 | ct.initializer...OK.All.1.tests. |
| 7eca0 | 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>.. |
| 7ecc0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 72 65 73 75 6c 74 20 74 79 70 65 | ......<p>.......This.result.type |
| 7ece0 | 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 69 73 20 75 73 65 66 75 6c 20 66 6f 72 20 74 68 65 20 61 | .information.is.useful.for.the.a |
| 7ed00 | 66 6f 72 65 6d 65 6e 74 69 6f 6e 65 64 20 63 61 73 74 20 62 75 69 6c 74 69 6e 73 2c 20 61 73 20 | forementioned.cast.builtins,.as. |
| 7ed20 | 77 65 6c 6c 20 61 73 20 74 6f 20 61 76 6f 69 64 0a 20 20 20 20 20 20 74 68 65 20 63 6f 6e 73 74 | well.as.to.avoid.......the.const |
| 7ed40 | 72 75 63 74 69 6f 6e 20 6f 66 20 70 72 65 2d 63 6f 65 72 63 69 6f 6e 20 76 61 6c 75 65 73 2c 20 | ruction.of.pre-coercion.values,. |
| 7ed60 | 61 6e 64 20 74 6f 20 61 76 6f 69 64 20 74 68 65 20 6e 65 65 64 20 66 6f 72 20 65 78 70 6c 69 63 | and.to.avoid.the.need.for.explic |
| 7ed80 | 69 74 20 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 73 20 69 6e 20 73 6f 6d 65 0a 20 20 20 20 20 20 | it.type.coercions.in.some....... |
| 7eda0 | 63 61 73 65 73 2e 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 | cases..The.following.table.detai |
| 7edc0 | 6c 73 20 68 6f 77 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 | ls.how.some.common.expressions.p |
| 7ede0 | 72 6f 70 61 67 61 74 65 20 72 65 73 75 6c 74 20 74 79 70 65 73 2c 20 77 68 65 72 65 0a 20 20 20 | ropagate.result.types,.where.... |
| 7ee00 | 20 20 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 | ...<code>x</code>.and.<code>y</c |
| 7ee20 | 6f 64 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 | ode>.are.arbitrary.sub-expressio |
| 7ee40 | 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 64 69 76 20 63 6c 61 73 73 3d | ns........</p>.......<div.class= |
| 7ee60 | 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>.. |
| 7ee80 | 20 20 20 20 20 20 20 3c 74 68 65 61 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 | .......<thead>...........<tr>... |
| 7eea0 | 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 45 78 70 72 65 73 | ..........<th.scope="col">Expres |
| 7eec0 | 73 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 63 6f 70 65 3d | sion</th>.............<th.scope= |
| 7eee0 | 22 63 6f 6c 22 3e 50 61 72 65 6e 74 20 52 65 73 75 6c 74 20 54 79 70 65 3c 2f 74 68 3e 0a 20 20 | "col">Parent.Result.Type</th>... |
| 7ef00 | 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 53 75 62 2d 65 78 | ..........<th.scope="col">Sub-ex |
| 7ef20 | 70 72 65 73 73 69 6f 6e 20 52 65 73 75 6c 74 20 54 79 70 65 3c 2f 74 68 3e 0a 20 20 20 20 20 20 | pression.Result.Type</th>....... |
| 7ef40 | 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 3e 0a 20 20 20 20 20 | ....</tr>.........</thead>...... |
| 7ef60 | 20 20 20 3c 74 62 6f 64 79 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 | ...<tbody>...........<tr>....... |
| 7ef80 | 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 |
| 7efa0 | 6e 20 63 6c 61 73 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 | n.class="tok-kw">const</span>.va |
| 7efc0 | 6c 3a 20 54 20 3d 20 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 | l:.T.=.x</code></th>............ |
| 7efe0 | 20 3c 74 64 3e 2d 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 | .<td>-</td>.............<td><cod |
| 7f000 | 65 3e 78 3c 2f 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 | e>x</code>.is.a.<code>T</code></ |
| 7f020 | 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 74 | td>...........</tr>...........<t |
| 7f040 | 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">< |
| 7f060 | 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 |
| 7f080 | 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 0a 20 20 20 20 | pan>.val:.T.=.x</code></th>..... |
| 7f0a0 | 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 20 20 3c | ........<td>-</td>.............< |
| 7f0c0 | 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 54 3c 2f | td><code>x</code>.is.a.<code>T</ |
| 7f0e0 | 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 20 20 | code></td>...........</tr>...... |
| 7f100 | 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= |
| 7f120 | 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 3e 0a | "row"><code>val.=.x</code></th>. |
| 7f140 | 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>.......... |
| 7f160 | 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 |
| 7f180 | 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 |
| 7f1a0 | 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 | Of</span>(val)</code></td>...... |
| 7f1c0 | 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>....... |
| 7f1e0 | 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 |
| 7f200 | 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> |
| 7f220 | 28 54 2c 20 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 | (T,.x)</code></th>.............< |
| 7f240 | 74 64 3e 2d 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 | td>-</td>.............<td><code> |
| 7f260 | 78 3c 2f 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 | x</code>.is.a.<code>T</code></td |
| 7f280 | 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 74 72 3e | >...........</tr>...........<tr> |
| 7f2a0 | 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 |
| 7f2c0 | 64 65 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 | de>&x</code></th>........... |
| 7f2e0 | 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 2a 54 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 | ..<td><code>*T</code></td>...... |
| 7f300 | 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 61 20 3c | .......<td><code>x</code>.is.a.< |
| 7f320 | 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 3c 2f 74 | code>T</code></td>...........</t |
| 7f340 | 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 |
| 7f360 | 68 20 73 63 6f 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 | h.scope="row"><code>&x</code |
| 7f380 | 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 5b 5d 54 | ></th>.............<td><code>[]T |
| 7f3a0 | 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 |
| 7f3c0 | 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 73 6f 6d 65 20 61 72 72 61 79 20 6f 66 20 3c 63 6f | de>x</code>.is.some.array.of.<co |
| 7f3e0 | 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 3c 2f 74 72 3e | de>T</code></td>...........</tr> |
| 7f400 | 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. |
| 7f420 | 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 3e 3c 2f 74 | scope="row"><code>f(x)</code></t |
| 7f440 | 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 20 20 20 20 | h>.............<td>-</td>....... |
| 7f460 | 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 74 68 65 | ......<td><code>x</code>.has.the |
| 7f480 | 20 74 79 70 65 20 6f 66 20 74 68 65 20 66 69 72 73 74 20 70 61 72 61 6d 65 74 65 72 20 6f 66 20 | .type.of.the.first.parameter.of. |
| 7f4a0 | 3c 63 6f 64 65 3e 66 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 | <code>f</code></td>...........</ |
| 7f4c0 | 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 3c | tr>...........<tr>.............< |
| 7f4e0 | 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 2e 7b 78 7d 3c 2f 63 6f 64 65 3e | th.scope="row"><code>.{x}</code> |
| 7f500 | 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 54 3c 2f 63 | </th>.............<td><code>T</c |
| 7f520 | 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 64 65 3e | ode></td>.............<td><code> |
| 7f540 | 78 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 3c 63 6f 64 65 3e 73 74 64 2e 6d 65 74 61 2e 46 69 65 | x</code>.is.a.<code>std.meta.Fie |
| 7f560 | 6c 64 54 79 70 65 28 54 2c 20 2e 40 26 71 75 6f 74 3b 30 26 71 75 6f 74 3b 29 3c 2f 63 6f 64 65 | ldType(T,..@"0")</code |
| 7f580 | 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>.......... |
| 7f5a0 | 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 |
| 7f5c0 | 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>. |
| 7f5e0 | 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></ |
| 7f600 | 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 |
| 7f620 | 65 3e 20 69 73 20 61 20 3c 63 6f 64 65 3e 73 74 64 2e 6d 65 74 61 2e 46 69 65 6c 64 54 79 70 65 | e>.is.a.<code>std.meta.FieldType |
| 7f640 | 28 54 2c 20 2e 61 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 | (T,..a)</code></td>...........</ |
| 7f660 | 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 3c | tr>...........<tr>.............< |
| 7f680 | 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 3e | th.scope="row"><code>T{x}</code> |
| 7f6a0 | 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 20 | </th>.............<td>-</td>.... |
| 7f6c0 | 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 61 | .........<td><code>x</code>.is.a |
| 7f6e0 | 20 3c 63 6f 64 65 3e 73 74 64 2e 6d 65 74 61 2e 46 69 65 6c 64 54 79 70 65 28 54 2c 20 2e 40 26 | .<code>std.meta.FieldType(T,..@& |
| 7f700 | 71 75 6f 74 3b 30 26 71 75 6f 74 3b 29 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | quot;0")</code></td>....... |
| 7f720 | 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 20 | ....</tr>...........<tr>........ |
| 7f740 | 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 54 7b 20 2e 61 | .....<th.scope="row"><code>T{..a |
| 7f760 | 20 3d 20 78 20 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 | .=.x.}</code></th>.............< |
| 7f780 | 74 64 3e 2d 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 | td>-</td>.............<td><code> |
| 7f7a0 | 78 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 3c 63 6f 64 65 3e 73 74 64 2e 6d 65 74 61 2e 46 69 65 | x</code>.is.a.<code>std.meta.Fie |
| 7f7c0 | 6c 64 54 79 70 65 28 54 2c 20 2e 61 29 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | ldType(T,..a)</code></td>....... |
| 7f7e0 | 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 20 | ....</tr>...........<tr>........ |
| 7f800 | 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 6e | .....<th.scope="row"><code><span |
| 7f820 | 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 6e | .class="tok-builtin">@Type</span |
| 7f840 | 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 64 | >(x)</code></th>.............<td |
| 7f860 | 3e 2d 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 | >-</td>.............<td><code>x< |
| 7f880 | 2f 63 6f 64 65 3e 20 69 73 20 61 20 3c 63 6f 64 65 3e 73 74 64 2e 62 75 69 6c 74 69 6e 2e 54 79 | /code>.is.a.<code>std.builtin.Ty |
| 7f8a0 | 70 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 2f 74 72 3e 0a 20 | pe</code></td>...........</tr>.. |
| 7f8c0 | 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 |
| 7f8e0 | 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 |
| 7f900 | 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 29 3c 2f 63 | -builtin">@typeInfo</span>(x)</c |
| 7f920 | 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> |
| 7f940 | 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 20 | .............<td><code>x</code>. |
| 7f960 | 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 74 79 70 65 | is.a.<code><span.class="tok-type |
| 7f980 | 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | ">type</span></code></td>....... |
| 7f9a0 | 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 20 | ....</tr>...........<tr>........ |
| 7f9c0 | 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 78 20 26 6c 74 | .....<th.scope="row"><code>x.< |
| 7f9e0 | 3b 26 6c 74 3b 20 79 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 | ;<.y</code></th>............. |
| 7fa00 | 3c 74 64 3e 2d 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 | <td>-</td>.............<td><code |
| 7fa20 | 3e 79 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 3c 63 6f 64 65 3e 73 74 64 2e 6d 61 74 68 2e 4c 6f | >y</code>.is.a.<code>std.math.Lo |
| 7fa40 | 67 32 49 6e 74 43 65 69 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | g2IntCeil(<span.class="tok-built |
| 7fa60 | 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 78 29 29 3c 2f 63 6f 64 65 3e 3c 2f 74 | in">@TypeOf</span>(x))</code></t |
| 7fa80 | 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 |
| 7faa0 | 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>. |
| 7fac0 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 52 65 73 75 6c 74 2d 4c 6f 63 61 | .............<h3.id="Result-Loca |
| 7fae0 | 74 69 6f 6e 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 6f 63 61 | tions"><a.href="#toc-Result-Loca |
| 7fb00 | 74 69 6f 6e 73 22 3e 52 65 73 75 6c 74 20 4c 6f 63 61 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 | tions">Result.Locations</a>.<a.c |
| 7fb20 | 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 4c 6f 63 61 74 69 6f | lass="hdr".href="#Result-Locatio |
| 7fb40 | 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 20 | ns">..</a></h3>........<p>...... |
| 7fb60 | 20 49 6e 20 61 64 64 69 74 69 6f 6e 20 74 6f 20 72 65 73 75 6c 74 20 74 79 70 65 20 69 6e 66 6f | .In.addition.to.result.type.info |
| 7fb80 | 72 6d 61 74 69 6f 6e 2c 20 65 76 65 72 79 20 65 78 70 72 65 73 73 69 6f 6e 20 6d 61 79 20 62 65 | rmation,.every.expression.may.be |
| 7fba0 | 20 6f 70 74 69 6f 6e 61 6c 6c 79 20 61 73 73 69 67 6e 65 64 20 61 20 72 65 73 75 6c 74 0a 20 20 | .optionally.assigned.a.result... |
| 7fbc0 | 20 20 20 20 6c 6f 63 61 74 69 6f 6e 3a 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 77 68 69 63 68 | ....location:.a.pointer.to.which |
| 7fbe0 | 20 74 68 65 20 76 61 6c 75 65 20 6d 75 73 74 20 62 65 20 64 69 72 65 63 74 6c 79 20 77 72 69 74 | .the.value.must.be.directly.writ |
| 7fc00 | 74 65 6e 2e 20 54 68 69 73 20 73 79 73 74 65 6d 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 | ten..This.system.can.be.used.to. |
| 7fc20 | 70 72 65 76 65 6e 74 0a 20 20 20 20 20 20 69 6e 74 65 72 6d 65 64 69 61 74 65 20 63 6f 70 69 65 | prevent.......intermediate.copie |
| 7fc40 | 73 20 77 68 65 6e 20 69 6e 69 74 69 61 6c 69 7a 69 6e 67 20 64 61 74 61 20 73 74 72 75 63 74 75 | s.when.initializing.data.structu |
| 7fc60 | 72 65 73 2c 20 77 68 69 63 68 20 63 61 6e 20 62 65 20 69 6d 70 6f 72 74 61 6e 74 20 66 6f 72 20 | res,.which.can.be.important.for. |
| 7fc80 | 74 79 70 65 73 20 77 68 69 63 68 20 6d 75 73 74 0a 20 20 20 20 20 20 68 61 76 65 20 61 20 66 69 | types.which.must.......have.a.fi |
| 7fca0 | 78 65 64 20 6d 65 6d 6f 72 79 20 61 64 64 72 65 73 73 20 28 22 70 69 6e 6e 65 64 22 20 74 79 70 | xed.memory.address.("pinned".typ |
| 7fcc0 | 65 73 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 | es)........</p>.......<p>....... |
| 7fce0 | 57 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 74 68 65 20 73 69 6d 70 6c 65 20 61 73 73 69 67 6e | When.compiling.the.simple.assign |
| 7fd00 | 6d 65 6e 74 20 65 78 70 72 65 73 73 69 6f 6e 20 3c 63 6f 64 65 3e 78 20 3d 20 65 3c 2f 63 6f 64 | ment.expression.<code>x.=.e</cod |
| 7fd20 | 65 3e 2c 20 6d 61 6e 79 20 6c 61 6e 67 75 61 67 65 73 20 77 6f 75 6c 64 0a 20 20 20 20 20 20 63 | e>,.many.languages.would.......c |
| 7fd40 | 72 65 61 74 65 20 74 68 65 20 74 65 6d 70 6f 72 61 72 79 20 76 61 6c 75 65 20 3c 63 6f 64 65 3e | reate.the.temporary.value.<code> |
| 7fd60 | 65 3c 2f 63 6f 64 65 3e 20 6f 6e 20 74 68 65 20 73 74 61 63 6b 2c 20 61 6e 64 20 74 68 65 6e 20 | e</code>.on.the.stack,.and.then. |
| 7fd80 | 61 73 73 69 67 6e 20 69 74 20 74 6f 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 | assign.it.to.......<code>x</code |
| 7fda0 | 3e 2c 20 70 6f 74 65 6e 74 69 61 6c 6c 79 20 70 65 72 66 6f 72 6d 69 6e 67 20 61 20 74 79 70 65 | >,.potentially.performing.a.type |
| 7fdc0 | 20 63 6f 65 72 63 69 6f 6e 20 69 6e 20 74 68 65 20 70 72 6f 63 65 73 73 2e 20 5a 69 67 20 61 70 | .coercion.in.the.process..Zig.ap |
| 7fde0 | 70 72 6f 61 63 68 65 73 20 74 68 69 73 0a 20 20 20 20 20 20 64 69 66 66 65 72 65 6e 74 6c 79 2e | proaches.this.......differently. |
| 7fe00 | 20 54 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 3c 63 6f 64 65 3e 65 3c 2f 63 6f 64 65 3e 20 69 | .The.expression.<code>e</code>.i |
| 7fe20 | 73 20 67 69 76 65 6e 20 61 20 72 65 73 75 6c 74 20 74 79 70 65 20 6d 61 74 63 68 69 6e 67 20 74 | s.given.a.result.type.matching.t |
| 7fe40 | 68 65 20 74 79 70 65 20 6f 66 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 2c | he.type.of.......<code>x</code>, |
| 7fe60 | 20 61 6e 64 20 61 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 20 6f 66 20 3c 63 6f 64 65 3e | .and.a.result.location.of.<code> |
| 7fe80 | 26 61 6d 70 3b 78 3c 2f 63 6f 64 65 3e 2e 20 46 6f 72 20 6d 61 6e 79 20 73 79 6e 74 61 63 74 69 | &x</code>..For.many.syntacti |
| 7fea0 | 63 0a 20 20 20 20 20 20 66 6f 72 6d 73 20 6f 66 20 3c 63 6f 64 65 3e 65 3c 2f 63 6f 64 65 3e 2c | c.......forms.of.<code>e</code>, |
| 7fec0 | 20 74 68 69 73 20 68 61 73 20 6e 6f 20 70 72 61 63 74 69 63 61 6c 20 69 6d 70 61 63 74 2e 20 48 | .this.has.no.practical.impact..H |
| 7fee0 | 6f 77 65 76 65 72 2c 20 69 74 20 63 61 6e 20 68 61 76 65 20 69 6d 70 6f 72 74 61 6e 74 0a 20 20 | owever,.it.can.have.important... |
| 7ff00 | 20 20 20 20 73 65 6d 61 6e 74 69 63 20 65 66 66 65 63 74 73 20 77 68 65 6e 20 77 6f 72 6b 69 6e | ....semantic.effects.when.workin |
| 7ff20 | 67 20 77 69 74 68 20 6d 6f 72 65 20 63 6f 6d 70 6c 65 78 20 73 79 6e 74 61 78 20 66 6f 72 6d 73 | g.with.more.complex.syntax.forms |
| 7ff40 | 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 |
| 7ff60 | 20 69 6e 73 74 61 6e 63 65 2c 20 69 66 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 3c 63 6f | .instance,.if.the.expression.<co |
| 7ff80 | 64 65 3e 2e 7b 20 2e 61 20 3d 20 78 2c 20 2e 62 20 3d 20 79 20 7d 3c 2f 63 6f 64 65 3e 20 68 61 | de>.{..a.=.x,..b.=.y.}</code>.ha |
| 7ffa0 | 73 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 | s.a.result.location.of.......<co |
| 7ffc0 | 64 65 3e 70 74 72 3c 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 | de>ptr</code>,.then.<code>x</cod |
| 7ffe0 | 65 3e 20 69 73 20 67 69 76 65 6e 20 61 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 20 6f 66 | e>.is.given.a.result.location.of |
| 80000 | 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 26 61 6d 70 3b 70 74 72 2e 61 3c 2f 63 6f 64 65 3e 2c 20 | .......<code>&ptr.a</code>,. |
| 80020 | 61 6e 64 20 3c 63 6f 64 65 3e 79 3c 2f 63 6f 64 65 3e 20 61 20 72 65 73 75 6c 74 20 6c 6f 63 61 | and.<code>y</code>.a.result.loca |
| 80040 | 74 69 6f 6e 20 6f 66 20 3c 63 6f 64 65 3e 26 61 6d 70 3b 70 74 72 2e 62 3c 2f 63 6f 64 65 3e 2e | tion.of.<code>&ptr.b</code>. |
| 80060 | 0a 20 20 20 20 20 20 57 69 74 68 6f 75 74 20 74 68 69 73 20 73 79 73 74 65 6d 2c 20 74 68 69 73 | .......Without.this.system,.this |
| 80080 | 20 65 78 70 72 65 73 73 69 6f 6e 20 77 6f 75 6c 64 20 63 6f 6e 73 74 72 75 63 74 20 61 20 74 65 | .expression.would.construct.a.te |
| 800a0 | 6d 70 6f 72 61 72 79 20 73 74 72 75 63 74 20 76 61 6c 75 65 20 65 6e 74 69 72 65 6c 79 20 6f 6e | mporary.struct.value.entirely.on |
| 800c0 | 20 74 68 65 20 73 74 61 63 6b 2c 20 61 6e 64 0a 20 20 20 20 20 20 6f 6e 6c 79 20 74 68 65 6e 20 | .the.stack,.and.......only.then. |
| 800e0 | 63 6f 70 79 20 69 74 20 74 6f 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 61 64 64 72 65 | copy.it.to.the.destination.addre |
| 80100 | 73 73 2e 20 49 6e 20 65 73 73 65 6e 63 65 2c 20 5a 69 67 20 64 65 73 75 67 61 72 73 20 74 68 65 | ss..In.essence,.Zig.desugars.the |
| 80120 | 20 61 73 73 69 67 6e 6d 65 6e 74 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 66 6f 6f 20 3d 20 2e 7b | .assignment.......<code>foo.=..{ |
| 80140 | 20 2e 61 20 3d 20 78 2c 20 2e 62 20 3d 20 79 20 7d 3c 2f 63 6f 64 65 3e 20 74 6f 20 74 68 65 20 | ..a.=.x,..b.=.y.}</code>.to.the. |
| 80160 | 74 77 6f 20 73 74 61 74 65 6d 65 6e 74 73 20 3c 63 6f 64 65 3e 66 6f 6f 2e 61 20 3d 20 78 3b 20 | two.statements.<code>foo.a.=.x;. |
| 80180 | 66 6f 6f 2e 62 20 3d 20 79 3b 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | foo.b.=.y;</code>........</p>... |
| 801a0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 63 61 6e 20 73 6f 6d 65 74 69 6d 65 73 | ....<p>.......This.can.sometimes |
| 801c0 | 20 62 65 20 69 6d 70 6f 72 74 61 6e 74 20 77 68 65 6e 20 61 73 73 69 67 6e 69 6e 67 20 61 6e 20 | .be.important.when.assigning.an. |
| 801e0 | 61 67 67 72 65 67 61 74 65 20 76 61 6c 75 65 20 77 68 65 72 65 20 74 68 65 20 69 6e 69 74 69 61 | aggregate.value.where.the.initia |
| 80200 | 6c 69 7a 61 74 69 6f 6e 0a 20 20 20 20 20 20 65 78 70 72 65 73 73 69 6f 6e 20 64 65 70 65 6e 64 | lization.......expression.depend |
| 80220 | 73 20 6f 6e 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 61 | s.on.the.previous.value.of.the.a |
| 80240 | 67 67 72 65 67 61 74 65 2e 20 54 68 65 20 65 61 73 69 65 73 74 20 77 61 79 20 74 6f 20 64 65 6d | ggregate..The.easiest.way.to.dem |
| 80260 | 6f 6e 73 74 72 61 74 65 20 74 68 69 73 20 69 73 20 62 79 0a 20 20 20 20 20 20 61 74 74 65 6d 70 | onstrate.this.is.by.......attemp |
| 80280 | 74 69 6e 67 20 74 6f 20 73 77 61 70 20 66 69 65 6c 64 73 20 6f 66 20 61 20 73 74 72 75 63 74 20 | ting.to.swap.fields.of.a.struct. |
| 802a0 | 6f 72 20 61 72 72 61 79 20 2d 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 6c 6f 67 69 63 20 6c | or.array.-.the.following.logic.l |
| 802c0 | 6f 6f 6b 73 20 73 6f 75 6e 64 2c 20 62 75 74 20 69 6e 20 66 61 63 74 20 69 73 20 6e 6f 74 3a 0a | ooks.sound,.but.in.fact.is.not:. |
| 802e0 | 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 |
| 80300 | 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 |
| 80320 | 3d 22 66 69 6c 65 22 3e 72 65 73 75 6c 74 5f 6c 6f 63 61 74 69 6f 6e 5f 69 6e 74 65 72 66 65 72 | ="file">result_location_interfer |
| 80340 | 69 6e 67 5f 77 69 74 68 5f 73 77 61 70 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | ing_with_swap.zig</cite></figcap |
| 80360 | 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 |
| 80380 | 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 |
| 803a0 | 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 |
| 803c0 | 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">" |
| 803e0 | 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 |
| 80400 | 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 |
| 80420 | 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 61 | n>.<span.class="tok-str">"a |
| 80440 | 74 74 65 6d 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 | ttempt.to.swap.array.elements.wi |
| 80460 | 74 68 20 61 72 72 61 79 20 69 6e 69 74 69 61 6c 69 7a 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | th.array.initializer"</span |
| 80480 | 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 |
| 804a0 | 3c 2f 73 70 61 6e 3e 20 61 72 72 3a 20 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 |
| 804c0 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | umber">2</span>]<span.class="tok |
| 804e0 | 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 2e 7b 20 3c 73 70 61 6e 20 63 6c 61 | -type">u32</span>.=..{.<span.cla |
| 80500 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ss="tok-number">1</span>,.<span. |
| 80520 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 | class="tok-number">2</span>.};.. |
| 80540 | 20 20 20 61 72 72 20 3d 20 2e 7b 20 61 72 72 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ...arr.=..{.arr[<span.class="tok |
| 80560 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 2c 20 61 72 72 5b 3c 73 70 61 6e 20 63 6c | -number">1</span>],.arr[<span.cl |
| 80580 | 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 7d 3b 0a 20 20 | ass="tok-number">0</span>].};... |
| 805a0 | 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 |
| 805c0 | 68 65 20 70 72 65 76 69 6f 75 73 20 6c 69 6e 65 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 | he.previous.line.is.equivalent.t |
| 805e0 | 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 77 6f 20 6c 69 6e 65 73 3a 3c 2f 73 70 61 6e | o.the.following.two.lines:</span |
| 80600 | 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"> |
| 80620 | 2f 2f 20 20 20 61 72 72 5b 30 5d 20 3d 20 61 72 72 5b 31 5d 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 | //...arr[0].=.arr[1];</span>.... |
| 80640 | 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">//... |
| 80660 | 61 72 72 5b 31 5d 20 3d 20 61 72 72 5b 30 5d 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | arr[1].=.arr[0];</span>.....<spa |
| 80680 | 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 6f 20 74 68 69 73 | n.class="tok-comment">//.So.this |
| 806a0 | 20 66 61 69 6c 73 21 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 | .fails!</span>.....<span.class=" |
| 806c0 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 72 5b 3c 73 | tok-kw">try</span>.expect(arr[<s |
| 806e0 | 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>] |
| 80700 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f | .==.<span.class="tok-number">2</ |
| 80720 | 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 6f 6d 6d 65 6e 74 | span>);.<span.class="tok-comment |
| 80740 | 22 3e 2f 2f 20 73 75 63 63 65 65 64 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ">//.succeeds</span>.....<span.c |
| 80760 | 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( |
| 80780 | 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 3c 2f | arr[<span.class="tok-number">1</ |
| 807a0 | 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | span>].==.<span.class="tok-numbe |
| 807c0 | 72 22 3e 31 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 | r">1</span>);.<span.class="tok-c |
| 807e0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 66 61 69 6c 73 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e | omment">//.fails</span>.}</code> |
| 80800 | 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 |
| 80820 | 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 |
| 80840 | 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 |
| 80860 | 74 20 72 65 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 | t.result_location_interfering_wi |
| 80880 | 74 68 5f 73 77 61 70 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 72 65 73 75 6c 74 5f 6c 6f 63 | th_swap.zig</kbd>.1/1.result_loc |
| 808a0 | 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 74 65 73 74 | ation_interfering_with_swap.test |
| 808c0 | 2e 61 74 74 65 6d 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 | .attempt.to.swap.array.elements. |
| 808e0 | 77 69 74 68 20 61 72 72 61 79 20 69 6e 69 74 69 61 6c 69 7a 65 72 2e 2e 2e 46 41 49 4c 20 28 54 | with.array.initializer...FAIL.(T |
| 80900 | 65 73 74 55 6e 65 78 70 65 63 74 65 64 52 65 73 75 6c 74 29 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | estUnexpectedResult).<span.class |
| 80920 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 | ="sgr-1m">/home/andy/src/zig/lib |
| 80940 | 2f 73 74 64 2f 74 65 73 74 69 6e 67 2e 7a 69 67 3a 35 34 30 3a 31 34 3c 2f 73 70 61 6e 3e 3a 20 | /std/testing.zig:540:14</span>:. |
| 80960 | 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 63 65 31 66 20 69 | <span.class="sgr-2m">0x103ce1f.i |
| 80980 | 6e 20 65 78 70 65 63 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 66 20 28 21 | n.expect.(test)</span>.....if.(! |
| 809a0 | 6f 6b 29 20 72 65 74 75 72 6e 20 65 72 72 6f 72 2e 54 65 73 74 55 6e 65 78 70 65 63 74 65 64 52 | ok).return.error.TestUnexpectedR |
| 809c0 | 65 73 75 6c 74 3b 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 | esult;..............<span.class= |
| 809e0 | 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=" |
| 80a00 | 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c | sgr-1m">/home/andy/src/zig/doc/l |
| 80a20 | 61 6e 67 72 65 66 2f 72 65 73 75 6c 74 5f 6c 6f 63 61 74 69 6f 6e 5f 69 6e 74 65 72 66 65 72 69 | angref/result_location_interferi |
| 80a40 | 6e 67 5f 77 69 74 68 5f 73 77 61 70 2e 7a 69 67 3a 31 30 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | ng_with_swap.zig:10:5</span>:.<s |
| 80a60 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 63 66 38 35 20 69 6e 20 | pan.class="sgr-2m">0x103cf85.in. |
| 80a80 | 74 65 73 74 2e 61 74 74 65 6d 70 74 20 74 6f 20 73 77 61 70 20 61 72 72 61 79 20 65 6c 65 6d 65 | test.attempt.to.swap.array.eleme |
| 80aa0 | 6e 74 73 20 77 69 74 68 20 61 72 72 61 79 20 69 6e 69 74 69 61 6c 69 7a 65 72 20 28 74 65 73 74 | nts.with.array.initializer.(test |
| 80ac0 | 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 74 72 79 20 65 78 70 65 63 74 28 61 72 72 5b 31 5d 20 3d | )</span>.....try.expect(arr[1].= |
| 80ae0 | 3d 20 31 29 3b 20 2f 2f 20 66 61 69 6c 73 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | =.1);.//.fails.....<span.class=" |
| 80b00 | 73 67 72 2d 33 32 6d 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 30 20 70 61 73 73 65 64 3b 20 30 20 73 6b | sgr-32m">^</span>.0.passed;.0.sk |
| 80b20 | 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 6f 6c 6c | ipped;.1.failed..error:.the.foll |
| 80b40 | 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 68 20 65 | owing.test.command.failed.with.e |
| 80b60 | 78 69 74 20 63 6f 64 65 20 31 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 2e | xit.code.1:./home/andy/src/zig/. |
| 80b80 | 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 63 34 32 63 36 30 31 39 66 64 66 35 34 38 66 37 30 36 35 35 | zig-cache/o/c42c6019fdf548f70655 |
| 80ba0 | 61 61 66 65 33 36 37 33 61 34 36 65 2f 74 65 73 74 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c | aafe3673a46e/test.</samp></pre>< |
| 80bc0 | 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 66 6f | /figure>........<p>.......The.fo |
| 80be0 | 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 20 73 6f 6d 65 20 63 | llowing.table.details.how.some.c |
| 80c00 | 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 74 65 20 72 65 73 75 | ommon.expressions.propagate.resu |
| 80c20 | 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 20 3c 63 6f 64 65 3e | lt.locations,.where.......<code> |
| 80c40 | 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 20 61 72 65 20 | x</code>.and.<code>y</code>.are. |
| 80c60 | 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 2e 20 4e 6f 74 65 20 | arbitrary.sub-expressions..Note. |
| 80c80 | 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 6e 73 20 63 61 6e 6e | that.......some.expressions.cann |
| 80ca0 | 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 75 6c 74 20 6c 6f 63 | ot.provide.meaningful.result.loc |
| 80cc0 | 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 2c 20 65 76 65 6e 20 | ations.to.sub-expressions,.even. |
| 80ce0 | 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 68 61 76 65 20 61 20 | if.they.......themselves.have.a. |
| 80d00 | 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 70 3e 0a 20 20 20 20 | result.location........</p>..... |
| 80d20 | 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 65 72 22 3e 0a 20 20 | ..<div.class="table-wrapper">... |
| 80d40 | 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 64 3e 0a 20 20 20 20 | ....<table>.........<thead>..... |
| 80d60 | 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 |
| 80d80 | 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 20 20 20 20 20 20 20 | ="col">Expression</th>.......... |
| 80da0 | 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 20 4c 6f 63 61 74 69 | ...<th.scope="col">Result.Locati |
| 80dc0 | 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 63 6f 70 65 3d 22 63 | on</th>.............<th.scope="c |
| 80de0 | 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 4c 6f 63 61 74 69 | ol">Sub-expression.Result.Locati |
| 80e00 | 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 20 20 20 20 20 20 20 | ons</th>...........</tr>........ |
| 80e20 | 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 20 | .</thead>.........<tbody>....... |
| 80e40 | 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=" |
| 80e60 | 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 6b 77 22 3e | row"><code><span.class="tok-kw"> |
| 80e80 | 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 63 6f 64 65 3e 3c 2f | const</span>.val:.T.=.x</code></ |
| 80ea0 | 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 20 20 20 | th>.............<td>-</td>...... |
| 80ec0 | 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 73 20 72 65 | .......<td><code>x</code>.has.re |
| 80ee0 | 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 3c 2f 63 6f | sult.location.<code>&val</co |
| 80f00 | 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 20 20 20 20 | de></td>...........</tr>........ |
| 80f20 | 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 |
| 80f40 | 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 6b 77 22 3e 76 | ow"><code><span.class="tok-kw">v |
| 80f60 | 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 65 3e 3c 2f 74 68 3e | ar</span>.val:.T.=.x</code></th> |
| 80f80 | 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>......... |
| 80fa0 | 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 6c | ....<td><code>x</code>.has.resul |
| 80fc0 | 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 3e | t.location.<code>&val</code> |
| 80fe0 | 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 20 | </td>...........</tr>........... |
| 81000 | 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" |
| 81020 | 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 3e 0a 20 20 20 20 20 | ><code>val.=.x</code></th>...... |
| 81040 | 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 20 20 3c 74 | .......<td>-</td>.............<t |
| 81060 | 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 6c 74 20 6c 6f 63 61 | d><code>x</code>.has.result.loca |
| 81080 | 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 3e 3c 2f 74 64 3e 0a | tion.<code>&val</code></td>. |
| 810a0 | 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>.. |
| 810c0 | 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 |
| 810e0 | 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</ |
| 81100 | 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 20 20 20 20 20 20 20 | span>(T,.x)</code></th>......... |
| 81120 | 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 20 20 | ....<td><code>ptr</code></td>... |
| 81140 | 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 73 | ..........<td><code>x</code>.has |
| 81160 | 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 20 20 20 20 20 20 20 | .no.result.location</td>........ |
| 81180 | 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 20 20 | ...</tr>...........<tr>......... |
| 811a0 | 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 26 61 6d 70 3b 78 | ....<th.scope="row"><code>&x |
| 811c0 | 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 6f | </code></th>.............<td><co |
| 811e0 | 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 3c | de>ptr</code></td>.............< |
| 81200 | 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 20 | td><code>x</code>.has.no.result. |
| 81220 | 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 20 | location</td>...........</tr>... |
| 81240 | 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 |
| 81260 | 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 3e 3c 2f 74 68 3e 0a | pe="row"><code>f(x)</code></th>. |
| 81280 | 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 64 65 3e | ............<td><code>ptr</code> |
| 812a0 | 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 |
| 812c0 | 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 3c 2f 74 64 3e | ode>.has.no.result.location</td> |
| 812e0 | 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 74 72 3e 0a | ...........</tr>...........<tr>. |
| 81300 | 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 |
| 81320 | 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 20 20 20 20 20 20 3c | e>.{x}</code></th>.............< |
| 81340 | 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 20 | td><code>ptr</code></td>........ |
| 81360 | 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 |
| 81380 | 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 72 5b 3c 73 70 61 6e | lt.location.<code>&ptr[<span |
| 813a0 | 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 2f 63 | .class="tok-number">0</span>]</c |
| 813c0 | 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 20 20 20 | ode></td>...........</tr>....... |
| 813e0 | 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=" |
| 81400 | 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 6f 64 65 3e 3c 2f 74 | row"><code>.{..a.=.x.}</code></t |
| 81420 | 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 |
| 81440 | 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 |
| 81460 | 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 6f 6e 20 3c 63 6f 64 | </code>.has.result.location.<cod |
| 81480 | 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 20 20 20 20 20 20 20 | e>&ptr.a</code></td>........ |
| 814a0 | 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 20 20 | ...</tr>...........<tr>......... |
| 814c0 | 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 54 7b 78 7d 3c 2f | ....<th.scope="row"><code>T{x}</ |
| 814e0 | 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 6f 64 65 | code></th>.............<td><code |
| 81500 | 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 3c 74 64 | >ptr</code></td>.............<td |
| 81520 | 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 20 6c 6f | ><code>x</code>.has.no.result.lo |
| 81540 | 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 73 20 64 6f 20 6e 6f | cation.(typed.initializers.do.no |
| 81560 | 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 6f 6e 73 29 3c 2f 74 | t.propagate.result.locations)</t |
| 81580 | 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 74 72 | d>...........</tr>...........<tr |
| 815a0 | 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 |
| 815c0 | 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 68 3e 0a 20 20 20 20 | ode>T{..a.=.x.}</code></th>..... |
| 815e0 | 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 2f 74 64 | ........<td><code>ptr</code></td |
| 81600 | 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> |
| 81620 | 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 74 79 70 65 64 20 69 | .has.no.result.location.(typed.i |
| 81640 | 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 61 74 65 20 72 65 73 | nitializers.do.not.propagate.res |
| 81660 | 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 20 20 20 20 20 3c 2f | ult.locations)</td>...........</ |
| 81680 | 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 3c | tr>...........<tr>.............< |
| 816a0 | 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 73 | th.scope="row"><code><span.class |
| 816c0 | 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 78 29 3c 2f | ="tok-builtin">@Type</span>(x)</ |
| 816e0 | 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 6f 64 65 | code></th>.............<td><code |
| 81700 | 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 3c 74 64 | >ptr</code></td>.............<td |
| 81720 | 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 20 6c 6f | ><code>x</code>.has.no.result.lo |
| 81740 | 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 20 20 20 | cation</td>...........</tr>..... |
| 81760 | 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 |
| 81780 | 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 62 75 | ="row"><code><span.class="tok-bu |
| 817a0 | 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 29 3c 2f 63 6f 64 65 | iltin">@typeInfo</span>(x)</code |
| 817c0 | 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 |
| 817e0 | 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 |
| 81800 | 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 |
| 81820 | 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>......... |
| 81840 | 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 |
| 81860 | 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 64 65 3e 3c 2f 74 68 | w"><code>x.<<.y</code></th |
| 81880 | 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 64 | >.............<td><code>ptr</cod |
| 818a0 | 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 3c | e></td>.............<td><code>x< |
| 818c0 | 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 20 64 6f 20 6e 6f 74 | /code>.and.<code>y</code>.do.not |
| 818e0 | 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 64 3e 0a 20 20 20 20 | .have.result.locations</td>..... |
| 81900 | 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>.... |
| 81920 | 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 0a | ...</table>.......</div>........ |
| 81940 | 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 6e 67 6e 61 6d 65 73 | ..............<h2.id="usingnames |
| 81960 | 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 6e 61 6d 65 73 70 61 | pace"><a.href="#toc-usingnamespa |
| 81980 | 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 20 63 6c 61 73 73 3d | ce">usingnamespace</a>.<a.class= |
| 819a0 | 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 63 65 22 3e c2 a7 3c | "hdr".href="#usingnamespace">..< |
| 819c0 | 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 63 6f 64 65 3e | /a></h2>........<p>.......<code> |
| 819e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 | <span.class="tok-kw">usingnamesp |
| 81a00 | 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 63 6c 61 72 61 74 69 | ace</span></code>.is.a.declarati |
| 81a20 | 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 6c 69 63 0a 20 20 20 | on.that.mixes.all.the.public.... |
| 81a40 | 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 65 72 61 6e 64 2c 20 | ...declarations.of.the.operand,. |
| 81a60 | 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 23 73 74 72 75 63 74 | which.must.be.a.<a.href="#struct |
| 81a80 | 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 6e 69 6f 6e 22 3e 75 | ">struct</a>,.<a.href="#union">u |
| 81aa0 | 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 3e 65 6e 75 6d 3c 2f | nion</a>,.<a.href="#enum">enum</ |
| 81ac0 | 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 61 71 75 65 22 3e 6f | a>,.......or.<a.href="#opaque">o |
| 81ae0 | 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 70 61 63 65 3a 0a 20 | paque</a>,.into.the.namespace:.. |
| 81b00 | 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 |
| 81b20 | 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= |
| 81b40 | 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 65 2e 7a 69 67 3c 2f | "file">test_usingnamespace.zig</ |
| 81b60 | 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 |
| 81b80 | 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 |
| 81ba0 | 70 61 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 73 69 6e 67 20 | pan.class="tok-str">"using. |
| 81bc0 | 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 3e 20 7b 0a 20 20 20 | std.namespace"</span>.{.... |
| 81be0 | 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 |
| 81c00 | 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 77 22 3e 73 74 72 75 | n>.S.=.<span.class="tok-kw">stru |
| 81c20 | 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 20 63 6c 61 73 73 3d | ct</span>.{.........<span.class= |
| 81c40 | 22 74 6f 6b 2d 6b 77 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f 73 70 61 6e 3e 20 3c | "tok-kw">usingnamespace</span>.< |
| 81c60 | 73 70 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 |
| 81c80 | 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 |
| 81ca0 | 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 20 20 7d 3b 0a 20 20 | uot;std"</span>);.....};... |
| 81cc0 | 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 |
| 81ce0 | 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 63 6c 61 73 73 3d 22 | >.S.testing.expect(<span.class=" |
| 81d00 | 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 3c 2f 63 6f 64 65 3e | tok-null">true</span>);.}</code> |
| 81d20 | 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 |
| 81d40 | 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 |
| 81d60 | 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 |
| 81d80 | 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 3c 2f 6b 62 64 3e 0a | t.test_usingnamespace.zig</kbd>. |
| 81da0 | 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 65 73 74 2e 75 73 69 | 1/1.test_usingnamespace.test.usi |
| 81dc0 | 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 20 31 20 74 65 73 74 | ng.std.namespace...OK.All.1.test |
| 81de0 | 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> |
| 81e00 | 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 20 63 6c | ........<p>.......<code><span.cl |
| 81e20 | 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 |
| 81e40 | 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 61 6e 20 69 6d 70 6f 72 74 61 6e 74 20 75 73 65 20 63 | n></code>.has.an.important.use.c |
| 81e60 | 61 73 65 20 77 68 65 6e 20 6f 72 67 61 6e 69 7a 69 6e 67 20 74 68 65 20 70 75 62 6c 69 63 0a 20 | ase.when.organizing.the.public.. |
| 81e80 | 20 20 20 20 20 41 50 49 20 6f 66 20 61 20 66 69 6c 65 20 6f 72 20 70 61 63 6b 61 67 65 2e 20 46 | .....API.of.a.file.or.package..F |
| 81ea0 | 6f 72 20 65 78 61 6d 70 6c 65 2c 20 6f 6e 65 20 6d 69 67 68 74 20 68 61 76 65 20 3c 63 6f 64 65 | or.example,.one.might.have.<code |
| 81ec0 | 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 3e 20 77 69 74 68 20 | .class="file">c.zig</code>.with. |
| 81ee0 | 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 22 23 49 6d 70 6f 72 | all.of.the.......<a.href="#Impor |
| 81f00 | 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 6d 70 6f 72 74 73 3c | t-from-C-Header-File">C.imports< |
| 81f20 | 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 67 75 72 65 3e 3c 66 | /a>:.......</p>.......<figure><f |
| 81f40 | 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. |
| 81f60 | 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 3c 2f 66 69 67 63 61 | class="file">c.zig</cite></figca |
| 81f80 | 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 |
| 81fa0 | 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 |
| 81fc0 | 6b 2d 6b 77 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | k-kw">usingnamespace</span>.<spa |
| 81fe0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f | n.class="tok-builtin">@cImport</ |
| 82000 | 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 6f 6b 2d 62 75 69 | span>({.....<span.class="tok-bui |
| 82020 | 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ltin">@cInclude</span>(<span.cla |
| 82040 | 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 67 6c 2e 68 26 71 75 | ss="tok-str">"epoxy/gl.h&qu |
| 82060 | 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 |
| 82080 | 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 70 61 | k-builtin">@cInclude</span>(<spa |
| 820a0 | 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 4c 46 57 2f 67 6c 66 | n.class="tok-str">"GLFW/glf |
| 820c0 | 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 73 70 61 6e 20 63 6c | w3.h"</span>);.....<span.cl |
| 820e0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e | ass="tok-builtin">@cDefine</span |
| 82100 | 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 54 | >(<span.class="tok-str">"ST |
| 82120 | 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 20 3c 73 70 61 6e 20 | BI_ONLY_PNG"</span>,.<span. |
| 82140 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 26 71 75 6f 74 3b 3c 2f 73 70 | class="tok-str">""</sp |
| 82160 | 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | an>);.....<span.class="tok-built |
| 82180 | 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | in">@cDefine</span>(<span.class= |
| 821a0 | 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 54 44 49 4f 26 71 75 | "tok-str">"STBI_NO_STDIO&qu |
| 821c0 | 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | ot;</span>,.<span.class="tok-str |
| 821e0 | 22 3e 26 71 75 6f 74 3b 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 | ">""</span>);.....<spa |
| 82200 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c | n.class="tok-builtin">@cInclude< |
| 82220 | 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 |
| 82240 | 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 6e 3e 29 3b 0a 7d 29 | ot;stb_image.h"</span>);.}) |
| 82260 | 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 20 3c 70 | ;</code></pre></figure>.......<p |
| 82280 | 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 20 64 65 6d 6f 6e 73 | >.......The.above.example.demons |
| 822a0 | 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 63 6c 61 73 73 3d 22 | trates.using.<code><span.class=" |
| 822c0 | 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 71 75 61 | tok-kw">pub</span></code>.to.qua |
| 822e0 | 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 6e 20 63 6c 61 73 73 | lify.the.......<code><span.class |
| 82300 | 3d 22 74 6f 6b 2d 6b 77 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f 73 70 61 6e 3e 3c | ="tok-kw">usingnamespace</span>< |
| 82320 | 2f 63 6f 64 65 3e 20 61 64 64 69 74 69 6f 6e 61 6c 6c 79 20 6d 61 6b 65 73 20 74 68 65 20 69 6d | /code>.additionally.makes.the.im |
| 82340 | 70 6f 72 74 65 64 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e | ported.declarations.......<code> |
| 82360 | 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 3c | <span.class="tok-kw">pub</span>< |
| 82380 | 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 74 6f 20 66 6f 72 77 | /code>..This.can.be.used.to.forw |
| 823a0 | 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 70 72 65 63 69 73 65 | ard.declarations,.giving.precise |
| 823c0 | 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 64 65 63 6c 61 72 61 | .control.......over.what.declara |
| 823e0 | 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 73 2e 0a 20 20 20 20 | tions.a.given.file.exposes...... |
| 82400 | 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 20 69 64 3d 22 63 6f | ..</p>................<h2.id="co |
| 82420 | 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 70 74 69 6d 65 22 3e | mptime"><a.href="#toc-comptime"> |
| 82440 | 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 72 22 20 68 72 65 66 | comptime</a>.<a.class="hdr".href |
| 82460 | 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 0a 20 20 20 20 20 20 | ="#comptime">..</a></h2>........ |
| 82480 | 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 72 74 61 6e 63 65 20 | <p>.......Zig.places.importance. |
| 824a0 | 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 20 61 6e 20 65 78 70 | on.the.concept.of.whether.an.exp |
| 824c0 | 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 74 69 6d 65 | ression.is.known.at.compile-time |
| 824e0 | 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 69 66 66 65 72 65 6e | ........There.are.a.few.differen |
| 82500 | 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 75 73 65 64 2c 20 61 | t.places.this.concept.is.used,.a |
| 82520 | 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 61 72 65 20 75 73 65 | nd.these.building.blocks.are.use |
| 82540 | 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 61 67 65 20 73 6d 61 | d.......to.keep.the.language.sma |
| 82560 | 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 6c 2e 0a 20 20 20 20 | ll,.readable,.and.powerful...... |
| 82580 | 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 6f 64 75 63 69 6e 67 | ..</p>.......<h3.id="Introducing |
| 825a0 | 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 3c 61 20 68 72 | -the-Compile-Time-Concept"><a.hr |
| 825c0 | 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 43 6f 6d 70 69 6c 65 | ef="#toc-Introducing-the-Compile |
| 825e0 | 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 67 20 74 68 65 20 43 | -Time-Concept">Introducing.the.C |
| 82600 | 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 61 20 63 6c 61 73 73 | ompile-Time.Concept</a>.<a.class |
| 82620 | 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 2d 74 68 65 2d 43 6f | ="hdr".href="#Introducing-the-Co |
| 82640 | 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 3e 3c 2f 68 33 3e 0a | mpile-Time-Concept">..</a></h3>. |
| 82660 | 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 50 61 72 61 | .......<h4.id="Compile-Time-Para |
| 82680 | 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 70 69 6c 65 2d 54 69 | meters"><a.href="#toc-Compile-Ti |
| 826a0 | 6d 65 2d 50 61 72 61 6d 65 74 65 72 73 22 3e 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 50 61 72 61 | me-Parameters">Compile-Time.Para |
| 826c0 | 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 20 68 72 65 66 3d 22 | meters</a>.<a.class="hdr".href=" |
| 826e0 | 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 3e c2 a7 3c 2f 61 3e | #Compile-Time-Parameters">..</a> |
| 82700 | 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 6d 70 69 6c 65 2d 74 | </h4>........<p>.......Compile-t |
| 82720 | 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 20 69 6d 70 6c 65 6d | ime.parameters.is.how.Zig.implem |
| 82740 | 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 69 6c 65 2d 74 69 6d | ents.generics..It.is.compile-tim |
| 82760 | 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 0a 20 20 20 20 20 20 | e.duck.typing........</p>....... |
| 82780 | 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 |
| 827a0 | 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 6d 70 69 6c 65 2d 74 | ap"><cite.class="file">compile-t |
| 827c0 | 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 3e 3c 2f 66 69 67 63 | ime_duck_typing.zig</cite></figc |
| 827e0 | 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 |
| 82800 | 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 |
| 82820 | 6b 2d 66 6e 22 3e 6d 61 78 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | k-fn">max</span>(<span.class="to |
| 82840 | 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 |
| 82860 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 | lass="tok-type">type</span>,.a:. |
| 82880 | 54 2c 20 62 3a 20 54 29 20 54 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | T,.b:.T).T.{.....<span.class="to |
| 828a0 | 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= |
| 828c0 | 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 26 67 74 3b 20 62 29 20 61 20 | "tok-kw">if</span>.(a.>.b).a. |
| 828e0 | 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> |
| 82900 | 20 62 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 | .b;.}.<span.class="tok-kw">fn</s |
| 82920 | 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 69 6d 6d 65 54 | pan>.<span.class="tok-fn">gimmeT |
| 82940 | 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 73 70 61 6e 20 63 6c | heBiggerFloat</span>(a:.<span.cl |
| 82960 | 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 62 3a 20 3c 73 | ass="tok-type">f32</span>,.b:.<s |
| 82980 | 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>) |
| 829a0 | 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 61 | .<span.class="tok-type">f32</spa |
| 829c0 | 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 |
| 829e0 | 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 73 73 3d 22 74 6f 6b | turn</span>.max(<span.class="tok |
| 82a00 | 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 0a 7d 0a 3c 73 70 61 | -type">f32</span>,.a,.b);.}.<spa |
| 82a20 | 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 |
| 82a40 | 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 69 67 67 65 72 49 6e | .class="tok-fn">gimmeTheBiggerIn |
| 82a60 | 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 73 73 3d 22 74 6f 6b | teger</span>(a:.<span.class="tok |
| 82a80 | 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 61 6e 20 63 6c 61 73 | -type">u64</span>,.b:.<span.clas |
| 82aa0 | 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 3c 73 70 61 6e 20 63 | s="tok-type">u64</span>).<span.c |
| 82ac0 | 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 7b 0a 20 20 20 | lass="tok-type">u64</span>.{.... |
| 82ae0 | 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 |
| 82b00 | 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 74 79 70 65 22 3e 75 | an>.max(<span.class="tok-type">u |
| 82b20 | 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 3e 3c 2f 70 72 65 3e | 64</span>,.a,.b);.}</code></pre> |
| 82b40 | 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 5a 69 | </figure>........<p>.......In.Zi |
| 82b60 | 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 63 69 74 69 7a 65 6e | g,.types.are.first-class.citizen |
| 82b80 | 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 6f 20 76 61 72 69 61 | s..They.can.be.assigned.to.varia |
| 82ba0 | 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 73 20 74 6f 20 66 75 | bles,.passed.as.parameters.to.fu |
| 82bc0 | 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 65 64 20 66 72 6f 6d | nctions,.......and.returned.from |
| 82be0 | 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 20 63 61 6e 20 6f 6e | .functions..However,.they.can.on |
| 82c00 | 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 20 77 68 69 63 68 20 | ly.be.used.in.expressions.which. |
| 82c20 | 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 74 69 6d 65 3c 2f 65 | are.known.at.<em>compile-time</e |
| 82c40 | 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 65 20 70 61 72 61 6d | m>,.......which.is.why.the.param |
| 82c60 | 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 65 20 61 62 6f 76 65 | eter.<code>T</code>.in.the.above |
| 82c80 | 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 69 74 68 20 3c 63 6f | .snippet.must.be.marked.with.<co |
| 82ca0 | 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 |
| 82cc0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | </span></code>........</p>...... |
| 82ce0 | 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 63 6c 61 73 73 3d 22 | .<p>.......A.<code><span.class=" |
| 82d00 | 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 20 70 | tok-kw">comptime</span></code>.p |
| 82d20 | 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 20 20 3c 2f 70 3e 0a | arameter.means.that:.......</p>. |
| 82d40 | 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 20 74 68 65 20 63 61 | ......<ul>.........<li>At.the.ca |
| 82d60 | 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 20 6b 6e 6f 77 6e 20 | llsite,.the.value.must.be.known. |
| 82d80 | 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 20 61 20 63 6f 6d 70 | at.compile-time,.or.it.is.a.comp |
| 82da0 | 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 6c 69 3e 49 6e 20 74 | ile.error.</li>.........<li>In.t |
| 82dc0 | 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 68 65 20 76 61 6c 75 | he.function.definition,.the.valu |
| 82de0 | 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 65 2e 3c 2f 6c 69 3e | e.is.known.at.compile-time.</li> |
| 82e00 | 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 46 6f 72 | .......</ul>.......<p>.......For |
| 82e20 | 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 6e 74 72 6f 64 75 63 | .example,.if.we.were.to.introduc |
| 82e40 | 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 20 61 62 6f 76 65 20 | e.another.function.to.the.above. |
| 82e60 | 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 20 3c 66 69 67 75 72 | snippet:.......</p>.......<figur |
| 82e80 | 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 |
| 82ea0 | 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 65 73 6f 6c 76 65 64 | ite.class="file">test_unresolved |
| 82ec0 | 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 3e 3c 2f 66 69 67 63 | _comptime_value.zig</cite></figc |
| 82ee0 | 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 |
| 82f00 | 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 |
| 82f20 | 6b 2d 66 6e 22 3e 6d 61 78 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | k-fn">max</span>(<span.class="to |
| 82f40 | 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 |
| 82f60 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 | lass="tok-type">type</span>,.a:. |
| 82f80 | 54 2c 20 62 3a 20 54 29 20 54 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | T,.b:.T).T.{.....<span.class="to |
| 82fa0 | 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= |
| 82fc0 | 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 26 67 74 3b 20 62 29 20 61 20 | "tok-kw">if</span>.(a.>.b).a. |
| 82fe0 | 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> |
| 83000 | 20 62 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c | .b;.}.<span.class="tok-kw">test< |
| 83020 | 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 |
| 83040 | 6f 74 3b 74 72 79 20 74 6f 20 70 61 73 73 20 61 20 72 75 6e 74 69 6d 65 20 74 79 70 65 26 71 75 | ot;try.to.pass.a.runtime.type&qu |
| 83060 | 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 6c 61 73 73 | ot;</span>.{.....foo(<span.class |
| 83080 | 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 0a 3c 73 70 | ="tok-null">false</span>);.}.<sp |
| 830a0 | 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 |
| 830c0 | 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 63 6f 6e 64 | n.class="tok-fn">foo</span>(cond |
| 830e0 | 69 74 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f | ition:.<span.class="tok-type">bo |
| 83100 | 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | ol</span>).<span.class="tok-type |
| 83120 | 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= |
| 83140 | 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 6d | "tok-kw">const</span>.result.=.m |
| 83160 | 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 66 3c 2f 73 70 61 6e | ax(<span.class="tok-kw">if</span |
| 83180 | 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 3d 22 74 6f 6b 2d 74 | >.(condition).<span.class="tok-t |
| 831a0 | 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 73 73 3d 22 74 6f 6b | ype">f32</span>.<span.class="tok |
| 831c0 | 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 22 74 6f | -kw">else</span>.<span.class="to |
| 831e0 | 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 20 63 6c 61 73 73 3d | k-type">u64</span>,.<span.class= |
| 83200 | 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 20 3c 73 70 61 6e 20 | "tok-number">1234</span>,.<span. |
| 83220 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e 3e 29 3b | class="tok-number">5678</span>); |
| 83240 | 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 3c 2f 70 72 65 3e 3c | ....._.=.result;.}</code></pre>< |
| 83260 | 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 |
| 83280 | 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> |
| 832a0 | 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_ |
| 832c0 | 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 3c 2f 6b | unresolved_comptime_value.zig</k |
| 832e0 | 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 64 6f 63 2f 6c 61 6e | bd>.<span.class="sgr-1m">doc/lan |
| 83300 | 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 76 61 | gref/test_unresolved_comptime_va |
| 83320 | 6c 75 65 2e 7a 69 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 | lue.zig:8:28:.</span><span.class |
| 83340 | 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 |
| 83360 | 6c 61 73 73 3d 22 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 | lass="sgr-1m">unable.to.resolve. |
| 83380 | 63 6f 6d 70 74 69 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 | comptime.value.</span>....const. |
| 833a0 | 72 65 73 75 6c 74 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 | result.=.max(if.(condition).f32. |
| 833c0 | 65 6c 73 65 20 75 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 | else.u64,.1234,.5678);.......... |
| 833e0 | 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 |
| 83400 | 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 6e 20 63 | gr-32m">^~~~~~~~~.</span><span.c |
| 83420 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 75 | lass="sgr-1m">doc/langref/test_u |
| 83440 | 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 3a 38 3a 32 | nresolved_comptime_value.zig:8:2 |
| 83460 | 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 36 6d 22 3e | 8:.</span><span.class="sgr-36m"> |
| 83480 | 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 2d 31 6d | note:.</span><span.class="sgr-1m |
| 834a0 | 22 3e 63 6f 6e 64 69 74 69 6f 6e 20 69 6e 20 63 6f 6d 70 74 69 6d 65 20 62 72 61 6e 63 68 20 6d | ">condition.in.comptime.branch.m |
| 834c0 | 75 73 74 20 62 65 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 | ust.be.comptime-known.</span><sp |
| 834e0 | 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 65 64 20 62 79 3a | an.class="sgr-2m">referenced.by: |
| 83500 | 0a 20 20 20 20 74 65 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 | .....test.try.to.pass.a.runtime. |
| 83520 | 74 79 70 65 3a 20 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 | type:.doc/langref/test_unresolve |
| 83540 | 64 5f 63 6f 6d 70 74 69 6d 65 5f 76 61 6c 75 65 2e 7a 69 67 3a 35 3a 35 0a 20 20 20 20 72 65 6d | d_comptime_value.zig:5:5.....rem |
| 83560 | 61 69 6e 69 6e 67 20 72 65 66 65 72 65 6e 63 65 20 74 72 61 63 65 73 20 68 69 64 64 65 6e 3b 20 | aining.reference.traces.hidden;. |
| 83580 | 75 73 65 20 27 2d 66 72 65 66 65 72 65 6e 63 65 2d 74 72 61 63 65 27 20 74 6f 20 73 65 65 20 61 | use.'-freference-trace'.to.see.a |
| 835a0 | 6c 6c 20 72 65 66 65 72 65 6e 63 65 20 74 72 61 63 65 73 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 | ll.reference.traces.</span>.</sa |
| 835c0 | 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>... |
| 835e0 | 20 20 20 20 54 68 69 73 20 69 73 20 61 6e 20 65 72 72 6f 72 20 62 65 63 61 75 73 65 20 74 68 65 | ....This.is.an.error.because.the |
| 83600 | 20 70 72 6f 67 72 61 6d 6d 65 72 20 61 74 74 65 6d 70 74 65 64 20 74 6f 20 70 61 73 73 20 61 20 | .programmer.attempted.to.pass.a. |
| 83620 | 76 61 6c 75 65 20 6f 6e 6c 79 20 6b 6e 6f 77 6e 20 61 74 20 72 75 6e 2d 74 69 6d 65 0a 20 20 20 | value.only.known.at.run-time.... |
| 83640 | 20 20 20 74 6f 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 68 69 63 68 20 65 78 70 65 63 74 73 20 61 | ...to.a.function.which.expects.a |
| 83660 | 20 76 61 6c 75 65 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 0a 20 20 | .value.known.at.compile-time.... |
| 83680 | 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 6e 6f 74 68 65 72 | ....</p>.......<p>.......Another |
| 836a0 | 20 77 61 79 20 74 6f 20 67 65 74 20 61 6e 20 65 72 72 6f 72 20 69 73 20 69 66 20 77 65 20 70 61 | .way.to.get.an.error.is.if.we.pa |
| 836c0 | 73 73 20 61 20 74 79 70 65 20 74 68 61 74 20 76 69 6f 6c 61 74 65 73 20 74 68 65 20 74 79 70 65 | ss.a.type.that.violates.the.type |
| 836e0 | 20 63 68 65 63 6b 65 72 20 77 68 65 6e 20 74 68 65 0a 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e | .checker.when.the.......function |
| 83700 | 20 69 73 20 61 6e 61 6c 79 7a 65 64 2e 20 54 68 69 73 20 69 73 20 77 68 61 74 20 69 74 20 6d 65 | .is.analyzed..This.is.what.it.me |
| 83720 | 61 6e 73 20 74 6f 20 68 61 76 65 20 3c 65 6d 3e 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 64 75 63 | ans.to.have.<em>compile-time.duc |
| 83740 | 6b 20 74 79 70 69 6e 67 3c 2f 65 6d 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | k.typing</em>........</p>....... |
| 83760 | 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 20 20 20 3c 2f 70 | <p>.......For.example:.......</p |
| 83780 | 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 |
| 837a0 | 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 |
| 837c0 | 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 70 65 2e 7a 69 67 | est_comptime_mismatched_type.zig |
| 837e0 | 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>< |
| 83800 | 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 |
| 83820 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 78 3c 2f 73 70 61 6e 3e 28 3c 73 | pan.class="tok-fn">max</span>(<s |
| 83840 | 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 |
| 83860 | 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 |
| 83880 | 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 29 20 54 20 7b 0a 20 20 20 20 3c 73 | e</span>,.a:.T,.b:.T).T.{.....<s |
| 838a0 | 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> |
| 838c0 | 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>. |
| 838e0 | 28 61 20 26 67 74 3b 20 62 29 20 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | (a.>.b).a.<span.class="tok-kw |
| 83900 | 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 62 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">else</span>.b;.}.<span.class=" |
| 83920 | 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= |
| 83940 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 72 79 20 74 6f 20 63 6f 6d 70 61 72 65 20 62 | "tok-str">"try.to.compare.b |
| 83960 | 6f 6f 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 6d 61 78 28 | ools"</span>.{....._.=.max( |
| 83980 | 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 |
| 839a0 | 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 74 72 75 65 3c | n>,.<span.class="tok-null">true< |
| 839c0 | 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 |
| 839e0 | 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 69 | alse</span>);.}</code></pre></fi |
| 83a00 | 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=" |
| 83a20 | 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 |
| 83a40 | 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 6d | e><samp>$.<kbd>zig.test.test_com |
| 83a60 | 70 74 69 6d 65 5f 6d 69 73 6d 61 74 63 68 65 64 5f 74 79 70 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a | ptime_mismatched_type.zig</kbd>. |
| 83a80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 | <span.class="sgr-1m">doc/langref |
| 83aa0 | 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 70 65 2e 7a | /test_comptime_mismatched_type.z |
| 83ac0 | 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 22 73 67 72 | ig:2:18:.</span><span.class="sgr |
| 83ae0 | 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= |
| 83b00 | 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 6c 6c 6f 77 | "sgr-1m">operator.>.not.allow |
| 83b20 | 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 20 20 72 65 | ed.for.type.'bool'.</span>....re |
| 83b40 | 74 75 72 6e 20 69 66 20 28 61 20 26 67 74 3b 20 62 29 20 61 20 65 6c 73 65 20 62 3b 0a 20 20 20 | turn.if.(a.>.b).a.else.b;.... |
| 83b60 | 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 |
| 83b80 | 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 73 67 72 2d | ">~~^~~.</span><span.class="sgr- |
| 83ba0 | 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 74 72 79 20 | 2m">referenced.by:.....test.try. |
| 83bc0 | 74 6f 20 63 6f 6d 70 61 72 65 20 62 6f 6f 6c 73 3a 20 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 | to.compare.bools:.doc/langref/te |
| 83be0 | 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 70 65 2e 7a 69 67 3a | st_comptime_mismatched_type.zig: |
| 83c00 | 35 3a 31 32 0a 20 20 20 20 72 65 6d 61 69 6e 69 6e 67 20 72 65 66 65 72 65 6e 63 65 20 74 72 61 | 5:12.....remaining.reference.tra |
| 83c20 | 63 65 73 20 68 69 64 64 65 6e 3b 20 75 73 65 20 27 2d 66 72 65 66 65 72 65 6e 63 65 2d 74 72 61 | ces.hidden;.use.'-freference-tra |
| 83c40 | 63 65 27 20 74 6f 20 73 65 65 20 61 6c 6c 20 72 65 66 65 72 65 6e 63 65 20 74 72 61 63 65 73 0a | ce'.to.see.all.reference.traces. |
| 83c60 | 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>.. |
| 83c80 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 6e 20 74 68 65 20 66 6c 69 70 20 73 69 64 65 | ......<p>.......On.the.flip.side |
| 83ca0 | 2c 20 69 6e 73 69 64 65 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 64 65 66 69 6e 69 74 69 6f 6e | ,.inside.the.function.definition |
| 83cc0 | 20 77 69 74 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 | .with.the.<code><span.class="tok |
| 83ce0 | 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 70 61 72 61 | -kw">comptime</span></code>.para |
| 83d00 | 6d 65 74 65 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 | meter,.the.......value.is.known. |
| 83d20 | 61 74 20 63 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 | at.compile-time..This.means.that |
| 83d40 | 20 77 65 20 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 | .we.actually.could.make.this.wor |
| 83d60 | 6b 20 66 6f 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 | k.for.the.bool.type.......if.we. |
| 83d80 | 77 61 6e 74 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 | wanted.to:.......</p>.......<fig |
| 83da0 | 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"> |
| 83dc0 | 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 6d 65 | <cite.class="file">test_comptime |
| 83de0 | 5f 6d 61 78 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 | _max_with_bool.zig</cite></figca |
| 83e00 | 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 |
| 83e20 | 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 |
| 83e40 | 2d 66 6e 22 3e 6d 61 78 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | -fn">max</span>(<span.class="tok |
| 83e60 | 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 6c | -kw">comptime</span>.T:.<span.cl |
| 83e80 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 | ass="tok-type">type</span>,.a:.T |
| 83ea0 | 2c 20 62 3a 20 54 29 20 54 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ,.b:.T).T.{.....<span.class="tok |
| 83ec0 | 2d 6b 77 22 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 | -kw">if</span>.(T.==.<span.class |
| 83ee0 | 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 7b 0a 20 20 20 20 20 | ="tok-type">bool</span>).{...... |
| 83f00 | 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</ |
| 83f20 | 73 70 61 6e 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 | span>.a.<span.class="tok-kw">or< |
| 83f40 | 2f 73 70 61 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 | /span>.b;.....}.<span.class="tok |
| 83f60 | 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 22 74 6f | -kw">else</span>.<span.class="to |
| 83f80 | 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 7b 0a 20 20 20 | k-kw">if</span>.(a.>.b).{.... |
| 83fa0 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e | .....<span.class="tok-kw">return |
| 83fc0 | 3c 2f 73 70 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 | </span>.a;.....}.<span.class="to |
| 83fe0 | 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | k-kw">else</span>.{.........<spa |
| 84000 | 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 62 | n.class="tok-kw">return</span>.b |
| 84020 | 3b 0a 20 20 20 20 7d 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | ;.....}.}.<span.class="tok-kw">t |
| 84040 | 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" |
| 84060 | 3e 26 71 75 6f 74 3b 74 72 79 20 74 6f 20 63 6f 6d 70 61 72 65 20 62 6f 6f 6c 73 26 71 75 6f 74 | >"try.to.compare.bools" |
| 84080 | 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- |
| 840a0 | 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- |
| 840c0 | 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 |
| 840e0 | 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 |
| 84100 | 70 61 6e 3e 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 | pan>).testing.expect(max(<span.c |
| 84120 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | lass="tok-type">bool</span>,.<sp |
| 84140 | 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> |
| 84160 | 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 74 72 75 65 3c 2f 73 | ,.<span.class="tok-null">true</s |
| 84180 | 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | pan>).==.<span.class="tok-null"> |
| 841a0 | 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 66 69 | true</span>);.}</code></pre></fi |
| 841c0 | 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=" |
| 841e0 | 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 |
| 84200 | 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 6d | e><samp>$.<kbd>zig.test.test_com |
| 84220 | 70 74 69 6d 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 | ptime_max_with_bool.zig</kbd>.1/ |
| 84240 | 31 20 74 65 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 | 1.test_comptime_max_with_bool.te |
| 84260 | 73 74 2e 74 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 | st.try.to.compare.bools...OK.All |
| 84280 | 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></ |
| 842a0 | 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 20 77 6f | figure>........<p>.......This.wo |
| 842c0 | 72 6b 73 20 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 | rks.because.Zig.implicitly.inlin |
| 842e0 | 65 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 69 66 | es.<code><span.class="tok-kw">if |
| 84300 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 20 77 68 65 6e 20 | </span></code>.expressions.when. |
| 84320 | 74 68 65 20 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 | the.condition.......is.known.at. |
| 84340 | 63 6f 6d 70 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 | compile-time,.and.the.compiler.g |
| 84360 | 75 61 72 61 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 | uarantees.that.it.will.skip.anal |
| 84380 | 79 73 69 73 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 | ysis.of.......the.branch.not.tak |
| 843a0 | 65 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 | en........</p>.......<p>.......T |
| 843c0 | 68 69 73 20 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 | his.means.that.the.actual.functi |
| 843e0 | 6f 6e 20 67 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 | on.generated.for.<code>max</code |
| 84400 | 3e 20 69 6e 20 74 68 69 73 20 73 69 74 75 61 74 69 6f 6e 20 6c 6f 6f 6b 73 20 6c 69 6b 65 0a 20 | >.in.this.situation.looks.like.. |
| 84420 | 20 20 20 20 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 | .....this:.......</p>.......<fig |
| 84440 | 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"> |
| 84460 | 3c 63 69 74 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 | <cite.class="file">compiler_gene |
| 84480 | 72 61 74 65 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 | rated_function.zig</cite></figca |
| 844a0 | 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 |
| 844c0 | 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 |
| 844e0 | 2d 66 6e 22 3e 6d 61 78 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -fn">max</span>(a:.<span.class=" |
| 84500 | 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 | tok-type">bool</span>,.b:.<span. |
| 84520 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3c 73 | class="tok-type">bool</span>).<s |
| 84540 | 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> |
| 84560 | 20 7b 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .{.....{.........<span.class="to |
| 84580 | 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 3c 73 70 61 6e 20 63 6c 61 73 | k-kw">return</span>.a.<span.clas |
| 845a0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 20 62 3b 0a 20 20 20 20 7d 0a 7d 3c | s="tok-kw">or</span>.b;.....}.}< |
| 845c0 | 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 70 3e | /code></pre></figure>........<p> |
| 845e0 | 0a 20 20 20 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 | .......All.the.code.that.dealt.w |
| 84600 | 69 74 68 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 20 76 61 6c 75 65 73 20 69 73 | ith.compile-time.known.values.is |
| 84620 | 20 65 6c 69 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 | .eliminated.and.we.are.left.with |
| 84640 | 20 6f 6e 6c 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 | .only.......the.necessary.run-ti |
| 84660 | 6d 65 20 63 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 | me.code.to.accomplish.the.task.. |
| 84680 | 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. |
| 846a0 | 77 6f 72 6b 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 | works.the.same.way.for.<code><sp |
| 846c0 | 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 3c | an.class="tok-kw">switch</span>< |
| 846e0 | 2f 63 6f 64 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 | /code>.expressions.-.they.are.im |
| 84700 | 70 6c 69 63 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 | plicitly.inlined.......when.the. |
| 84720 | 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 74 69 6d | target.expression.is.compile-tim |
| 84740 | 65 20 6b 6e 6f 77 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | e.known........</p>............. |
| 84760 | 20 3c 68 34 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 | .<h4.id="Compile-Time-Variables" |
| 84780 | 3e 3c 61 20 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 | ><a.href="#toc-Compile-Time-Vari |
| 847a0 | 61 62 6c 65 73 22 3e 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 | ables">Compile-Time.Variables</a |
| 847c0 | 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d | >.<a.class="hdr".href="#Compile- |
| 847e0 | 54 69 6d 65 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 | Time-Variables">..</a></h4>..... |
| 84800 | 20 20 20 3c 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 | ...<p>.......In.Zig,.the.program |
| 84820 | 6d 65 72 20 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 | mer.can.label.variables.as.<code |
| 84840 | 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</ |
| 84860 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 54 68 69 73 20 67 75 61 72 61 6e 74 65 65 73 20 74 6f | span></code>..This.guarantees.to |
| 84880 | 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a 20 20 20 20 20 20 74 68 61 74 20 65 76 65 72 79 20 6c | .the.compiler.......that.every.l |
| 848a0 | 6f 61 64 20 61 6e 64 20 73 74 6f 72 65 20 6f 66 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 69 73 | oad.and.store.of.the.variable.is |
| 848c0 | 20 70 65 72 66 6f 72 6d 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 20 41 6e 79 20 | .performed.at.compile-time..Any. |
| 848e0 | 76 69 6f 6c 61 74 69 6f 6e 20 6f 66 20 74 68 69 73 20 72 65 73 75 6c 74 73 20 69 6e 20 61 0a 20 | violation.of.this.results.in.a.. |
| 84900 | 20 20 20 20 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | .....compile.error........</p>.. |
| 84920 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 63 6f 6d 62 69 6e 65 64 20 77 69 74 | .....<p>.......This.combined.wit |
| 84940 | 68 20 74 68 65 20 66 61 63 74 20 74 68 61 74 20 77 65 20 63 61 6e 20 3c 63 6f 64 65 3e 3c 73 70 | h.the.fact.that.we.can.<code><sp |
| 84960 | 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 6e 3e 3c | an.class="tok-kw">inline</span>< |
| 84980 | 2f 63 6f 64 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 | /code>.loops.allows.us.to.write. |
| 849a0 | 20 20 20 20 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 | ......a.function.which.is.partia |
| 849c0 | 6c 6c 79 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 20 61 6e | lly.evaluated.at.compile-time.an |
| 849e0 | 64 20 70 61 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 | d.partially.at.run-time........< |
| 84a00 | 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 65 3a | /p>.......<p>.......For.example: |
| 84a20 | 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 |
| 84a40 | 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 |
| 84a60 | 73 3d 22 66 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 | s="file">test_comptime_evaluatio |
| 84a80 | 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 |
| 84aa0 | 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</ |
| 84ac0 | 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>.expect.=.<span.class="tok- |
| 84ae0 | 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 |
| 84b00 | 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 |
| 84b20 | 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | pan>).testing.expect;..<span.cla |
| 84b40 | 73 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 6d 64 46 6e 20 3d | ss="tok-kw">const</span>.CmdFn.= |
| 84b60 | 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 |
| 84b80 | 61 6e 3e 20 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 | an>.{.....name:.[]<span.class="t |
| 84ba0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ok-kw">const</span>.<span.class= |
| 84bc0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 66 75 6e 63 3a 20 | "tok-type">u8</span>,.....func:. |
| 84be0 | 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 28 | <span.class="tok-kw">fn</span>.( |
| 84c00 | 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 |
| 84c20 | 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 |
| 84c40 | 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 63 | pan>,.};..<span.class="tok-kw">c |
| 84c60 | 6f 6e 73 74 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 | onst</span>.cmd_fns.=.[_]CmdFn{. |
| 84c80 | 20 20 20 20 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 | ....CmdFn{..name.=.<span.class=" |
| 84ca0 | 74 6f 6b 2d 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 | tok-str">"one"</span>, |
| 84cc0 | 20 2e 66 75 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 | ..func.=.one.},.....CmdFn{..name |
| 84ce0 | 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 74 | .=.<span.class="tok-str">"t |
| 84d00 | 77 6f 26 71 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 | wo"</span>,..func.=.two.},. |
| 84d20 | 20 20 20 20 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 | ....CmdFn{..name.=.<span.class=" |
| 84d40 | 74 6f 6b 2d 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 | tok-str">"three"</span |
| 84d60 | 3e 2c 20 2e 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 | >,..func.=.three.},.};.<span.cla |
| 84d80 | 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 |
| 84da0 | 73 3d 22 74 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 | s="tok-fn">one</span>(value:.<sp |
| 84dc0 | 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>). |
| 84de0 | 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 |
| 84e00 | 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 |
| 84e20 | 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=" |
| 84e40 | 74 6f 6b 2d 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 | tok-number">1</span>;.}.<span.cl |
| 84e60 | 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 |
| 84e80 | 73 73 3d 22 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 | ss="tok-fn">two</span>(value:.<s |
| 84ea0 | 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>) |
| 84ec0 | 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 |
| 84ee0 | 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 |
| 84f00 | 74 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 | turn</span>.value.+.<span.class= |
| 84f20 | 22 74 6f 6b 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 | "tok-number">2</span>;.}.<span.c |
| 84f40 | 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 |
| 84f60 | 61 73 73 3d 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 | ass="tok-fn">three</span>(value: |
| 84f80 | 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 |
| 84fa0 | 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 2f | n>).<span.class="tok-type">i32</ |
| 84fc0 | 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" |
| 84fe0 | 3e 72 65 74 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 | >return</span>.value.+.<span.cla |
| 85000 | 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 7d 0a 0a 3c 73 70 | ss="tok-number">3</span>;.}..<sp |
| 85020 | 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 |
| 85040 | 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 73 70 61 6e | n.class="tok-fn">performFn</span |
| 85060 | 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< |
| 85080 | 2f 73 70 61 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 | /span>.prefix_char:.<span.class= |
| 850a0 | 22 74 6f 6b 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 | "tok-type">u8</span>,.start_valu |
| 850c0 | 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | e:.<span.class="tok-type">i32</s |
| 850e0 | 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 |
| 85100 | 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 |
| 85120 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | w">var</span>.result:.<span.clas |
| 85140 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 73 74 61 72 74 5f | s="tok-type">i32</span>.=.start_ |
| 85160 | 76 61 6c 75 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | value;.....<span.class="tok-kw"> |
| 85180 | 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | comptime</span>.<span.class="tok |
| 851a0 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -kw">var</span>.i.=.<span.class= |
| 851c0 | 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 |
| 851e0 | 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 73 | .class="tok-kw">inline</span>.<s |
| 85200 | 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>. |
| 85220 | 28 69 20 26 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 | (i.<.cmd_fns.len).:.(i.+=.<sp |
| 85240 | 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 20 | an.class="tok-number">1</span>). |
| 85260 | 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 69 | {.........<span.class="tok-kw">i |
| 85280 | 66 3c 2f 73 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 | f</span>.(cmd_fns[i].name[<span. |
| 852a0 | 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 20 | class="tok-number">0</span>].==. |
| 852c0 | 70 72 65 66 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 | prefix_char).{.............resul |
| 852e0 | 74 20 3d 20 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 | t.=.cmd_fns[i].func(result);.... |
| 85300 | 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .....}.....}.....<span.class="to |
| 85320 | 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 7d 0a 0a 3c | k-kw">return</span>.result;.}..< |
| 85340 | 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>. |
| 85360 | 3c 73 70 61 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 | <span.class="tok-str">"perf |
| 85380 | 6f 72 6d 20 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 | orm.fn"</span>.{.....<span. |
| 853a0 | 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 |
| 853c0 | 28 70 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 | (performFn(<span.class="tok-str" |
| 853e0 | 3e 27 74 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 | >'t'</span>,.<span.class="tok-nu |
| 85400 | 6d 62 65 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 | mber">1</span>).==.<span.class=" |
| 85420 | 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 70 61 6e | tok-number">6</span>);.....<span |
| 85440 | 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 |
| 85460 | 74 28 70 65 72 66 6f 72 6d 46 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | t(performFn(<span.class="tok-str |
| 85480 | 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 6e | ">'o'</span>,.<span.class="tok-n |
| 854a0 | 75 6d 62 65 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 | umber">0</span>).==.<span.class= |
| 854c0 | 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 70 61 | "tok-number">1</span>);.....<spa |
| 854e0 | 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 |
| 85500 | 63 74 28 70 65 72 66 6f 72 6d 46 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | ct(performFn(<span.class="tok-st |
| 85520 | 72 22 3e 27 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 | r">'w'</span>,.<span.class="tok- |
| 85540 | 6e 75 6d 62 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 | number">99</span>).==.<span.clas |
| 85560 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f | s="tok-number">99</span>);.}</co |
| 85580 | 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 |
| 855a0 | 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 |
| 855c0 | 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. |
| 855e0 | 74 65 73 74 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 | test.test_comptime_evaluation.zi |
| 85600 | 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 65 76 61 6c 75 61 | g</kbd>.1/1.test_comptime_evalua |
| 85620 | 74 69 6f 6e 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 | tion.test.perform.fn...OK.All.1. |
| 85640 | 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 |
| 85660 | 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 65 78 61 6d 70 | ure>........<p>.......This.examp |
| 85680 | 6c 65 20 69 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 | le.is.a.bit.contrived,.because.t |
| 856a0 | 68 65 20 63 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 | he.compile-time.evaluation.compo |
| 856c0 | 6e 65 6e 74 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 | nent.is.unnecessary;.......this. |
| 856e0 | 63 6f 64 65 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 | code.would.work.fine.if.it.was.a |
| 85700 | 6c 6c 20 64 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 | ll.done.at.run-time..But.it.does |
| 85720 | 20 65 6e 64 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 | .end.up.generating.......differe |
| 85740 | 6e 74 20 63 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 | nt.code..In.this.example,.the.fu |
| 85760 | 6e 63 74 69 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 | nction.<code>performFn</code>.is |
| 85780 | 20 67 65 6e 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 | .generated.three.different.times |
| 857a0 | 2c 0a 20 20 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 | ,...........for.the.different.va |
| 857c0 | 6c 75 65 73 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 | lues.of.<code>prefix_char</code> |
| 857e0 | 20 70 72 6f 76 69 64 65 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 | .provided:.......</p>.......<fig |
| 85800 | 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"> |
| 85820 | 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 31 3c 2f | <cite.class="file">performFn_1</ |
| 85840 | 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 |
| 85860 | 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 20 74 | an.class="tok-comment">//.From.t |
| 85880 | 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 6f 6b | he.line:</span>.<span.class="tok |
| 858a0 | 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 27 74 | -comment">//.expect(performFn('t |
| 858c0 | 27 2c 20 31 29 20 3d 3d 20 36 29 3b 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ',.1).==.6);</span>.<span.class= |
| 858e0 | 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=" |
| 85900 | 74 6f 6b 2d 66 6e 22 3e 70 65 72 66 6f 72 6d 46 6e 3c 2f 73 70 61 6e 3e 28 73 74 61 72 74 5f 76 | tok-fn">performFn</span>(start_v |
| 85920 | 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | alue:.<span.class="tok-type">i32 |
| 85940 | 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"> |
| 85960 | 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 |
| 85980 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3a 20 3c 73 70 61 6e 20 63 | k-kw">var</span>.result:.<span.c |
| 859a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 73 74 61 | lass="tok-type">i32</span>.=.sta |
| 859c0 | 72 74 5f 76 61 6c 75 65 3b 0a 20 20 20 20 72 65 73 75 6c 74 20 3d 20 74 77 6f 28 72 65 73 75 6c | rt_value;.....result.=.two(resul |
| 859e0 | 74 29 3b 0a 20 20 20 20 72 65 73 75 6c 74 20 3d 20 74 68 72 65 65 28 72 65 73 75 6c 74 29 3b 0a | t);.....result.=.three(result);. |
| 85a00 | 20 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< |
| 85a20 | 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 3c 2f 66 | /span>.result;.}</code></pre></f |
| 85a40 | 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 |
| 85a60 | 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 |
| 85a80 | 6c 65 22 3e 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 | le">performFn_2</cite></figcapti |
| 85aa0 | 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 |
| 85ac0 | 6f 6d 6d 65 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 | omment">//.From.the.line:</span> |
| 85ae0 | 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 65 78 | .<span.class="tok-comment">//.ex |
| 85b00 | 70 65 63 74 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 | pect(performFn('o',.0).==.1);</s |
| 85b20 | 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 |
| 85b40 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 72 66 6f 72 6d | an>.<span.class="tok-fn">perform |
| 85b60 | 46 6e 3c 2f 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 | Fn</span>(start_value:.<span.cla |
| 85b80 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 | ss="tok-type">i32</span>).<span. |
| 85ba0 | 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>.{... |
| 85bc0 | 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 |
| 85be0 | 3e 20 72 65 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 | >.result:.<span.class="tok-type" |
| 85c00 | 3e 69 33 32 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 | >i32</span>.=.start_value;.....r |
| 85c20 | 65 73 75 6c 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 | esult.=.one(result);.....<span.c |
| 85c40 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 72 65 73 75 | lass="tok-kw">return</span>.resu |
| 85c60 | 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 65 3e 0a 20 20 20 20 | lt;.}</code></pre></figure>..... |
| 85c80 | 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 |
| 85ca0 | 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 65 72 66 6f 72 6d | -cap"><cite.class="file">perform |
| 85cc0 | 46 6e 5f 33 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 | Fn_3</cite></figcaption><pre><co |
| 85ce0 | 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 2f 2f 20 | de><span.class="tok-comment">//. |
| 85d00 | 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 61 6e 20 63 6c 61 73 | From.the.line:</span>.<span.clas |
| 85d20 | 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 28 70 65 72 66 6f 72 | s="tok-comment">//.expect(perfor |
| 85d40 | 6d 46 6e 28 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 | mFn('w',.99).==.99);</span>.<spa |
| 85d60 | 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 |
| 85d80 | 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 73 70 61 6e 3e | .class="tok-fn">performFn</span> |
| 85da0 | 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 74 6f 6b 2d 74 | (start_value:.<span.class="tok-t |
| 85dc0 | 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 |
| 85de0 | 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 |
| 85e00 | 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: |
| 85e20 | 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 |
| 85e40 | 6e 3e 20 3d 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 | n>.=.start_value;....._.=.&r |
| 85e60 | 65 73 75 6c 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 | esult;.....<span.class="tok-kw"> |
| 85e80 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | return</span>.result;.}</code></ |
| 85ea0 | 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 4e 6f | pre></figure>.......<p>.......No |
| 85ec0 | 74 65 20 74 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 | te.that.this.happens.even.in.a.d |
| 85ee0 | 65 62 75 67 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 | ebug.build........This.is.not.a. |
| 85f00 | 77 61 79 20 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 | way.to.write.more.optimized.code |
| 85f20 | 2c 20 62 75 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 | ,.but.it.is.a.way.to.make.sure.t |
| 85f40 | 68 61 74 20 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 | hat.what.<em>should</em>.happen. |
| 85f60 | 20 20 20 20 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 | ......at.compile-time,.<em>does< |
| 85f80 | 2f 65 6d 3e 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 | /em>.happen.at.compile-time..Thi |
| 85fa0 | 73 20 63 61 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 | s.catches.more.errors.and.allows |
| 85fc0 | 20 65 78 70 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 | .expressiveness.......that.in.ot |
| 85fe0 | 68 65 72 20 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 | her.languages.requires.using.mac |
| 86000 | 72 6f 73 2c 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 | ros,.generated.code,.or.a.prepro |
| 86020 | 63 65 73 73 6f 72 20 74 6f 20 61 63 63 6f 6d 70 6c 69 73 68 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | cessor.to.accomplish........</p> |
| 86040 | 0a 20 20 20 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 | ..............<h4.id="Compile-Ti |
| 86060 | 6d 65 2d 45 78 70 72 65 73 73 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6f | me-Expressions"><a.href="#toc-Co |
| 86080 | 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 2d | mpile-Time-Expressions">Compile- |
| 860a0 | 54 69 6d 65 20 45 78 70 72 65 73 73 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | Time.Expressions</a>.<a.class="h |
| 860c0 | 64 72 22 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 45 78 70 72 65 73 73 69 | dr".href="#Compile-Time-Expressi |
| 860e0 | 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 20 20 | ons">..</a></h4>........<p>..... |
| 86100 | 20 20 49 6e 20 5a 69 67 2c 20 69 74 20 6d 61 74 74 65 72 73 20 77 68 65 74 68 65 72 20 61 20 67 | ..In.Zig,.it.matters.whether.a.g |
| 86120 | 69 76 65 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 | iven.expression.is.known.at.comp |
| 86140 | 69 6c 65 2d 74 69 6d 65 20 6f 72 20 72 75 6e 2d 74 69 6d 65 2e 20 41 20 70 72 6f 67 72 61 6d 6d | ile-time.or.run-time..A.programm |
| 86160 | 65 72 20 63 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 | er.can.......use.a.<code><span.c |
| 86180 | 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 63 | lass="tok-kw">comptime</span></c |
| 861a0 | 6f 64 65 3e 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 | ode>.expression.to.guarantee.tha |
| 861c0 | 74 20 74 68 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 | t.the.expression.will.be.evaluat |
| 861e0 | 65 64 20 61 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 | ed.at.compile-time........If.thi |
| 86200 | 73 20 63 61 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 | s.cannot.be.accomplished,.the.co |
| 86220 | 6d 70 69 6c 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 | mpiler.will.emit.an.error..For.e |
| 86240 | 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 |
| 86260 | 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 |
| 86280 | 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 63 61 | te.class="file">test_comptime_ca |
| 862a0 | 6c 6c 5f 65 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 | ll_extern_function.zig</cite></f |
| 862c0 | 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 |
| 862e0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ="tok-kw">extern</span>.<span.cl |
| 86300 | 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 |
| 86320 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 78 69 74 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 | ss="tok-fn">exit</span>().<span. |
| 86340 | 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> |
| 86360 | 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 |
| 86380 | 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">" |
| 863a0 | 66 6f 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | foo"</span>.{.....<span.cla |
| 863c0 | 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>.{... |
| 863e0 | 20 20 20 20 20 20 65 78 69 74 28 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ......exit();.....}.}</code></pr |
| 86400 | 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 |
| 86420 | 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 |
| 86440 | 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 |
| 86460 | 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 6f 6e | st_comptime_call_extern_function |
| 86480 | 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"> |
| 864a0 | 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 63 61 6c 6c 5f 65 | doc/langref/test_comptime_call_e |
| 864c0 | 78 74 65 72 6e 5f 66 75 6e 63 74 69 6f 6e 2e 7a 69 67 3a 35 3a 31 33 3a 20 3c 2f 73 70 61 6e 3e | xtern_function.zig:5:13:.</span> |
| 864e0 | 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 |
| 86500 | 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 6f 6d 70 74 69 6d | pan><span.class="sgr-1m">comptim |
| 86520 | 65 20 63 61 6c 6c 20 6f 66 20 65 78 74 65 72 6e 20 66 75 6e 63 74 69 6f 6e 0a 3c 2f 73 70 61 6e | e.call.of.extern.function.</span |
| 86540 | 3e 20 20 20 20 20 20 20 20 65 78 69 74 28 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | >........exit();.........<span.c |
| 86560 | 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 7e 7e 7e 7e 5e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f | lass="sgr-32m">~~~~^~.</span>.</ |
| 86580 | 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>. |
| 865a0 | 20 20 20 20 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 | ......It.doesn't.make.sense.that |
| 865c0 | 20 61 20 70 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 | .a.program.could.call.<code>exit |
| 865e0 | 28 29 3c 2f 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 | ()</code>.(or.any.other.external |
| 86600 | 20 66 75 6e 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 | .function)...........at.compile- |
| 86620 | 74 69 6d 65 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 | time,.so.this.is.a.compile.error |
| 86640 | 2e 20 48 6f 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 | ..However,.a.<code><span.class=" |
| 86660 | 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 20 65 | tok-kw">comptime</span></code>.e |
| 86680 | 78 70 72 65 73 73 69 6f 6e 20 64 6f 65 73 20 6d 75 63 68 0a 20 20 20 20 20 20 6d 6f 72 65 20 74 | xpression.does.much.......more.t |
| 866a0 | 68 61 6e 20 73 6f 6d 65 74 69 6d 65 73 20 63 61 75 73 65 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 | han.sometimes.cause.a.compile.er |
| 866c0 | 72 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | ror........</p>.......<p>....... |
| 866e0 | 57 69 74 68 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 | Within.a.<code><span.class="tok- |
| 86700 | 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 |
| 86720 | 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 75 6c 3e 0a 20 20 20 | ssion:.......</p>.......<ul>.... |
| 86740 | 20 20 20 20 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 | .......<li>All.variables.are.<co |
| 86760 | 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 |
| 86780 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 61 72 69 61 62 6c 65 73 2e 3c 2f 6c 69 3e 0a 20 | </span></code>.variables.</li>.. |
| 867a0 | 20 20 20 20 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 | .........<li>All.<code><span.cla |
| 867c0 | 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 2c 20 3c 63 | ss="tok-kw">if</span></code>,.<c |
| 867e0 | 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 3c 2f | ode><span.class="tok-kw">while</ |
| 86800 | 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 73 3d | span></code>,.<code><span.class= |
| 86820 | 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 | "tok-kw">for</span></code>,.and. |
| 86840 | 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 74 63 | <code><span.class="tok-kw">switc |
| 86860 | 68 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 65 78 70 72 65 73 | h</span></code>...........expres |
| 86880 | 73 69 6f 6e 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 | sions.are.evaluated.at.compile-t |
| 868a0 | 69 6d 65 2c 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 | ime,.or.emit.a.compile.error.if. |
| 868c0 | 74 68 69 73 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 | this.is.not.possible.</li>...... |
| 868e0 | 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=" |
| 86900 | 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 61 6e 64 | tok-kw">return</span></code>.and |
| 86920 | 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 74 72 79 3c | .<code><span.class="tok-kw">try< |
| 86940 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 20 61 72 65 20 69 6e | /span></code>.expressions.are.in |
| 86960 | 76 61 6c 69 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 | valid.(unless.the.function.itsel |
| 86980 | 66 20 69 73 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 | f.is.called.at.compile-time).</l |
| 869a0 | 69 3e 0a 20 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 | i>...........<li>All.code.with.r |
| 869c0 | 75 6e 74 69 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 | untime.side.effects.or.depending |
| 869e0 | 20 6f 6e 20 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 | .on.runtime.values.emits.a.compi |
| 86a00 | 6c 65 20 65 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 | le.error.</li>...........<li>All |
| 86a20 | 20 66 75 6e 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 | .function.calls.cause.the.compil |
| 86a40 | 65 72 20 74 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 | er.to.interpret.the.function.at. |
| 86a60 | 63 6f 6d 70 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 | compile-time,.emitting.a........ |
| 86a80 | 20 20 20 63 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 | ...compile.error.if.the.function |
| 86aa0 | 20 74 72 69 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 | .tries.to.do.something.that.has. |
| 86ac0 | 67 6c 6f 62 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 | global.runtime.side.effects.</li |
| 86ae0 | 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 |
| 86b00 | 69 73 20 6d 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 | is.means.that.a.programmer.can.c |
| 86b20 | 72 65 61 74 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 | reate.a.function.which.is.called |
| 86b40 | 20 62 6f 74 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 | .both.at.compile-time.and.run-ti |
| 86b60 | 6d 65 2c 20 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 | me,.with.......no.modification.t |
| 86b80 | 6f 20 74 68 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 | o.the.function.required........< |
| 86ba0 | 2f 70 3e 0a 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 | /p>.......<p>.......Let's.look.a |
| 86bc0 | 74 20 61 6e 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 | t.an.example:.......</p>.......< |
| 86be0 | 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 |
| 86c00 | 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 66 69 62 6f 6e | p"><cite.class="file">test_fibon |
| 86c20 | 61 63 63 69 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 | acci_recursion.zig</cite></figca |
| 86c40 | 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 |
| 86c60 | 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 |
| 86c80 | 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 |
| 86ca0 | 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">" |
| 86cc0 | 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 |
| 86ce0 | 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 |
| 86d00 | 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 |
| 86d20 | 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 |
| 86d40 | 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=" |
| 86d60 | 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 |
| 86d80 | 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 64 65 78 | .class="tok-kw">if</span>.(index |
| 86da0 | 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 | .<.<span.class="tok-number">2 |
| 86dc0 | 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 72 65 | </span>).<span.class="tok-kw">re |
| 86de0 | 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 63 6c 61 | turn</span>.index;.....<span.cla |
| 86e00 | 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 6f 6e 61 | ss="tok-kw">return</span>.fibona |
| 86e20 | 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 75 6d | cci(index.-.<span.class="tok-num |
| 86e40 | 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 64 65 78 | ber">1</span>).+.fibonacci(index |
| 86e60 | 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 3c 2f 73 | .-.<span.class="tok-number">2</s |
| 86e80 | 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | pan>);.}..<span.class="tok-kw">t |
| 86ea0 | 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" |
| 86ec0 | 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 20 7b 0a | >"fibonacci"</span>.{. |
| 86ee0 | 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">// |
| 86f00 | 20 74 65 73 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 | .test.fibonacci.at.run-time</spa |
| 86f20 | 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< |
| 86f40 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 69 62 6f 6e 61 63 63 69 28 3c 73 70 61 6e 20 63 6c | /span>.expect(fibonacci(<span.cl |
| 86f60 | 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 3d 3d 20 3c 73 | ass="tok-number">7</span>).==.<s |
| 86f80 | 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 61 6e 3e | pan.class="tok-number">13</span> |
| 86fa0 | 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 |
| 86fc0 | 22 3e 2f 2f 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 | ">//.test.fibonacci.at.compile-t |
| 86fe0 | 69 6d 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 | ime</span>.....<span.class="tok- |
| 87000 | 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- |
| 87020 | 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 |
| 87040 | 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< |
| 87060 | 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 |
| 87080 | 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></ |
| 870a0 | 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 |
| 870c0 | 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>< |
| 870e0 | 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 |
| 87100 | 69 62 6f 6e 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 | ibonacci_recursion.zig</kbd>.1/1 |
| 87120 | 20 74 65 73 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 | .test_fibonacci_recursion.test.f |
| 87140 | 69 62 6f 6e 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 | ibonacci...OK.All.1.tests.passed |
| 87160 | 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>........ |
| 87180 | 3c 70 3e 0a 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 | <p>.......Imagine.if.we.had.forg |
| 871a0 | 6f 74 74 65 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 | otten.the.base.case.of.the.recur |
| 871c0 | 73 69 76 65 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 | sive.function.and.tried.to.run.t |
| 871e0 | 68 65 20 74 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 | he.tests:.......</p>.......<figu |
| 87200 | 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">< |
| 87220 | 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 |
| 87240 | 5f 63 6f 6d 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 | _comptime_overflow.zig</cite></f |
| 87260 | 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 |
| 87280 | 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.=. |
| 872a0 | 3c 73 70 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 |
| 872c0 | 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">& |
| 872e0 | 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 | quot;std"</span>).testing.e |
| 87300 | 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c | xpect;..<span.class="tok-kw">fn< |
| 87320 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 69 62 6f | /span>.<span.class="tok-fn">fibo |
| 87340 | 6e 61 63 63 69 3c 2f 73 70 61 6e 3e 28 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | nacci</span>(index:.<span.class= |
| 87360 | 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 |
| 87380 | 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 3c | ss="tok-type">u32</span>.{.....< |
| 873a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 69 66 20 28 69 | span.class="tok-comment">//if.(i |
| 873c0 | 6e 64 65 78 20 26 6c 74 3b 20 32 29 20 72 65 74 75 72 6e 20 69 6e 64 65 78 3b 3c 2f 73 70 61 6e | ndex.<.2).return.index;</span |
| 873e0 | 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 |
| 87400 | 6e 3c 2f 73 70 61 6e 3e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e | n</span>.fibonacci(index.-.<span |
| 87420 | 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 2b 20 | .class="tok-number">1</span>).+. |
| 87440 | 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | fibonacci(index.-.<span.class="t |
| 87460 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | ok-number">2</span>);.}..<span.c |
| 87480 | 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. |
| 874a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 69 62 6f 6e 61 63 63 69 26 | class="tok-str">"fibonacci& |
| 874c0 | 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=" |
| 874e0 | 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 3d 22 | tok-kw">try</span>.<span.class=" |
| 87500 | 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 74 28 66 | tok-kw">comptime</span>.expect(f |
| 87520 | 69 62 6f 6e 61 63 63 69 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | ibonacci(<span.class="tok-number |
| 87540 | 22 3e 37 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">7</span>).==.<span.class="tok- |
| 87560 | 6e 75 6d 62 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 | number">13</span>);.}</code></pr |
| 87580 | 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 |
| 875a0 | 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 |
| 875c0 | 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 |
| 875e0 | 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 6f 77 2e 7a | st_fibonacci_comptime_overflow.z |
| 87600 | 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 64 6f | ig</kbd>.<span.class="sgr-1m">do |
| 87620 | 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 66 69 62 6f 6e 61 63 63 69 5f 63 6f 6d 70 74 69 6d | c/langref/test_fibonacci_comptim |
| 87640 | 65 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3a 35 3a 32 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | e_overflow.zig:5:28:.</span><spa |
| 87660 | 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 6e 3e | n.class="sgr-31m">error:.</span> |
| 87680 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 6f 76 65 72 66 6c 6f 77 20 6f 66 | <span.class="sgr-1m">overflow.of |
| 876a0 | 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 27 75 33 32 27 20 77 69 74 68 20 76 61 6c 75 65 20 27 | .integer.type.'u32'.with.value.' |
| 876c0 | 2d 31 27 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 | -1'.</span>....return.fibonacci( |
| 876e0 | 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 | index.-.1).+.fibonacci(index.-.2 |
| 87700 | 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 |
| 87720 | 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 7e 7e 7e 7e 7e 7e 5e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c | ass="sgr-32m">~~~~~~^~~.</span>< |
| 87740 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f | span.class="sgr-1m">doc/langref/ |
| 87760 | 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 6f 77 | test_fibonacci_comptime_overflow |
| 87780 | 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | .zig:5:21:.</span><span.class="s |
| 877a0 | 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 |
| 877c0 | 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 61 6e | ="sgr-1m">called.from.here</span |
| 877e0 | 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 73 29 | ><span.class="sgr-2m">.(7.times) |
| 87800 | 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 6e 64 | .</span>....return.fibonacci(ind |
| 87820 | 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a | ex.-.1).+.fibonacci(index.-.2);. |
| 87840 | 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" |
| 87860 | 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 73 70 | >~~~~~~~~~^~~~~~~~~~~.</span><sp |
| 87880 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 | an.class="sgr-1m">doc/langref/te |
| 878a0 | 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 6f 77 2e 7a | st_fibonacci_comptime_overflow.z |
| 878c0 | 69 67 3a 39 3a 33 34 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | ig:9:34:.</span><span.class="sgr |
| 878e0 | 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 3d 22 | -36m">note:.</span><span.class=" |
| 87900 | 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 61 6e 3e | sgr-1m">called.from.here.</span> |
| 87920 | 20 20 20 20 74 72 79 20 63 6f 6d 70 74 69 6d 65 20 65 78 70 65 63 74 28 66 69 62 6f 6e 61 63 63 | ....try.comptime.expect(fibonacc |
| 87940 | 69 28 37 29 20 3d 3d 20 31 33 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | i(7).==.13);.................... |
| 87960 | 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 7e 7e | .....<span.class="sgr-32m">~~~~~ |
| 87980 | 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 |
| 879a0 | 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 63 6f 6d 70 | igure>........<p>.......The.comp |
| 879c0 | 69 6c 65 72 20 70 72 6f 64 75 63 65 73 20 61 6e 20 65 72 72 6f 72 20 77 68 69 63 68 20 69 73 20 | iler.produces.an.error.which.is. |
| 879e0 | 61 20 73 74 61 63 6b 20 74 72 61 63 65 20 66 72 6f 6d 20 74 72 79 69 6e 67 20 74 6f 20 65 76 61 | a.stack.trace.from.trying.to.eva |
| 87a00 | 6c 75 61 74 65 20 74 68 65 0a 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 61 74 20 63 6f 6d 70 | luate.the.......function.at.comp |
| 87a20 | 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 3c 70 3e 0a 20 | ile-time........</p>.......<p>.. |
| 87a40 | 20 20 20 20 20 4c 75 63 6b 69 6c 79 2c 20 77 65 20 75 73 65 64 20 61 6e 20 75 6e 73 69 67 6e 65 | .....Luckily,.we.used.an.unsigne |
| 87a60 | 64 20 69 6e 74 65 67 65 72 2c 20 61 6e 64 20 73 6f 20 77 68 65 6e 20 77 65 20 74 72 69 65 64 20 | d.integer,.and.so.when.we.tried. |
| 87a80 | 74 6f 20 73 75 62 74 72 61 63 74 20 31 20 66 72 6f 6d 20 30 2c 20 69 74 20 74 72 69 67 67 65 72 | to.subtract.1.from.0,.it.trigger |
| 87aa0 | 65 64 0a 20 20 20 20 20 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 2c 20 77 68 69 | ed.......undefined.behavior,.whi |
| 87ac0 | 63 68 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 20 69 66 20 | ch.is.always.a.compile.error.if. |
| 87ae0 | 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 6b 6e 6f 77 73 20 69 74 20 68 61 70 70 65 6e 65 64 2e 0a | the.compiler.knows.it.happened.. |
| 87b00 | 20 20 20 20 20 20 42 75 74 20 77 68 61 74 20 77 6f 75 6c 64 20 68 61 76 65 20 68 61 70 70 65 6e | ......But.what.would.have.happen |
| 87b20 | 65 64 20 69 66 20 77 65 20 75 73 65 64 20 61 20 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 3f 0a | ed.if.we.used.a.signed.integer?. |
| 87b40 | 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 |
| 87b60 | 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 |
| 87b80 | 3d 22 66 69 6c 65 22 3e 66 69 62 6f 6e 61 63 63 69 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 66 69 6e | ="file">fibonacci_comptime_infin |
| 87ba0 | 69 74 65 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 | ite_recursion.zig</cite></figcap |
| 87bc0 | 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 |
| 87be0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e | -kw">const</span>.assert.=.<span |
| 87c00 | 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 |
| 87c20 | 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">" |
| 87c40 | 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a | std"</span>).debug.assert;. |
| 87c60 | 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>. |
| 87c80 | 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 69 3c 2f | <span.class="tok-fn">fibonacci</ |
| 87ca0 | 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 2d 74 79 | span>(index:.<span.class="tok-ty |
| 87cc0 | 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pe">i32</span>).<span.class="tok |
| 87ce0 | 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 6c | -type">i32</span>.{.....<span.cl |
| 87d00 | 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 20 26 6c | ass="tok-comment">//if.(index.&l |
| 87d20 | 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 20 20 3c | t;.2).return.index;</span>.....< |
| 87d40 | 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 |
| 87d60 | 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 73 73 3d | >.fibonacci(index.-.<span.class= |
| 87d80 | 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 6e 61 63 | "tok-number">1</span>).+.fibonac |
| 87da0 | 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 75 6d 62 | ci(index.-.<span.class="tok-numb |
| 87dc0 | 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 3d 22 74 | er">2</span>);.}..<span.class="t |
| 87de0 | 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=" |
| 87e00 | 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 3b 3c 2f | tok-str">"fibonacci"</ |
| 87e20 | 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" |
| 87e40 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | >try</span>.<span.class="tok-kw" |
| 87e60 | 3e 63 6f 6d 70 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 | >comptime</span>.assert(fibonacc |
| 87e80 | 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 2f 73 70 | i(<span.class="tok-number">7</sp |
| 87ea0 | 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" |
| 87ec0 | 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 66 69 67 | >13</span>);.}</code></pre></fig |
| 87ee0 | 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 63 6f 6d 70 69 6c | ure>........<p>.......The.compil |
| 87f00 | 65 72 20 69 73 20 73 75 70 70 6f 73 65 64 20 74 6f 20 6e 6f 74 69 63 65 20 74 68 61 74 20 65 76 | er.is.supposed.to.notice.that.ev |
| 87f20 | 61 6c 75 61 74 69 6e 67 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 61 74 0a 20 20 20 20 20 20 | aluating.this.function.at....... |
| 87f40 | 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 74 6f 6f 6b 20 6d 6f 72 65 20 74 68 61 6e 20 31 30 30 30 | compile-time.took.more.than.1000 |
| 87f60 | 20 62 72 61 6e 63 68 65 73 2c 20 61 6e 64 20 74 68 75 73 20 65 6d 69 74 73 20 61 6e 20 65 72 72 | .branches,.and.thus.emits.an.err |
| 87f80 | 6f 72 20 61 6e 64 0a 20 20 20 20 20 20 67 69 76 65 73 20 75 70 2e 20 49 66 20 74 68 65 20 70 72 | or.and.......gives.up..If.the.pr |
| 87fa0 | 6f 67 72 61 6d 6d 65 72 20 77 61 6e 74 73 20 74 6f 20 69 6e 63 72 65 61 73 65 20 74 68 65 20 62 | ogrammer.wants.to.increase.the.b |
| 87fc0 | 75 64 67 65 74 20 66 6f 72 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 0a 20 20 20 20 20 20 63 6f 6d | udget.for.compile-time.......com |
| 87fe0 | 70 75 74 61 74 69 6f 6e 2c 20 74 68 65 79 20 63 61 6e 20 75 73 65 20 61 20 62 75 69 6c 74 2d 69 | putation,.they.can.use.a.built-i |
| 88000 | 6e 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 65 64 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d | n.function.called.......<a.href= |
| 88020 | 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 72 | "#setEvalBranchQuota">@setEvalBr |
| 88040 | 61 6e 63 68 51 75 6f 74 61 3c 2f 61 3e 20 74 6f 20 63 68 61 6e 67 65 20 74 68 65 20 64 65 66 61 | anchQuota</a>.to.change.the.defa |
| 88060 | 75 6c 74 20 6e 75 6d 62 65 72 20 31 30 30 30 20 74 6f 0a 20 20 20 20 20 20 73 6f 6d 65 74 68 69 | ult.number.1000.to.......somethi |
| 88080 | 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 70 3e 0a 20 20 | ng.else........</p>.......<p>... |
| 880a0 | 20 20 20 20 48 6f 77 65 76 65 72 2c 20 74 68 65 72 65 20 69 73 20 61 20 3c 61 20 68 72 65 66 3d | ....However,.there.is.a.<a.href= |
| 880c0 | 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f | "https://github.com/ziglang/zig/ |
| 880e0 | 69 73 73 75 65 73 2f 31 33 37 32 34 22 3e 64 65 73 69 67 6e 0a 20 20 20 20 20 20 66 6c 61 77 20 | issues/13724">design.......flaw. |
| 88100 | 69 6e 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 3c 2f 61 3e 20 63 61 75 73 69 6e 67 20 69 74 20 74 | in.the.compiler</a>.causing.it.t |
| 88120 | 6f 20 73 74 61 63 6b 20 6f 76 65 72 66 6c 6f 77 20 69 6e 73 74 65 61 64 20 6f 66 20 68 61 76 69 | o.stack.overflow.instead.of.havi |
| 88140 | 6e 67 20 74 68 65 20 70 72 6f 70 65 72 0a 20 20 20 20 20 20 62 65 68 61 76 69 6f 72 20 68 65 72 | ng.the.proper.......behavior.her |
| 88160 | 65 2e 20 49 27 6d 20 74 65 72 72 69 62 6c 79 20 73 6f 72 72 79 20 61 62 6f 75 74 20 74 68 61 74 | e..I'm.terribly.sorry.about.that |
| 88180 | 2e 20 49 20 68 6f 70 65 20 74 6f 20 67 65 74 20 74 68 69 73 20 72 65 73 6f 6c 76 65 64 0a 20 20 | ..I.hope.to.get.this.resolved... |
| 881a0 | 20 20 20 20 62 65 66 6f 72 65 20 74 68 65 20 6e 65 78 74 20 72 65 6c 65 61 73 65 2e 0a 20 20 20 | ....before.the.next.release..... |
| 881c0 | 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 20 69 66 20 | ...</p>.......<p>.......What.if. |
| 881e0 | 77 65 20 66 69 78 20 74 68 65 20 62 61 73 65 20 63 61 73 65 2c 20 62 75 74 20 70 75 74 20 74 68 | we.fix.the.base.case,.but.put.th |
| 88200 | 65 20 77 72 6f 6e 67 20 76 61 6c 75 65 20 69 6e 20 74 68 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 | e.wrong.value.in.the.......<code |
| 88220 | 3e 65 78 70 65 63 74 3c 2f 63 6f 64 65 3e 20 6c 69 6e 65 3f 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | >expect</code>.line?.......</p>. |
| 88240 | 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= |
| 88260 | 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 |
| 88280 | 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 65 | t_fibonacci_comptime_unreachable |
| 882a0 | 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 |
| 882c0 | 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 |
| 882e0 | 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 |
| 88300 | 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 |
| 88320 | 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 |
| 88340 | 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= |
| 88360 | 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=" |
| 88380 | 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:. |
| 883a0 | 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 |
| 883c0 | 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 |
| 883e0 | 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"> |
| 88400 | 69 66 3c 2f 73 70 61 6e 3e 20 28 69 6e 64 65 78 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 | if</span>.(index.<.<span.clas |
| 88420 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 | s="tok-number">2</span>).<span.c |
| 88440 | 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 6e 64 65 | lass="tok-kw">return</span>.inde |
| 88460 | 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 72 65 74 75 | x;.....<span.class="tok-kw">retu |
| 88480 | 72 6e 3c 2f 73 70 61 6e 3e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 | rn</span>.fibonacci(index.-.<spa |
| 884a0 | 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 2b | n.class="tok-number">1</span>).+ |
| 884c0 | 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .fibonacci(index.-.<span.class=" |
| 884e0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | tok-number">2</span>);.}..<span. |
| 88500 | 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 |
| 88520 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 69 62 6f 6e 61 63 63 69 | .class="tok-str">"fibonacci |
| 88540 | 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= |
| 88560 | 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 3d | "tok-kw">try</span>.<span.class= |
| 88580 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 28 | "tok-kw">comptime</span>.assert( |
| 885a0 | 66 69 62 6f 6e 61 63 63 69 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | fibonacci(<span.class="tok-numbe |
| 885c0 | 72 22 3e 37 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | r">7</span>).==.<span.class="tok |
| 885e0 | 2d 6e 75 6d 62 65 72 22 3e 39 39 39 39 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e | -number">99999</span>);.}</code> |
| 88600 | 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 |
| 88620 | 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 |
| 88640 | 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 |
| 88660 | 74 20 74 65 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 | t.test_fibonacci_comptime_unreac |
| 88680 | 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 73 3d 22 73 67 72 | hable.zig</kbd>.<span.class="sgr |
| 886a0 | 2d 31 6d 22 3e 6c 69 62 2f 73 74 64 2f 64 65 62 75 67 2e 7a 69 67 3a 34 31 32 3a 31 34 3a 20 3c | -1m">lib/std/debug.zig:412:14:.< |
| 886c0 | 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 |
| 886e0 | 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 72 | r:.</span><span.class="sgr-1m">r |
| 88700 | 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 73 70 61 6e 3e 20 | eached.unreachable.code.</span>. |
| 88720 | 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 65 | ...if.(!ok).unreachable;.//.asse |
| 88740 | 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 6e | rtion.failure..............<span |
| 88760 | 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 0a 3c 2f 73 | .class="sgr-32m">^~~~~~~~~~~.</s |
| 88780 | 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 64 6f 63 2f 6c 61 6e | pan><span.class="sgr-1m">doc/lan |
| 887a0 | 67 72 65 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 75 6e 72 | gref/test_fibonacci_comptime_unr |
| 887c0 | 65 61 63 68 61 62 6c 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 | eachable.zig:9:24:.</span><span. |
| 887e0 | 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 70 | class="sgr-36m">note:.</span><sp |
| 88800 | 61 6e 20 63 6c 61 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 | an.class="sgr-1m">called.from.he |
| 88820 | 72 65 0a 3c 2f 73 70 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 | re.</span>....try.comptime.asser |
| 88840 | 74 28 66 69 62 6f 6e 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 | t(fibonacci(7).==.99999);....... |
| 88860 | 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" |
| 88880 | 3e 7e 7e 7e 7e 7e 7e 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 | >~~~~~~^~~~~~~~~~~~~~~~~~~~~~~.< |
| 888a0 | 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 0a | /span>.</samp></pre></figure>... |
| 888c0 | 20 20 20 20 20 20 3c 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 | ......<p>.......At.<a.href="#Con |
| 888e0 | 74 61 69 6e 65 72 73 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 | tainers">container</a>.level.(ou |
| 88900 | 74 73 69 64 65 20 6f 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 | tside.of.any.function),.all.expr |
| 88920 | 65 73 73 69 6f 6e 73 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 | essions.are.implicitly.......<co |
| 88940 | 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 |
| 88960 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 20 54 68 69 73 | </span></code>.expressions..This |
| 88980 | 20 6d 65 61 6e 73 20 74 68 61 74 20 77 65 20 63 61 6e 20 75 73 65 20 66 75 6e 63 74 69 6f 6e 73 | .means.that.we.can.use.functions |
| 889a0 | 20 74 6f 0a 20 20 20 20 20 20 69 6e 69 74 69 61 6c 69 7a 65 20 63 6f 6d 70 6c 65 78 20 73 74 61 | .to.......initialize.complex.sta |
| 889c0 | 74 69 63 20 64 61 74 61 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 | tic.data..For.example:.......</p |
| 889e0 | 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 |
| 88a00 | 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 |
| 88a20 | 65 73 74 5f 63 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 | est_container-level_comptime_exp |
| 88a40 | 72 65 73 73 69 6f 6e 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 | ressions.zig</cite></figcaption> |
| 88a60 | 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"> |
| 88a80 | 63 6f 6e 73 74 3c 2f 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 | const</span>.first_25_primes.=.f |
| 88aa0 | 69 72 73 74 4e 50 72 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 | irstNPrimes(<span.class="tok-num |
| 88ac0 | 62 65 72 22 3e 32 35 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 | ber">25</span>);.<span.class="to |
| 88ae0 | 6b 2d 6b 77 22 3e 63 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 | k-kw">const</span>.sum_of_first_ |
| 88b00 | 32 35 5f 70 72 69 6d 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 | 25_primes.=.sum(&first_25_pr |
| 88b20 | 69 6d 65 73 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 | imes);..<span.class="tok-kw">fn< |
| 88b40 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 69 72 73 | /span>.<span.class="tok-fn">firs |
| 88b60 | 74 4e 50 72 69 6d 65 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 | tNPrimes</span>(<span.class="tok |
| 88b80 | 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 70 61 6e 20 63 6c | -kw">comptime</span>.n:.<span.cl |
| 88ba0 | 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 5b 6e 5d | ass="tok-type">usize</span>).[n] |
| 88bc0 | 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 |
| 88be0 | 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 |
| 88c00 | 3c 2f 73 70 61 6e 3e 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 | </span>.prime_list:.[n]<span.cla |
| 88c20 | 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 |
| 88c40 | 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 |
| 88c60 | 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | n>;.....<span.class="tok-kw">var |
| 88c80 | 3c 2f 73 70 61 6e 3e 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 | </span>.next_index:.<span.class= |
| 88ca0 | 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 20 | "tok-type">usize</span>.=.<span. |
| 88cc0 | 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 20 | class="tok-number">0</span>;.... |
| 88ce0 | 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> |
| 88d00 | 20 74 65 73 74 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 | .test_number:.<span.class="tok-t |
| 88d20 | 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 |
| 88d40 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ok-number">2</span>;.....<span.c |
| 88d60 | 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 6e 65 78 74 | lass="tok-kw">while</span>.(next |
| 88d80 | 5f 69 6e 64 65 78 20 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 | _index.<.prime_list.len).:.(t |
| 88da0 | 65 73 74 5f 6e 75 6d 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 | est_number.+=.<span.class="tok-n |
| 88dc0 | 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 3c 73 70 61 6e | umber">1</span>).{.........<span |
| 88de0 | 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 74 65 73 74 5f | .class="tok-kw">var</span>.test_ |
| 88e00 | 70 72 69 6d 65 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 | prime_index:.<span.class="tok-ty |
| 88e20 | 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=" |
| 88e40 | 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 20 20 20 20 3c 73 | tok-number">0</span>;.........<s |
| 88e60 | 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 73 | pan.class="tok-kw">var</span>.is |
| 88e80 | 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"> |
| 88ea0 | 74 72 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 | true</span>;.........<span.class |
| 88ec0 | 3d 22 74 6f 6b 2d 6b 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 | ="tok-kw">while</span>.(test_pri |
| 88ee0 | 6d 65 5f 69 6e 64 65 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 | me_index.<.next_index).:.(tes |
| 88f00 | 74 5f 70 72 69 6d 65 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 | t_prime_index.+=.<span.class="to |
| 88f20 | 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 20 20 | k-number">1</span>).{........... |
| 88f40 | 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> |
| 88f60 | 20 28 74 65 73 74 5f 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 | .(test_number.%.prime_list[test_ |
| 88f80 | 70 72 69 6d 65 5f 69 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 | prime_index].==.<span.class="tok |
| 88fa0 | 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | -number">0</span>).{............ |
| 88fc0 | 20 20 20 20 20 69 73 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 | .....is_prime.=.<span.class="tok |
| 88fe0 | 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | -null">false</span>;............ |
| 89000 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c | .....<span.class="tok-kw">break< |
| 89020 | 2f 73 70 61 6e 3e 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 | /span>;.............}.........}. |
| 89040 | 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< |
| 89060 | 2f 73 70 61 6e 3e 20 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 | /span>.(is_prime).{............. |
| 89080 | 70 72 69 6d 65 5f 6c 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 | prime_list[next_index].=.test_nu |
| 890a0 | 6d 62 65 72 3b 0a 20 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 | mber;.............next_index.+=. |
| 890c0 | 3c 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 |
| 890e0 | 3e 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | >;.........}.....}.....<span.cla |
| 89100 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 70 72 69 6d 65 5f | ss="tok-kw">return</span>.prime_ |
| 89120 | 6c 69 73 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 66 6e | list;.}..<span.class="tok-kw">fn |
| 89140 | 3c 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 75 6d | </span>.<span.class="tok-fn">sum |
| 89160 | 3c 2f 73 70 61 6e 3e 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 | </span>(numbers:.[]<span.class=" |
| 89180 | 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 |
| 891a0 | 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 6c | ="tok-type">i32</span>).<span.cl |
| 891c0 | 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>.{..... |
| 891e0 | 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>. |
| 89200 | 72 65 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 | result:.<span.class="tok-type">i |
| 89220 | 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 |
| 89240 | 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=" |
| 89260 | 74 6f 6b 2d 6b 77 22 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 | tok-kw">for</span>.(numbers).|x| |
| 89280 | 20 7b 0a 20 20 20 20 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 | .{.........result.+=.x;.....}... |
| 892a0 | 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 |
| 892c0 | 70 61 6e 3e 20 72 65 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 | pan>.result;.}..<span.class="tok |
| 892e0 | 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 |
| 89300 | 6b 2d 73 74 72 22 3e 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 | k-str">"variable.values&quo |
| 89320 | 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 |
| 89340 | 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 3d 22 74 6f 6b | -kw">try</span>.<span.class="tok |
| 89360 | 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 |
| 89380 | 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"</ |
| 893a0 | 73 70 61 6e 3e 29 2e 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 | span>).testing.expect(sum_of_fir |
| 893c0 | 73 74 5f 32 35 5f 70 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 | st_25_primes.==.<span.class="tok |
| 893e0 | 2d 6e 75 6d 62 65 72 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 | -number">1060</span>);.}</code>< |
| 89400 | 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 |
| 89420 | 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 |
| 89440 | 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 |
| 89460 | 20 74 65 73 74 5f 63 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 | .test_container-level_comptime_e |
| 89480 | 78 70 72 65 73 73 69 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 | xpressions.zig</kbd>.1/1.test_co |
| 894a0 | 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 6f | ntainer-level_comptime_expressio |
| 894c0 | 6e 73 2e 74 65 73 74 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 | ns.test.variable.values...OK.All |
| 894e0 | 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></ |
| 89500 | 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 77 65 | figure>........<p>.......When.we |
| 89520 | 20 63 6f 6d 70 69 6c 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 | .compile.this.program,.Zig.gener |
| 89540 | 61 74 65 73 20 74 68 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 | ates.the.constants.......with.th |
| 89560 | 65 20 61 6e 73 77 65 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 | e.answer.pre-computed..Here.are. |
| 89580 | 74 68 65 20 6c 69 6e 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 | the.lines.from.the.generated.LLV |
| 895a0 | 4d 20 49 52 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 | M.IR:.......</p>.......<pre><cod |
| 895c0 | 65 20 63 6c 61 73 73 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 | e.class="llvm">@0.=.internal.unn |
| 895e0 | 61 6d 65 64 5f 61 64 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 | amed_addr.constant.[25.x.i32].[i |
| 89600 | 33 32 20 32 2c 20 69 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 | 32.2,.i32.3,.i32.5,.i32.7,.i32.1 |
| 89620 | 31 2c 20 69 33 32 20 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 | 1,.i32.13,.i32.17,.i32.19,.i32.2 |
| 89640 | 33 2c 20 69 33 32 20 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 | 3,.i32.29,.i32.31,.i32.37,.i32.4 |
| 89660 | 31 2c 20 69 33 32 20 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 | 1,.i32.43,.i32.47,.i32.53,.i32.5 |
| 89680 | 39 2c 20 69 33 32 20 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 | 9,.i32.61,.i32.67,.i32.71,.i32.7 |
| 896a0 | 33 2c 20 69 33 32 20 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 | 3,.i32.79,.i32.83,.i32.89,.i32.9 |
| 896c0 | 37 5d 0a 40 31 20 3d 20 69 6e 74 65 72 6e 61 6c 20 75 6e 6e 61 6d 65 64 5f 61 64 64 72 20 63 6f | 7].@1.=.internal.unnamed_addr.co |
| 896e0 | 6e 73 74 61 6e 74 20 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 | nstant.i32.1060</code></pre>.... |
| 89700 | 20 20 20 3c 70 3e 0a 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 | ...<p>.......Note.that.we.did.no |
| 89720 | 74 20 68 61 76 65 20 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 | t.have.to.do.anything.special.wi |
| 89740 | 74 68 20 74 68 65 20 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 | th.the.syntax.of.these.functions |
| 89760 | 2e 20 46 6f 72 20 65 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 | ..For.example,.......we.could.ca |
| 89780 | 6c 6c 20 74 68 65 20 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 | ll.the.<code>sum</code>.function |
| 897a0 | 20 61 73 20 69 73 20 77 69 74 68 20 61 20 73 6c 69 63 65 20 6f 66 20 6e 75 6d 62 65 72 73 20 77 | .as.is.with.a.slice.of.numbers.w |
| 897c0 | 68 6f 73 65 20 6c 65 6e 67 74 68 20 61 6e 64 20 76 61 6c 75 65 73 20 77 65 72 65 0a 20 20 20 20 | hose.length.and.values.were..... |
| 897e0 | 20 20 6f 6e 6c 79 20 6b 6e 6f 77 6e 20 61 74 20 72 75 6e 2d 74 69 6d 65 2e 0a 20 20 20 20 20 20 | ..only.known.at.run-time........ |
| 89800 | 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d | </p>.....................<h3.id= |
| 89820 | 22 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 3c 61 20 68 72 65 | "Generic-Data-Structures"><a.hre |
| 89840 | 66 3d 22 23 74 6f 63 2d 47 65 6e 65 72 69 63 2d 44 61 74 61 2d 53 74 72 75 63 74 75 72 65 73 22 | f="#toc-Generic-Data-Structures" |
| 89860 | 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 3e 20 3c 61 20 | >Generic.Data.Structures</a>.<a. |
| 89880 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 47 65 6e 65 72 69 63 2d 44 61 74 61 2d | class="hdr".href="#Generic-Data- |
| 898a0 | 53 74 72 75 63 74 75 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 | Structures">..</a></h3>........< |
| 898c0 | 70 3e 0a 20 20 20 20 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 | p>.......Zig.uses.comptime.capab |
| 898e0 | 69 6c 69 74 69 65 73 20 74 6f 20 69 6d 70 6c 65 6d 65 6e 74 20 67 65 6e 65 72 69 63 20 64 61 74 | ilities.to.implement.generic.dat |
| 89900 | 61 20 73 74 72 75 63 74 75 72 65 73 20 77 69 74 68 6f 75 74 20 69 6e 74 72 6f 64 75 63 69 6e 67 | a.structures.without.introducing |
| 89920 | 20 61 6e 79 0a 20 20 20 20 20 20 73 70 65 63 69 61 6c 2d 63 61 73 65 20 73 79 6e 74 61 78 2e 0a | .any.......special-case.syntax.. |
| 89940 | 20 20 20 20 20 20 3c 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 | ......</p>.......<p>....Here.is. |
| 89960 | 61 6e 20 65 78 61 6d 70 6c 65 20 6f 66 20 61 20 67 65 6e 65 72 69 63 20 3c 63 6f 64 65 3e 4c 69 | an.example.of.a.generic.<code>Li |
| 89980 | 73 74 3c 2f 63 6f 64 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 | st</code>.data.structure........ |
| 899a0 | 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 |
| 899c0 | 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 |
| 899e0 | 22 3e 67 65 6e 65 72 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 | ">generic_data_structure.zig</ci |
| 89a00 | 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 |
| 89a20 | 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. |
| 89a40 | 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 70 61 6e | class="tok-fn">List</span>(<span |
| 89a60 | 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>. |
| 89a80 | 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</ |
| 89aa0 | 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 74 79 | span>).<span.class="tok-type">ty |
| 89ac0 | 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 74 6f 6b | pe</span>.{.....<span.class="tok |
| 89ae0 | 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=" |
| 89b00 | 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 20 20 20 | tok-kw">struct</span>.{......... |
| 89b20 | 69 74 65 6d 73 3a 20 5b 5d 54 2c 0a 20 20 20 20 20 20 20 20 6c 65 6e 3a 20 3c 73 70 61 6e 20 63 | items:.[]T,.........len:.<span.c |
| 89b40 | 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 20 20 | lass="tok-type">usize</span>,... |
| 89b60 | 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 6f 6d 6d 65 6e 74 | ..};.}..<span.class="tok-comment |
| 89b80 | 22 3e 2f 2f 20 54 68 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 | ">//.The.generic.List.data.struc |
| 89ba0 | 74 75 72 65 20 63 61 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 | ture.can.be.instantiated.by.pass |
| 89bc0 | 69 6e 67 20 69 6e 20 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 | ing.in.a.type:</span>.<span.clas |
| 89be0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 75 66 66 65 72 3a 20 5b 3c | s="tok-kw">var</span>.buffer:.[< |
| 89c00 | 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 |
| 89c20 | 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 3c 2f 73 70 | >]<span.class="tok-type">i32</sp |
| 89c40 | 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 75 6e 64 | an>.=.<span.class="tok-null">und |
| 89c60 | 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | efined</span>;.<span.class="tok- |
| 89c80 | 6b 77 22 3e 76 61 72 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 | kw">var</span>.list.=.List(<span |
| 89ca0 | 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 0a 20 | .class="tok-type">i32</span>){.. |
| 89cc0 | 20 20 20 2e 69 74 65 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 | ....items.=.&buffer,......le |
| 89ce0 | 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f | n.=.<span.class="tok-number">0</ |
| 89d00 | 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 75 72 65 3e 0a | span>,.};</code></pre></figure>. |
| 89d20 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 61 74 27 73 20 69 74 2e 20 49 74 27 73 | .......<p>.......That's.it..It's |
| 89d40 | 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 72 65 74 75 72 6e 73 20 61 6e 20 61 6e 6f 6e | .a.function.that.returns.an.anon |
| 89d60 | 79 6d 6f 75 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 | ymous.<code><span.class="tok-kw" |
| 89d80 | 3e 73 74 72 75 63 74 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 | >struct</span></code>........For |
| 89da0 | 20 74 68 65 20 70 75 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 | .the.purposes.of.error.messages. |
| 89dc0 | 61 6e 64 20 64 65 62 75 67 67 69 6e 67 2c 20 5a 69 67 20 69 6e 66 65 72 73 20 74 68 65 20 6e 61 | and.debugging,.Zig.infers.the.na |
| 89de0 | 6d 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 6f 6b 2d | me.......<code><span.class="tok- |
| 89e00 | 73 74 72 22 3e 26 71 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 | str">"List(i32)"</span |
| 89e20 | 3e 3c 2f 63 6f 64 65 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 | ></code>.from.the.function.name. |
| 89e40 | 61 6e 64 20 70 61 72 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 | and.parameters.invoked.when.crea |
| 89e60 | 74 69 6e 67 0a 20 20 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 | ting.......the.anonymous.struct. |
| 89e80 | 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 65 | .......</p>.......<p>.......To.e |
| 89ea0 | 78 70 6c 69 63 69 74 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 | xplicitly.give.a.type.a.name,.we |
| 89ec0 | 20 61 73 73 69 67 6e 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 | .assign.it.to.a.constant........ |
| 89ee0 | 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 |
| 89f00 | 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 |
| 89f20 | 22 3e 61 6e 6f 6e 79 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 | ">anonymous_struct_name.zig</cit |
| 89f40 | 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. |
| 89f60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4e 6f 64 65 | class="tok-kw">const</span>.Node |
| 89f80 | 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</ |
| 89fa0 | 73 70 61 6e 3e 20 7b 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 | span>.{.....next:.?*Node,.....na |
| 89fc0 | 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 73 74 | me:.[]<span.class="tok-kw">const |
| 89fe0 | 3c 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 |
| 8a000 | 38 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | 8</span>,.};..<span.class="tok-k |
| 8a020 | 77 22 3e 76 61 72 3c 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 | w">var</span>.node_a.=.Node{.... |
| 8a040 | 20 2e 6e 65 78 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | ..next.=.<span.class="tok-null"> |
| 8a060 | 6e 75 6c 6c 3c 2f 73 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 | null</span>,......name.=.<span.c |
| 8a080 | 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 41 26 71 75 6f 74 | lass="tok-str">"Node.A" |
| 8a0a0 | 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 2d 6b | ;</span>,.};..<span.class="tok-k |
| 8a0c0 | 77 22 3e 76 61 72 3c 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 | w">var</span>.node_b.=.Node{.... |
| 8a0e0 | 20 2e 6e 65 78 74 20 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 | ..next.=.&node_a,......name. |
| 8a100 | 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 4e 6f | =.<span.class="tok-str">"No |
| 8a120 | 64 65 20 42 26 71 75 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 | de.B"</span>,.};</code></pr |
| 8a140 | 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 49 6e 20 | e></figure>........<p>.......In. |
| 8a160 | 74 68 69 73 20 65 78 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 | this.example,.the.<code>Node</co |
| 8a180 | 64 65 3e 20 73 74 72 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 | de>.struct.refers.to.itself..... |
| 8a1a0 | 20 20 20 54 68 69 73 20 77 6f 72 6b 73 20 62 65 63 61 75 73 65 20 61 6c 6c 20 74 6f 70 20 6c 65 | ...This.works.because.all.top.le |
| 8a1c0 | 76 65 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 61 72 65 20 6f 72 64 65 72 2d 69 6e 64 65 70 | vel.declarations.are.order-indep |
| 8a1e0 | 65 6e 64 65 6e 74 2e 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 | endent........As.long.as.the.com |
| 8a200 | 70 69 6c 65 72 20 63 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 | piler.can.determine.the.size.of. |
| 8a220 | 74 68 65 20 73 74 72 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 | the.struct,.it.is.free.to.refer. |
| 8a240 | 74 6f 20 69 74 73 65 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 | to.itself........In.this.case,.< |
| 8a260 | 63 6f 64 65 3e 4e 6f 64 65 3c 2f 63 6f 64 65 3e 20 72 65 66 65 72 73 20 74 6f 20 69 74 73 65 6c | code>Node</code>.refers.to.itsel |
| 8a280 | 66 20 61 73 20 61 20 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 | f.as.a.pointer,.which.has.a..... |
| 8a2a0 | 20 20 77 65 6c 6c 2d 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 | ..well-defined.size.at.compile.t |
| 8a2c0 | 69 6d 65 2c 20 73 6f 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 | ime,.so.it.works.fine........</p |
| 8a2e0 | 3e 0a 20 20 20 20 20 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 | >..............<h3.id="Case-Stud |
| 8a300 | 79 2d 70 72 69 6e 74 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 | y-print-in-Zig"><a.href="#toc-Ca |
| 8a320 | 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 53 74 75 64 | se-Study-print-in-Zig">Case.Stud |
| 8a340 | 79 3a 20 70 72 69 6e 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 | y:.print.in.Zig</a>.<a.class="hd |
| 8a360 | 72 22 20 68 72 65 66 3d 22 23 43 61 73 65 2d 53 74 75 64 79 2d 70 72 69 6e 74 2d 69 6e 2d 5a 69 | r".href="#Case-Study-print-in-Zi |
| 8a380 | 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>....... |
| 8a3a0 | 50 75 74 74 69 6e 67 20 61 6c 6c 20 6f 66 20 74 68 69 73 20 74 6f 67 65 74 68 65 72 2c 20 6c 65 | Putting.all.of.this.together,.le |
| 8a3c0 | 74 27 73 20 73 65 65 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 | t's.see.how.<code>print</code>.w |
| 8a3e0 | 6f 72 6b 73 20 69 6e 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 | orks.in.Zig........</p>.......<f |
| 8a400 | 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 |
| 8a420 | 22 3e 3c 63 69 74 65 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 | "><cite.class="file">print.zig</ |
| 8a440 | 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 |
| 8a460 | 61 6e 20 63 6c 61 73 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 |
| 8a480 | 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" |
| 8a4a0 | 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 |
| 8a4c0 | 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 |
| 8a4e0 | 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" |
| 8a500 | 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 |
| 8a520 | 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 |
| 8a540 | 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> |
| 8a560 | 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 |
| 8a580 | 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- |
| 8a5a0 | 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>;. |
| 8a5c0 | 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> |
| 8a5e0 | 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>. |
| 8a600 | 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> |
| 8a620 | 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</ |
| 8a640 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | span>.{.....print(<span.class="t |
| 8a660 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 72 65 20 69 73 20 61 20 73 74 72 69 6e 67 3a 20 | ok-str">"here.is.a.string:. |
| 8a680 | 27 7b 73 7d 27 20 68 65 72 65 20 69 73 20 61 20 6e 75 6d 62 65 72 3a 20 7b 7d 5c 6e 26 71 75 6f | '{s}'.here.is.a.number:.{}\n&quo |
| 8a6a0 | 74 3b 3c 2f 73 70 61 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 | t;</span>,..{.a_string,.a_number |
| 8a6c0 | 20 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 | .});.}</code></pre></figure><fig |
| 8a6e0 | 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 |
| 8a700 | 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>$ |
| 8a720 | 20 3c 6b 62 64 3e 7a 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 | .<kbd>zig.build-exe.print.zig</k |
| 8a740 | 62 64 3e 0a 24 20 3c 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 | bd>.$.<kbd>./print</kbd>.here.is |
| 8a760 | 20 61 20 73 74 72 69 6e 67 3a 20 27 66 6f 6f 62 61 72 27 20 68 65 72 65 20 69 73 20 61 20 6e 75 | .a.string:.'foobar'.here.is.a.nu |
| 8a780 | 6d 62 65 72 3a 20 31 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 | mber:.1234.</samp></pre></figure |
| 8a7a0 | 3e 0a 0a 0a 20 20 20 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 | >.........<p>.......Let's.crack. |
| 8a7c0 | 6f 70 65 6e 20 74 68 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 | open.the.implementation.of.this. |
| 8a7e0 | 61 6e 64 20 73 65 65 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 | and.see.how.it.works:.......</p> |
| 8a800 | 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 |
| 8a820 | 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 |
| 8a840 | 6f 63 5f 70 72 69 6e 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 | oc_print_fn.zig</cite></figcapti |
| 8a860 | 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 |
| 8a880 | 77 22 3e 63 6f 6e 73 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 | w">const</span>.Writer.=.<span.c |
| 8a8a0 | 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>.{... |
| 8a8c0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 | ..<span.class="tok-comment">///. |
| 8a8e0 | 43 61 6c 6c 73 20 70 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 | Calls.print.and.then.flushes.the |
| 8a900 | 20 62 75 66 66 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 | .buffer.</span>.....<span.class= |
| 8a920 | 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= |
| 8a940 | 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=" |
| 8a960 | 74 6f 6b 2d 66 6e 22 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 | tok-fn">print</span>(self:.*Writ |
| 8a980 | 65 72 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 | er,.<span.class="tok-kw">comptim |
| 8a9a0 | 65 3c 2f 73 70 61 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 | e</span>.format:.[]<span.class=" |
| 8a9c0 | 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 |
| 8a9e0 | 3d 22 74 6f 6b 2d 74 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 | ="tok-type">u8</span>,.args:.<sp |
| 8aa00 | 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> |
| 8aa20 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f | ).<span.class="tok-type">anyerro |
| 8aa40 | 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | r</span>!<span.class="tok-type"> |
| 8aa60 | 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 6e 20 63 6c 61 73 | void</span>.{.........<span.clas |
| 8aa80 | 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 74 65 20 3d 20 | s="tok-kw">const</span>.State.=. |
| 8aaa0 | 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> |
| 8aac0 | 20 7b 0a 20 20 20 20 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 | .{.............start,........... |
| 8aae0 | 20 20 6f 70 65 6e 5f 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 | ..open_brace,.............close_ |
| 8ab00 | 62 72 61 63 65 2c 0a 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 | brace,.........};..........<span |
| 8ab20 | 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>. |
| 8ab40 | 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>. |
| 8ab60 | 73 74 61 72 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 | start_index:.<span.class="tok-ty |
| 8ab80 | 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=" |
| 8aba0 | 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 20 20 20 20 3c 73 | tok-number">0</span>;.........<s |
| 8abc0 | 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 |
| 8abe0 | 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 61 | n>.<span.class="tok-kw">var</spa |
| 8ac00 | 6e 3e 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 20 | n>.state.=.State.start;......... |
| 8ac20 | 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 |
| 8ac40 | 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 |
| 8ac60 | 70 61 6e 3e 20 6e 65 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 | pan>.next_arg:.<span.class="tok- |
| 8ac80 | 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 |
| 8aca0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 20 20 20 | ="tok-number">0</span>;......... |
| 8acc0 | 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 70 | .<span.class="tok-kw">inline</sp |
| 8ace0 | 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 2f 73 70 | an>.<span.class="tok-kw">for</sp |
| 8ad00 | 61 6e 3e 20 28 66 6f 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 | an>.(format,.<span.class="tok-nu |
| 8ad20 | 6d 62 65 72 22 3e 30 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 | mber">0</span>..).|c,.i|.{...... |
| 8ad40 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 | .......<span.class="tok-kw">swit |
| 8ad60 | 63 68 3c 2f 73 70 61 6e 3e 20 28 73 74 61 74 65 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ch</span>.(state).{............. |
| 8ad80 | 20 20 20 20 53 74 61 74 65 2e 73 74 61 72 74 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 | ....State.start.=>.<span.clas |
| 8ada0 | 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 20 | s="tok-kw">switch</span>.(c).{.. |
| 8adc0 | 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=" |
| 8ade0 | 74 6f 6b 2d 73 74 72 22 3e 27 7b 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 | tok-str">'{'</span>.=>.{..... |
| 8ae00 | 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= |
| 8ae20 | 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 74 61 72 74 5f 69 6e 64 65 78 20 | "tok-kw">if</span>.(start_index. |
| 8ae40 | 26 6c 74 3b 20 69 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 | <.i).<span.class="tok-kw">try |
| 8ae60 | 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 74 65 28 66 6f 72 6d 61 74 5b 73 74 61 72 74 5f | </span>.self.write(format[start_ |
| 8ae80 | 69 6e 64 65 78 2e 2e 69 5d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | index..i]);..................... |
| 8aea0 | 20 20 20 20 73 74 61 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 | ....state.=.State.open_brace;... |
| 8aec0 | 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 20 20 20 20 | ..................},............ |
| 8aee0 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 | .........<span.class="tok-str">' |
| 8af00 | 7d 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | }'</span>.=>.{............... |
| 8af20 | 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 69 | ..........<span.class="tok-kw">i |
| 8af40 | 66 3c 2f 73 70 61 6e 3e 20 28 73 74 61 72 74 5f 69 6e 64 65 78 20 26 6c 74 3b 20 69 29 20 3c 73 | f</span>.(start_index.<.i).<s |
| 8af60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 | pan.class="tok-kw">try</span>.se |
| 8af80 | 6c 66 2e 77 72 69 74 65 28 66 6f 72 6d 61 74 5b 73 74 61 72 74 5f 69 6e 64 65 78 2e 2e 69 5d 29 | lf.write(format[start_index..i]) |
| 8afa0 | 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 74 65 20 | ;.........................state. |
| 8afc0 | 3d 20 53 74 61 74 65 2e 63 6c 6f 73 65 5f 62 72 61 63 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | =.State.close_brace;............ |
| 8afe0 | 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 20 20 | .........},..................... |
| 8b000 | 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> |
| 8b020 | 20 3d 26 67 74 3b 20 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 | .=>.{},.................},... |
| 8b040 | 20 20 20 20 20 20 20 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 | ..............State.open_brace.= |
| 8b060 | 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 68 | >.<span.class="tok-kw">switch |
| 8b080 | 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 20 | </span>.(c).{................... |
| 8b0a0 | 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 7b 27 3c 2f 73 70 61 | ..<span.class="tok-str">'{'</spa |
| 8b0c0 | 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>.=>.{...................... |
| 8b0e0 | 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 20 | ...state.=.State.start;......... |
| 8b100 | 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 3b | ................start_index.=.i; |
| 8b120 | 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 20 | .....................},......... |
| 8b140 | 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 |
| 8b160 | 22 3e 27 7d 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | ">'}'</span>.=>.{............ |
| 8b180 | 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 |
| 8b1a0 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 70 72 69 6e 74 56 61 6c 75 65 28 61 72 67 | ">try</span>.self.printValue(arg |
| 8b1c0 | 73 5b 6e 65 78 74 5f 61 72 67 5d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | s[next_arg]);................... |
| 8b1e0 | 20 20 20 20 20 20 6e 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 | ......next_arg.+=.<span.class="t |
| 8b200 | 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>;............ |
| 8b220 | 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 20 3d 20 53 74 61 74 65 2e 73 74 61 72 74 | .............state.=.State.start |
| 8b240 | 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 72 74 5f | ;.........................start_ |
| 8b260 | 69 6e 64 65 78 20 3d 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 | index.=.i.+.<span.class="tok-num |
| 8b280 | 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 20 20 20 20 20 20 | ber">1</span>;.................. |
| 8b2a0 | 20 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 | ...},.....................<span. |
| 8b2c0 | 63 6c 61 73 73 3d 22 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 | class="tok-str">'s'</span>.=> |
| 8b2e0 | 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 |
| 8b300 | 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 3b | .class="tok-kw">continue</span>; |
| 8b320 | 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 20 | .....................},......... |
| 8b340 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ............<span.class="tok-kw" |
| 8b360 | 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >else</span>.=>.<span.class=" |
| 8b380 | 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 6e | tok-builtin">@compileError</span |
| 8b3a0 | 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 55 6e | >(<span.class="tok-str">"Un |
| 8b3c0 | 6b 6e 6f 77 6e 20 66 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 | known.format.character:."</ |
| 8b3e0 | 73 70 61 6e 3e 20 2b 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 | span>.++.[<span.class="tok-numbe |
| 8b400 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | r">1</span>]<span.class="tok-typ |
| 8b420 | 65 22 3e 75 38 3c 2f 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 | e">u8</span>{c}),............... |
| 8b440 | 20 20 7d 2c 0a 20 20 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 | ..},.................State.close |
| 8b460 | 5f 62 72 61 63 65 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | _brace.=>.<span.class="tok-kw |
| 8b480 | 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 20 20 | ">switch</span>.(c).{........... |
| 8b4a0 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | ..........<span.class="tok-str"> |
| 8b4c0 | 27 7d 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | '}'</span>.=>.{.............. |
| 8b4e0 | 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 20 3d 20 53 74 61 74 65 2e 73 74 61 72 74 3b 0a | ...........state.=.State.start;. |
| 8b500 | 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 72 74 5f 69 6e | ........................start_in |
| 8b520 | 64 65 78 20 3d 20 69 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 | dex.=.i;.....................},. |
| 8b540 | 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= |
| 8b560 | 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 70 61 6e | "tok-kw">else</span>.=>.<span |
| 8b580 | 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 |
| 8b5a0 | 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 3e | or</span>(<span.class="tok-str"> |
| 8b5c0 | 26 71 75 6f 74 3b 53 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 | "Single.'}'.encountered.in. |
| 8b5e0 | 66 6f 72 6d 61 74 20 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 | format.string"</span>),.... |
| 8b600 | 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 7d 0a 20 20 | .............},.............}... |
| 8b620 | 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 |
| 8b640 | 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 20 | -kw">comptime</span>.{.......... |
| 8b660 | 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 |
| 8b680 | 3e 20 28 61 72 67 73 2e 6c 65 6e 20 21 3d 20 6e 65 78 74 5f 61 72 67 29 20 7b 0a 20 20 20 20 20 | >.(args.len.!=.next_arg).{...... |
| 8b6a0 | 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 62 75 69 6c | ...........<span.class="tok-buil |
| 8b6c0 | 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 20 | tin">@compileError</span>(<span. |
| 8b6e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 55 6e 75 73 65 64 20 61 72 67 | class="tok-str">"Unused.arg |
| 8b700 | 75 6d 65 6e 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | uments"</span>);........... |
| 8b720 | 20 20 7d 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 | ..}.............<span.class="tok |
| 8b740 | 2d 6b 77 22 3e 69 66 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 | -kw">if</span>.(state.!=.State.s |
| 8b760 | 74 61 72 74 29 20 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 | tart).{.................<span.cl |
| 8b780 | 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 6f 72 3c | ass="tok-builtin">@compileError< |
| 8b7a0 | 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 |
| 8b7c0 | 6f 74 3b 49 6e 63 6f 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 | ot;Incomplete.format.string:.&qu |
| 8b7e0 | 6f 74 3b 3c 2f 73 70 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 | ot;</span>.++.format);.......... |
| 8b800 | 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ...}.........}.........<span.cla |
| 8b820 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 74 61 72 74 5f 69 6e 64 | ss="tok-kw">if</span>.(start_ind |
| 8b840 | 65 78 20 26 6c 74 3b 20 66 6f 72 6d 61 74 2e 6c 65 6e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | ex.<.format.len).{........... |
| 8b860 | 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 |
| 8b880 | 3e 20 73 65 6c 66 2e 77 72 69 74 65 28 66 6f 72 6d 61 74 5b 73 74 61 72 74 5f 69 6e 64 65 78 2e | >.self.write(format[start_index. |
| 8b8a0 | 2e 66 6f 72 6d 61 74 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 | .format.len]);.........}........ |
| 8b8c0 | 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> |
| 8b8e0 | 20 73 65 6c 66 2e 66 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 | .self.flush();.....}......<span. |
| 8b900 | 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 |
| 8b920 | 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 65 6c 66 3a | lass="tok-fn">write</span>(self: |
| 8b940 | 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 73 73 3d 22 | .*Writer,.value:.[]<span.class=" |
| 8b960 | 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 |
| 8b980 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c | ="tok-type">u8</span>).!<span.cl |
| 8b9a0 | 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>.{.... |
| 8b9c0 | 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 61 6c 75 65 | ....._.=.self;........._.=.value |
| 8b9e0 | 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 22 | ;.....}.....<span.class="tok-kw" |
| 8ba00 | 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" |
| 8ba20 | 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"> |
| 8ba40 | 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 2c | printValue</span>(self:.*Writer, |
| 8ba60 | 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 79 | .value:.<span.class="tok-kw">any |
| 8ba80 | 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 74 | type</span>).!<span.class="tok-t |
| 8baa0 | 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 20 73 | ype">void</span>.{........._.=.s |
| 8bac0 | 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 20 20 | elf;........._.=.value;.....}... |
| 8bae0 | 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 6e 3e | ..<span.class="tok-kw">fn</span> |
| 8bb00 | 20 3c 73 70 61 6e 20 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 | .<span.class="tok-fn">flush</spa |
| 8bb20 | 6e 3e 28 73 65 6c 66 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 | n>(self:.*Writer).!<span.class=" |
| 8bb40 | 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 20 20 20 20 | tok-type">void</span>.{......... |
| 8bb60 | 5f 20 3d 20 73 65 6c 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 | _.=.self;.....}.};</code></pre>< |
| 8bb80 | 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 20 69 | /figure>........<p>.......This.i |
| 8bba0 | 73 20 61 20 70 72 6f 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 | s.a.proof.of.concept.implementat |
| 8bbc0 | 69 6f 6e 3b 20 74 68 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 | ion;.the.actual.function.in.the. |
| 8bbe0 | 73 74 61 6e 64 61 72 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 | standard.library.has.more....... |
| 8bc00 | 66 6f 72 6d 61 74 74 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 | formatting.capabilities........< |
| 8bc20 | 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 74 68 | /p>.......<p>.......Note.that.th |
| 8bc40 | 69 73 20 69 73 20 6e 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 | is.is.not.hard-coded.into.the.Zi |
| 8bc60 | 67 20 63 6f 6d 70 69 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 | g.compiler;.this.is.userland.cod |
| 8bc80 | 65 20 69 6e 20 74 68 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 | e.in.the.standard.library....... |
| 8bca0 | 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 74 68 69 73 20 | .</p>.......<p>.......When.this. |
| 8bcc0 | 66 75 6e 63 74 69 6f 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 | function.is.analyzed.from.our.ex |
| 8bce0 | 61 6d 70 6c 65 20 63 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 | ample.code.above,.Zig.partially. |
| 8bd00 | 65 76 61 6c 75 61 74 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 | evaluates.the.function.......and |
| 8bd20 | 20 65 6d 69 74 73 20 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 | .emits.a.function.that.actually. |
| 8bd40 | 6c 6f 6f 6b 73 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | looks.like.this:.......</p>..... |
| 8bd60 | 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 |
| 8bd80 | 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 45 6d 69 74 74 65 64 | -cap"><cite.class="file">Emitted |
| 8bda0 | 20 70 72 69 6e 74 20 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 | .print.Function</cite></figcapti |
| 8bdc0 | 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 |
| 8bde0 | 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 |
| 8be00 | 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 |
| 8be20 | 22 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 61 72 | ">print</span>(self:.*Writer,.ar |
| 8be40 | 67 30 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 | g0:.[]<span.class="tok-kw">const |
| 8be60 | 3c 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 |
| 8be80 | 38 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 73 3d 22 74 6f 6b | 8</span>,.arg1:.<span.class="tok |
| 8bea0 | 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -type">i32</span>).!<span.class= |
| 8bec0 | 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 |
| 8bee0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c | an.class="tok-kw">try</span>.sel |
| 8bf00 | 66 2e 77 72 69 74 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | f.write(<span.class="tok-str">&q |
| 8bf20 | 75 6f 74 3b 68 65 72 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 | uot;here.is.a.string:.'"</s |
| 8bf40 | 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"> |
| 8bf60 | 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 70 72 69 6e 74 56 61 6c 75 65 28 61 72 67 30 29 | try</span>.self.printValue(arg0) |
| 8bf80 | 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</ |
| 8bfa0 | 73 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 74 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>.self.write(<span.class="to |
| 8bfc0 | 6b 2d 73 74 72 22 3e 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 | k-str">"'.here.is.a.number: |
| 8bfe0 | 20 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 | ."</span>);.....<span.class |
| 8c000 | 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 70 72 69 6e 74 56 | ="tok-kw">try</span>.self.printV |
| 8c020 | 61 6c 75 65 28 61 72 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 | alue(arg1);.....<span.class="tok |
| 8c040 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 74 65 28 3c 73 70 61 6e | -kw">try</span>.self.write(<span |
| 8c060 | 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 3b 3c | .class="tok-str">"\n"< |
| 8c080 | 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 |
| 8c0a0 | 22 3e 74 72 79 3c 2f 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 | ">try</span>.self.flush();.}</co |
| 8c0c0 | 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 0a 20 20 20 | de></pre></figure>.......<p>.... |
| 8c0e0 | 20 20 20 3c 63 6f 64 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 | ...<code>printValue</code>.is.a. |
| 8c100 | 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 74 61 6b 65 73 20 61 20 70 61 72 61 6d 65 74 65 72 20 | function.that.takes.a.parameter. |
| 8c120 | 6f 66 20 61 6e 79 20 74 79 70 65 2c 20 61 6e 64 20 64 6f 65 73 20 64 69 66 66 65 72 65 6e 74 20 | of.any.type,.and.does.different. |
| 8c140 | 74 68 69 6e 67 73 20 64 65 70 65 6e 64 69 6e 67 0a 20 20 20 20 20 20 6f 6e 20 74 68 65 20 74 79 | things.depending.......on.the.ty |
| 8c160 | 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 |
| 8c180 | 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 |
| 8c1a0 | 6c 61 73 73 3d 22 66 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 | lass="file">poc_printValue_fn.zi |
| 8c1c0 | 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> |
| 8c1e0 | 3c 73 70 61 6e 20 63 6c 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 |
| 8c200 | 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 6f 6b 2d 6b 77 22 3e | >.Writer.=.<span.class="tok-kw"> |
| 8c220 | 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 20 63 6c 61 73 73 3d | struct</span>.{.....<span.class= |
| 8c240 | 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= |
| 8c260 | 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=" |
| 8c280 | 74 6f 6b 2d 66 6e 22 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 | tok-fn">printValue</span>(self:. |
| 8c2a0 | 2a 57 72 69 74 65 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 | *Writer,.value:.<span.class="tok |
| 8c2c0 | 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 | -kw">anytype</span>).!<span.clas |
| 8c2e0 | 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 20 | s="tok-type">void</span>.{...... |
| 8c300 | 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 68 3c 2f | ...<span.class="tok-kw">switch</ |
| 8c320 | 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | span>.(<span.class="tok-builtin" |
| 8c340 | 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 74 | >@typeInfo</span>(<span.class="t |
| 8c360 | 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 |
| 8c380 | 29 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 49 6e 74 20 3d 26 67 74 3b 20 7b 0a 20 | ))).{..............Int.=>.{.. |
| 8c3a0 | 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- |
| 8c3c0 | 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 49 6e 74 28 | kw">return</span>.self.writeInt( |
| 8c3e0 | 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);.............},.......... |
| 8c400 | 20 20 20 2e 46 6c 6f 61 74 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ....Float.=>.{............... |
| 8c420 | 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 |
| 8c440 | 70 61 6e 3e 20 73 65 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 | pan>.self.writeFloat(value);.... |
| 8c460 | 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 50 6f 69 6e 74 65 72 | .........},..............Pointer |
| 8c480 | 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 20 63 | .=>.{.................<span.c |
| 8c4a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 | lass="tok-kw">return</span>.self |
| 8c4c0 | 2e 77 72 69 74 65 28 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 | .write(value);.............},... |
| 8c4e0 | 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 65 | ..........<span.class="tok-kw">e |
| 8c500 | 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | lse</span>.=>.{.............. |
| 8c520 | 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 6f | ...<span.class="tok-builtin">@co |
| 8c540 | 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 74 | mpileError</span>(<span.class="t |
| 8c560 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 55 6e 61 62 6c 65 20 74 6f 20 70 72 69 6e 74 20 74 79 | ok-str">"Unable.to.print.ty |
| 8c580 | 70 65 20 27 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 2b 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | pe.'"</span>.++.<span.class |
| 8c5a0 | 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>( |
| 8c5c0 | 3c 73 70 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 |
| 8c5e0 | 66 3c 2f 73 70 61 6e 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 | f</span>(value)).++.<span.class= |
| 8c600 | 22 74 6f 6b 2d 73 74 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 | "tok-str">"'"</span>); |
| 8c620 | 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 0a 20 20 20 20 7d 0a | .............},.........}.....}. |
| 8c640 | 0a 20 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 |
| 8c660 | 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 72 69 74 65 3c 2f | an>.<span.class="tok-fn">write</ |
| 8c680 | 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 5b 5d 3c 73 | span>(self:.*Writer,.value:.[]<s |
| 8c6a0 | 70 61 6e 20 63 6c 61 73 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>. |
| 8c6c0 | 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> |
| 8c6e0 | 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</ |
| 8c700 | 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 20 20 20 | span>.{........._.=.self;....... |
| 8c720 | 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 20 63 6c 61 | .._.=.value;.....}.....<span.cla |
| 8c740 | 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 |
| 8c760 | 73 3d 22 74 6f 6b 2d 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 | s="tok-fn">writeInt</span>(self: |
| 8c780 | 20 2a 57 72 69 74 65 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 | .*Writer,.value:.<span.class="to |
| 8c7a0 | 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 | k-kw">anytype</span>).!<span.cla |
| 8c7c0 | 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>.{..... |
| 8c7e0 | 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 61 6c 75 65 3b | ...._.=.self;........._.=.value; |
| 8c800 | 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"> |
| 8c820 | 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 77 | fn</span>.<span.class="tok-fn">w |
| 8c840 | 72 69 74 65 46 6c 6f 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 | riteFloat</span>(self:.*Writer,. |
| 8c860 | 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 74 | value:.<span.class="tok-kw">anyt |
| 8c880 | 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 74 79 | ype</span>).!<span.class="tok-ty |
| 8c8a0 | 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 20 73 65 | pe">void</span>.{........._.=.se |
| 8c8c0 | 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 7d 3b 3c | lf;........._.=.value;.....}.};< |
| 8c8e0 | 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 70 3e | /code></pre></figure>........<p> |
| 8c900 | 0a 20 20 20 20 20 20 41 6e 64 20 6e 6f 77 2c 20 77 68 61 74 20 68 61 70 70 65 6e 73 20 69 66 20 | .......And.now,.what.happens.if. |
| 8c920 | 77 65 20 67 69 76 65 20 74 6f 6f 20 6d 61 6e 79 20 61 72 67 75 6d 65 6e 74 73 20 74 6f 20 3c 63 | we.give.too.many.arguments.to.<c |
| 8c940 | 6f 64 65 3e 70 72 69 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 | ode>print</code>?.......</p>.... |
| 8c960 | 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 |
| 8c980 | 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 70 | g-cap"><cite.class="file">test_p |
| 8c9a0 | 72 69 6e 74 5f 74 6f 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 | rint_too_many_args.zig</cite></f |
| 8c9c0 | 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 |
| 8c9e0 | 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.=.< |
| 8ca00 | 73 70 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 |
| 8ca20 | 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 |
| 8ca40 | 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 |
| 8ca60 | 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</ |
| 8ca80 | 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 6b | span>.a_number:.<span.class="tok |
| 8caa0 | 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= |
| 8cac0 | 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 20 | "tok-number">1234</span>;.<span. |
| 8cae0 | 63 6c 61 73 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 74 | class="tok-kw">const</span>.a_st |
| 8cb00 | 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 75 | ring.=.<span.class="tok-str">&qu |
| 8cb20 | 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 63 | ot;foobar"</span>;..<span.c |
| 8cb40 | 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. |
| 8cb60 | 63 6c 61 73 73 3d 22 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 | class="tok-str">"print.too. |
| 8cb80 | 6d 61 6e 79 20 61 72 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 | many.arguments"</span>.{... |
| 8cba0 | 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 |
| 8cbc0 | 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 |
| 8cbe0 | 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 2c | .is.a.number:.{}\n"</span>, |
| 8cc00 | 20 2e 7b 0a 20 20 20 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 | ..{.........a_string,.........a_ |
| 8cc20 | 6e 75 6d 62 65 72 2c 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 | number,.........a_number,.....}) |
| 8cc40 | 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 |
| 8cc60 | 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 |
| 8cc80 | 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 |
| 8cca0 | 62 64 3e 7a 69 67 20 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 | bd>zig.test.test_print_too_many_ |
| 8ccc0 | 61 72 67 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 2d | args.zig</kbd>.<span.class="sgr- |
| 8cce0 | 31 6d 22 3e 6c 69 62 2f 73 74 64 2f 66 6d 74 2e 7a 69 67 3a 32 30 33 3a 31 38 3a 20 3c 2f 73 70 | 1m">lib/std/fmt.zig:203:18:.</sp |
| 8cd00 | 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:. |
| 8cd20 | 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 75 6e 75 73 | </span><span.class="sgr-1m">unus |
| 8cd40 | 65 64 20 61 72 67 75 6d 65 6e 74 20 69 6e 20 27 68 65 72 65 20 69 73 20 61 20 73 74 72 69 6e 67 | ed.argument.in.'here.is.a.string |
| 8cd60 | 3a 20 27 7b 73 7d 27 20 68 65 72 65 20 69 73 20 61 20 6e 75 6d 62 65 72 3a 20 7b 7d 0a 20 20 20 | :.'{s}'.here.is.a.number:.{}.... |
| 8cd80 | 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 27 0a 3c 2f | ............................'.</ |
| 8cda0 | 73 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 | span>............1.=>.@compil |
| 8cdc0 | 65 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 | eError("unused.argument.in. |
| 8cde0 | 27 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 | '".++.fmt.++."'") |
| 8ce00 | 2c 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 | ,..................<span.class=" |
| 8ce20 | 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 7e | sgr-32m">^~~~~~~~~~~~~~~~~~~~~~~ |
| 8ce40 | 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 73 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~.</s |
| 8ce60 | 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 72 65 6e | pan><span.class="sgr-2m">referen |
| 8ce80 | 63 65 64 20 62 79 3a 0a 20 20 20 20 70 72 69 6e 74 5f 5f 61 6e 6f 6e 5f 32 33 37 37 3a 20 6c 69 | ced.by:.....print__anon_2377:.li |
| 8cea0 | 62 2f 73 74 64 2f 69 6f 2f 57 72 69 74 65 72 2e 7a 69 67 3a 32 34 3a 32 36 0a 20 20 20 20 70 72 | b/std/io/Writer.zig:24:26.....pr |
| 8cec0 | 69 6e 74 3a 20 6c 69 62 2f 73 74 64 2f 69 6f 2e 7a 69 67 3a 33 32 34 3a 34 37 0a 20 20 20 20 72 | int:.lib/std/io.zig:324:47.....r |
| 8cee0 | 65 6d 61 69 6e 69 6e 67 20 72 65 66 65 72 65 6e 63 65 20 74 72 61 63 65 73 20 68 69 64 64 65 6e | emaining.reference.traces.hidden |
| 8cf00 | 3b 20 75 73 65 20 27 2d 66 72 65 66 65 72 65 6e 63 65 2d 74 72 61 63 65 27 20 74 6f 20 73 65 65 | ;.use.'-freference-trace'.to.see |
| 8cf20 | 20 61 6c 6c 20 72 65 66 65 72 65 6e 63 65 20 74 72 61 63 65 73 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f | .all.reference.traces.</span>.</ |
| 8cf40 | 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>. |
| 8cf60 | 20 20 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 | ......Zig.gives.programmers.the. |
| 8cf80 | 74 6f 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 | tools.needed.to.protect.themselv |
| 8cfa0 | 65 73 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 | es.against.their.own.mistakes... |
| 8cfc0 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 64 6f | .....</p>.......<p>.......Zig.do |
| 8cfe0 | 65 73 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 | esn't.care.whether.the.format.ar |
| 8d000 | 67 75 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 | gument.is.a.string.literal,..... |
| 8d020 | 20 20 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 | ..only.that.it.is.a.compile-time |
| 8d040 | 20 6b 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 | .known.value.that.can.be.coerced |
| 8d060 | 20 74 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 | .to.a.<code>[]<span.class="tok-k |
| 8d080 | 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 |
| 8d0a0 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 20 20 3c | -type">u8</span></code>:.......< |
| 8d0c0 | 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 |
| 8d0e0 | 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" |
| 8d100 | 3e 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 |
| 8d120 | 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>< |
| 8d140 | 73 70 61 6e 20 63 6c 61 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> |
| 8d160 | 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 69 | .print.=.<span.class="tok-builti |
| 8d180 | 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 |
| 8d1a0 | 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>). |
| 8d1c0 | 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 6b | debug.print;..<span.class="tok-k |
| 8d1e0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 5f 6e 75 6d 62 65 72 3a 20 3c 73 70 61 6e 20 | w">const</span>.a_number:.<span. |
| 8d200 | 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 |
| 8d220 | 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 61 | pan.class="tok-number">1234</spa |
| 8d240 | 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</ |
| 8d260 | 73 70 61 6e 3e 20 61 5f 73 74 72 69 6e 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>.a_string.=.<span.class="to |
| 8d280 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 62 61 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | k-str">"foobar"</span> |
| 8d2a0 | 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 |
| 8d2c0 | 61 6e 3e 20 66 6d 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | an>.fmt.=.<span.class="tok-str"> |
| 8d2e0 | 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 65 | "here.is.a.string:.'{s}'.he |
| 8d300 | 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 6e | re.is.a.number:.{}\n"</span |
| 8d320 | 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 | >;..<span.class="tok-kw">pub</sp |
| 8d340 | 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 |
| 8d360 | 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 70 | n>.<span.class="tok-fn">main</sp |
| 8d380 | 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 |
| 8d3a0 | 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 70 72 69 6e 74 28 66 6d 74 2c 20 2e 7b 20 61 5f 73 | d</span>.{.....print(fmt,..{.a_s |
| 8d3c0 | 74 72 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 | tring,.a_number.});.}</code></pr |
| 8d3e0 | 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 |
| 8d400 | 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 |
| 8d420 | 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 |
| 8d440 | 78 65 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 | xe.print_comptime-known_format.z |
| 8d460 | 69 67 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 | ig</kbd>.$.<kbd>./print_comptime |
| 8d480 | 2d 6b 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 | -known_format</kbd>.here.is.a.st |
| 8d4a0 | 72 69 6e 67 3a 20 27 66 6f 6f 62 61 72 27 20 68 65 72 65 20 69 73 20 61 20 6e 75 6d 62 65 72 3a | ring:.'foobar'.here.is.a.number: |
| 8d4c0 | 20 31 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 | .1234.</samp></pre></figure>.... |
| 8d4e0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 77 6f 72 6b 73 20 66 69 6e 65 2e 0a 20 | ....<p>.......This.works.fine... |
| 8d500 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 64 6f | .....</p>.......<p>.......Zig.do |
| 8d520 | 65 73 20 6e 6f 74 20 73 70 65 63 69 61 6c 20 63 61 73 65 20 73 74 72 69 6e 67 20 66 6f 72 6d 61 | es.not.special.case.string.forma |
| 8d540 | 74 74 69 6e 67 20 69 6e 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64 20 69 6e 73 74 65 61 | tting.in.the.compiler.and.instea |
| 8d560 | 64 20 65 78 70 6f 73 65 73 20 65 6e 6f 75 67 68 20 70 6f 77 65 72 20 74 6f 20 61 63 63 6f 6d 70 | d.exposes.enough.power.to.accomp |
| 8d580 | 6c 69 73 68 20 74 68 69 73 0a 20 20 20 20 20 20 74 61 73 6b 20 69 6e 20 75 73 65 72 6c 61 6e 64 | lish.this.......task.in.userland |
| 8d5a0 | 2e 20 49 74 20 64 6f 65 73 20 73 6f 20 77 69 74 68 6f 75 74 20 69 6e 74 72 6f 64 75 63 69 6e 67 | ..It.does.so.without.introducing |
| 8d5c0 | 20 61 6e 6f 74 68 65 72 20 6c 61 6e 67 75 61 67 65 20 6f 6e 20 74 6f 70 20 6f 66 20 5a 69 67 2c | .another.language.on.top.of.Zig, |
| 8d5e0 | 20 73 75 63 68 20 61 73 0a 20 20 20 20 20 20 61 20 6d 61 63 72 6f 20 6c 61 6e 67 75 61 67 65 20 | .such.as.......a.macro.language. |
| 8d600 | 6f 72 20 61 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 6c 61 6e 67 75 61 67 65 2e 20 49 74 27 73 | or.a.preprocessor.language..It's |
| 8d620 | 20 5a 69 67 20 61 6c 6c 20 74 68 65 20 77 61 79 20 64 6f 77 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 | .Zig.all.the.way.down........</p |
| 8d640 | 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c | >..............<p>See.also:</p>< |
| 8d660 | 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 77 68 69 6c 65 22 3e | ul>.<li><a.href="#inline-while"> |
| 8d680 | 69 6e 6c 69 6e 65 20 77 68 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 | inline.while</a></li>.<li><a.hre |
| 8d6a0 | 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 3c 2f | f="#inline-for">inline.for</a></ |
| 8d6c0 | 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 | li>.</ul>...............<h2.id=" |
| 8d6e0 | 41 73 73 65 6d 62 6c 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 73 73 65 6d 62 6c 79 | Assembly"><a.href="#toc-Assembly |
| 8d700 | 22 3e 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | ">Assembly</a>.<a.class="hdr".hr |
| 8d720 | 65 66 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 | ef="#Assembly">..</a></h2>...... |
| 8d740 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 73 6f 6d 65 20 75 73 65 20 63 61 73 65 73 2c 20 | ..<p>.......For.some.use.cases,. |
| 8d760 | 69 74 20 6d 61 79 20 62 65 20 6e 65 63 65 73 73 61 72 79 20 74 6f 20 64 69 72 65 63 74 6c 79 20 | it.may.be.necessary.to.directly. |
| 8d780 | 63 6f 6e 74 72 6f 6c 20 74 68 65 20 6d 61 63 68 69 6e 65 20 63 6f 64 65 20 67 65 6e 65 72 61 74 | control.the.machine.code.generat |
| 8d7a0 | 65 64 0a 20 20 20 20 20 20 62 79 20 5a 69 67 20 70 72 6f 67 72 61 6d 73 2c 20 72 61 74 68 65 72 | ed.......by.Zig.programs,.rather |
| 8d7c0 | 20 74 68 61 6e 20 72 65 6c 79 69 6e 67 20 6f 6e 20 5a 69 67 27 73 20 63 6f 64 65 20 67 65 6e 65 | .than.relying.on.Zig's.code.gene |
| 8d7e0 | 72 61 74 69 6f 6e 2e 20 46 6f 72 20 74 68 65 73 65 20 63 61 73 65 73 2c 20 6f 6e 65 0a 20 20 20 | ration..For.these.cases,.one.... |
| 8d800 | 20 20 20 63 61 6e 20 75 73 65 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 2e 20 48 65 72 65 | ...can.use.inline.assembly..Here |
| 8d820 | 20 69 73 20 61 6e 20 65 78 61 6d 70 6c 65 20 6f 66 20 69 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 48 | .is.an.example.of.implementing.H |
| 8d840 | 65 6c 6c 6f 2c 20 57 6f 72 6c 64 20 6f 6e 20 78 38 36 5f 36 34 20 4c 69 6e 75 78 0a 20 20 20 20 | ello,.World.on.x86_64.Linux..... |
| 8d860 | 20 20 75 73 69 6e 67 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 3a 0a 20 20 20 20 20 20 3c | ..using.inline.assembly:.......< |
| 8d880 | 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 |
| 8d8a0 | 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" |
| 8d8c0 | 3e 69 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 | >inline_assembly.zig</cite></fig |
| 8d8e0 | 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=" |
| 8d900 | 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=" |
| 8d920 | 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 |
| 8d940 | 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 |
| 8d960 | 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 20 | ="tok-type">noreturn</span>.{... |
| 8d980 | 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 |
| 8d9a0 | 61 6e 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 | an>.msg.=.<span.class="tok-str"> |
| 8d9c0 | 26 71 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 | "hello.world\n"</span> |
| 8d9e0 | 3b 0a 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 | ;....._.=.syscall3(SYS_write,.ST |
| 8da00 | 44 4f 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 | DOUT_FILENO,.<span.class="tok-bu |
| 8da20 | 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 6d 73 67 29 2c 20 | iltin">@intFromPtr</span>(msg),. |
| 8da40 | 6d 73 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 | msg.len);....._.=.syscall1(SYS_e |
| 8da60 | 78 69 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 | xit,.<span.class="tok-number">0< |
| 8da80 | 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 |
| 8daa0 | 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | ">unreachable</span>;.}..<span.c |
| 8dac0 | 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 |
| 8dae0 | 6c 61 73 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 | lass="tok-kw">const</span>.SYS_w |
| 8db00 | 72 69 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 | rite.=.<span.class="tok-number"> |
| 8db20 | 31 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 | 1</span>;.<span.class="tok-kw">p |
| 8db40 | 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 |
| 8db60 | 6f 6e 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 | onst</span>.SYS_exit.=.<span.cla |
| 8db80 | 73 73 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 | ss="tok-number">60</span>;..<spa |
| 8dba0 | 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 |
| 8dbc0 | 6e 20 63 6c 61 73 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 | n.class="tok-kw">const</span>.ST |
| 8dbe0 | 44 4f 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 | DOUT_FILENO.=.<span.class="tok-n |
| 8dc00 | 75 6d 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 | umber">1</span>;..<span.class="t |
| 8dc20 | 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 |
| 8dc40 | 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 |
| 8dc60 | 6b 2d 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 | k-fn">syscall1</span>(number:.<s |
| 8dc80 | 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 |
| 8dca0 | 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"> |
| 8dcc0 | 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 6f 6b 2d 74 | usize</span>).<span.class="tok-t |
| 8dce0 | 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ype">usize</span>.{.....<span.cl |
| 8dd00 | 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 |
| 8dd20 | 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 73 70 61 6e | .class="tok-kw">asm</span>.<span |
| 8dd40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 20 | .class="tok-kw">volatile</span>. |
| 8dd60 | 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 79 73 | (<span.class="tok-str">"sys |
| 8dd80 | 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 5b 72 65 74 | call"</span>.........:.[ret |
| 8dda0 | 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 3d 7b | ].<span.class="tok-str">"={ |
| 8ddc0 | 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 61 6e 20 63 | rax}"</span>.(->.<span.c |
| 8dde0 | 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 2c 0a 20 | lass="tok-type">usize</span>),.. |
| 8de00 | 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 73 3d 22 74 | .......:.[number].<span.class="t |
| 8de20 | 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 70 61 6e 3e | ok-str">"{rax}"</span> |
| 8de40 | 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 3c 73 70 61 | .(number),...........[arg1].<spa |
| 8de60 | 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 7d 26 71 75 | n.class="tok-str">"{rdi}&qu |
| 8de80 | 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 3a 20 3c 73 70 | ot;</span>.(arg1),.........:.<sp |
| 8dea0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 63 78 26 71 75 6f | an.class="tok-str">"rcx&quo |
| 8dec0 | 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | t;</span>,.<span.class="tok-str" |
| 8dee0 | 3e 26 71 75 6f 74 3b 72 31 31 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 29 3b 0a 7d | >"r11"</span>.....);.} |
| 8df00 | 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 |
| 8df20 | 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> |
| 8df40 | 20 3c 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 | .<span.class="tok-fn">syscall3</ |
| 8df60 | 73 70 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 | span>(number:.<span.class="tok-t |
| 8df80 | 79 70 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 | ype">usize</span>,.arg1:.<span.c |
| 8dfa0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 20 61 72 | lass="tok-type">usize</span>,.ar |
| 8dfc0 | 67 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 75 73 69 7a 65 | g2:.<span.class="tok-type">usize |
| 8dfe0 | 3c 2f 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 | </span>,.arg3:.<span.class="tok- |
| 8e000 | 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 6c 61 73 73 3d | type">usize</span>).<span.class= |
| 8e020 | 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 |
| 8e040 | 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> |
| 8e060 | 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> |
| 8e080 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f | .<span.class="tok-kw">volatile</ |
| 8e0a0 | 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | span>.(<span.class="tok-str">&qu |
| 8e0c0 | 6f 74 3b 73 79 73 63 61 6c 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 | ot;syscall"</span>......... |
| 8e0e0 | 3a 20 5b 72 65 74 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | :.[ret].<span.class="tok-str">&q |
| 8e100 | 75 6f 74 3b 3d 7b 72 61 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 2d 26 67 74 3b 20 3c | uot;={rax}"</span>.(->.< |
| 8e120 | 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 |
| 8e140 | 6e 3e 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 | n>),.........:.[number].<span.cl |
| 8e160 | 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 6f 74 3b 3c | ass="tok-str">"{rax}"< |
| 8e180 | 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 61 72 67 31 | /span>.(number),...........[arg1 |
| 8e1a0 | 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 72 | ].<span.class="tok-str">"{r |
| 8e1c0 | 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 20 20 20 20 | di}"</span>.(arg1),........ |
| 8e1e0 | 20 20 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 | ...[arg2].<span.class="tok-str"> |
| 8e200 | 26 71 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 | "{rsi}"</span>.(arg2), |
| 8e220 | 0a 20 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 | ...........[arg3].<span.class="t |
| 8e240 | 6f 6b 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 | ok-str">"{rdx}"</span> |
| 8e260 | 20 28 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 | .(arg3),.........:.<span.class=" |
| 8e280 | 74 6f 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 | tok-str">"rcx"</span>, |
| 8e2a0 | 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 72 31 31 | .<span.class="tok-str">"r11 |
| 8e2c0 | 26 71 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 | "</span>.....);.}</code></p |
| 8e2e0 | 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. |
| 8e300 | 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 |
| 8e320 | 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- |
| 8e340 | 65 78 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 | exe.inline_assembly.zig.-target. |
| 8e360 | 78 38 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 | x86_64-linux</kbd>.$.<kbd>./inli |
| 8e380 | 6e 65 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 | ne_assembly</kbd>.hello.world.</ |
| 8e3a0 | 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>. |
| 8e3c0 | 20 20 20 20 20 20 44 69 73 73 65 63 74 69 6e 67 20 74 68 65 20 73 79 6e 74 61 78 3a 0a 20 20 20 | ......Dissecting.the.syntax:.... |
| 8e3e0 | 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 |
| 8e400 | 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 |
| 8e420 | 69 6c 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 | ile">Assembly.Syntax.Explained.z |
| 8e440 | 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 |
| 8e460 | 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> |
| 8e480 | 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>. |
| 8e4a0 | 3c 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 31 3c 2f 73 | <span.class="tok-fn">syscall1</s |
| 8e4c0 | 70 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 | pan>(number:.<span.class="tok-ty |
| 8e4e0 | 70 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 | pe">usize</span>,.arg1:.<span.cl |
| 8e500 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 | ass="tok-type">usize</span>).<sp |
| 8e520 | 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> |
| 8e540 | 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" |
| 8e560 | 3e 2f 2f 20 49 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 20 69 73 20 61 6e 20 65 78 70 72 65 73 | >//.Inline.assembly.is.an.expres |
| 8e580 | 73 69 6f 6e 20 77 68 69 63 68 20 72 65 74 75 72 6e 73 20 61 20 76 61 6c 75 65 2e 3c 2f 73 70 61 | sion.which.returns.a.value.</spa |
| 8e5a0 | 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" |
| 8e5c0 | 3e 2f 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 | >//.the.`asm`.keyword.begins.the |
| 8e5e0 | 20 65 78 70 72 65 73 73 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | .expression.</span>.....<span.cl |
| 8e600 | 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 |
| 8e620 | 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 0a 20 20 20 20 3c | .class="tok-kw">asm</span>.....< |
| 8e640 | 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 60 76 6f 6c | span.class="tok-comment">//.`vol |
| 8e660 | 61 74 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 | atile`.is.an.optional.modifier.t |
| 8e680 | 68 61 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 | hat.tells.Zig.this</span>.....<s |
| 8e6a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6e 6c 69 6e | pan.class="tok-comment">//.inlin |
| 8e6c0 | 65 20 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 | e.assembly.expression.has.side-e |
| 8e6e0 | 66 66 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 | ffects..Without</span>.....<span |
| 8e700 | 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 69 6c | .class="tok-comment">//.`volatil |
| 8e720 | 65 60 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 | e`,.Zig.is.allowed.to.delete.the |
| 8e740 | 20 69 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 | .inline.assembly</span>.....<spa |
| 8e760 | 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 64 65 20 69 66 | n.class="tok-comment">//.code.if |
| 8e780 | 20 74 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 | .the.result.is.unused.</span>... |
| 8e7a0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c | ..<span.class="tok-kw">volatile< |
| 8e7c0 | 2f 73 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 | /span>.(.....<span.class="tok-co |
| 8e7e0 | 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 65 78 74 20 69 73 20 61 20 63 6f 6d 70 74 69 6d 65 20 73 74 72 | mment">//.Next.is.a.comptime.str |
| 8e800 | 69 6e 67 20 77 68 69 63 68 20 69 73 20 74 68 65 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65 2e 3c | ing.which.is.the.assembly.code.< |
| 8e820 | 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 |
| 8e840 | 65 6e 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 | ent">//.Inside.this.string.one.m |
| 8e860 | 61 79 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 | ay.use.`%[ret]`,.`%[number]`,</s |
| 8e880 | 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 |
| 8e8a0 | 74 22 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 | t">//.or.`%[arg1]`.where.a.regis |
| 8e8c0 | 74 65 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 | ter.is.expected,.to.specify</spa |
| 8e8e0 | 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" |
| 8e900 | 3e 2f 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 | >//.the.register.that.Zig.uses.f |
| 8e920 | 6f 72 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 | or.the.argument.or.return.value, |
| 8e940 | 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 |
| 8e960 | 6d 65 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 | ment">//.if.the.register.constra |
| 8e980 | 69 6e 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 | int.strings.are.used..However.in |
| 8e9a0 | 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 |
| 8e9c0 | 6d 65 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 | ment">//.the.below.code,.this.is |
| 8e9e0 | 20 6e 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 | .not.used..A.literal.`%`.can.be< |
| 8ea00 | 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 |
| 8ea20 | 65 6e 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 | ent">//.obtained.by.escaping.it. |
| 8ea40 | 77 69 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 | with.a.double.percent:.`%%`.</sp |
| 8ea60 | 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 |
| 8ea80 | 22 3e 2f 2f 20 4f 66 74 65 6e 20 6d 75 6c 74 69 6c 69 6e 65 20 73 74 72 69 6e 67 20 73 79 6e 74 | ">//.Often.multiline.string.synt |
| 8eaa0 | 61 78 20 63 6f 6d 65 73 20 69 6e 20 68 61 6e 64 79 20 68 65 72 65 2e 3c 2f 73 70 61 6e 3e 0a 20 | ax.comes.in.handy.here.</span>.. |
| 8eac0 | 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 3e 5c 5c 73 | .......<span.class="tok-str">\\s |
| 8eae0 | 79 73 63 61 6c 6c 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | yscall.</span>........<span.clas |
| 8eb00 | 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 |
| 8eb20 | 75 74 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 | utput..It.is.possible.in.the.fut |
| 8eb40 | 75 72 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 | ure.Zig.will</span>.........<spa |
| 8eb60 | 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 6f 72 74 | n.class="tok-comment">//.support |
| 8eb80 | 20 6d 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 | .multiple.outputs,.depending.on. |
| 8eba0 | 68 6f 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 | how</span>.........<span.class=" |
| 8ebc0 | 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 62 2e 63 | tok-comment">//.https://github.c |
| 8ebe0 | 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 32 31 35 20 69 73 20 72 65 73 | om/ziglang/zig/issues/215.is.res |
| 8ec00 | 6f 6c 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 | olved.</span>.........<span.clas |
| 8ec20 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 74 20 69 73 20 61 6c 6c 6f 77 65 64 | s="tok-comment">//.It.is.allowed |
| 8ec40 | 20 66 6f 72 20 74 68 65 72 65 20 74 6f 20 62 65 20 6e 6f 20 6f 75 74 70 75 74 73 2c 20 69 6e 20 | .for.there.to.be.no.outputs,.in. |
| 8ec60 | 77 68 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 | which.case</span>.........<span. |
| 8ec80 | 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 69 73 20 63 6f 6c 6f | class="tok-comment">//.this.colo |
| 8eca0 | 6e 20 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 | n.would.be.directly.followed.by. |
| 8ecc0 | 74 68 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 | the.colon.for.the.inputs.</span> |
| 8ece0 | 0a 20 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 | .........:.........<span.class=" |
| 8ed00 | 74 6f 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 | tok-comment">//.This.specifies.t |
| 8ed20 | 68 65 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 | he.name.to.be.used.in.`%[ret]`.s |
| 8ed40 | 79 6e 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 | yntax.in</span>.........<span.cl |
| 8ed60 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 61 62 6f 76 65 20 61 | ass="tok-comment">//.the.above.a |
| 8ed80 | 73 73 65 6d 62 6c 79 20 73 74 72 69 6e 67 2e 20 54 68 69 73 20 65 78 61 6d 70 6c 65 20 64 6f 65 | ssembly.string..This.example.doe |
| 8eda0 | 73 20 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 | s.not.use.it,</span>.........<sp |
| 8edc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 75 74 20 74 68 | an.class="tok-comment">//.but.th |
| 8ede0 | 65 20 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 | e.syntax.is.mandatory.</span>... |
| 8ee00 | 20 20 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 | ........[ret]...........<span.cl |
| 8ee20 | 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 20 74 68 65 | ass="tok-comment">//.Next.is.the |
| 8ee40 | 20 6f 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 | .output.constraint.string..This. |
| 8ee60 | 66 65 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 | feature.is.still</span>......... |
| 8ee80 | 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 63 | ..<span.class="tok-comment">//.c |
| 8eea0 | 6f 6e 73 69 64 65 72 65 64 20 75 6e 73 74 61 62 6c 65 20 69 6e 20 5a 69 67 2c 20 61 6e 64 20 73 | onsidered.unstable.in.Zig,.and.s |
| 8eec0 | 6f 20 4c 4c 56 4d 2f 47 43 43 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3c 2f 73 70 61 6e 3e 0a | o.LLVM/GCC.documentation</span>. |
| 8eee0 | 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 |
| 8ef00 | 6e 74 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 | nt">//.must.be.used.to.understan |
| 8ef20 | 64 20 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 | d.the.semantics.</span>......... |
| 8ef40 | 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 68 | ..<span.class="tok-comment">//.h |
| 8ef60 | 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 |
| 8ef80 | 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 |
| 8efa0 | 74 72 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 | traint-string</span>...........< |
| 8efc0 | 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 70 | span.class="tok-comment">//.http |
| 8efe0 | 73 3a 2f 2f 67 63 63 2e 67 6e 75 2e 6f 72 67 2f 6f 6e 6c 69 6e 65 64 6f 63 73 2f 67 63 63 2f 45 | s://gcc.gnu.org/onlinedocs/gcc/E |
| 8f000 | 78 74 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 | xtended-Asm.html</span>......... |
| 8f020 | 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 |
| 8f040 | 6e 20 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 | n.this.example,.the.constraint.s |
| 8f060 | 74 72 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 | tring.means."the.result.val |
| 8f080 | 75 65 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 | ue.of</span>...........<span.cla |
| 8f0a0 | 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 69 6e 6c 69 6e 65 20 | ss="tok-comment">//.this.inline. |
| 8f0c0 | 61 73 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 | assembly.instruction.is.whatever |
| 8f0e0 | 20 69 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 | .is.in.$rax".</span>....... |
| 8f100 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | ....<span.class="tok-str">" |
| 8f120 | 3d 7b 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 | ={rax}"</span>...........<s |
| 8f140 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 65 78 74 20 | pan.class="tok-comment">//.Next. |
| 8f160 | 69 73 20 65 69 74 68 65 72 20 61 20 76 61 6c 75 65 20 62 69 6e 64 69 6e 67 2c 20 6f 72 20 60 2d | is.either.a.value.binding,.or.`- |
| 8f180 | 26 67 74 3b 60 20 61 6e 64 20 74 68 65 6e 20 61 20 74 79 70 65 2e 20 54 68 65 3c 2f 73 70 61 6e | >`.and.then.a.type..The</span |
| 8f1a0 | 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 6d | >...........<span.class="tok-com |
| 8f1c0 | 6d 65 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 | ment">//.type.is.the.result.type |
| 8f1e0 | 20 6f 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 | .of.the.inline.assembly.expressi |
| 8f200 | 6f 6e 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 | on.</span>...........<span.class |
| 8f220 | 3d 22 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 | ="tok-comment">//.If.it.is.a.val |
| 8f240 | 75 65 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 | ue.binding,.then.`%[ret]`.syntax |
| 8f260 | 20 77 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 | .would.be.used</span>........... |
| 8f280 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 6f 20 | <span.class="tok-comment">//.to. |
| 8f2a0 | 72 65 66 65 72 20 74 6f 20 74 68 65 20 72 65 67 69 73 74 65 72 20 62 6f 75 6e 64 20 74 6f 20 74 | refer.to.the.register.bound.to.t |
| 8f2c0 | 68 65 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 | he.value.</span>...........(-> |
| 8f2e0 | 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f | ;.<span.class="tok-type">usize</ |
| 8f300 | 73 70 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 | span>),...........<span.class="t |
| 8f320 | 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 6c 69 73 74 20 | ok-comment">//.Next.is.the.list. |
| 8f340 | 6f 66 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 | of.inputs.</span>...........<spa |
| 8f360 | 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 63 6f 6e | n.class="tok-comment">//.The.con |
| 8f380 | 73 74 72 61 69 6e 74 20 66 6f 72 20 74 68 65 73 65 20 69 6e 70 75 74 73 20 6d 65 61 6e 73 2c 20 | straint.for.these.inputs.means,. |
| 8f3a0 | 26 71 75 6f 74 3b 77 68 65 6e 20 74 68 65 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65 20 69 73 3c | "when.the.assembly.code.is< |
| 8f3c0 | 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 74 6f | /span>...........<span.class="to |
| 8f3e0 | 6b 2d 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 | k-comment">//.executed,.$rax.sha |
| 8f400 | 6c 6c 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 | ll.have.the.value.of.`number`.an |
| 8f420 | 64 20 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 | d.$rdi.shall.have</span>........ |
| 8f440 | 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">//. |
| 8f460 | 74 68 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 | the.value.of.`arg1`"..Any.n |
| 8f480 | 75 6d 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 | umber.of.input.parameters.is.all |
| 8f4a0 | 6f 77 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 | owed,</span>...........<span.cla |
| 8f4c0 | 73 73 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 | ss="tok-comment">//.including.no |
| 8f4e0 | 6e 65 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 | ne.</span>.........:.[number].<s |
| 8f500 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 72 61 78 7d 26 | pan.class="tok-str">"{rax}& |
| 8f520 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 6e 75 6d 62 65 72 29 2c 0a 20 20 20 20 20 20 20 20 20 | quot;</span>.(number),.......... |
| 8f540 | 20 5b 61 72 67 31 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | .[arg1].<span.class="tok-str">&q |
| 8f560 | 75 6f 74 3b 7b 72 64 69 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 61 72 67 31 29 2c 0a 20 | uot;{rdi}"</span>.(arg1),.. |
| 8f580 | 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 |
| 8f5a0 | 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 20 63 6c 6f 62 62 65 | t">//.Next.is.the.list.of.clobbe |
| 8f5c0 | 72 73 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 | rs..These.declare.a.set.of.regis |
| 8f5e0 | 74 65 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 | ters.whose</span>...........<spa |
| 8f600 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 61 6c 75 65 73 20 | n.class="tok-comment">//.values. |
| 8f620 | 77 69 6c 6c 20 6e 6f 74 20 62 65 20 70 72 65 73 65 72 76 65 64 20 62 79 20 74 68 65 20 65 78 65 | will.not.be.preserved.by.the.exe |
| 8f640 | 63 75 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 | cution.of.this.assembly.code.</s |
| 8f660 | 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- |
| 8f680 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 73 65 20 64 6f 20 6e 6f 74 20 69 6e 63 6c 75 64 65 | comment">//.These.do.not.include |
| 8f6a0 | 20 6f 75 74 70 75 74 20 6f 72 20 69 6e 70 75 74 20 72 65 67 69 73 74 65 72 73 2e 20 54 68 65 20 | .output.or.input.registers..The. |
| 8f6c0 | 73 70 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 | special.clobber</span>.......... |
| 8f6e0 | 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 |
| 8f700 | 6c 75 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 | lue.of."memory".means. |
| 8f720 | 74 68 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 | that.the.assembly.writes.to.arbi |
| 8f740 | 74 72 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 | trary.undeclared</span>......... |
| 8f760 | 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 6d | ..<span.class="tok-comment">//.m |
| 8f780 | 65 6d 6f 72 79 20 6c 6f 63 61 74 69 6f 6e 73 20 2d 20 6e 6f 74 20 6f 6e 6c 79 20 74 68 65 20 6d | emory.locations.-.not.only.the.m |
| 8f7a0 | 65 6d 6f 72 79 20 70 6f 69 6e 74 65 64 20 74 6f 20 62 79 20 61 20 64 65 63 6c 61 72 65 64 20 69 | emory.pointed.to.by.a.declared.i |
| 8f7c0 | 6e 64 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 | ndirect</span>...........<span.c |
| 8f7e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 75 74 70 75 74 2e 20 49 6e | lass="tok-comment">//.output..In |
| 8f800 | 20 74 68 69 73 20 65 78 61 6d 70 6c 65 20 77 65 20 6c 69 73 74 20 24 72 63 78 20 61 6e 64 20 24 | .this.example.we.list.$rcx.and.$ |
| 8f820 | 72 31 31 20 62 65 63 61 75 73 65 20 69 74 20 69 73 20 6b 6e 6f 77 6e 20 74 68 65 3c 2f 73 70 61 | r11.because.it.is.known.the</spa |
| 8f840 | 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 |
| 8f860 | 6d 6d 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 | mment">//.kernel.syscall.does.no |
| 8f880 | 74 20 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 | t.preserve.these.registers.</spa |
| 8f8a0 | 6e 3e 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 | n>.........:.<span.class="tok-st |
| 8f8c0 | 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 73 70 61 6e | r">"rcx"</span>,.<span |
| 8f8e0 | 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 75 6f 74 3b | .class="tok-str">"r11" |
| 8f900 | 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 3e 3c 2f 66 | </span>.....);.}</code></pre></f |
| 8f920 | 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 78 38 36 20 | igure>........<p>.......For.x86. |
| 8f940 | 61 6e 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 | and.x86_64.targets,.the.syntax.i |
| 8f960 | 73 20 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 | s.AT&T.syntax,.rather.than.t |
| 8f980 | 68 65 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 | he.more.......popular.Intel.synt |
| 8f9a0 | 61 78 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 | ax..This.is.due.to.technical.con |
| 8f9c0 | 73 74 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 | straints;.assembly.parsing.is... |
| 8f9e0 | 20 20 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 | ....provided.by.LLVM.and.its.sup |
| 8fa00 | 70 6f 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 | port.for.Intel.syntax.is.buggy.a |
| 8fa20 | 6e 64 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 | nd.not.well.tested........</p>.. |
| 8fa40 | 20 20 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 | .....<p>.......Some.day.Zig.may. |
| 8fa60 | 68 61 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 | have.its.own.assembler..This.wou |
| 8fa80 | 6c 64 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 | ld.allow.it.to.integrate.more.se |
| 8faa0 | 61 6d 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 | amlessly.......into.the.language |
| 8fac0 | 2c 20 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 | ,.as.well.as.be.compatible.with. |
| 8fae0 | 74 68 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 | the.popular.NASM.syntax..This.do |
| 8fb00 | 63 75 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 | cumentation.......section.will.b |
| 8fb20 | 65 20 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 | e.updated.before.1.0.0.is.releas |
| 8fb40 | 65 64 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 | ed,.with.a.conclusive.statement. |
| 8fb60 | 61 62 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 | about.the.status.......of.AT& |
| 8fb80 | 3b 54 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 | ;T.vs.Intel/NASM.syntax........< |
| 8fba0 | 2f 70 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 | /p>.......<h3.id="Output-Constra |
| 8fbc0 | 69 6e 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 | ints"><a.href="#toc-Output-Const |
| 8fbe0 | 72 61 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 | raints">Output.Constraints</a>.< |
| 8fc00 | 61 20 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 | a.class="hdr".href="#Output-Cons |
| 8fc20 | 74 72 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 | traints">..</a></h3>........<p>. |
| 8fc40 | 20 20 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 | ......Output.constraints.are.sti |
| 8fc60 | 6c 6c 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 | ll.considered.to.be.unstable.in. |
| 8fc80 | 5a 69 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 | Zig,.and.......so.......<a.href= |
| 8fca0 | 22 68 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 | "http://releases.llvm.org/10.0.0 |
| 8fcc0 | 2f 64 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 | /docs/LangRef.html#inline-asm-co |
| 8fce0 | 6e 73 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 | nstraint-string">LLVM.documentat |
| 8fd00 | 69 6f 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 | ion</a>.......and.......<a.href= |
| 8fd20 | 22 68 74 74 70 73 3a 2f 2f 67 63 63 2e 67 6e 75 2e 6f 72 67 2f 6f 6e 6c 69 6e 65 64 6f 63 73 2f | "https://gcc.gnu.org/onlinedocs/ |
| 8fd40 | 67 63 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 | gcc/Extended-Asm.html">GCC.docum |
| 8fd60 | 65 6e 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 | entation</a>.......must.be.used. |
| 8fd80 | 74 6f 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 | to.understand.the.semantics..... |
| 8fda0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 | ...</p>.......<p>.......Note.tha |
| 8fdc0 | 74 20 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 | t.some.breaking.changes.to.outpu |
| 8fde0 | 74 20 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 | t.constraints.are.planned.with.. |
| 8fe00 | 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d | .....<a.href="https://github.com |
| 8fe20 | 2f 7a 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 | /ziglang/zig/issues/215">issue.# |
| 8fe40 | 32 31 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 | 215</a>........</p>............. |
| 8fe60 | 20 20 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 | ..<h3.id="Input-Constraints"><a. |
| 8fe80 | 68 72 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 | href="#toc-Input-Constraints">In |
| 8fea0 | 70 75 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 | put.Constraints</a>.<a.class="hd |
| 8fec0 | 72 22 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 | r".href="#Input-Constraints">..< |
| 8fee0 | 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 70 75 74 20 | /a></h3>........<p>.......Input. |
| 8ff00 | 63 6f 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 | constraints.are.still.considered |
| 8ff20 | 20 74 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 | .to.be.unstable.in.Zig,.and..... |
| 8ff40 | 20 20 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 | ..so.......<a.href="http://relea |
| 8ff60 | 73 65 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 | ses.llvm.org/10.0.0/docs/LangRef |
| 8ff80 | 2e 68 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 | .html#inline-asm-constraint-stri |
| 8ffa0 | 6e 67 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 | ng">LLVM.documentation</a>...... |
| 8ffc0 | 20 61 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 | .and.......<a.href="https://gcc. |
| 8ffe0 | 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 65 6e 64 65 64 2d | gnu.org/onlinedocs/gcc/Extended- |
| 90000 | 41 73 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 | Asm.html">GCC.documentation</a>. |
| 90020 | 20 20 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 | ......must.be.used.to.understand |
| 90040 | 20 74 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 | .the.semantics........</p>...... |
| 90060 | 20 3c 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 | .<p>.......Note.that.some.breaki |
| 90080 | 6e 67 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 | ng.changes.to.input.constraints. |
| 900a0 | 61 72 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 | are.planned.with.......<a.href=" |
| 900c0 | 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 | https://github.com/ziglang/zig/i |
| 900e0 | 73 73 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 | ssues/215">issue.#215</a>....... |
| 90100 | 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 43 6c 6f 62 | .</p>...............<h3.id="Clob |
| 90120 | 62 65 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 | bers"><a.href="#toc-Clobbers">Cl |
| 90140 | 6f 62 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 | obbers</a>.<a.class="hdr".href=" |
| 90160 | 23 43 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 | #Clobbers">..</a></h3>........<p |
| 90180 | 3e 0a 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 | >.......Clobbers.are.the.set.of. |
| 901a0 | 72 65 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 | registers.whose.values.will.not. |
| 901c0 | 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 74 69 6f 6e 20 6f 66 | be.preserved.by.the.execution.of |
| 901e0 | 0a 20 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 | .......the.assembly.code..These. |
| 90200 | 64 6f 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 | do.not.include.output.or.input.r |
| 90220 | 65 67 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 | egisters..The.special.clobber... |
| 90240 | 20 20 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 | ....value.of.<code><span.class=" |
| 90260 | 74 6f 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 | tok-str">"memory"</spa |
| 90280 | 6e 3e 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 | n></code>.means.that.the.assembl |
| 902a0 | 79 20 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 | y.causes.writes.to.......arbitra |
| 902c0 | 72 79 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 | ry.undeclared.memory.locations.- |
| 902e0 | 20 6e 6f 74 20 6f 6e 6c 79 20 74 68 65 20 6d 65 6d 6f 72 79 20 70 6f 69 6e 74 65 64 20 74 6f 20 | .not.only.the.memory.pointed.to. |
| 90300 | 62 79 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 | by.a.declared.......indirect.out |
| 90320 | 70 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | put........</p>.......<p>....... |
| 90340 | 46 61 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 | Failure.to.declare.the.full.set. |
| 90360 | 6f 66 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 | of.clobbers.for.a.given.inline.a |
| 90380 | 73 73 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 | ssembly.......expression.is.unch |
| 903a0 | 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 | ecked.<a.href="#Undefined-Behavi |
| 903c0 | 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 | or">Undefined.Behavior</a>...... |
| 903e0 | 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 6c 6f | ..</p>...............<h3.id="Glo |
| 90400 | 62 61 6c 2d 41 73 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 | bal-Assembly"><a.href="#toc-Glob |
| 90420 | 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 3c 2f 61 3e | al-Assembly">Global.Assembly</a> |
| 90440 | 20 3c 61 20 63 6c 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 | .<a.class="hdr".href="#Global-As |
| 90460 | 73 65 6d 62 6c 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 | sembly">..</a></h3>........<p>.. |
| 90480 | 20 20 20 20 20 57 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 | .....When.an.assembly.expression |
| 904a0 | 20 6f 63 63 75 72 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 | .occurs.in.a.<a.href="#Container |
| 904c0 | 73 22 3e 63 6f 6e 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 | s">container</a>.level.<a.href=" |
| 904e0 | 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 2c 20 74 | #comptime">comptime</a>.block,.t |
| 90500 | 68 69 73 20 69 73 0a 20 20 20 20 20 20 3c 73 74 72 6f 6e 67 3e 67 6c 6f 62 61 6c 20 61 73 73 65 | his.is.......<strong>global.asse |
| 90520 | 6d 62 6c 79 3c 2f 73 74 72 6f 6e 67 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | mbly</strong>........</p>....... |
| 90540 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 6b 69 6e 64 20 6f 66 20 61 73 73 65 6d 62 6c 79 20 | <p>.......This.kind.of.assembly. |
| 90560 | 68 61 73 20 64 69 66 66 65 72 65 6e 74 20 72 75 6c 65 73 20 74 68 61 6e 20 69 6e 6c 69 6e 65 20 | has.different.rules.than.inline. |
| 90580 | 61 73 73 65 6d 62 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 | assembly..First,.<code><span.cla |
| 905a0 | 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 |
| 905c0 | 65 3e 0a 20 20 20 20 20 20 69 73 20 6e 6f 74 20 76 61 6c 69 64 20 62 65 63 61 75 73 65 20 61 6c | e>.......is.not.valid.because.al |
| 905e0 | 6c 20 67 6c 6f 62 61 6c 20 61 73 73 65 6d 62 6c 79 20 69 73 20 75 6e 63 6f 6e 64 69 74 69 6f 6e | l.global.assembly.is.uncondition |
| 90600 | 61 6c 6c 79 20 69 6e 63 6c 75 64 65 64 2e 0a 20 20 20 20 20 20 53 65 63 6f 6e 64 2c 20 74 68 65 | ally.included........Second,.the |
| 90620 | 72 65 20 61 72 65 20 6e 6f 20 69 6e 70 75 74 73 2c 20 6f 75 74 70 75 74 73 2c 20 6f 72 20 63 6c | re.are.no.inputs,.outputs,.or.cl |
| 90640 | 6f 62 62 65 72 73 2e 20 41 6c 6c 20 67 6c 6f 62 61 6c 20 61 73 73 65 6d 62 6c 79 20 69 73 20 63 | obbers..All.global.assembly.is.c |
| 90660 | 6f 6e 63 61 74 65 6e 61 74 65 64 0a 20 20 20 20 20 20 76 65 72 62 61 74 69 6d 20 69 6e 74 6f 20 | oncatenated.......verbatim.into. |
| 90680 | 6f 6e 65 20 6c 6f 6e 67 20 73 74 72 69 6e 67 20 61 6e 64 20 61 73 73 65 6d 62 6c 65 64 20 74 6f | one.long.string.and.assembled.to |
| 906a0 | 67 65 74 68 65 72 2e 20 54 68 65 72 65 20 61 72 65 20 6e 6f 20 74 65 6d 70 6c 61 74 65 20 73 75 | gether..There.are.no.template.su |
| 906c0 | 62 73 74 69 74 75 74 69 6f 6e 20 72 75 6c 65 73 20 72 65 67 61 72 64 69 6e 67 0a 20 20 20 20 20 | bstitution.rules.regarding...... |
| 906e0 | 20 3c 63 6f 64 65 3e 25 3c 2f 63 6f 64 65 3e 20 61 73 20 74 68 65 72 65 20 61 72 65 20 69 6e 20 | .<code>%</code>.as.there.are.in. |
| 90700 | 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 73 2e 0a 20 20 20 | inline.assembly.expressions..... |
| 90720 | 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 |
| 90740 | 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 |
| 90760 | 69 6c 65 22 3e 74 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 | ile">test_global_assembly.zig</c |
| 90780 | 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 |
| 907a0 | 6e 20 63 6c 61 73 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 |
| 907c0 | 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 |
| 907e0 | 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 |
| 90800 | 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 |
| 90820 | 6e 20 63 6c 61 73 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 |
| 90840 | 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 |
| 90860 | 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> |
| 90880 | 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 61 73 6d 3c | .{.....<span.class="tok-kw">asm< |
| 908a0 | 2f 73 70 61 6e 3e 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 | /span>.(.........<span.class="to |
| 908c0 | 6b 2d 73 74 72 22 3e 5c 5c 2e 67 6c 6f 62 61 6c 20 6d 79 5f 66 75 6e 63 3b 0a 3c 2f 73 70 61 6e | k-str">\\.global.my_func;.</span |
| 908e0 | 3e 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c | >........<span.class="tok-str">\ |
| 90900 | 5c 2e 74 79 70 65 20 6d 79 5f 66 75 6e 63 2c 20 40 66 75 6e 63 74 69 6f 6e 3b 0a 3c 2f 73 70 61 | \.type.my_func,.@function;.</spa |
| 90920 | 6e 3e 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | n>........<span.class="tok-str"> |
| 90940 | 5c 5c 6d 79 5f 66 75 6e 63 3a 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | \\my_func:.</span>........<span. |
| 90960 | 63 6c 61 73 73 3d 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 | class="tok-str">\\..lea.(%rdi,%r |
| 90980 | 73 69 2c 31 29 2c 25 65 61 78 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | si,1),%eax.</span>........<span. |
| 909a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 20 20 72 65 74 71 0a 3c 2f 73 70 61 6e 3e | class="tok-str">\\..retq.</span> |
| 909c0 | 20 20 20 20 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | ....);.}..<span.class="tok-kw">e |
| 909e0 | 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 |
| 90a00 | 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" |
| 90a20 | 3e 6d 79 5f 66 75 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 | >my_func</span>(a:.<span.class=" |
| 90a40 | 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 73 70 61 6e 20 63 | tok-type">i32</span>,.b:.<span.c |
| 90a60 | 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 |
| 90a80 | 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 3b 0a 0a | n.class="tok-type">i32</span>;.. |
| 90aa0 | 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> |
| 90ac0 | 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 67 6c 6f | .<span.class="tok-str">"glo |
| 90ae0 | 62 61 6c 20 61 73 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 | bal.assembly"</span>.{..... |
| 90b00 | 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>. |
| 90b20 | 65 78 70 65 63 74 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 | expect(my_func(<span.class="tok- |
| 90b40 | 6e 75 6d 62 65 72 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 | number">12</span>,.<span.class=" |
| 90b60 | 74 6f 6b 2d 6e 75 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 | tok-number">34</span>).==.<span. |
| 90b80 | 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 3b 0a 7d | class="tok-number">46</span>);.} |
| 90ba0 | 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 |
| 90bc0 | 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 |
| 90be0 | 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> |
| 90c00 | 7a 69 67 20 74 65 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 | zig.test.test_global_assembly.zi |
| 90c20 | 67 20 2d 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 31 2f 31 | g.-target.x86_64-linux</kbd>.1/1 |
| 90c40 | 20 74 65 73 74 5f 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 | .test_global_assembly.test.globa |
| 90c60 | 6c 20 61 73 73 65 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 | l.assembly...OK.All.1.tests.pass |
| 90c80 | 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>...... |
| 90ca0 | 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 41 74 6f 6d 69 63 73 | .................<h2.id="Atomics |
| 90cc0 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 74 6f 6d 69 63 73 22 3e 41 74 6f 6d 69 63 73 | "><a.href="#toc-Atomics">Atomics |
| 90ce0 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 74 6f 6d 69 | </a>.<a.class="hdr".href="#Atomi |
| 90d00 | 63 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 54 4f 44 4f 3a 20 | cs">..</a></h2>........<p>TODO:. |
| 90d20 | 40 66 65 6e 63 65 28 29 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 40 61 74 6f | @fence()</p>.......<p>TODO:.@ato |
| 90d40 | 6d 69 63 20 72 6d 77 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 62 75 69 6c 74 | mic.rmw</p>.......<p>TODO:.built |
| 90d60 | 69 6e 20 61 74 6f 6d 69 63 20 6d 65 6d 6f 72 79 20 6f 72 64 65 72 69 6e 67 20 65 6e 75 6d 3c 2f | in.atomic.memory.ordering.enum</ |
| 90d80 | 70 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 | p>........<p>See.also:</p><ul>.< |
| 90da0 | 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 63 | li><a.href="#atomicLoad">@atomic |
| 90dc0 | 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 6d | Load</a></li>.<li><a.href="#atom |
| 90de0 | 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 3c | icStore">@atomicStore</a></li>.< |
| 90e00 | 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 74 6f 6d 69 63 52 | li><a.href="#atomicRmw">@atomicR |
| 90e20 | 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 66 65 6e 63 65 22 | mw</a></li>.<li><a.href="#fence" |
| 90e40 | 3e 40 66 65 6e 63 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 | >@fence</a></li>.<li><a.href="#c |
| 90e60 | 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 69 | mpxchgWeak">@cmpxchgWeak</a></li |
| 90e80 | 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 67 22 3e 40 | >.<li><a.href="#cmpxchgStrong">@ |
| 90ea0 | 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 0a 0a 0a 20 | cmpxchgStrong</a></li>.</ul>.... |
| 90ec0 | 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 41 73 79 6e 63 2d 46 75 6e 63 74 | .............<h2.id="Async-Funct |
| 90ee0 | 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 73 79 6e 63 2d 46 75 6e 63 74 69 | ions"><a.href="#toc-Async-Functi |
| 90f00 | 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | ons">Async.Functions</a>.<a.clas |
| 90f20 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e | s="hdr".href="#Async-Functions"> |
| 90f40 | c2 a7 3c 2f 61 3e 3c 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 | ..</a></h2>........<p>Async.func |
| 90f60 | 74 69 6f 6e 73 20 72 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 | tions.regressed.with.the.release |
| 90f80 | 20 6f 66 20 30 2e 31 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 | .of.0.11.0..Their.future.in..... |
| 90fa0 | 20 20 74 68 65 20 5a 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 | ..the.Zig.language.is.unclear.du |
| 90fc0 | 65 20 74 6f 20 6d 75 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 | e.to.multiple.unsolved.problems: |
| 90fe0 | 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 4c 4c 56 4d | </p>.......<ul>.........<li>LLVM |
| 91000 | 27 73 20 6c 61 63 6b 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 | 's.lack.of.ability.to.optimize.t |
| 91020 | 68 65 6d 2e 3c 2f 6c 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 | hem.</li>.........<li>Third-part |
| 91040 | 79 20 64 65 62 75 67 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 | y.debuggers'.lack.of.ability.to. |
| 91060 | 64 65 62 75 67 20 74 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 | debug.them.</li>.........<li><a. |
| 91080 | 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 67 | href="https://github.com/ziglang |
| 910a0 | 2f 7a 69 67 2f 69 73 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 | /zig/issues/5913">The.cancellati |
| 910c0 | 6f 6e 20 70 72 6f 62 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 | on.problem</a>.</li>.........<li |
| 910e0 | 3e 41 73 79 6e 63 20 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 | >Async.function.pointers.prevent |
| 91100 | 69 6e 67 20 74 68 65 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 | ing.the.stack.size.from.being.kn |
| 91120 | 6f 77 6e 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 54 | own.</li>.......</ul>.......<p>T |
| 91140 | 68 65 73 65 20 70 72 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 | hese.problems.are.surmountable,. |
| 91160 | 62 75 74 20 69 74 20 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 | but.it.will.take.time..The.Zig.t |
| 91180 | 65 61 6d 0a 20 20 20 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 | eam.......is.currently.focused.o |
| 911a0 | 6e 20 6f 74 68 65 72 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 | n.other.priorities.</p>......... |
| 911c0 | 20 20 20 20 20 20 3c 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 | ......<h2.id="Builtin-Functions" |
| 911e0 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 42 75 69 6c 74 69 6e 2d 46 75 6e 63 74 69 6f 6e 73 | ><a.href="#toc-Builtin-Functions |
| 91200 | 22 3e 42 75 69 6c 74 69 6e 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | ">Builtin.Functions</a>.<a.class |
| 91220 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 42 75 69 6c 74 69 6e 2d 46 75 6e 63 74 69 6f 6e 73 22 | ="hdr".href="#Builtin-Functions" |
| 91240 | 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 42 75 | >..</a></h2>........<p>.......Bu |
| 91260 | 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 73 20 61 72 65 20 70 72 6f 76 69 64 65 64 20 62 79 20 | iltin.functions.are.provided.by. |
| 91280 | 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64 20 61 72 65 20 70 72 65 66 69 78 65 64 20 77 69 | the.compiler.and.are.prefixed.wi |
| 912a0 | 74 68 20 3c 63 6f 64 65 3e 40 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 54 68 65 20 3c 63 6f | th.<code>@</code>........The.<co |
| 912c0 | 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 |
| 912e0 | 3c 2f 73 70 61 6e 3e 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 | </span></code>.keyword.on.a.para |
| 91300 | 6d 65 74 65 72 20 6d 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 | meter.means.that.the.parameter.m |
| 91320 | 75 73 74 20 62 65 20 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 | ust.be.known.......at.compile.ti |
| 91340 | 6d 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 61 64 64 | me........</p>.......<h3.id="add |
| 91360 | 72 53 70 61 63 65 43 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 | rSpaceCast"><a.href="#toc-addrSp |
| 91380 | 61 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 20 3c 61 20 63 | aceCast">@addrSpaceCast</a>.<a.c |
| 913a0 | 6c 61 73 73 3d 22 68 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 | lass="hdr".href="#addrSpaceCast" |
| 913c0 | 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>< |
| 913e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 64 64 72 53 70 | span.class="tok-builtin">@addrSp |
| 91400 | 61 63 65 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 | aceCast</span>(ptr:.<span.class= |
| 91420 | 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 63 | "tok-kw">anytype</span>).<span.c |
| 91440 | 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 6f | lass="tok-kw">anytype</span></co |
| 91460 | 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 72 | de></pre>.......<p>.......Conver |
| 91480 | 74 73 20 61 20 70 6f 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 | ts.a.pointer.from.one.address.sp |
| 914a0 | 61 63 65 20 74 6f 20 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 | ace.to.another..The.new.address. |
| 914c0 | 73 70 61 63 65 20 69 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 | space.is.inferred....based.on.th |
| 914e0 | 65 20 72 65 73 75 6c 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 | e.result.type..Depending.on.the. |
| 91500 | 63 75 72 72 65 6e 74 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 | current.target.and.address.space |
| 91520 | 73 2c 20 74 68 69 73 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 | s,.this.cast....may.be.a.no-op,. |
| 91540 | 61 20 63 6f 6d 70 6c 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 | a.complex.operation,.or.illegal. |
| 91560 | 20 49 66 20 74 68 65 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 | .If.the.cast.is.legal,.then.the. |
| 91580 | 72 65 73 75 6c 74 69 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 | resulting....pointer.points.to.t |
| 915a0 | 68 65 20 73 61 6d 65 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 | he.same.memory.location.as.the.p |
| 915c0 | 6f 69 6e 74 65 72 20 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 | ointer.operand..It.is.always.val |
| 915e0 | 69 64 20 74 6f 0a 09 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 | id.to....cast.a.pointer.between. |
| 91600 | 74 68 65 20 73 61 6d 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 | the.same.address.spaces........< |
| 91620 | 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 61 64 64 57 69 74 68 | /p>..............<h3.id="addWith |
| 91640 | 4f 76 65 72 66 6c 6f 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 | Overflow"><a.href="#toc-addWithO |
| 91660 | 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 3e 20 3c 61 | verflow">@addWithOverflow</a>.<a |
| 91680 | 20 63 6c 61 73 73 3d 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 | .class="hdr".href="#addWithOverf |
| 916a0 | 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 72 65 3e 3c 63 6f | low">..</a></h3>........<pre><co |
| 916c0 | 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 64 | de><span.class="tok-builtin">@ad |
| 916e0 | 64 57 69 74 68 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 | dWithOverflow</span>(a:.<span.cl |
| 91700 | 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 20 62 3a 20 | ass="tok-kw">anytype</span>,.b:. |
| 91720 | 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 |
| 91740 | 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 63 74 | an>).<span.class="tok-kw">struct |
| 91760 | 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 62 75 69 6c 74 | </span>.{.<span.class="tok-built |
| 91780 | 69 6e 22 3e 40 54 79 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 | in">@TypeOf</span>(a,.b),.<span. |
| 917a0 | 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 63 6f | class="tok-type">u1</span>.}</co |
| 917c0 | 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 6f 72 | de></pre>.......<p>.......Perfor |
| 917e0 | 6d 73 20 3c 63 6f 64 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 | ms.<code>a.+.b</code>.and.return |
| 91800 | 73 20 61 20 74 75 70 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 | s.a.tuple.with.the.result.and.a. |
| 91820 | 70 6f 73 73 69 62 6c 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 | possible.overflow.bit........</p |
| 91840 | 3e 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 43 61 73 74 | >..............<h3.id="alignCast |
| 91860 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 6c 69 67 6e 43 61 73 74 22 3e 40 61 6c 69 67 | "><a.href="#toc-alignCast">@alig |
| 91880 | 6e 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | nCast</a>.<a.class="hdr".href="# |
| 918a0 | 61 6c 69 67 6e 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 | alignCast">..</a></h3>........<p |
| 918c0 | 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 |
| 918e0 | 6e 22 3e 40 61 6c 69 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 | n">@alignCast</span>(ptr:.<span. |
| 91900 | 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>).< |
| 91920 | 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 |
| 91940 | 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>....... |
| 91960 | 3c 63 6f 64 65 3e 70 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 | <code>ptr</code>.can.be.<code>*T |
| 91980 | 3c 2f 63 6f 64 65 3e 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 | </code>,.<code>?*T</code>,.or.<c |
| 919a0 | 6f 64 65 3e 5b 5d 54 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 | ode>[]T</code>.....Changes.the.a |
| 919c0 | 6c 69 67 6e 6d 65 6e 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 | lignment.of.a.pointer..The.align |
| 919e0 | 6d 65 6e 74 20 74 6f 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 | ment.to.use.is.inferred.based.on |
| 91a00 | 20 74 68 65 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 20 20 | .the.result.type........</p>.... |
| 91a20 | 20 20 20 3c 70 3e 41 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 | ...<p>A.<a.href="#Incorrect-Poin |
| 91a40 | 74 65 72 2d 41 6c 69 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 | ter-Alignment">pointer.alignment |
| 91a60 | 20 73 61 66 65 74 79 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 | .safety.check</a>.is.added...... |
| 91a80 | 20 74 6f 20 74 68 65 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 | .to.the.generated.code.to.make.s |
| 91aa0 | 75 72 65 20 74 68 65 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 | ure.the.pointer.is.aligned.as.pr |
| 91ac0 | 6f 6d 69 73 65 64 2e 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 | omised.</p>...............<h3.id |
| 91ae0 | 3d 22 61 6c 69 67 6e 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 | ="alignOf"><a.href="#toc-alignOf |
| 91b00 | 22 3e 40 61 6c 69 67 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 | ">@alignOf</a>.<a.class="hdr".hr |
| 91b20 | 65 66 3d 22 23 61 6c 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 | ef="#alignOf">..</a></h3>....... |
| 91b40 | 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 |
| 91b60 | 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 73 | ltin">@alignOf</span>(<span.clas |
| 91b80 | 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 |
| 91ba0 | 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> |
| 91bc0 | 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 |
| 91be0 | 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>....... |
| 91c00 | 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. |
| 91c20 | 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 74 68 61 74 20 74 68 69 73 20 74 79 | the.number.of.bytes.that.this.ty |
| 91c40 | 70 65 20 73 68 6f 75 6c 64 20 62 65 20 61 6c 69 67 6e 65 64 20 74 6f 0a 20 20 20 20 20 20 66 6f | pe.should.be.aligned.to.......fo |
| 91c60 | 72 20 74 68 65 20 63 75 72 72 65 6e 74 20 74 61 72 67 65 74 20 74 6f 20 6d 61 74 63 68 20 74 68 | r.the.current.target.to.match.th |
| 91c80 | 65 20 43 20 41 42 49 2e 20 57 68 65 6e 20 74 68 65 20 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 | e.C.ABI..When.the.child.type.of. |
| 91ca0 | 61 20 70 6f 69 6e 74 65 72 20 68 61 73 0a 20 20 20 20 20 20 74 68 69 73 20 61 6c 69 67 6e 6d 65 | a.pointer.has.......this.alignme |
| 91cc0 | 6e 74 2c 20 74 68 65 20 61 6c 69 67 6e 6d 65 6e 74 20 63 61 6e 20 62 65 20 6f 6d 69 74 74 65 64 | nt,.the.alignment.can.be.omitted |
| 91ce0 | 20 66 72 6f 6d 20 74 68 65 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | .from.the.type........</p>...... |
| 91d00 | 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" |
| 91d20 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | >const</span>.assert.=.<span.cla |
| 91d40 | 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>( |
| 91d60 | 3c 73 70 61 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& |
| 91d80 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 3c 73 70 61 | quot;</span>).debug.assert;.<spa |
| 91da0 | 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> |
| 91dc0 | 20 7b 0a 20 20 20 20 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 | .{.....assert(*<span.class="tok- |
| 91de0 | 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 | type">u32</span>.==.*<span.class |
| 91e00 | 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ="tok-kw">align</span>(<span.cla |
| 91e20 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 73 70 61 6e 3e | ss="tok-builtin">@alignOf</span> |
| 91e40 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 | (<span.class="tok-type">u32</spa |
| 91e60 | 6e 3e 29 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 | n>)).<span.class="tok-type">u32< |
| 91e80 | 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 | /span>);.}</code></pre>.......<p |
| 91ea0 | 3e 0a 20 20 20 20 20 20 54 68 65 20 72 65 73 75 6c 74 20 69 73 20 61 20 74 61 72 67 65 74 2d 73 | >.......The.result.is.a.target-s |
| 91ec0 | 70 65 63 69 66 69 63 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 2e 20 49 | pecific.compile.time.constant..I |
| 91ee0 | 74 20 69 73 20 67 75 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 | t.is.guaranteed.to.be.......less |
| 91f00 | 20 74 68 61 6e 20 6f 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 | .than.or.equal.to.<a.href="#size |
| 91f20 | 4f 66 22 3e 40 73 69 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 | Of">@sizeOf(T)</a>........</p>.. |
| 91f40 | 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 |
| 91f60 | 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 3c 2f 61 3e | .href="#Alignment">Alignment</a> |
| 91f80 | 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 69 | </li>.</ul>................<h3.i |
| 91fa0 | 64 3d 22 61 73 22 3e 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 | d="as"><a.href="#toc-as">@as</a> |
| 91fc0 | 20 3c 61 20 63 6c 61 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 | .<a.class="hdr".href="#as">..</a |
| 91fe0 | 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 |
| 92000 | 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 |
| 92020 | 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 |
| 92040 | 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 |
| 92060 | 65 3c 2f 73 70 61 6e 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 | e</span>,.expression).T</code></ |
| 92080 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 3c 61 | pre>.......<p>.......Performs.<a |
| 920a0 | 20 68 72 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 | .href="#Type-Coercion">Type.Coer |
| 920c0 | 63 69 6f 6e 3c 2f 61 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 | cion</a>..This.cast.is.allowed.w |
| 920e0 | 68 65 6e 20 74 68 65 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 | hen.the.conversion.is.unambiguou |
| 92100 | 73 20 61 6e 64 20 73 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 | s.and.safe,.......and.is.the.pre |
| 92120 | 66 65 72 72 65 64 20 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 | ferred.way.to.convert.between.ty |
| 92140 | 70 65 73 2c 20 77 68 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 | pes,.whenever.possible........</ |
| 92160 | 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 61 74 6f 6d 69 63 4c | p>...............<h3.id="atomicL |
| 92180 | 6f 61 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 74 6f 6d 69 63 4c 6f 61 64 22 3e 40 | oad"><a.href="#toc-atomicLoad">@ |
| 921a0 | 61 74 6f 6d 69 63 4c 6f 61 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | atomicLoad</a>.<a.class="hdr".hr |
| 921c0 | 65 66 3d 22 23 61 74 6f 6d 69 63 4c 6f 61 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | ef="#atomicLoad">..</a></h3>.... |
| 921e0 | 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- |
| 92200 | 62 75 69 6c 74 69 6e 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 | builtin">@atomicLoad</span>(<spa |
| 92220 | 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> |
| 92240 | 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c | .T:.<span.class="tok-type">type< |
| 92260 | 2f 73 70 61 6e 3e 2c 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 | /span>,.ptr:.*<span.class="tok-k |
| 92280 | 77 22 3e 63 6f 6e 73 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 | w">const</span>.T,.<span.class=" |
| 922a0 | 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 64 65 72 69 6e 67 | tok-kw">comptime</span>.ordering |
| 922c0 | 3a 20 41 74 6f 6d 69 63 4f 72 64 65 72 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | :.AtomicOrder).T</code></pre>... |
| 922e0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 | ....<p>.......This.builtin.funct |
| 92300 | 69 6f 6e 20 61 74 6f 6d 69 63 61 6c 6c 79 20 64 65 72 65 66 65 72 65 6e 63 65 73 20 61 20 70 6f | ion.atomically.dereferences.a.po |
| 92320 | 69 6e 74 65 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 72 65 | inter.to.a.<code>T</code>.and.re |
| 92340 | 74 75 72 6e 73 20 74 68 65 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | turns.the.value........</p>..... |
| 92360 | 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. |
| 92380 | 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 |
| 923a0 | 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>, |
| 923c0 | 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 |
| 923e0 | 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 |
| 92400 | 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 |
| 92420 | 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 |
| 92440 | 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 |
| 92460 | 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 |
| 92480 | 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>.</ |
| 924a0 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c | p>.......<p>See.also:</p><ul>.<l |
| 924c0 | 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 40 61 74 6f 6d 69 63 | i><a.href="#atomicStore">@atomic |
| 924e0 | 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 66 3d 22 23 61 74 6f | Store</a></li>.<li><a.href="#ato |
| 92500 | 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> |
| 92520 | 3c 61 20 68 72 65 66 3d 22 23 66 65 6e 63 65 22 3e 40 66 65 6e 63 65 3c 2f 61 3e 3c 2f 6c 69 3e | <a.href="#fence">@fence</a></li> |
| 92540 | 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 3e 40 63 6d 70 | .<li><a.href="#cmpxchgWeak">@cmp |
| 92560 | 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 65 66 3d 22 23 | xchgWeak</a></li>.<li><a.href="# |
| 92580 | 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 |
| 925a0 | 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. |
| 925c0 | 69 64 3d 22 61 74 6f 6d 69 63 52 6d 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 74 6f | id="atomicRmw"><a.href="#toc-ato |
| 925e0 | 6d 69 63 52 6d 77 22 3e 40 61 74 6f 6d 69 63 52 6d 77 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | micRmw">@atomicRmw</a>.<a.class= |
| 92600 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 52 6d 77 22 3e c2 a7 3c 2f 61 3e 3c 2f | "hdr".href="#atomicRmw">..</a></ |
| 92620 | 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 73 | h3>........<pre><code><span.clas |
| 92640 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 74 6f 6d 69 63 52 6d 77 3c 2f 73 70 61 6e | s="tok-builtin">@atomicRmw</span |
| 92660 | 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< |
| 92680 | 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | /span>.T:.<span.class="tok-type" |
| 926a0 | 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 54 2c 20 3c 73 70 61 6e 20 63 6c 61 | >type</span>,.ptr:.*T,.<span.cla |
| 926c0 | 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 70 3a 20 | ss="tok-kw">comptime</span>.op:. |
| 926e0 | 41 74 6f 6d 69 63 52 6d 77 4f 70 2c 20 6f 70 65 72 61 6e 64 3a 20 54 2c 20 3c 73 70 61 6e 20 63 | AtomicRmwOp,.operand:.T,.<span.c |
| 92700 | 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 |
| 92720 | 64 65 72 69 6e 67 3a 20 41 74 6f 6d 69 63 4f 72 64 65 72 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 | dering:.AtomicOrder).T</code></p |
| 92740 | 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 6e | re>.......<p>.......This.builtin |
| 92760 | 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 72 | .function.dereferences.a.pointer |
| 92780 | 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 61 | .to.a.<code>T</code>.and.atomica |
| 927a0 | 6c 6c 79 0a 20 20 20 20 20 20 6d 6f 64 69 66 69 65 73 20 74 68 65 20 76 61 6c 75 65 20 61 6e 64 | lly.......modifies.the.value.and |
| 927c0 | 20 72 65 74 75 72 6e 73 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 76 61 6c 75 65 2e 0a 20 20 20 | .returns.the.previous.value..... |
| 927e0 | 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< |
| 92800 | 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 |
| 92820 | 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 |
| 92840 | 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 |
| 92860 | 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>... |
| 92880 | 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>. |
| 928a0 | 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 |
| 928c0 | 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> |
| 928e0 | 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 |
| 92900 | 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 |
| 92920 | 65 72 3c 2f 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 41 74 | er</code>.</p>.......<p><code>At |
| 92940 | 6f 6d 69 63 52 6d 77 4f 70 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 77 69 | omicRmwOp</code>.can.be.found.wi |
| 92960 | 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 |
| 92980 | 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 |
| 929a0 | 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>). |
| 929c0 | 62 75 69 6c 74 69 6e 2e 41 74 6f 6d 69 63 52 6d 77 4f 70 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a | builtin.AtomicRmwOp</code>.</p>. |
| 929e0 | 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>< |
| 92a00 | 61 20 68 72 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 | a.href="#atomicStore">@atomicSto |
| 92a20 | 72 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 61 74 6f 6d 69 63 | re</a></li>.<li><a.href="#atomic |
| 92a40 | 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 3c 6c 69 3e 3c | Load">@atomicLoad</a></li>.<li>< |
| 92a60 | 61 20 68 72 65 66 3d 22 23 66 65 6e 63 65 22 3e 40 66 65 6e 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a | a.href="#fence">@fence</a></li>. |
| 92a80 | 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 3e 40 63 6d 70 78 | <li><a.href="#cmpxchgWeak">@cmpx |
| 92aa0 | 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 65 66 3d 22 23 63 | chgWeak</a></li>.<li><a.href="#c |
| 92ac0 | 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 3e | mpxchgStrong">@cmpxchgStrong</a> |
| 92ae0 | 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 69 | </li>.</ul>................<h3.i |
| 92b00 | 64 3d 22 61 74 6f 6d 69 63 53 74 6f 72 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 74 | d="atomicStore"><a.href="#toc-at |
| 92b20 | 6f 6d 69 63 53 74 6f 72 65 22 3e 40 61 74 6f 6d 69 63 53 74 6f 72 65 3c 2f 61 3e 20 3c 61 20 63 | omicStore">@atomicStore</a>.<a.c |
| 92b40 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 53 74 6f 72 65 22 3e c2 | lass="hdr".href="#atomicStore">. |
| 92b60 | 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 |
| 92b80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 74 6f 6d 69 63 53 74 | an.class="tok-builtin">@atomicSt |
| 92ba0 | 6f 72 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 | ore</span>(<span.class="tok-kw"> |
| 92bc0 | 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=" |
| 92be0 | 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 54 2c 20 | tok-type">type</span>,.ptr:.*T,. |
| 92c00 | 76 61 6c 75 65 3a 20 54 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | value:.T,.<span.class="tok-kw">c |
| 92c20 | 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 63 4f | omptime</span>.ordering:.AtomicO |
| 92c40 | 72 64 65 72 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 | rder).<span.class="tok-type">voi |
| 92c60 | 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 0a | d</span></code></pre>.......<p>. |
| 92c80 | 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 72 65 | ......This.builtin.function.dere |
| 92ca0 | 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 54 3c | ferences.a.pointer.to.a.<code>T< |
| 92cc0 | 2f 63 6f 64 65 3e 20 61 6e 64 20 61 74 6f 6d 69 63 61 6c 6c 79 20 73 74 6f 72 65 73 20 74 68 65 | /code>.and.atomically.stores.the |
| 92ce0 | 20 67 69 76 65 6e 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | .given.value........</p>.......< |
| 92d00 | 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 62 65 20 | p>.......<code>T</code>.must.be. |
| 92d20 | 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 73 3d 22 | a.pointer,.a.<code><span.class=" |
| 92d40 | 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 20 | tok-type">bool</span></code>,.a. |
| 92d60 | 66 6c 6f 61 74 2c 0a 20 20 20 20 20 20 61 6e 20 69 6e 74 65 67 65 72 20 6f 72 20 61 6e 20 65 6e | float,.......an.integer.or.an.en |
| 92d80 | 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 3e 41 74 | um........</p>.......<p><code>At |
| 92da0 | 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 20 77 69 | omicOrder</code>.can.be.found.wi |
| 92dc0 | 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 |
| 92de0 | 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 |
| 92e00 | 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>). |
| 92e20 | 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 70 3e 0a | builtin.AtomicOrder</code>.</p>. |
| 92e40 | 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>< |
| 92e60 | 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 61 64 | a.href="#atomicLoad">@atomicLoad |
| 92e80 | 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 52 6d | </a></li>.<li><a.href="#atomicRm |
| 92ea0 | 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 3c 61 20 68 72 | w">@atomicRmw</a></li>.<li><a.hr |
| 92ec0 | 65 66 3d 22 23 66 65 6e 63 65 22 3e 40 66 65 6e 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e | ef="#fence">@fence</a></li>.<li> |
| 92ee0 | 3c 61 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 | <a.href="#cmpxchgWeak">@cmpxchgW |
| 92f00 | 65 61 6b 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 | eak</a></li>.<li><a.href="#cmpxc |
| 92f20 | 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 3c 2f 6c 69 | hgStrong">@cmpxchgStrong</a></li |
| 92f40 | 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 62 | >.</ul>................<h3.id="b |
| 92f60 | 69 74 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 69 74 43 61 73 74 22 3e 40 | itCast"><a.href="#toc-bitCast">@ |
| 92f80 | 62 69 74 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | bitCast</a>.<a.class="hdr".href= |
| 92fa0 | 22 23 62 69 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 20 3c 70 | "#bitCast">..</a></h3>........<p |
| 92fc0 | 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 |
| 92fe0 | 6e 22 3e 40 62 69 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 | n">@bitCast</span>(value:.<span. |
| 93000 | 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>).< |
| 93020 | 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 |
| 93040 | 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>....... |
| 93060 | 43 6f 6e 76 65 72 74 73 20 61 20 76 61 6c 75 65 20 6f 66 20 6f 6e 65 20 74 79 70 65 20 74 6f 20 | Converts.a.value.of.one.type.to. |
| 93080 | 61 6e 6f 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 | another.type..The.return.type.is |
| 930a0 | 20 74 68 65 0a 09 09 09 69 6e 66 65 72 72 65 64 20 72 65 73 75 6c 74 20 74 79 70 65 2e 0a 20 20 | .the....inferred.result.type.... |
| 930c0 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 73 73 65 72 74 73 | ....</p>.......<p>.......Asserts |
| 930e0 | 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 62 75 69 | .that.<code><span.class="tok-bui |
| 93100 | 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ltin">@sizeOf</span>(<span.class |
| 93120 | 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 |
| 93140 | 6c 75 65 29 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | lue)).==.<span.class="tok-builti |
| 93160 | 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 44 65 73 74 54 79 70 65 29 3c 2f 63 6f 64 | n">@sizeOf</span>(DestType)</cod |
| 93180 | 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 | e>........</p>.......<p>.......A |
| 931a0 | 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 73 3d 22 74 | sserts.that.<code><span.class="t |
| 931c0 | 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 44 65 73 | ok-builtin">@typeInfo</span>(Des |
| 931e0 | 74 54 79 70 65 29 20 21 3d 20 2e 50 6f 69 6e 74 65 72 3c 2f 63 6f 64 65 3e 2e 20 55 73 65 20 3c | tType).!=..Pointer</code>..Use.< |
| 93200 | 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">@ |
| 93220 | 70 74 72 43 61 73 74 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 | ptrCast</span></code>.or.<code>< |
| 93240 | 73 70 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 |
| 93260 | 6d 49 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 79 6f 75 20 6e 65 65 64 20 74 | mInt</span></code>.if.you.need.t |
| 93280 | 68 69 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | his........</p>.......<p>....... |
| 932a0 | 43 61 6e 20 62 65 20 75 73 65 64 20 66 6f 72 20 74 68 65 73 65 20 74 68 69 6e 67 73 20 66 6f 72 | Can.be.used.for.these.things.for |
| 932c0 | 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a | .example:.......</p>.......<ul>. |
| 932e0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6e 76 65 72 74 20 3c 63 6f 64 65 3e 3c 73 70 61 | ..........<li>Convert.<code><spa |
| 93300 | 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 3c 2f 63 | n.class="tok-type">f32</span></c |
| 93320 | 6f 64 65 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 2d 74 | ode>.to.<code><span.class="tok-t |
| 93340 | 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 69 74 73 3c 2f 6c 69 3e | ype">u32</span></code>.bits</li> |
| 93360 | 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6e 76 65 72 74 20 3c 63 6f 64 65 3e 3c 73 70 | ...........<li>Convert.<code><sp |
| 93380 | 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 3c 2f | an.class="tok-type">i32</span></ |
| 933a0 | 63 6f 64 65 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 2d | code>.to.<code><span.class="tok- |
| 933c0 | 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 70 72 65 73 65 72 76 69 | type">u32</span></code>.preservi |
| 933e0 | 6e 67 20 74 77 6f 73 20 63 6f 6d 70 6c 65 6d 65 6e 74 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f | ng.twos.complement</li>.......</ |
| 93400 | 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 6f 72 6b 73 20 61 74 20 63 6f 6d | ul>.......<p>.......Works.at.com |
| 93420 | 70 69 6c 65 2d 74 69 6d 65 20 69 66 20 3c 63 6f 64 65 3e 76 61 6c 75 65 3c 2f 63 6f 64 65 3e 20 | pile-time.if.<code>value</code>. |
| 93440 | 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 2e 20 49 74 27 73 20 61 | is.known.at.compile.time..It's.a |
| 93460 | 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 74 6f 20 62 69 74 63 61 73 74 20 61 20 76 61 6c 75 | .compile.error.to.bitcast.a.valu |
| 93480 | 65 20 6f 66 20 75 6e 64 65 66 69 6e 65 64 20 6c 61 79 6f 75 74 3b 20 74 68 69 73 20 6d 65 61 6e | e.of.undefined.layout;.this.mean |
| 934a0 | 73 20 74 68 61 74 2c 20 62 65 73 69 64 65 73 20 74 68 65 20 72 65 73 74 72 69 63 74 69 6f 6e 20 | s.that,.besides.the.restriction. |
| 934c0 | 66 72 6f 6d 20 74 79 70 65 73 20 77 68 69 63 68 20 70 6f 73 73 65 73 73 20 64 65 64 69 63 61 74 | from.types.which.possess.dedicat |
| 934e0 | 65 64 20 63 61 73 74 69 6e 67 20 62 75 69 6c 74 69 6e 73 20 28 65 6e 75 6d 73 2c 20 70 6f 69 6e | ed.casting.builtins.(enums,.poin |
| 93500 | 74 65 72 73 2c 20 65 72 72 6f 72 20 73 65 74 73 29 2c 20 62 61 72 65 20 73 74 72 75 63 74 73 2c | ters,.error.sets),.bare.structs, |
| 93520 | 20 65 72 72 6f 72 20 75 6e 69 6f 6e 73 2c 20 73 6c 69 63 65 73 2c 20 6f 70 74 69 6f 6e 61 6c 73 | .error.unions,.slices,.optionals |
| 93540 | 2c 20 61 6e 64 20 61 6e 79 20 6f 74 68 65 72 20 74 79 70 65 20 77 69 74 68 6f 75 74 20 61 20 77 | ,.and.any.other.type.without.a.w |
| 93560 | 65 6c 6c 2d 64 65 66 69 6e 65 64 20 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 2c 20 61 6c 73 6f 20 | ell-defined.memory.layout,.also. |
| 93580 | 63 61 6e 6e 6f 74 20 62 65 20 75 73 65 64 20 69 6e 20 74 68 69 73 20 6f 70 65 72 61 74 69 6f 6e | cannot.be.used.in.this.operation |
| 935a0 | 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 69 | ........</p>...............<h3.i |
| 935c0 | 64 3d 22 62 69 74 4f 66 66 73 65 74 4f 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 69 | d="bitOffsetOf"><a.href="#toc-bi |
| 935e0 | 74 4f 66 66 73 65 74 4f 66 22 3e 40 62 69 74 4f 66 66 73 65 74 4f 66 3c 2f 61 3e 20 3c 61 20 63 | tOffsetOf">@bitOffsetOf</a>.<a.c |
| 93600 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 62 69 74 4f 66 66 73 65 74 4f 66 22 3e c2 | lass="hdr".href="#bitOffsetOf">. |
| 93620 | 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 |
| 93640 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 4f 66 66 73 65 | an.class="tok-builtin">@bitOffse |
| 93660 | 74 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | tOf</span>(<span.class="tok-kw"> |
| 93680 | 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=" |
| 936a0 | 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | tok-type">type</span>,.<span.cla |
| 936c0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 66 69 65 6c | ss="tok-kw">comptime</span>.fiel |
| 936e0 | 64 5f 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | d_name:.[]<span.class="tok-kw">c |
| 93700 | 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 |
| 93720 | 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 |
| 93740 | 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | ype">comptime_int</span></code>< |
| 93760 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 74 68 | /pre>.......<p>.......Returns.th |
| 93780 | 65 20 62 69 74 20 6f 66 66 73 65 74 20 6f 66 20 61 20 66 69 65 6c 64 20 72 65 6c 61 74 69 76 65 | e.bit.offset.of.a.field.relative |
| 937a0 | 20 74 6f 20 69 74 73 20 63 6f 6e 74 61 69 6e 69 6e 67 20 73 74 72 75 63 74 2e 0a 20 20 20 20 20 | .to.its.containing.struct....... |
| 937c0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 6e 6f 6e 20 3c 61 | .</p>.......<p>.......For.non.<a |
| 937e0 | 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 20 73 74 | .href="#packed-struct">packed.st |
| 93800 | 72 75 63 74 73 3c 2f 61 3e 2c 20 74 68 69 73 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 62 65 20 64 | ructs</a>,.this.will.always.be.d |
| 93820 | 69 76 69 73 69 62 6c 65 20 62 79 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ivisible.by.<code><span.class="t |
| 93840 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 | ok-number">8</span></code>...... |
| 93860 | 20 20 46 6f 72 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 2c 20 6e 6f 6e 2d 62 79 74 65 2d 61 | ..For.packed.structs,.non-byte-a |
| 93880 | 6c 69 67 6e 65 64 20 66 69 65 6c 64 73 20 77 69 6c 6c 20 73 68 61 72 65 20 61 20 62 79 74 65 20 | ligned.fields.will.share.a.byte. |
| 938a0 | 6f 66 66 73 65 74 2c 20 62 75 74 20 74 68 65 79 20 77 69 6c 6c 20 68 61 76 65 20 64 69 66 66 65 | offset,.but.they.will.have.diffe |
| 938c0 | 72 65 6e 74 0a 20 20 20 20 20 20 62 69 74 20 6f 66 66 73 65 74 73 2e 0a 20 20 20 20 20 20 3c 2f | rent.......bit.offsets........</ |
| 938e0 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c | p>.......<p>See.also:</p><ul>.<l |
| 93900 | 69 3e 3c 61 20 68 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 | i><a.href="#offsetOf">@offsetOf< |
| 93920 | 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 |
| 93940 | 33 20 69 64 3d 22 62 69 74 53 69 7a 65 4f 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 | 3.id="bitSizeOf"><a.href="#toc-b |
| 93960 | 69 74 53 69 7a 65 4f 66 22 3e 40 62 69 74 53 69 7a 65 4f 66 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | itSizeOf">@bitSizeOf</a>.<a.clas |
| 93980 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 62 69 74 53 69 7a 65 4f 66 22 3e c2 a7 3c 2f 61 3e | s="hdr".href="#bitSizeOf">..</a> |
| 939a0 | 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 |
| 939c0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 53 69 7a 65 4f 66 3c 2f 73 70 | ass="tok-builtin">@bitSizeOf</sp |
| 939e0 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d | an>(<span.class="tok-kw">comptim |
| 93a00 | 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 70 | e</span>.T:.<span.class="tok-typ |
| 93a20 | 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 6b | e">type</span>).<span.class="tok |
| 93a40 | 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 65 | -type">comptime_int</span></code |
| 93a60 | 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 |
| 93a80 | 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 69 74 73 | ction.returns.the.number.of.bits |
| 93aa0 | 20 69 74 20 74 61 6b 65 73 20 74 6f 20 73 74 6f 72 65 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 | .it.takes.to.store.<code>T</code |
| 93ac0 | 3e 20 69 6e 20 6d 65 6d 6f 72 79 20 69 66 20 74 68 65 20 74 79 70 65 0a 20 20 20 20 20 20 77 65 | >.in.memory.if.the.type.......we |
| 93ae0 | 72 65 20 61 20 66 69 65 6c 64 20 69 6e 20 61 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 2f 75 6e | re.a.field.in.a.packed.struct/un |
| 93b00 | 69 6f 6e 2e 0a 20 20 20 20 20 20 54 68 65 20 72 65 73 75 6c 74 20 69 73 20 61 20 74 61 72 67 65 | ion........The.result.is.a.targe |
| 93b20 | 74 2d 73 70 65 63 69 66 69 63 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 | t-specific.compile.time.constant |
| 93b40 | 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 69 | ........</p>.......<p>.......Thi |
| 93b60 | 73 20 66 75 6e 63 74 69 6f 6e 20 6d 65 61 73 75 72 65 73 20 74 68 65 20 73 69 7a 65 20 61 74 20 | s.function.measures.the.size.at. |
| 93b80 | 72 75 6e 74 69 6d 65 2e 20 46 6f 72 20 74 79 70 65 73 20 74 68 61 74 20 61 72 65 20 64 69 73 61 | runtime..For.types.that.are.disa |
| 93ba0 | 6c 6c 6f 77 65 64 20 61 74 20 72 75 6e 74 69 6d 65 2c 20 73 75 63 68 20 61 73 0a 20 20 20 20 20 | llowed.at.runtime,.such.as...... |
| 93bc0 | 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 6f | .<code><span.class="tok-type">co |
| 93be0 | 6d 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 | mptime_int</span></code>.and.<co |
| 93c00 | 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 70 65 3c 2f | de><span.class="tok-type">type</ |
| 93c20 | 73 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 | span></code>,.the.result.is.<cod |
| 93c40 | 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 30 3c 2f 73 70 | e><span.class="tok-number">0</sp |
| 93c60 | 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 3e | an></code>........</p>.......<p> |
| 93c80 | 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="# |
| 93ca0 | 73 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | sizeOf">@sizeOf</a></li>.<li><a. |
| 93cc0 | 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></ |
| 93ce0 | 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 3d | li>.</ul>................<h3.id= |
| 93d00 | 22 62 72 65 61 6b 70 6f 69 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 72 65 61 6b | "breakpoint"><a.href="#toc-break |
| 93d20 | 70 6f 69 6e 74 22 3e 40 62 72 65 61 6b 70 6f 69 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | point">@breakpoint</a>.<a.class= |
| 93d40 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 62 72 65 61 6b 70 6f 69 6e 74 22 3e c2 a7 3c 2f 61 3e 3c | "hdr".href="#breakpoint">..</a>< |
| 93d60 | 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 |
| 93d80 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 72 65 61 6b 70 6f 69 6e 74 3c 2f 73 70 | ss="tok-builtin">@breakpoint</sp |
| 93da0 | 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 |
| 93dc0 | 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 0a | d</span></code></pre>.......<p>. |
| 93de0 | 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 65 72 74 73 20 61 20 70 6c | ......This.function.inserts.a.pl |
| 93e00 | 61 74 66 6f 72 6d 2d 73 70 65 63 69 66 69 63 20 64 65 62 75 67 20 74 72 61 70 20 69 6e 73 74 72 | atform-specific.debug.trap.instr |
| 93e20 | 75 63 74 69 6f 6e 20 77 68 69 63 68 20 63 61 75 73 65 73 0a 20 20 20 20 20 20 64 65 62 75 67 67 | uction.which.causes.......debugg |
| 93e40 | 65 72 73 20 74 6f 20 62 72 65 61 6b 20 74 68 65 72 65 2e 0a 20 20 20 20 20 20 55 6e 6c 69 6b 65 | ers.to.break.there........Unlike |
| 93e60 | 20 66 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 | .for.<code><span.class="tok-buil |
| 93e80 | 74 69 6e 22 3e 40 74 72 61 70 3c 2f 73 70 61 6e 3e 28 29 3c 2f 63 6f 64 65 3e 2c 20 65 78 65 63 | tin">@trap</span>()</code>,.exec |
| 93ea0 | 75 74 69 6f 6e 20 6d 61 79 20 63 6f 6e 74 69 6e 75 65 20 61 66 74 65 72 20 74 68 69 73 20 70 6f | ution.may.continue.after.this.po |
| 93ec0 | 69 6e 74 20 69 66 20 74 68 65 20 70 72 6f 67 72 61 6d 20 69 73 20 72 65 73 75 6d 65 64 2e 0a 20 | int.if.the.program.is.resumed... |
| 93ee0 | 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 66 | .....</p>.......<p>.......This.f |
| 93f00 | 75 6e 63 74 69 6f 6e 20 69 73 20 6f 6e 6c 79 20 76 61 6c 69 64 20 77 69 74 68 69 6e 20 66 75 6e | unction.is.only.valid.within.fun |
| 93f20 | 63 74 69 6f 6e 20 73 63 6f 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | ction.scope........</p>.......<p |
| 93f40 | 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=" |
| 93f60 | 23 74 72 61 70 22 3e 40 74 72 61 70 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 | #trap">@trap</a></li>.</ul>..... |
| 93f80 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 6d 75 6c 41 64 64 22 3e 3c 61 20 68 72 | ...........<h3.id="mulAdd"><a.hr |
| 93fa0 | 65 66 3d 22 23 74 6f 63 2d 6d 75 6c 41 64 64 22 3e 40 6d 75 6c 41 64 64 3c 2f 61 3e 20 3c 61 20 | ef="#toc-mulAdd">@mulAdd</a>.<a. |
| 93fc0 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6d 75 6c 41 64 64 22 3e c2 a7 3c 2f 61 | class="hdr".href="#mulAdd">..</a |
| 93fe0 | 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 |
| 94000 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 75 6c 41 64 64 3c 2f 73 70 61 6e | lass="tok-builtin">@mulAdd</span |
| 94020 | 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< |
| 94040 | 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | /span>.T:.<span.class="tok-type" |
| 94060 | 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 2c 20 63 3a 20 54 29 20 | >type</span>,.a:.T,.b:.T,.c:.T). |
| 94080 | 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 46 | T</code></pre>.......<p>.......F |
| 940a0 | 75 73 65 64 20 6d 75 6c 74 69 70 6c 79 2d 61 64 64 2c 20 73 69 6d 69 6c 61 72 20 74 6f 20 3c 63 | used.multiply-add,.similar.to.<c |
| 940c0 | 6f 64 65 3e 28 61 20 2a 20 62 29 20 2b 20 63 3c 2f 63 6f 64 65 3e 2c 20 65 78 63 65 70 74 0a 20 | ode>(a.*.b).+.c</code>,.except.. |
| 940e0 | 20 20 20 20 20 6f 6e 6c 79 20 72 6f 75 6e 64 73 20 6f 6e 63 65 2c 20 61 6e 64 20 69 73 20 74 68 | .....only.rounds.once,.and.is.th |
| 94100 | 75 73 20 6d 6f 72 65 20 61 63 63 75 72 61 74 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | us.more.accurate........</p>.... |
| 94120 | 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="# |
| 94140 | 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=" |
| 94160 | 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. |
| 94180 | 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 69 64 | .......</p>...............<h3.id |
| 941a0 | 3d 22 62 79 74 65 53 77 61 70 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 79 74 65 53 77 | ="byteSwap"><a.href="#toc-byteSw |
| 941c0 | 61 70 22 3e 40 62 79 74 65 53 77 61 70 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | ap">@byteSwap</a>.<a.class="hdr" |
| 941e0 | 20 68 72 65 66 3d 22 23 62 79 74 65 53 77 61 70 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 | .href="#byteSwap">..</a></h3>... |
| 94200 | 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 |
| 94220 | 2d 62 75 69 6c 74 69 6e 22 3e 40 62 79 74 65 53 77 61 70 3c 2f 73 70 61 6e 3e 28 6f 70 65 72 61 | -builtin">@byteSwap</span>(opera |
| 94240 | 6e 64 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 | nd:.<span.class="tok-kw">anytype |
| 94260 | 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 20 20 20 20 20 3c 70 | </span>).T</code></pre>.......<p |
| 94280 | 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" |
| 942a0 | 3e 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 | >@TypeOf</span>(operand)</code>. |
| 942c0 | 6d 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 | must.be.an.integer.type.or.an.in |
| 942e0 | 74 65 67 65 72 20 76 65 63 74 6f 72 20 74 79 70 65 20 77 69 74 68 20 62 69 74 20 63 6f 75 6e 74 | teger.vector.type.with.bit.count |
| 94300 | 20 65 76 65 6e 6c 79 20 64 69 76 69 73 69 62 6c 65 20 62 79 20 38 2e 3c 2f 70 3e 0a 20 20 20 20 | .evenly.divisible.by.8.</p>..... |
| 94320 | 20 20 3c 70 3e 3c 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 | ..<p><code>operand</code>.may.be |
| 94340 | 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 3c | .an.<a.href="#Integers">integer< |
| 94360 | 2f 61 3e 20 6f 72 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 | /a>.or.<a.href="#Vectors">vector |
| 94380 | 3c 2f 61 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 77 61 70 73 20 | </a>.</p>.......<p>.......Swaps. |
| 943a0 | 74 68 65 20 62 79 74 65 20 6f 72 64 65 72 20 6f 66 20 74 68 65 20 69 6e 74 65 67 65 72 2e 20 54 | the.byte.order.of.the.integer..T |
| 943c0 | 68 69 73 20 63 6f 6e 76 65 72 74 73 20 61 20 62 69 67 20 65 6e 64 69 61 6e 20 69 6e 74 65 67 65 | his.converts.a.big.endian.intege |
| 943e0 | 72 20 74 6f 20 61 20 6c 69 74 74 6c 65 20 65 6e 64 69 61 6e 20 69 6e 74 65 67 65 72 2c 0a 20 20 | r.to.a.little.endian.integer,... |
| 94400 | 20 20 20 20 61 6e 64 20 63 6f 6e 76 65 72 74 73 20 61 20 6c 69 74 74 6c 65 20 65 6e 64 69 61 6e | ....and.converts.a.little.endian |
| 94420 | 20 69 6e 74 65 67 65 72 20 74 6f 20 61 20 62 69 67 20 65 6e 64 69 61 6e 20 69 6e 74 65 67 65 72 | .integer.to.a.big.endian.integer |
| 94440 | 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 4e 6f 74 | ........</p>.......<p>.......Not |
| 94460 | 65 20 74 68 61 74 20 66 6f 72 20 74 68 65 20 70 75 72 70 6f 73 65 73 20 6f 66 20 6d 65 6d 6f 72 | e.that.for.the.purposes.of.memor |
| 94480 | 79 20 6c 61 79 6f 75 74 20 77 69 74 68 20 72 65 73 70 65 63 74 20 74 6f 20 65 6e 64 69 61 6e 6e | y.layout.with.respect.to.endiann |
| 944a0 | 65 73 73 2c 20 74 68 65 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 73 68 6f 75 6c 64 20 62 65 0a | ess,.the.integer.type.should.be. |
| 944c0 | 20 20 20 20 20 20 72 65 6c 61 74 65 64 20 74 6f 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 | ......related.to.the.number.of.b |
| 944e0 | 79 74 65 73 20 72 65 70 6f 72 74 65 64 20 62 79 20 3c 61 20 68 72 65 66 3d 22 23 73 69 7a 65 4f | ytes.reported.by.<a.href="#sizeO |
| 94500 | 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 20 62 79 74 65 73 2e 20 54 68 69 73 20 69 73 20 64 65 | f">@sizeOf</a>.bytes..This.is.de |
| 94520 | 6d 6f 6e 73 74 72 61 74 65 64 20 77 69 74 68 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 | monstrated.with.......<code><spa |
| 94540 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 34 3c 2f 73 70 61 6e 3e 3c 2f 63 | n.class="tok-type">u24</span></c |
| 94560 | 6f 64 65 3e 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 | ode>..<code><span.class="tok-bui |
| 94580 | 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ltin">@sizeOf</span>(<span.class |
| 945a0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 34 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e | ="tok-type">u24</span>).==.<span |
| 945c0 | 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 3c 2f 63 6f | .class="tok-number">4</span></co |
| 945e0 | 64 65 3e 2c 20 77 68 69 63 68 20 6d 65 61 6e 73 20 74 68 61 74 20 61 0a 20 20 20 20 20 20 3c 63 | de>,.which.means.that.a.......<c |
| 94600 | 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 32 34 3c 2f | ode><span.class="tok-type">u24</ |
| 94620 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 74 6f 72 65 64 20 69 6e 20 6d 65 6d 6f 72 79 20 74 61 | span></code>.stored.in.memory.ta |
| 94640 | 6b 65 73 20 34 20 62 79 74 65 73 2c 20 61 6e 64 20 74 68 6f 73 65 20 34 20 62 79 74 65 73 20 61 | kes.4.bytes,.and.those.4.bytes.a |
| 94660 | 72 65 20 77 68 61 74 20 61 72 65 20 73 77 61 70 70 65 64 20 6f 6e 0a 20 20 20 20 20 20 61 20 6c | re.what.are.swapped.on.......a.l |
| 94680 | 69 74 74 6c 65 20 76 73 20 62 69 67 20 65 6e 64 69 61 6e 20 73 79 73 74 65 6d 2e 20 4f 6e 20 74 | ittle.vs.big.endian.system..On.t |
| 946a0 | 68 65 20 6f 74 68 65 72 20 68 61 6e 64 2c 20 69 66 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e | he.other.hand,.if.<code>T</code> |
| 946c0 | 20 69 73 20 73 70 65 63 69 66 69 65 64 20 74 6f 0a 20 20 20 20 20 20 62 65 20 3c 63 6f 64 65 3e | .is.specified.to.......be.<code> |
| 946e0 | 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 34 3c 2f 73 70 61 6e | <span.class="tok-type">u24</span |
| 94700 | 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 6e 20 6f 6e 6c 79 20 33 20 62 79 74 65 73 20 61 72 65 20 | ></code>,.then.only.3.bytes.are. |
| 94720 | 72 65 76 65 72 73 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 | reversed........</p>............ |
| 94740 | 20 20 20 3c 68 33 20 69 64 3d 22 62 69 74 52 65 76 65 72 73 65 22 3e 3c 61 20 68 72 65 66 3d 22 | ...<h3.id="bitReverse"><a.href=" |
| 94760 | 23 74 6f 63 2d 62 69 74 52 65 76 65 72 73 65 22 3e 40 62 69 74 52 65 76 65 72 73 65 3c 2f 61 3e | #toc-bitReverse">@bitReverse</a> |
| 94780 | 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 52 65 76 65 72 73 | .<a.class="hdr".href="#bitRevers |
| 947a0 | 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 |
| 947c0 | 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 52 | ><span.class="tok-builtin">@bitR |
| 947e0 | 65 76 65 72 73 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 | everse</span>(integer:.<span.cla |
| 94800 | 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 63 | ss="tok-kw">anytype</span>).T</c |
| 94820 | 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 20 | ode></pre>.......<p><code><span. |
| 94840 | 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 |
| 94860 | 6e 3e 28 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 | n>(<span.class="tok-kw">anytype< |
| 94880 | 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 20 61 63 63 65 70 74 73 20 61 6e 79 20 69 6e 74 65 67 | /span>)</code>.accepts.any.integ |
| 948a0 | 65 72 20 74 79 70 65 20 6f 72 20 69 6e 74 65 67 65 72 20 76 65 63 74 6f 72 20 74 79 70 65 2e 3c | er.type.or.integer.vector.type.< |
| 948c0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 76 65 72 73 65 73 20 74 68 65 | /p>.......<p>.......Reverses.the |
| 948e0 | 20 62 69 74 70 61 74 74 65 72 6e 20 6f 66 20 61 6e 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 2c | .bitpattern.of.an.integer.value, |
| 94900 | 20 69 6e 63 6c 75 64 69 6e 67 20 74 68 65 20 73 69 67 6e 20 62 69 74 20 69 66 20 61 70 70 6c 69 | .including.the.sign.bit.if.appli |
| 94920 | 63 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | cable........</p>.......<p>..... |
| 94940 | 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 20 30 62 31 30 31 31 30 31 31 30 20 28 3c 63 6f 64 65 3e | ..For.example.0b10110110.(<code> |
| 94960 | 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> |
| 94980 | 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 38 32 3c | .=.<span.class="tok-number">182< |
| 949a0 | 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 73 | /span></code>,.<code><span.class |
| 949c0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 3d 20 2d 3c 73 70 61 6e 20 63 | ="tok-type">i8</span>.=.-<span.c |
| 949e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | lass="tok-number">74</span></cod |
| 94a00 | 65 3e 29 0a 20 20 20 20 20 20 62 65 63 6f 6d 65 73 20 30 62 30 31 31 30 31 31 30 31 20 28 3c 63 | e>).......becomes.0b01101101.(<c |
| 94a20 | 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 38 3c 2f 73 | ode><span.class="tok-type">u8</s |
| 94a40 | 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"> |
| 94a60 | 31 30 39 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 | 109</span></code>,.<code><span.c |
| 94a80 | 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 3c 73 70 61 | lass="tok-type">i8</span>.=.<spa |
| 94aa0 | 6e 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 | n.class="tok-number">109</span>< |
| 94ac0 | 2f 63 6f 64 65 3e 29 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 | /code>)........</p>............. |
| 94ae0 | 20 20 3c 68 33 20 69 64 3d 22 6f 66 66 73 65 74 4f 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | ..<h3.id="offsetOf"><a.href="#to |
| 94b00 | 63 2d 6f 66 66 73 65 74 4f 66 22 3e 40 6f 66 66 73 65 74 4f 66 3c 2f 61 3e 20 3c 61 20 63 6c 61 | c-offsetOf">@offsetOf</a>.<a.cla |
| 94b20 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6f 66 66 73 65 74 4f 66 22 3e c2 a7 3c 2f 61 3e | ss="hdr".href="#offsetOf">..</a> |
| 94b40 | 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 |
| 94b60 | 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 61 | ass="tok-builtin">@offsetOf</spa |
| 94b80 | 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 |
| 94ba0 | 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>.T:.<span.class="tok-type |
| 94bc0 | 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">type</span>,.<span.class="tok- |
| 94be0 | 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 65 3a 20 | kw">comptime</span>.field_name:. |
| 94c00 | 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 |
| 94c20 | 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 |
| 94c40 | 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d | pan>).<span.class="tok-type">com |
| 94c60 | 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | ptime_int</span></code></pre>... |
| 94c80 | 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 62 79 74 65 20 6f | ....<p>.......Returns.the.byte.o |
| 94ca0 | 66 66 73 65 74 20 6f 66 20 61 20 66 69 65 6c 64 20 72 65 6c 61 74 69 76 65 20 74 6f 20 69 74 73 | ffset.of.a.field.relative.to.its |
| 94cc0 | 20 63 6f 6e 74 61 69 6e 69 6e 67 20 73 74 72 75 63 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | .containing.struct........</p>.. |
| 94ce0 | 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 |
| 94d00 | 20 68 72 65 66 3d 22 23 62 69 74 4f 66 66 73 65 74 4f 66 22 3e 40 62 69 74 4f 66 66 73 65 74 4f | .href="#bitOffsetOf">@bitOffsetO |
| 94d20 | 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 0a 20 20 20 20 20 20 | f</a></li>.</ul>................ |
| 94d40 | 3c 68 33 20 69 64 3d 22 63 61 6c 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 61 6c 6c | <h3.id="call"><a.href="#toc-call |
| 94d60 | 22 3e 40 63 61 6c 6c 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | ">@call</a>.<a.class="hdr".href= |
| 94d80 | 22 23 63 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 70 72 65 3e | "#call">..</a></h3>........<pre> |
| 94da0 | 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"> |
| 94dc0 | 40 63 61 6c 6c 3c 2f 73 70 61 6e 3e 28 6d 6f 64 69 66 69 65 72 3a 20 73 74 64 2e 62 75 69 6c 74 | @call</span>(modifier:.std.built |
| 94de0 | 69 6e 2e 43 61 6c 6c 4d 6f 64 69 66 69 65 72 2c 20 66 75 6e 63 74 69 6f 6e 3a 20 3c 73 70 61 6e | in.CallModifier,.function:.<span |
| 94e00 | 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 20 | .class="tok-kw">anytype</span>,. |
| 94e20 | 61 72 67 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 | args:.<span.class="tok-kw">anyty |
| 94e40 | 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 22 3e | pe</span>).<span.class="tok-kw"> |
| 94e60 | 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 20 20 | anytype</span></code></pre>..... |
| 94e80 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 61 6c 6c 73 20 61 20 66 75 6e 63 74 69 6f 6e 2c 20 69 6e | ..<p>.......Calls.a.function,.in |
| 94ea0 | 20 74 68 65 20 73 61 6d 65 20 77 61 79 20 74 68 61 74 20 69 6e 76 6f 6b 69 6e 67 20 61 6e 20 65 | .the.same.way.that.invoking.an.e |
| 94ec0 | 78 70 72 65 73 73 69 6f 6e 20 77 69 74 68 20 70 61 72 65 6e 74 68 65 73 65 73 20 64 6f 65 73 3a | xpression.with.parentheses.does: |
| 94ee0 | 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 |
| 94f00 | 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 |
| 94f20 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 61 6c 6c 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f | s="file">test_call_builtin.zig</ |
| 94f40 | 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 |
| 94f60 | 61 6e 20 63 6c 61 73 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 |
| 94f80 | 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | xpect.=.<span.class="tok-builtin |
| 94fa0 | 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 |
| 94fc0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 | k-str">"std"</span>).t |
| 94fe0 | 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 |
| 95000 | 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 |
| 95020 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 6f 69 6e 6c 69 6e 65 20 66 75 6e 63 74 69 6f 6e 20 63 | k-str">"noinline.function.c |
| 95040 | 61 6c 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 | all"</span>.{.....<span.cla |
| 95060 | 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 |
| 95080 | 70 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 61 6c 6c 3c 2f 73 | pan.class="tok-builtin">@call</s |
| 950a0 | 70 61 6e 3e 28 2e 61 75 74 6f 2c 20 61 64 64 2c 20 2e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pan>(.auto,.add,..{.<span.class= |
| 950c0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | "tok-number">3</span>,.<span.cla |
| 950e0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 20 7d 29 20 3d 3d 20 3c | ss="tok-number">9</span>.}).==.< |
| 95100 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e | span.class="tok-number">12</span |
| 95120 | 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</ |
| 95140 | 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 64 64 3c 2f | span>.<span.class="tok-fn">add</ |
| 95160 | 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>(a:.<span.class="tok-type"> |
| 95180 | 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 74 6f 6b 2d | i32</span>,.b:.<span.class="tok- |
| 951a0 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | type">i32</span>).<span.class="t |
| 951c0 | 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 6e 20 | ok-type">i32</span>.{.....<span. |
| 951e0 | 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 20 2b | class="tok-kw">return</span>.a.+ |
| 95200 | 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 3c 66 69 67 75 | .b;.}</code></pre></figure><figu |
| 95220 | 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" |
| 95240 | 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>$. |
| 95260 | 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 61 6c 6c 5f 62 75 69 6c 74 69 6e 2e | <kbd>zig.test.test_call_builtin. |
| 95280 | 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 63 61 6c 6c 5f 62 75 69 6c 74 69 6e 2e | zig</kbd>.1/1.test_call_builtin. |
| 952a0 | 74 65 73 74 2e 6e 6f 69 6e 6c 69 6e 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 2e 2e 2e 4f 4b | test.noinline.function.call...OK |
| 952c0 | 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 |
| 952e0 | 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 63 6f | e></figure>........<p>.......<co |
| 95300 | 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 61 | de><span.class="tok-builtin">@ca |
| 95320 | 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6c 6c 6f 77 73 20 6d 6f 72 65 20 66 6c 65 | ll</span></code>.allows.more.fle |
| 95340 | 78 69 62 69 6c 69 74 79 20 74 68 61 6e 20 6e 6f 72 6d 61 6c 20 66 75 6e 63 74 69 6f 6e 20 63 61 | xibility.than.normal.function.ca |
| 95360 | 6c 6c 20 73 79 6e 74 61 78 20 64 6f 65 73 2e 20 54 68 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e | ll.syntax.does..The.......<code> |
| 95380 | 43 61 6c 6c 4d 6f 64 69 66 69 65 72 3c 2f 63 6f 64 65 3e 20 65 6e 75 6d 20 69 73 20 72 65 70 72 | CallModifier</code>.enum.is.repr |
| 953a0 | 6f 64 75 63 65 64 20 68 65 72 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 | oduced.here:.......</p>.......<f |
| 953c0 | 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 |
| 953e0 | 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 74 69 6e 2e 43 61 6c | "><cite.class="file">builtin.Cal |
| 95400 | 6c 4d 6f 64 69 66 69 65 72 20 73 74 72 75 63 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | lModifier.struct.zig</cite></fig |
| 95420 | 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=" |
| 95440 | 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=" |
| 95460 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 61 6c 6c 4d 6f 64 69 66 69 65 | tok-kw">const</span>.CallModifie |
| 95480 | 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 | r.=.<span.class="tok-kw">enum</s |
| 954a0 | 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 |
| 954c0 | 65 6e 74 22 3e 2f 2f 2f 20 45 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 66 75 6e 63 74 69 6f 6e 20 | ent">///.Equivalent.to.function. |
| 954e0 | 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 75 74 6f 2c 0a 0a 20 | call.syntax.</span>.....auto,... |
| 95500 | 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">/// |
| 95520 | 20 45 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 61 73 79 6e 63 20 6b 65 79 77 6f 72 64 20 75 73 65 | .Equivalent.to.async.keyword.use |
| 95540 | 64 20 77 69 74 68 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 73 79 6e 74 61 78 2e 3c 2f 73 70 | d.with.function.call.syntax.</sp |
| 95560 | 61 6e 3e 0a 20 20 20 20 61 73 79 6e 63 5f 6b 77 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | an>.....async_kw,......<span.cla |
| 95580 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 50 72 65 76 65 6e 74 73 20 74 61 | ss="tok-comment">///.Prevents.ta |
| 955a0 | 69 6c 20 63 61 6c 6c 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 2e 20 54 68 69 73 20 67 75 61 72 61 | il.call.optimization..This.guara |
| 955c0 | 6e 74 65 65 73 20 74 68 61 74 20 74 68 65 20 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | ntees.that.the.return</span>.... |
| 955e0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 61 | .<span.class="tok-comment">///.a |
| 95600 | 64 64 72 65 73 73 20 77 69 6c 6c 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 63 61 6c 6c 73 69 74 | ddress.will.point.to.the.callsit |
| 95620 | 65 2c 20 61 73 20 6f 70 70 6f 73 65 64 20 74 6f 20 74 68 65 20 63 61 6c 6c 73 69 74 65 27 73 3c | e,.as.opposed.to.the.callsite's< |
| 95640 | 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 |
| 95660 | 65 6e 74 22 3e 2f 2f 2f 20 63 61 6c 6c 73 69 74 65 2e 20 49 66 20 74 68 65 20 63 61 6c 6c 20 69 | ent">///.callsite..If.the.call.i |
| 95680 | 73 20 6f 74 68 65 72 77 69 73 65 20 72 65 71 75 69 72 65 64 20 74 6f 20 62 65 20 74 61 69 6c 2d | s.otherwise.required.to.be.tail- |
| 956a0 | 63 61 6c 6c 65 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | called</span>.....<span.class="t |
| 956c0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 6f 72 20 69 6e 6c 69 6e 65 64 2c 20 61 20 63 6f | ok-comment">///.or.inlined,.a.co |
| 956e0 | 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 73 20 65 6d 69 74 74 65 64 20 69 6e 73 74 65 61 64 2e 3c | mpile.error.is.emitted.instead.< |
| 95700 | 2f 73 70 61 6e 3e 0a 20 20 20 20 6e 65 76 65 72 5f 74 61 69 6c 2c 0a 0a 20 20 20 20 3c 73 70 61 | /span>.....never_tail,......<spa |
| 95720 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 47 75 61 72 61 6e | n.class="tok-comment">///.Guaran |
| 95740 | 74 65 65 73 20 74 68 61 74 20 74 68 65 20 63 61 6c 6c 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 69 | tees.that.the.call.will.not.be.i |
| 95760 | 6e 6c 69 6e 65 64 2e 20 49 66 20 74 68 65 20 63 61 6c 6c 20 69 73 3c 2f 73 70 61 6e 3e 0a 20 20 | nlined..If.the.call.is</span>... |
| 95780 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 | ..<span.class="tok-comment">///. |
| 957a0 | 6f 74 68 65 72 77 69 73 65 20 72 65 71 75 69 72 65 64 20 74 6f 20 62 65 20 69 6e 6c 69 6e 65 64 | otherwise.required.to.be.inlined |
| 957c0 | 2c 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 73 20 65 6d 69 74 74 65 64 20 69 6e 73 | ,.a.compile.error.is.emitted.ins |
| 957e0 | 74 65 61 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 2c 0a 0a | tead.</span>.....never_inline,.. |
| 95800 | 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">// |
| 95820 | 2f 20 41 73 73 65 72 74 73 20 74 68 61 74 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c | /.Asserts.that.the.function.call |
| 95840 | 20 77 69 6c 6c 20 6e 6f 74 20 73 75 73 70 65 6e 64 2e 20 54 68 69 73 20 61 6c 6c 6f 77 73 20 61 | .will.not.suspend..This.allows.a |
| 95860 | 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 |
| 95880 | 6d 65 6e 74 22 3e 2f 2f 2f 20 6e 6f 6e 2d 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 | ment">///.non-async.function.to. |
| 958a0 | 63 61 6c 6c 20 61 6e 20 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 | call.an.async.function.</span>.. |
| 958c0 | 20 20 20 6e 6f 5f 61 73 79 6e 63 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ...no_async,......<span.class="t |
| 958e0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 47 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 | ok-comment">///.Guarantees.that. |
| 95900 | 74 68 65 20 63 61 6c 6c 20 77 69 6c 6c 20 62 65 20 67 65 6e 65 72 61 74 65 64 20 77 69 74 68 20 | the.call.will.be.generated.with. |
| 95920 | 74 61 69 6c 20 63 61 6c 6c 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 | tail.call.optimization.</span>.. |
| 95940 | 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">/// |
| 95960 | 20 49 66 20 74 68 69 73 20 69 73 20 6e 6f 74 20 70 6f 73 73 69 62 6c 65 2c 20 61 20 63 6f 6d 70 | .If.this.is.not.possible,.a.comp |
| 95980 | 69 6c 65 20 65 72 72 6f 72 20 69 73 20 65 6d 69 74 74 65 64 20 69 6e 73 74 65 61 64 2e 3c 2f 73 | ile.error.is.emitted.instead.</s |
| 959a0 | 70 61 6e 3e 0a 20 20 20 20 61 6c 77 61 79 73 5f 74 61 69 6c 2c 0a 0a 20 20 20 20 3c 73 70 61 6e | pan>.....always_tail,......<span |
| 959c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 47 75 61 72 61 6e 74 | .class="tok-comment">///.Guarant |
| 959e0 | 65 65 73 20 74 68 61 74 20 74 68 65 20 63 61 6c 6c 20 77 69 6c 6c 20 69 6e 6c 69 6e 65 64 20 61 | ees.that.the.call.will.inlined.a |
| 95a00 | 74 20 74 68 65 20 63 61 6c 6c 73 69 74 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | t.the.callsite.</span>.....<span |
| 95a20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 49 66 20 74 68 69 73 | .class="tok-comment">///.If.this |
| 95a40 | 20 69 73 20 6e 6f 74 20 70 6f 73 73 69 62 6c 65 2c 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f | .is.not.possible,.a.compile.erro |
| 95a60 | 72 20 69 73 20 65 6d 69 74 74 65 64 20 69 6e 73 74 65 61 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | r.is.emitted.instead.</span>.... |
| 95a80 | 20 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .always_inline,......<span.class |
| 95aa0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 45 76 61 6c 75 61 74 65 73 20 74 68 65 | ="tok-comment">///.Evaluates.the |
| 95ac0 | 20 63 61 6c 6c 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 20 49 66 20 74 68 65 20 63 61 | .call.at.compile-time..If.the.ca |
| 95ae0 | 6c 6c 20 63 61 6e 6e 6f 74 20 62 65 20 63 6f 6d 70 6c 65 74 65 64 20 61 74 3c 2f 73 70 61 6e 3e | ll.cannot.be.completed.at</span> |
| 95b00 | 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">/ |
| 95b20 | 2f 2f 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 | //.compile-time,.a.compile.error |
| 95b40 | 20 69 73 20 65 6d 69 74 74 65 64 20 69 6e 73 74 65 61 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | .is.emitted.instead.</span>..... |
| 95b60 | 63 6f 6d 70 69 6c 65 5f 74 69 6d 65 2c 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 | compile_time,.};</code></pre></f |
| 95b80 | 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 63 44 | igure>................<h3.id="cD |
| 95ba0 | 65 66 69 6e 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 44 65 66 69 6e 65 22 3e 40 63 | efine"><a.href="#toc-cDefine">@c |
| 95bc0 | 44 65 66 69 6e 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 | Define</a>.<a.class="hdr".href=" |
| 95be0 | 23 63 44 65 66 69 6e 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 | #cDefine">..</a></h3>........<pr |
| 95c00 | 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 |
| 95c20 | 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">@cDefine</span>(<span.class="t |
| 95c40 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6e 61 6d 65 3a 20 5b 5d 3c | ok-kw">comptime</span>.name:.[]< |
| 95c60 | 73 70 61 6e 20 63 6c 61 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> |
| 95c80 | 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 |
| 95ca0 | 3e 2c 20 76 61 6c 75 65 29 20 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" |
| 95cc0 | 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 20 20 20 20 | >void</span></code></pre>....... |
| 95ce0 | 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 61 6e 20 6f 6e 6c 79 | <p>.......This.function.can.only |
| 95d00 | 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 20 63 6c 61 73 73 3d | .occur.inside.<code><span.class= |
| 95d20 | 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 |
| 95d40 | 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>...... |
| 95d60 | 20 54 68 69 73 20 61 70 70 65 6e 64 73 20 3c 63 6f 64 65 3e 23 64 65 66 69 6e 65 20 24 6e 61 6d | .This.appends.<code>#define.$nam |
| 95d80 | 65 20 24 76 61 6c 75 65 3c 2f 63 6f 64 65 3e 20 74 6f 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 | e.$value</code>.to.the.<code><sp |
| 95da0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c | an.class="tok-builtin">@cImport< |
| 95dc0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 74 65 6d 70 6f 72 61 72 79 20 62 75 | /span></code>.......temporary.bu |
| 95de0 | 66 66 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | ffer........</p>.......<p>...... |
| 95e00 | 20 54 6f 20 64 65 66 69 6e 65 20 77 69 74 68 6f 75 74 20 61 20 76 61 6c 75 65 2c 20 6c 69 6b 65 | .To.define.without.a.value,.like |
| 95e20 | 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | .this:.......</p>.......<pre><co |
| 95e40 | 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 23 64 65 66 69 6e 65 20 5f 47 4e 55 5f 53 4f 55 52 43 45 | de.class="c">#define._GNU_SOURCE |
| 95e60 | 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 55 73 | </code></pre>.......<p>.......Us |
| 95e80 | 65 20 74 68 65 20 76 6f 69 64 20 76 61 6c 75 65 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 | e.the.void.value,.like.this:.... |
| 95ea0 | 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 3c 73 70 61 6e 20 63 | ...</p>.......<pre><code><span.c |
| 95ec0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 | lass="tok-builtin">@cDefine</spa |
| 95ee0 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5f | n>(<span.class="tok-str">"_ |
| 95f00 | 47 4e 55 5f 53 4f 55 52 43 45 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 7b 7d 29 3c 2f 63 6f | GNU_SOURCE"</span>,.{})</co |
| 95f20 | 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e | de></pre>.......<p>See.also:</p> |
| 95f40 | 3c 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 | <ul>.<li><a.href="#Import-from-C |
| 95f60 | 2d 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 | -Header-File">Import.from.C.Head |
| 95f80 | 65 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 | er.File</a></li>.<li><a.href="#c |
| 95fa0 | 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 6c 69 3e | Include">@cInclude</a></li>.<li> |
| 95fc0 | 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 74 3c 2f 61 3e 3c | <a.href="#cImport">@cImport</a>< |
| 95fe0 | 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 55 6e 64 | /li>.<li><a.href="#cUndef">@cUnd |
| 96000 | 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 76 6f 69 64 22 3e | ef</a></li>.<li><a.href="#void"> |
| 96020 | 76 6f 69 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 | void</a></li>.</ul>............. |
| 96040 | 20 20 3c 68 33 20 69 64 3d 22 63 49 6d 70 6f 72 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | ..<h3.id="cImport"><a.href="#toc |
| 96060 | 2d 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | -cImport">@cImport</a>.<a.class= |
| 96080 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 | "hdr".href="#cImport">..</a></h3 |
| 960a0 | 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= |
| 960c0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 65 78 | "tok-builtin">@cImport</span>(ex |
| 960e0 | 70 72 65 73 73 69 6f 6e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | pression).<span.class="tok-type" |
| 96100 | 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 20 20 20 20 20 20 | >type</span></code></pre>....... |
| 96120 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 73 20 43 | <p>.......This.function.parses.C |
| 96140 | 20 63 6f 64 65 20 61 6e 64 20 69 6d 70 6f 72 74 73 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 73 2c | .code.and.imports.the.functions, |
| 96160 | 20 74 79 70 65 73 2c 20 76 61 72 69 61 62 6c 65 73 2c 0a 20 20 20 20 20 20 61 6e 64 20 63 6f 6d | .types,.variables,.......and.com |
| 96180 | 70 61 74 69 62 6c 65 20 6d 61 63 72 6f 20 64 65 66 69 6e 69 74 69 6f 6e 73 20 69 6e 74 6f 20 61 | patible.macro.definitions.into.a |
| 961a0 | 20 6e 65 77 20 65 6d 70 74 79 20 73 74 72 75 63 74 20 74 79 70 65 2c 20 61 6e 64 20 74 68 65 6e | .new.empty.struct.type,.and.then |
| 961c0 | 0a 20 20 20 20 20 20 72 65 74 75 72 6e 73 20 74 68 61 74 20 74 79 70 65 2e 0a 20 20 20 20 20 20 | .......returns.that.type........ |
| 961e0 | 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 65 78 70 72 65 | </p>.......<p>.......<code>expre |
| 96200 | 73 73 69 6f 6e 3c 2f 63 6f 64 65 3e 20 69 73 20 69 6e 74 65 72 70 72 65 74 65 64 20 61 74 20 63 | ssion</code>.is.interpreted.at.c |
| 96220 | 6f 6d 70 69 6c 65 20 74 69 6d 65 2e 20 54 68 65 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f | ompile.time..The.builtin.functio |
| 96240 | 6e 73 0a 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 | ns...........<code><span.class=" |
| 96260 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | tok-builtin">@cInclude</span></c |
| 96280 | 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 62 75 69 | ode>,.<code><span.class="tok-bui |
| 962a0 | 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 6e | ltin">@cDefine</span></code>,.an |
| 962c0 | 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 62 75 69 6c 74 69 6e | d.<code><span.class="tok-builtin |
| 962e0 | 22 3e 40 63 55 6e 64 65 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 6f 72 6b 0a 20 20 20 | ">@cUndef</span></code>.work.... |
| 96300 | 20 20 20 77 69 74 68 69 6e 20 74 68 69 73 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 61 70 70 65 6e | ...within.this.expression,.appen |
| 96320 | 64 69 6e 67 20 74 6f 20 61 20 74 65 6d 70 6f 72 61 72 79 20 62 75 66 66 65 72 20 77 68 69 63 68 | ding.to.a.temporary.buffer.which |
| 96340 | 20 69 73 20 74 68 65 6e 20 70 61 72 73 65 64 20 61 73 20 43 20 63 6f 64 65 2e 0a 20 20 20 20 20 | .is.then.parsed.as.C.code....... |
| 96360 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 75 61 6c 6c 79 20 79 6f | .</p>.......<p>.......Usually.yo |
| 96380 | 75 20 73 68 6f 75 6c 64 20 6f 6e 6c 79 20 68 61 76 65 20 6f 6e 65 20 3c 63 6f 64 65 3e 3c 73 70 | u.should.only.have.one.<code><sp |
| 963a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c | an.class="tok-builtin">@cImport< |
| 963c0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 6e 20 79 6f 75 72 20 65 6e 74 69 72 65 20 61 70 70 | /span></code>.in.your.entire.app |
| 963e0 | 6c 69 63 61 74 69 6f 6e 2c 20 62 65 63 61 75 73 65 20 69 74 20 73 61 76 65 73 20 74 68 65 20 63 | lication,.because.it.saves.the.c |
| 96400 | 6f 6d 70 69 6c 65 72 0a 20 20 20 20 20 20 66 72 6f 6d 20 69 6e 76 6f 6b 69 6e 67 20 63 6c 61 6e | ompiler.......from.invoking.clan |
| 96420 | 67 20 6d 75 6c 74 69 70 6c 65 20 74 69 6d 65 73 2c 20 61 6e 64 20 70 72 65 76 65 6e 74 73 20 69 | g.multiple.times,.and.prevents.i |
| 96440 | 6e 6c 69 6e 65 20 66 75 6e 63 74 69 6f 6e 73 20 66 72 6f 6d 20 62 65 69 6e 67 20 64 75 70 6c 69 | nline.functions.from.being.dupli |
| 96460 | 63 61 74 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | cated........</p>.......<p>..... |
| 96480 | 20 20 52 65 61 73 6f 6e 73 20 66 6f 72 20 68 61 76 69 6e 67 20 6d 75 6c 74 69 70 6c 65 20 3c 63 | ..Reasons.for.having.multiple.<c |
| 964a0 | 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 |
| 964c0 | 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 | Import</span></code>.expressions |
| 964e0 | 20 77 6f 75 6c 64 20 62 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e | .would.be:.......</p>.......<ul> |
| 96500 | 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 6f 20 61 76 6f 69 64 20 61 20 73 79 6d 62 6f 6c | ...........<li>To.avoid.a.symbol |
| 96520 | 20 63 6f 6c 6c 69 73 69 6f 6e 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 20 69 66 20 66 6f 6f 2e 68 | .collision,.for.example.if.foo.h |
| 96540 | 20 61 6e 64 20 62 61 72 2e 68 20 62 6f 74 68 20 3c 63 6f 64 65 3e 23 64 65 66 69 6e 65 20 43 4f | .and.bar.h.both.<code>#define.CO |
| 96560 | 4e 4e 45 43 54 49 4f 4e 5f 43 4f 55 4e 54 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | NNECTION_COUNT</code></li>...... |
| 96580 | 20 20 20 3c 6c 69 3e 54 6f 20 61 6e 61 6c 79 7a 65 20 74 68 65 20 43 20 63 6f 64 65 20 77 69 74 | ...<li>To.analyze.the.C.code.wit |
| 965a0 | 68 20 64 69 66 66 65 72 65 6e 74 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 64 65 66 69 6e 65 73 | h.different.preprocessor.defines |
| 965c0 | 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 53 65 65 20 61 | </li>.......</ul>.......<p>See.a |
| 965e0 | 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 | lso:</p><ul>.<li><a.href="#Impor |
| 96600 | 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 3e 49 6d 70 6f 72 74 20 66 72 6f | t-from-C-Header-File">Import.fro |
| 96620 | 6d 20 43 20 48 65 61 64 65 72 20 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | m.C.Header.File</a></li>.<li><a. |
| 96640 | 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 3c 2f 61 3e 3c 2f | href="#cInclude">@cInclude</a></ |
| 96660 | 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 | li>.<li><a.href="#cDefine">@cDef |
| 96680 | 69 6e 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 55 6e 64 65 | ine</a></li>.<li><a.href="#cUnde |
| 966a0 | 66 22 3e 40 63 55 6e 64 65 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 | f">@cUndef</a></li>.</ul>....... |
| 966c0 | 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 63 49 6e 63 6c 75 64 65 22 3e 3c 61 20 68 72 65 | ........<h3.id="cInclude"><a.hre |
| 966e0 | 66 3d 22 23 74 6f 63 2d 63 49 6e 63 6c 75 64 65 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 61 3e 20 | f="#toc-cInclude">@cInclude</a>. |
| 96700 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 49 6e 63 6c 75 64 65 22 3e | <a.class="hdr".href="#cInclude"> |
| 96720 | 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 |
| 96740 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 | pan.class="tok-builtin">@cInclud |
| 96760 | 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 |
| 96780 | 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 70 61 74 68 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 | mptime</span>.path:.[]<span.clas |
| 967a0 | 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 |
| 967c0 | 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. |
| 967e0 | 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 |
| 96800 | 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 |
| 96820 | 75 6e 63 74 69 6f 6e 20 63 61 6e 20 6f 6e 6c 79 20 6f 63 63 75 72 20 69 6e 73 69 64 65 20 3c 63 | unction.can.only.occur.inside.<c |
| 96840 | 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 |
| 96860 | 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 3c 2f 70 3e | Import</span></code>........</p> |
| 96880 | 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 73 20 3c 63 | .......<p>.......This.appends.<c |
| 968a0 | 6f 64 65 3e 23 69 6e 63 6c 75 64 65 20 26 6c 74 3b 24 70 61 74 68 26 67 74 3b 5c 6e 3c 2f 63 6f | ode>#include.<$path>\n</co |
| 968c0 | 64 65 3e 20 74 6f 20 74 68 65 20 3c 63 6f 64 65 3e 63 5f 69 6d 70 6f 72 74 3c 2f 63 6f 64 65 3e | de>.to.the.<code>c_import</code> |
| 968e0 | 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 20 20 20 3c | .......temporary.buffer........< |
| 96900 | 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>.< |
| 96920 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 | li><a.href="#Import-from-C-Heade |
| 96940 | 72 2d 46 69 6c 65 22 3e 49 6d 70 6f 72 74 20 66 72 6f 6d 20 43 20 48 65 61 64 65 72 20 46 69 6c | r-File">Import.from.C.Header.Fil |
| 96960 | 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 6d 70 6f 72 74 | e</a></li>.<li><a.href="#cImport |
| 96980 | 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= |
| 969a0 | 22 23 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 69 6e 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 | "#cDefine">@cDefine</a></li>.<li |
| 969c0 | 3e 3c 61 20 68 72 65 66 3d 22 23 63 55 6e 64 65 66 22 3e 40 63 55 6e 64 65 66 3c 2f 61 3e 3c 2f | ><a.href="#cUndef">@cUndef</a></ |
| 969e0 | 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 3d | li>.</ul>................<h3.id= |
| 96a00 | 22 63 6c 7a 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 6c 7a 22 3e 40 63 6c 7a 3c 2f 61 | "clz"><a.href="#toc-clz">@clz</a |
| 96a20 | 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 6c 7a 22 3e c2 a7 3c | >.<a.class="hdr".href="#clz">..< |
| 96a40 | 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 |
| 96a60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6c 7a 3c 2f 73 70 61 6e 3e | .class="tok-builtin">@clz</span> |
| 96a80 | 28 6f 70 65 72 61 6e 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 | (operand:.<span.class="tok-kw">a |
| 96aa0 | 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | nytype</span>).<span.class="tok- |
| 96ac0 | 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | kw">anytype</span></code></pre>. |
| 96ae0 | 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 6f 6b 2d | ......<p><code><span.class="tok- |
| 96b00 | 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 6f 70 65 72 61 6e 64 29 | builtin">@TypeOf</span>(operand) |
| 96b20 | 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 6e 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 | </code>.must.be.an.integer.type. |
| 96b40 | 6f 72 20 61 6e 20 69 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 | or.an.integer.vector.type.</p>.. |
| 96b60 | 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 6f 70 65 72 61 6e 64 3c 2f 63 6f 64 65 3e 20 6d 61 79 | .....<p><code>operand</code>.may |
| 96b80 | 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 65 67 | .be.an.<a.href="#Integers">integ |
| 96ba0 | 65 72 3c 2f 61 3e 20 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 76 65 63 | er</a>.or.<a.href="#Vectors">vec |
| 96bc0 | 74 6f 72 3c 2f 61 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 75 | tor</a>.</p>.......<p>.......Cou |
| 96be0 | 6e 74 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 6d 6f 73 74 2d 73 69 67 6e 69 66 69 63 61 | nts.the.number.of.most-significa |
| 96c00 | 6e 74 20 28 6c 65 61 64 69 6e 67 20 69 6e 20 61 20 62 69 67 2d 65 6e 64 69 61 6e 20 73 65 6e 73 | nt.(leading.in.a.big-endian.sens |
| 96c20 | 65 29 20 7a 65 72 6f 65 73 20 69 6e 20 61 6e 20 69 6e 74 65 67 65 72 20 2d 20 22 63 6f 75 6e 74 | e).zeroes.in.an.integer.-."count |
| 96c40 | 20 6c 65 61 64 69 6e 67 20 7a 65 72 6f 65 73 22 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | .leading.zeroes"........</p>.... |
| 96c60 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 3e 6f 70 65 72 61 6e 64 3c 2f 63 | ...<p>.......If.<code>operand</c |
| 96c80 | 6f 64 65 3e 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 | ode>.is.a.<a.href="#comptime">co |
| 96ca0 | 6d 70 74 69 6d 65 3c 2f 61 3e 2d 6b 6e 6f 77 6e 20 69 6e 74 65 67 65 72 2c 0a 20 20 20 20 20 20 | mptime</a>-known.integer,....... |
| 96cc0 | 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | the.return.type.is.<code><span.c |
| 96ce0 | 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 70 | lass="tok-type">comptime_int</sp |
| 96d00 | 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 | an></code>........Otherwise,.the |
| 96d20 | 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 20 69 6e 74 65 | .return.type.is.an.unsigned.inte |
| 96d40 | 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 6e 74 65 67 65 | ger.or.vector.of.unsigned.intege |
| 96d60 | 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 20 20 20 20 20 | rs.with.the.minimum.number...... |
| 96d80 | 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 20 74 68 65 20 | .of.bits.that.can.represent.the. |
| 96da0 | 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 70 65 2e 0a 20 | bit.count.of.the.integer.type... |
| 96dc0 | 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 3c 63 6f | .....</p>.......<p>.......If.<co |
| 96de0 | 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 3c 63 6f 64 65 | de>operand</code>.is.zero,.<code |
| 96e00 | 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 6c 7a 3c | ><span.class="tok-builtin">@clz< |
| 96e20 | 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 20 62 69 74 20 77 69 | /span></code>.returns.the.bit.wi |
| 96e40 | 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 20 3c 63 6f 64 65 3e | dth.......of.integer.type.<code> |
| 96e60 | 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 3c 70 3e 53 65 | T</code>........</p>.......<p>Se |
| 96e80 | 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 |
| 96ea0 | 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 70 | z">@ctz</a></li>.<li><a.href="#p |
| 96ec0 | 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 0a 3c 2f 75 6c | opCount">@popCount</a></li>.</ul |
| 96ee0 | 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 6d 70 78 63 68 67 | >................<h3.id="cmpxchg |
| 96f00 | 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 78 63 68 67 53 74 72 | Strong"><a.href="#toc-cmpxchgStr |
| 96f20 | 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 61 20 63 6c 61 73 73 | ong">@cmpxchgStrong</a>.<a.class |
| 96f40 | 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 6e 67 22 3e c2 a7 3c | ="hdr".href="#cmpxchgStrong">..< |
| 96f60 | 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 |
| 96f80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6d 70 78 63 68 67 53 74 72 | .class="tok-builtin">@cmpxchgStr |
| 96fa0 | 6f 6e 67 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ong</span>(<span.class="tok-kw"> |
| 96fc0 | 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=" |
| 96fe0 | 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 54 2c 20 | tok-type">type</span>,.ptr:.*T,. |
| 97000 | 65 78 70 65 63 74 65 64 5f 76 61 6c 75 65 3a 20 54 2c 20 6e 65 77 5f 76 61 6c 75 65 3a 20 54 2c | expected_value:.T,.new_value:.T, |
| 97020 | 20 73 75 63 63 65 73 73 5f 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 64 65 72 2c 20 66 61 69 | .success_order:.AtomicOrder,.fai |
| 97040 | 6c 5f 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 64 65 72 29 20 3f 54 3c 2f 63 6f 64 65 3e 3c | l_order:.AtomicOrder).?T</code>< |
| 97060 | 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 |
| 97080 | 69 6f 6e 20 70 65 72 66 6f 72 6d 73 20 61 20 73 74 72 6f 6e 67 20 61 74 6f 6d 69 63 20 63 6f 6d | ion.performs.a.strong.atomic.com |
| 970a0 | 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 6f 6e 2c 20 72 65 74 | pare-and-exchange.operation,.ret |
| 970c0 | 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 74 6f 6b 2d 6e 75 | urning.<code><span.class="tok-nu |
| 970e0 | 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 20 20 20 20 69 66 20 | ll">null</span></code>.......if. |
| 97100 | 74 68 65 20 63 75 72 72 65 6e 74 20 76 61 6c 75 65 20 69 73 20 6e 6f 74 20 74 68 65 20 67 69 76 | the.current.value.is.not.the.giv |
| 97120 | 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 71 75 69 | en.expected.value..It's.the.equi |
| 97140 | 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 63 65 70 | valent.of.this.code,.......excep |
| 97160 | 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 69 67 75 | t.atomic:.......</p>.......<figu |
| 97180 | 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">< |
| 971a0 | 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 63 6d 70 | cite.class="file">not_atomic_cmp |
| 971c0 | 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 74 69 6f | xchgStrong.zig</cite></figcaptio |
| 971e0 | 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 |
| 97200 | 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" |
| 97220 | 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 70 61 6e | >cmpxchgStrongButNotAtomic</span |
| 97240 | 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< |
| 97260 | 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | /span>.T:.<span.class="tok-type" |
| 97280 | 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 65 64 5f | >type</span>,.ptr:.*T,.expected_ |
| 972a0 | 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 20 20 20 | value:.T,.new_value:.T).?T.{.... |
| 972c0 | 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 |
| 972e0 | 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 61 6e 20 | n>.old_value.=.ptr.*;.....<span. |
| 97300 | 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 5f 76 61 | class="tok-kw">if</span>.(old_va |
| 97320 | 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 20 20 20 | lue.==.expected_value).{........ |
| 97340 | 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 73 70 61 | .ptr.*.=.new_value;.........<spa |
| 97360 | 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>.< |
| 97380 | 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 |
| 973a0 | 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 3e 65 6c | >;.....}.<span.class="tok-kw">el |
| 973c0 | 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 73 73 3d | se</span>.{.........<span.class= |
| 973e0 | 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 6c 75 65 | "tok-kw">return</span>.old_value |
| 97400 | 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 0a | ;.....}.}</code></pre></figure>. |
| 97420 | 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 73 69 6e | .......<p>.......If.you.are.usin |
| 97440 | 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 20 68 72 | g.cmpxchg.in.a.retry.loop,.<a.hr |
| 97460 | 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 6b 3c 2f | ef="#cmpxchgWeak">@cmpxchgWeak</ |
| 97480 | 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 75 73 65 | a>.is.the.better.choice,.because |
| 974a0 | 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 6d 6f 72 | .it.can.be.implemented.......mor |
| 974c0 | 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 72 75 63 | e.efficiently.in.machine.instruc |
| 974e0 | 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | tions........</p>.......<p>..... |
| 97500 | 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 69 6e 74 | ..<code>T</code>.must.be.a.point |
| 97520 | 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 74 79 70 | er,.a.<code><span.class="tok-typ |
| 97540 | 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 20 66 6c 6f 61 74 2c 0a | e">bool</span></code>,.a.float,. |
| 97560 | 20 20 20 20 20 20 61 6e 20 69 6e 74 65 67 65 72 20 6f 72 20 61 6e 20 65 6e 75 6d 2e 0a 20 20 20 | ......an.integer.or.an.enum..... |
| 97580 | 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 63 6c 61 | ...</p>.......<p><code><span.cla |
| 975a0 | 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 |
| 975c0 | 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 70 | >(<span.class="tok-builtin">@Typ |
| 975e0 | 65 4f 66 3c 2f 73 70 61 6e 3e 28 70 74 72 29 29 2e 50 6f 69 6e 74 65 72 2e 61 6c 69 67 6e 6d 65 | eOf</span>(ptr)).Pointer.alignme |
| 97600 | 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 20 3c 73 | nt</code>.must.be.<code>>=.<s |
| 97620 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c | pan.class="tok-builtin">@sizeOf< |
| 97640 | 2f 73 70 61 6e 3e 28 54 29 2e 3c 2f 63 6f 64 65 3e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c | /span>(T).</code></p>.......<p>< |
| 97660 | 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 65 20 66 | code>AtomicOrder</code>.can.be.f |
| 97680 | 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 74 6f 6b | ound.with.<code><span.class="tok |
| 976a0 | 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 |
| 976c0 | 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"</ |
| 976e0 | 73 70 61 6e 3e 29 2e 62 75 69 6c 74 69 6e 2e 41 74 6f 6d 69 63 4f 72 64 65 72 3c 2f 63 6f 64 65 | span>).builtin.AtomicOrder</code |
| 97700 | 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c | >.</p>.......<p>See.also:</p><ul |
| 97720 | 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 40 61 74 | >.<li><a.href="#atomicStore">@at |
| 97740 | 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 66 3d 22 | omicStore</a></li>.<li><a.href=" |
| 97760 | 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 2f 6c 69 | #atomicLoad">@atomicLoad</a></li |
| 97780 | 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 74 6f 6d | >.<li><a.href="#atomicRmw">@atom |
| 977a0 | 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 66 65 6e | icRmw</a></li>.<li><a.href="#fen |
| 977c0 | 63 65 22 3e 40 66 65 6e 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | ce">@fence</a></li>.<li><a.href= |
| 977e0 | 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 3c | "#cmpxchgWeak">@cmpxchgWeak</a>< |
| 97800 | 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 |
| 97820 | 3d 22 63 6d 70 78 63 68 67 57 65 61 6b 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 6d 70 | ="cmpxchgWeak"><a.href="#toc-cmp |
| 97840 | 78 63 68 67 57 65 61 6b 22 3e 40 63 6d 70 78 63 68 67 57 65 61 6b 3c 2f 61 3e 20 3c 61 20 63 6c | xchgWeak">@cmpxchgWeak</a>.<a.cl |
| 97860 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 6d 70 78 63 68 67 57 65 61 6b 22 3e c2 a7 | ass="hdr".href="#cmpxchgWeak">.. |
| 97880 | 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 |
| 978a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6d 70 78 63 68 67 57 65 | n.class="tok-builtin">@cmpxchgWe |
| 978c0 | 61 6b 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 | ak</span>(<span.class="tok-kw">c |
| 978e0 | 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 |
| 97900 | 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 54 2c 20 65 | ok-type">type</span>,.ptr:.*T,.e |
| 97920 | 78 70 65 63 74 65 64 5f 76 61 6c 75 65 3a 20 54 2c 20 6e 65 77 5f 76 61 6c 75 65 3a 20 54 2c 20 | xpected_value:.T,.new_value:.T,. |
| 97940 | 73 75 63 63 65 73 73 5f 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 64 65 72 2c 20 66 61 69 6c | success_order:.AtomicOrder,.fail |
| 97960 | 5f 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 64 65 72 29 20 3f 54 3c 2f 63 6f 64 65 3e 3c 2f | _order:.AtomicOrder).?T</code></ |
| 97980 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 | pre>.......<p>.......This.functi |
| 979a0 | 6f 6e 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 | on.performs.a.weak.atomic.compar |
| 979c0 | 65 2d 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 | e-and-exchange.operation,.return |
| 979e0 | 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 6e 75 6c 6c 22 | ing.<code><span.class="tok-null" |
| 97a00 | 3e 6e 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 | >null</span></code>.......if.the |
| 97a20 | 20 63 75 72 72 65 6e 74 20 76 61 6c 75 65 20 69 73 20 6e 6f 74 20 74 68 65 20 67 69 76 65 6e 20 | .current.value.is.not.the.given. |
| 97a40 | 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 71 75 69 76 61 6c | expected.value..It's.the.equival |
| 97a60 | 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 63 65 70 74 20 61 | ent.of.this.code,.......except.a |
| 97a80 | 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 69 67 75 72 65 3e | tomic:.......</p>.......<figure> |
| 97aa0 | 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 |
| 97ac0 | 65 20 63 6c 61 73 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 | e.class="file">cmpxchgWeakButNot |
| 97ae0 | 41 74 6f 6d 69 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 3c | Atomic</cite></figcaption><pre>< |
| 97b00 | 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 70 | code><span.class="tok-kw">fn</sp |
| 97b20 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 63 6d 70 78 63 68 67 | an>.<span.class="tok-fn">cmpxchg |
| 97b40 | 57 65 61 6b 42 75 74 4e 6f 74 41 74 6f 6d 69 63 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | WeakButNotAtomic</span>(<span.cl |
| 97b60 | 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:. |
| 97b80 | 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 |
| 97ba0 | 6e 3e 2c 20 70 74 72 3a 20 2a 54 2c 20 65 78 70 65 63 74 65 64 5f 76 61 6c 75 65 3a 20 54 2c 20 | n>,.ptr:.*T,.expected_value:.T,. |
| 97bc0 | 6e 65 77 5f 76 61 6c 75 65 3a 20 54 29 20 3f 54 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | new_value:.T).?T.{.....<span.cla |
| 97be0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 6c 64 5f 76 61 6c | ss="tok-kw">const</span>.old_val |
| 97c00 | 75 65 20 3d 20 70 74 72 2e 2a 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ue.=.ptr.*;.....<span.class="tok |
| 97c20 | 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6f 6c 64 5f 76 61 6c 75 65 20 3d 3d 20 65 78 70 | -kw">if</span>.(old_value.==.exp |
| 97c40 | 65 63 74 65 64 5f 76 61 6c 75 65 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ected_value.<span.class="tok-kw" |
| 97c60 | 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 75 73 75 61 6c 6c 79 54 72 75 65 42 75 74 53 6f 6d 65 74 69 | >and</span>.usuallyTrueButSometi |
| 97c80 | 6d 65 73 46 61 6c 73 65 28 29 29 20 7b 0a 20 20 20 20 20 20 20 20 70 74 72 2e 2a 20 3d 20 6e 65 | mesFalse()).{.........ptr.*.=.ne |
| 97ca0 | 77 5f 76 61 6c 75 65 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | w_value;.........<span.class="to |
| 97cc0 | 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= |
| 97ce0 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 20 3c 73 | "tok-null">null</span>;.....}.<s |
| 97d00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b | pan.class="tok-kw">else</span>.{ |
| 97d20 | 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 | .........<span.class="tok-kw">re |
| 97d40 | 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 6f 6c 64 5f 76 61 6c 75 65 3b 0a 20 20 20 20 7d 0a 7d 3c 2f | turn</span>.old_value;.....}.}</ |
| 97d60 | 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 0a 20 | code></pre></figure>.......<p>.. |
| 97d80 | 20 20 20 20 20 49 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 | .....If.you.are.using.cmpxchg.in |
| 97da0 | 20 61 20 72 65 74 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 | .a.retry.loop,.the.sporadic.fail |
| 97dc0 | 75 72 65 20 77 69 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 | ure.will.be.no.problem,.and.<cod |
| 97de0 | 65 3e 63 6d 70 78 63 68 67 57 65 61 6b 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 69 73 20 74 68 | e>cmpxchgWeak</code>.......is.th |
| 97e00 | 65 20 62 65 74 74 65 72 20 63 68 6f 69 63 65 2c 20 62 65 63 61 75 73 65 20 69 74 20 63 61 6e 20 | e.better.choice,.because.it.can. |
| 97e20 | 62 65 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 6d 6f 72 65 20 65 66 66 69 63 69 65 6e 74 6c 79 20 | be.implemented.more.efficiently. |
| 97e40 | 69 6e 20 6d 61 63 68 69 6e 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 48 | in.machine.instructions........H |
| 97e60 | 6f 77 65 76 65 72 20 69 66 20 79 6f 75 20 6e 65 65 64 20 61 20 73 74 72 6f 6e 67 65 72 20 67 75 | owever.if.you.need.a.stronger.gu |
| 97e80 | 61 72 61 6e 74 65 65 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 63 6d 70 78 63 68 67 53 74 | arantee,.use.<a.href="#cmpxchgSt |
| 97ea0 | 72 6f 6e 67 22 3e 40 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 | rong">@cmpxchgStrong</a>........ |
| 97ec0 | 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 2f 63 6f | </p>.......<p>.......<code>T</co |
| 97ee0 | 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 65 3e 3c | de>.must.be.a.pointer,.a.<code>< |
| 97f00 | 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 |
| 97f20 | 3e 3c 2f 63 6f 64 65 3e 2c 20 61 20 66 6c 6f 61 74 2c 0a 20 20 20 20 20 20 61 6e 20 69 6e 74 65 | ></code>,.a.float,.......an.inte |
| 97f40 | 67 65 72 20 6f 72 20 61 6e 20 65 6e 75 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | ger.or.an.enum........</p>...... |
| 97f60 | 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 75 69 6c 74 | .<p><code><span.class="tok-built |
| 97f80 | 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | in">@typeInfo</span>(<span.class |
| 97fa0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 70 74 | ="tok-builtin">@TypeOf</span>(pt |
| 97fc0 | 72 29 29 2e 50 6f 69 6e 74 65 72 2e 61 6c 69 67 6e 6d 65 6e 74 3c 2f 63 6f 64 65 3e 20 6d 75 73 | r)).Pointer.alignment</code>.mus |
| 97fe0 | 74 20 62 65 20 3c 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 | t.be.<code>>=.<span.class="to |
| 98000 | 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 54 29 2e 3c 2f 63 | k-builtin">@sizeOf</span>(T).</c |
| 98020 | 6f 64 65 3e 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 4f 72 | ode></p>.......<p><code>AtomicOr |
| 98040 | 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 63 6f | der</code>.can.be.found.with.<co |
| 98060 | 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 |
| 98080 | 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 |
| 980a0 | 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 74 69 | ">"std"</span>).builti |
| 980c0 | 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 20 20 | n.AtomicOrder</code>.</p>....... |
| 980e0 | 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 |
| 98100 | 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 61 3e | ="#atomicStore">@atomicStore</a> |
| 98120 | 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 4c 6f 61 64 22 3e | </li>.<li><a.href="#atomicLoad"> |
| 98140 | 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 68 72 65 66 | @atomicLoad</a></li>.<li><a.href |
| 98160 | 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 3c 2f 6c 69 | ="#atomicRmw">@atomicRmw</a></li |
| 98180 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 66 65 6e 63 65 22 3e 40 66 65 6e 63 65 3c 2f 61 | >.<li><a.href="#fence">@fence</a |
| 981a0 | 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 53 74 72 6f | ></li>.<li><a.href="#cmpxchgStro |
| 981c0 | 6e 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 | ng">@cmpxchgStrong</a></li>.</ul |
| 981e0 | 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 6f 6d 70 69 6c 65 | >................<h3.id="compile |
| 98200 | 45 72 72 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 6f 6d 70 69 6c 65 45 72 72 6f | Error"><a.href="#toc-compileErro |
| 98220 | 72 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | r">@compileError</a>.<a.class="h |
| 98240 | 64 72 22 20 68 72 65 66 3d 22 23 63 6f 6d 70 69 6c 65 45 72 72 6f 72 22 3e c2 a7 3c 2f 61 3e 3c | dr".href="#compileError">..</a>< |
| 98260 | 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 |
| 98280 | 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 6f 72 3c 2f | ss="tok-builtin">@compileError</ |
| 982a0 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 | span>(<span.class="tok-kw">compt |
| 982c0 | 69 6d 65 3c 2f 73 70 61 6e 3e 20 6d 73 67 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ime</span>.msg:.[]<span.class="t |
| 982e0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ok-kw">const</span>.<span.class= |
| 98300 | 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 61 73 | "tok-type">u8</span>).<span.clas |
| 98320 | 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 2f 63 6f | s="tok-type">noreturn</span></co |
| 98340 | 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 |
| 98360 | 75 6e 63 74 69 6f 6e 2c 20 77 68 65 6e 20 73 65 6d 61 6e 74 69 63 61 6c 6c 79 20 61 6e 61 6c 79 | unction,.when.semantically.analy |
| 98380 | 7a 65 64 2c 20 63 61 75 73 65 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 77 69 74 68 | zed,.causes.a.compile.error.with |
| 983a0 | 20 74 68 65 0a 20 20 20 20 20 20 6d 65 73 73 61 67 65 20 3c 63 6f 64 65 3e 6d 73 67 3c 2f 63 6f | .the.......message.<code>msg</co |
| 983c0 | 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | de>........</p>.......<p>....... |
| 983e0 | 54 68 65 72 65 20 61 72 65 20 73 65 76 65 72 61 6c 20 77 61 79 73 20 74 68 61 74 20 63 6f 64 65 | There.are.several.ways.that.code |
| 98400 | 20 61 76 6f 69 64 73 20 62 65 69 6e 67 20 73 65 6d 61 6e 74 69 63 61 6c 6c 79 20 63 68 65 63 6b | .avoids.being.semantically.check |
| 98420 | 65 64 2c 20 73 75 63 68 20 61 73 0a 20 20 20 20 20 20 75 73 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 | ed,.such.as.......using.<code><s |
| 98440 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | pan.class="tok-kw">if</span></co |
| 98460 | 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 6b 2d 6b 77 | de>.or.<code><span.class="tok-kw |
| 98480 | 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 74 68 20 63 6f 6d 70 | ">switch</span></code>.with.comp |
| 984a0 | 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ile.time.constants,............. |
| 984c0 | 20 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 6b 77 22 | ..and.<code><span.class="tok-kw" |
| 984e0 | 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e | >comptime</span></code>.function |
| 98500 | 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 3c 68 33 20 | s........</p>...............<h3. |
| 98520 | 69 64 3d 22 63 6f 6d 70 69 6c 65 4c 6f 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 6f | id="compileLog"><a.href="#toc-co |
| 98540 | 6d 70 69 6c 65 4c 6f 67 22 3e 40 63 6f 6d 70 69 6c 65 4c 6f 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 | mpileLog">@compileLog</a>.<a.cla |
| 98560 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 6f 6d 70 69 6c 65 4c 6f 67 22 3e c2 a7 3c 2f | ss="hdr".href="#compileLog">..</ |
| 98580 | 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. |
| 985a0 | 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 4c 6f 67 3c | class="tok-builtin">@compileLog< |
| 985c0 | 2f 73 70 61 6e 3e 28 61 72 67 73 3a 20 2e 2e 2e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>(args:....).<span.class="t |
| 985e0 | 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 65 | ok-type">void</span></code></pre |
| 98600 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 | >.......<p>.......This.function. |
| 98620 | 70 72 69 6e 74 73 20 74 68 65 20 61 72 67 75 6d 65 6e 74 73 20 70 61 73 73 65 64 20 74 6f 20 69 | prints.the.arguments.passed.to.i |
| 98640 | 74 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | t.at.compile-time........</p>... |
| 98660 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 70 72 65 76 65 6e 74 20 61 63 63 69 64 65 6e | ....<p>.......To.prevent.acciden |
| 98680 | 74 61 6c 6c 79 20 6c 65 61 76 69 6e 67 20 63 6f 6d 70 69 6c 65 20 6c 6f 67 20 73 74 61 74 65 6d | tally.leaving.compile.log.statem |
| 986a0 | 65 6e 74 73 20 69 6e 20 61 20 63 6f 64 65 62 61 73 65 2c 0a 20 20 20 20 20 20 61 20 63 6f 6d 70 | ents.in.a.codebase,.......a.comp |
| 986c0 | 69 6c 61 74 69 6f 6e 20 65 72 72 6f 72 20 69 73 20 61 64 64 65 64 20 74 6f 20 74 68 65 20 62 75 | ilation.error.is.added.to.the.bu |
| 986e0 | 69 6c 64 2c 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20 74 68 65 20 63 6f 6d 70 69 6c 65 0a 20 20 20 | ild,.pointing.to.the.compile.... |
| 98700 | 20 20 20 6c 6f 67 20 73 74 61 74 65 6d 65 6e 74 2e 20 54 68 69 73 20 65 72 72 6f 72 20 70 72 65 | ...log.statement..This.error.pre |
| 98720 | 76 65 6e 74 73 20 63 6f 64 65 20 66 72 6f 6d 20 62 65 69 6e 67 20 67 65 6e 65 72 61 74 65 64 2c | vents.code.from.being.generated, |
| 98740 | 20 62 75 74 0a 20 20 20 20 20 20 64 6f 65 73 20 6e 6f 74 20 6f 74 68 65 72 77 69 73 65 20 69 6e | .but.......does.not.otherwise.in |
| 98760 | 74 65 72 66 65 72 65 20 77 69 74 68 20 61 6e 61 6c 79 73 69 73 2e 0a 20 20 20 20 20 20 3c 2f 70 | terfere.with.analysis........</p |
| 98780 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 | >.......<p>.......This.function. |
| 987a0 | 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 64 6f 20 22 70 72 69 6e 74 66 20 64 65 62 75 67 67 | can.be.used.to.do."printf.debugg |
| 987c0 | 69 6e 67 22 20 6f 6e 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 65 78 65 63 75 | ing".on.......compile-time.execu |
| 987e0 | 74 69 6e 67 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 | ting.code........</p>.......<fig |
| 98800 | 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"> |
| 98820 | 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 69 6c 65 4c | <cite.class="file">test_compileL |
| 98840 | 6f 67 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 | og_builtin.zig</cite></figcaptio |
| 98860 | 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 |
| 98880 | 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 61 | ">const</span>.print.=.<span.cla |
| 988a0 | 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>( |
| 988c0 | 3c 73 70 61 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& |
| 988e0 | 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 61 | quot;</span>).debug.print;..<spa |
| 98900 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 | n.class="tok-kw">const</span>.nu |
| 98920 | 6d 31 20 3d 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | m1.=.blk:.{.....<span.class="tok |
| 98940 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 76 61 6c 31 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | -kw">var</span>.val1:.<span.clas |
| 98960 | 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. |
| 98980 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | class="tok-number">99</span>;... |
| 989a0 | 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 6f 6d | ..<span.class="tok-builtin">@com |
| 989c0 | 70 69 6c 65 4c 6f 67 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pileLog</span>(<span.class="tok- |
| 989e0 | 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 76 61 6c 31 20 3d 20 26 71 75 6f 74 | str">"comptime.val1.=." |
| 98a00 | 3b 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 31 29 3b 0a 20 20 20 20 76 61 6c 31 20 3d 20 76 61 6c 31 | ;</span>,.val1);.....val1.=.val1 |
| 98a20 | 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 | .+.<span.class="tok-number">1</s |
| 98a40 | 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 62 | pan>;.....<span.class="tok-kw">b |
| 98a60 | 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 76 61 6c 31 3b 0a 7d 3b 0a 0a 3c 73 70 61 6e | reak</span>.:blk.val1;.};..<span |
| 98a80 | 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 |
| 98aa0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 61 69 6e 26 71 75 6f | n.class="tok-str">"main&quo |
| 98ac0 | 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 |
| 98ae0 | 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 70 | -builtin">@compileLog</span>(<sp |
| 98b00 | 61 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 6d | an.class="tok-str">"comptim |
| 98b20 | 65 20 69 6e 20 6d 61 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 70 72 | e.in.main"</span>);......pr |
| 98b40 | 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">" |
| 98b60 | 52 75 6e 74 69 6d 65 20 69 6e 20 6d 61 69 6e 2c 20 6e 75 6d 31 20 3d 20 7b 7d 2e 5c 6e 26 71 75 | Runtime.in.main,.num1.=.{}.\n&qu |
| 98b80 | 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d 31 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | ot;</span>,..{num1});.}</code></ |
| 98ba0 | 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 |
| 98bc0 | 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 |
| 98be0 | 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. |
| 98c00 | 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 6b 62 64 | test_compileLog_builtin.zig</kbd |
| 98c20 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 | >.<span.class="sgr-1m">doc/langr |
| 98c40 | 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 3a 31 | ef/test_compileLog_builtin.zig:1 |
| 98c60 | 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 31 6d | 1:5:.</span><span.class="sgr-31m |
| 98c80 | 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 |
| 98ca0 | 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 6e 74 | -1m">found.compile.log.statement |
| 98cc0 | 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 63 6f | .</span>....@compileLog("co |
| 98ce0 | 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 61 6e | mptime.in.main");.....<span |
| 98d00 | 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">^~~~~~~~~~~~~~~ |
| 98d20 | 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 63 6c | ~~~~~~~~~~~~~~~~.</span><span.cl |
| 98d40 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f | ass="sgr-1m">doc/langref/test_co |
| 98d60 | 6d 70 69 6c 65 4c 6f 67 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3a 35 3a 35 3a 20 3c 2f 73 70 61 6e | mpileLog_builtin.zig:5:5:.</span |
| 98d80 | 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 |
| 98da0 | 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 6c 73 6f 20 68 65 | pan><span.class="sgr-1m">also.he |
| 98dc0 | 72 65 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 | re.</span>....@compileLog(" |
| 98de0 | 63 6f 6d 70 74 69 6d 65 20 76 61 6c 31 20 3d 20 26 71 75 6f 74 3b 2c 20 76 61 6c 31 29 3b 0a 20 | comptime.val1.=.",.val1);.. |
| 98e00 | 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 7e | ...<span.class="sgr-32m">^~~~~~~ |
| 98e20 | 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 7e 0a 3c | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~.< |
| 98e40 | 2f 73 70 61 6e 3e 0a 43 6f 6d 70 69 6c 65 20 4c 6f 67 20 4f 75 74 70 75 74 3a 0a 40 61 73 28 2a | /span>.Compile.Log.Output:.@as(* |
| 98e60 | 63 6f 6e 73 74 20 5b 31 36 3a 30 5d 75 38 2c 20 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 69 | const.[16:0]u8,."comptime.i |
| 98e80 | 6e 20 6d 61 69 6e 26 71 75 6f 74 3b 29 0a 40 61 73 28 2a 63 6f 6e 73 74 20 5b 31 36 3a 30 5d 75 | n.main").@as(*const.[16:0]u |
| 98ea0 | 38 2c 20 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 76 61 6c 31 20 3d 20 26 71 75 6f 74 3b 29 | 8,."comptime.val1.=.") |
| 98ec0 | 2c 20 40 61 73 28 69 33 32 2c 20 39 39 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | ,.@as(i32,.99).</samp></pre></fi |
| 98ee0 | 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 63 6f 6e | gure>................<h3.id="con |
| 98f00 | 73 74 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 6f 6e 73 74 43 61 73 74 22 | stCast"><a.href="#toc-constCast" |
| 98f20 | 3e 40 63 6f 6e 73 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 | >@constCast</a>.<a.class="hdr".h |
| 98f40 | 72 65 66 3d 22 23 63 6f 6e 73 74 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | ref="#constCast">..</a></h3>.... |
| 98f60 | 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- |
| 98f80 | 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6e 73 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 | builtin">@constCast</span>(value |
| 98fa0 | 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</ |
| 98fc0 | 73 70 61 6e 3e 29 20 44 65 73 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | span>).DestType</code></pre>.... |
| 98fe0 | 20 20 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 | ...<p>.......Remove.<code><span. |
| 99000 | 63 6c 61 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 |
| 99020 | 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 20 | e>.qualifier.from.a.pointer..... |
| 99040 | 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 63 74 | ...</p>...............<h3.id="ct |
| 99060 | 7a 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 74 7a 22 3e 40 63 74 7a 3c 2f 61 3e 20 3c | z"><a.href="#toc-ctz">@ctz</a>.< |
| 99080 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 74 7a 22 3e c2 a7 3c 2f 61 3e | a.class="hdr".href="#ctz">..</a> |
| 990a0 | 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 |
| 990c0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 74 7a 3c 2f 73 70 61 6e 3e 28 6f 70 | ass="tok-builtin">@ctz</span>(op |
| 990e0 | 65 72 61 6e 64 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 | erand:.<span.class="tok-kw">anyt |
| 99100 | 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 22 | ype</span>).<span.class="tok-kw" |
| 99120 | 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 20 | >anytype</span></code></pre>.... |
| 99140 | 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 75 69 | ...<p><code><span.class="tok-bui |
| 99160 | 6c 74 69 6e 22 3e 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 | ltin">@TypeOf</span>(operand)</c |
| 99180 | 6f 64 65 3e 20 6d 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 | ode>.must.be.an.integer.type.or. |
| 991a0 | 61 6e 20 69 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 | an.integer.vector.type.</p>..... |
| 991c0 | 20 20 3c 70 3e 3c 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 | ..<p><code>operand</code>.may.be |
| 991e0 | 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 3c | .an.<a.href="#Integers">integer< |
| 99200 | 2f 61 3e 20 6f 72 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 | /a>.or.<a.href="#Vectors">vector |
| 99220 | 3c 2f 61 3e 2e 3c 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 | </a>.</p>.......<p>.......Counts |
| 99240 | 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 6c 65 61 73 74 2d 73 69 67 6e 69 66 69 63 61 6e 74 | .the.number.of.least-significant |
| 99260 | 20 28 74 72 61 69 6c 69 6e 67 20 69 6e 20 61 20 62 69 67 2d 65 6e 64 69 61 6e 20 73 65 6e 73 65 | .(trailing.in.a.big-endian.sense |
| 99280 | 29 20 7a 65 72 6f 65 73 20 69 6e 20 61 6e 20 69 6e 74 65 67 65 72 20 2d 20 22 63 6f 75 6e 74 20 | ).zeroes.in.an.integer.-."count. |
| 992a0 | 74 72 61 69 6c 69 6e 67 20 7a 65 72 6f 65 73 22 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | trailing.zeroes"........</p>.... |
| 992c0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 3e 6f 70 65 72 61 6e 64 3c 2f 63 | ...<p>.......If.<code>operand</c |
| 992e0 | 6f 64 65 3e 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 | ode>.is.a.<a.href="#comptime">co |
| 99300 | 6d 70 74 69 6d 65 3c 2f 61 3e 2d 6b 6e 6f 77 6e 20 69 6e 74 65 67 65 72 2c 0a 20 20 20 20 20 20 | mptime</a>-known.integer,....... |
| 99320 | 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | the.return.type.is.<code><span.c |
| 99340 | 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 70 | lass="tok-type">comptime_int</sp |
| 99360 | 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 | an></code>........Otherwise,.the |
| 99380 | 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 20 69 6e 74 65 | .return.type.is.an.unsigned.inte |
| 993a0 | 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 6e 74 65 67 65 | ger.or.vector.of.unsigned.intege |
| 993c0 | 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 20 20 20 20 20 | rs.with.the.minimum.number...... |
| 993e0 | 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 20 74 68 65 20 | .of.bits.that.can.represent.the. |
| 99400 | 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 70 65 2e 0a 20 | bit.count.of.the.integer.type... |
| 99420 | 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 3c 63 6f | .....</p>.......<p>.......If.<co |
| 99440 | 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 3c 63 6f 64 65 | de>operand</code>.is.zero,.<code |
| 99460 | 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 74 7a 3c | ><span.class="tok-builtin">@ctz< |
| 99480 | 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 20 74 68 65 20 | /span></code>.returns.......the. |
| 994a0 | 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 63 6f 64 65 3e | bit.width.of.integer.type.<code> |
| 994c0 | 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 3c 70 3e 53 65 | T</code>........</p>.......<p>Se |
| 994e0 | 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 6c | e.also:</p><ul>.<li><a.href="#cl |
| 99500 | 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 66 3d 22 23 70 | z">@clz</a></li>.<li><a.href="#p |
| 99520 | 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 0a 3c 2f 75 6c | opCount">@popCount</a></li>.</ul |
| 99540 | 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 6e 64 65 66 22 | >................<h3.id="cUndef" |
| 99560 | 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 64 65 66 3c 2f | ><a.href="#toc-cUndef">@cUndef</ |
| 99580 | 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 6e 64 65 66 22 | a>.<a.class="hdr".href="#cUndef" |
| 995a0 | 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>< |
| 995c0 | 73 70 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 |
| 995e0 | 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 |
| 99600 | 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 73 | ptime</span>.name:.[]<span.class |
| 99620 | 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 |
| 99640 | 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 63 | ss="tok-type">u8</span>).<span.c |
| 99660 | 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 64 | lass="tok-type">void</span></cod |
| 99680 | 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 75 | e></pre>.......<p>.......This.fu |
| 996a0 | 6e 63 74 69 6f 6e 20 63 61 6e 20 6f 6e 6c 79 20 6f 63 63 75 72 20 69 6e 73 69 64 65 20 3c 63 6f | nction.can.only.occur.inside.<co |
| 996c0 | 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 |
| 996e0 | 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 3c 2f 70 3e 0a | mport</span></code>........</p>. |
| 99700 | 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 73 20 3c 63 6f | ......<p>.......This.appends.<co |
| 99720 | 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 68 65 20 3c 63 | de>#undef.$name</code>.to.the.<c |
| 99740 | 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 |
| 99760 | 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 74 65 6d 70 6f | Import</span></code>.......tempo |
| 99780 | 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 20 3c 70 | rary.buffer........</p>.......<p |
| 997a0 | 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=" |
| 997c0 | 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 6d 70 6f | #Import-from-C-Header-File">Impo |
| 997e0 | 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 3e 0a 3c | rt.from.C.Header.File</a></li>.< |
| 99800 | 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 74 3c 2f | li><a.href="#cImport">@cImport</ |
| 99820 | 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 3e 40 | a></li>.<li><a.href="#cDefine">@ |
| 99840 | 63 44 65 66 69 6e 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 | cDefine</a></li>.<li><a.href="#c |
| 99860 | 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 2f 75 6c | Include">@cInclude</a></li>.</ul |
| 99880 | 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 61 41 72 67 22 | >................<h3.id="cVaArg" |
| 998a0 | 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 41 72 67 3c 2f | ><a.href="#toc-cVaArg">@cVaArg</ |
| 998c0 | 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 41 72 67 22 | a>.<a.class="hdr".href="#cVaArg" |
| 998e0 | 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>< |
| 99900 | 73 70 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 41 72 67 | span.class="tok-builtin">@cVaArg |
| 99920 | 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 69 6e 2e 56 61 | </span>(operand:.*std.builtin.Va |
| 99940 | 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 63 6f 6d 70 74 | List,.<span.class="tok-kw">compt |
| 99960 | 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ime</span>.T:.<span.class="tok-t |
| 99980 | 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 2f 70 72 65 3e | ype">type</span>).T</code></pre> |
| 999a0 | 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 20 74 68 65 20 | .......<p>.......Implements.the. |
| 999c0 | 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 2e 0a 20 20 20 | C.macro.<code>va_arg</code>..... |
| 999e0 | 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 |
| 99a00 | 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 63 56 61 43 6f | l>.<li><a.href="#cVaCopy">@cVaCo |
| 99a20 | 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 64 | py</a></li>.<li><a.href="#cVaEnd |
| 99a40 | 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 72 65 66 3d 22 | ">@cVaEnd</a></li>.<li><a.href=" |
| 99a60 | 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 69 3e 0a 3c 2f | #cVaStart">@cVaStart</a></li>.</ |
| 99a80 | 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 56 61 43 6f 70 | ul>...............<h3.id="cVaCop |
| 99aa0 | 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 63 56 61 43 6f | y"><a.href="#toc-cVaCopy">@cVaCo |
| 99ac0 | 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 22 23 63 56 61 | py</a>.<a.class="hdr".href="#cVa |
| 99ae0 | 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 72 65 3e 3c 63 | Copy">..</a></h3>........<pre><c |
| 99b00 | 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 |
| 99b20 | 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 6c 74 69 6e 2e | VaCopy</span>(src:.*std.builtin. |
| 99b40 | 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 2f 63 6f 64 65 | VaList).std.builtin.VaList</code |
| 99b60 | 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 6c 65 6d 65 6e | ></pre>.......<p>.......Implemen |
| 99b80 | 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 79 3c 2f 63 6f | ts.the.C.macro.<code>va_copy</co |
| 99ba0 | 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 |
| 99bc0 | 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 61 41 72 67 22 | o:</p><ul>.<li><a.href="#cVaArg" |
| 99be0 | 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 65 66 3d 22 23 | >@cVaArg</a></li>.<li><a.href="# |
| 99c00 | 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 69 3e 3c 61 20 | cVaEnd">@cVaEnd</a></li>.<li><a. |
| 99c20 | 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 2f 61 3e 3c 2f | href="#cVaStart">@cVaStart</a></ |
| 99c40 | 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 22 | li>.</ul>...............<h3.id=" |
| 99c60 | 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 64 22 3e 40 63 | cVaEnd"><a.href="#toc-cVaEnd">@c |
| 99c80 | 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 65 66 3d 22 23 | VaEnd</a>.<a.class="hdr".href="# |
| 99ca0 | 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 3c 70 72 65 3e | cVaEnd">..</a></h3>........<pre> |
| 99cc0 | 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"> |
| 99ce0 | 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 69 6c 74 69 6e | @cVaEnd</span>(src:.*std.builtin |
| 99d00 | 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 79 70 65 22 3e | .VaList).<span.class="tok-type"> |
| 99d20 | 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 20 20 20 20 3c | void</span></code></pre>.......< |
| 99d40 | 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 61 63 72 6f 20 | p>.......Implements.the.C.macro. |
| 99d60 | 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 3c 2f 70 3e 0a | <code>va_end</code>........</p>. |
| 99d80 | 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>< |
| 99da0 | 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 6c 69 | a.href="#cVaArg">@cVaArg</a></li |
| 99dc0 | 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 6f 70 | >.<li><a.href="#cVaCopy">@cVaCop |
| 99de0 | 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 53 74 61 72 | y</a></li>.<li><a.href="#cVaStar |
| 99e00 | 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 0a 0a 20 20 20 | t">@cVaStart</a></li>.</ul>..... |
| 99e20 | 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 3e 3c 61 20 68 | ..........<h3.id="cVaStart"><a.h |
| 99e40 | 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 72 74 3c 2f 61 | ref="#toc-cVaStart">@cVaStart</a |
| 99e60 | 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 53 74 61 72 74 | >.<a.class="hdr".href="#cVaStart |
| 99e80 | 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> |
| 99ea0 | 3c 73 70 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 74 | <span.class="tok-builtin">@cVaSt |
| 99ec0 | 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 4c 69 73 74 3c | art</span>().std.builtin.VaList< |
| 99ee0 | 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 |
| 99f00 | 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 73 74 61 | lements.the.C.macro.<code>va_sta |
| 99f20 | 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 65 20 61 20 76 | rt</code>..Only.valid.inside.a.v |
| 99f40 | 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 3e 0a 20 20 20 | ariadic.function........</p>.... |
| 99f60 | 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 |
| 99f80 | 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 6c 69 3e 0a 3c | ref="#cVaArg">@cVaArg</a></li>.< |
| 99fa0 | 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 6f 70 79 3c 2f | li><a.href="#cVaCopy">@cVaCopy</ |
| 99fc0 | 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 64 22 3e 40 63 | a></li>.<li><a.href="#cVaEnd">@c |
| 99fe0 | 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 20 0a 0a 20 20 | VaEnd</a></li>.</ul>............ |
| 9a000 | 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 65 66 3d 22 23 | ....<h3.id="divExact"><a.href="# |
| 9a020 | 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 20 3c 61 20 63 | toc-divExact">@divExact</a>.<a.c |
| 9a040 | 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 3e c2 a7 3c 2f | lass="hdr".href="#divExact">..</ |
| 9a060 | 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. |
| 9a080 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 73 | class="tok-builtin">@divExact</s |
| 9a0a0 | 70 61 6e 3e 28 6e 75 6d 65 72 61 74 6f 72 3a 20 54 2c 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3a 20 | pan>(numerator:.T,.denominator:. |
| 9a0c0 | 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | T).T</code></pre>.......<p>..... |
| 9a0e0 | 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 61 72 61 6e 74 | ..Exact.division..Caller.guarant |
| 9a100 | 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 20 63 | ees.<code>denominator.!=.<span.c |
| 9a120 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | lass="tok-number">0</span></code |
| 9a140 | 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 20 63 6c 61 73 | >.and...........<code><span.clas |
| 9a160 | 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 73 70 61 6e 3e | s="tok-builtin">@divTrunc</span> |
| 9a180 | 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 64 65 6e 6f 6d | (numerator,.denominator).*.denom |
| 9a1a0 | 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 0a 20 20 20 20 | inator.==.numerator</code>...... |
| 9a1c0 | 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> |
| 9a1e0 | 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"> |
| 9a200 | 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 73 3d 22 74 6f | @divExact</span>(<span.class="to |
| 9a220 | 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 73 3d | k-number">6</span>,.<span.class= |
| 9a240 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 | "tok-number">3</span>).==.<span. |
| 9a260 | 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 64 | class="tok-number">2</span></cod |
| 9a280 | 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 |
| 9a2a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 45 78 61 63 74 3c | n.class="tok-builtin">@divExact< |
| 9a2c0 | 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 2a 20 62 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 | /span>(a,.b).*.b.==.a</code></li |
| 9a2e0 | 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 61 20 66 75 6e | >.......</ul>.......<p>For.a.fun |
| 9a300 | 63 74 69 6f 6e 20 74 68 61 74 20 72 65 74 75 72 6e 73 20 61 20 70 6f 73 73 69 62 6c 65 20 65 72 | ction.that.returns.a.possible.er |
| 9a320 | 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 6c 61 73 73 3d | ror.code,.use.<code><span.class= |
| 9a340 | 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 |
| 9a360 | 61 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 |
| 9a380 | 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 6f 64 65 3e 2e | t;</span>).math.divExact</code>. |
| 9a3a0 | 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>. |
| 9a3c0 | 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 76 54 72 75 6e | <li><a.href="#divTrunc">@divTrun |
| 9a3e0 | 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 76 46 6c 6f 6f | c</a></li>.<li><a.href="#divFloo |
| 9a400 | 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 0a 0a 20 20 20 | r">@divFloor</a></li>.</ul>..... |
| 9a420 | 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 3e 3c 61 20 68 | ..........<h3.id="divFloor"><a.h |
| 9a440 | 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 6f 72 3c 2f 61 | ref="#toc-divFloor">@divFloor</a |
| 9a460 | 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 46 6c 6f 6f 72 | >.<a.class="hdr".href="#divFloor |
| 9a480 | 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> |
| 9a4a0 | 3c 73 70 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 | <span.class="tok-builtin">@divFl |
| 9a4c0 | 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 6e 6f 6d 69 6e | oor</span>(numerator:.T,.denomin |
| 9a4e0 | 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 20 20 20 3c 70 | ator:.T).T</code></pre>.......<p |
| 9a500 | 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 6f 75 6e 64 73 | >.......Floored.division..Rounds |
| 9a520 | 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 46 6f 72 20 75 | .toward.negative.infinity..For.u |
| 9a540 | 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 20 20 74 68 65 | nsigned.integers.it.is.......the |
| 9a560 | 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 64 65 6e 6f 6d | .same.as.<code>numerator./.denom |
| 9a580 | 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 6e 74 65 65 73 | inator</code>..Caller.guarantees |
| 9a5a0 | 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 20 63 6c 61 73 | .<code>denominator.!=.<span.clas |
| 9a5c0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 | s="tok-number">0</span></code>.a |
| 9a5e0 | 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 70 61 6e 20 63 | nd...............<code>!(<span.c |
| 9a600 | 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 |
| 9a620 | 61 6e 3e 28 54 29 20 3d 3d 20 2e 49 6e 74 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | an>(T).==..Int.<span.class="tok- |
| 9a640 | 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 3c 73 70 61 6e | kw">and</span>.T.is_signed.<span |
| 9a660 | 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 6e 75 6d 65 72 | .class="tok-kw">and</span>.numer |
| 9a680 | 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 3c 73 70 61 6e | ator.==.std.math.minInt(T).<span |
| 9a6a0 | 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 64 65 6e 6f 6d | .class="tok-kw">and</span>.denom |
| 9a6c0 | 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 2d 6e 75 6d 62 | inator.==.-<span.class="tok-numb |
| 9a6e0 | 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 20 3c 2f 70 3e | er">1</span>)</code>........</p> |
| 9a700 | 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> |
| 9a720 | 3c 73 70 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 | <span.class="tok-builtin">@divFl |
| 9a740 | 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 6b 2d 6e 75 6d | oor</span>(-<span.class="tok-num |
| 9a760 | 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ber">5</span>,.<span.class="tok- |
| 9a780 | 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 | number">3</span>).==.-<span.clas |
| 9a7a0 | 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 3e 3c 2f | s="tok-number">2</span></code></ |
| 9a7c0 | 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 70 61 6e 20 63 | li>...........<li><code>(<span.c |
| 9a7e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 73 70 | lass="tok-builtin">@divFloor</sp |
| 9a800 | 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 73 3d 22 74 6f | an>(a,.b).*.b).+.<span.class="to |
| 9a820 | 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 29 20 3d 3d 20 | k-builtin">@mod</span>(a,.b).==. |
| 9a840 | 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 20 20 20 20 20 | a</code></li>.......</ul>....... |
| 9a860 | 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 72 6e 73 20 61 | <p>For.a.function.that.returns.a |
| 9a880 | 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 63 6f 64 65 3e | .possible.error.code,.use.<code> |
| 9a8a0 | 3c 73 70 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 |
| 9a8c0 | 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">& |
| 9a8e0 | 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 46 | quot;std"</span>).math.divF |
| 9a900 | 6c 6f 6f 72 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c | loor</code>.</p>.......<p>See.al |
| 9a920 | 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 54 72 75 | so:</p><ul>.<li><a.href="#divTru |
| 9a940 | 6e 63 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 | nc">@divTrunc</a></li>.<li><a.hr |
| 9a960 | 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 6c 69 | ef="#divExact">@divExact</a></li |
| 9a980 | 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 64 69 | >.</ul>...............<h3.id="di |
| 9a9a0 | 76 54 72 75 6e 63 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 64 69 76 54 72 75 6e 63 22 3e | vTrunc"><a.href="#toc-divTrunc"> |
| 9a9c0 | 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | @divTrunc</a>.<a.class="hdr".hre |
| 9a9e0 | 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 20 20 20 20 20 | f="#divTrunc">..</a></h3>....... |
| 9aa00 | 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 |
| 9aa20 | 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 72 61 74 6f 72 | ltin">@divTrunc</span>(numerator |
| 9aa40 | 3a 20 54 2c 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3a 20 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 | :.T,.denominator:.T).T</code></p |
| 9aa60 | 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 65 64 20 64 69 | re>.......<p>.......Truncated.di |
| 9aa80 | 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 20 46 6f 72 20 | vision..Rounds.toward.zero..For. |
| 9aaa0 | 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 20 20 74 68 | unsigned.integers.it.is.......th |
| 9aac0 | 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 64 65 6e 6f | e.same.as.<code>numerator./.deno |
| 9aae0 | 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 6e 74 65 65 | minator</code>..Caller.guarantee |
| 9ab00 | 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 20 63 6c 61 | s.<code>denominator.!=.<span.cla |
| 9ab20 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | ss="tok-number">0</span></code>. |
| 9ab40 | 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 70 61 6e 20 | and...............<code>!(<span. |
| 9ab60 | 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 |
| 9ab80 | 70 61 6e 3e 28 54 29 20 3d 3d 20 2e 49 6e 74 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>(T).==..Int.<span.class="tok |
| 9aba0 | 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 3c 73 70 61 | -kw">and</span>.T.is_signed.<spa |
| 9abc0 | 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 6e 75 6d 65 | n.class="tok-kw">and</span>.nume |
| 9abe0 | 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 3c 73 70 61 | rator.==.std.math.minInt(T).<spa |
| 9ac00 | 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 64 65 6e 6f | n.class="tok-kw">and</span>.deno |
| 9ac20 | 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 2d 6e 75 6d | minator.==.-<span.class="tok-num |
| 9ac40 | 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 20 3c 2f 70 | ber">1</span>)</code>........</p |
| 9ac60 | 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 |
| 9ac80 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 54 | ><span.class="tok-builtin">@divT |
| 9aca0 | 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 6f 6b 2d 6e 75 | runc</span>(-<span.class="tok-nu |
| 9acc0 | 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | mber">5</span>,.<span.class="tok |
| 9ace0 | 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 20 63 6c 61 | -number">3</span>).==.-<span.cla |
| 9ad00 | 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 3c | ss="tok-number">1</span></code>< |
| 9ad20 | 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 70 61 6e 20 | /li>...........<li><code>(<span. |
| 9ad40 | 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 73 | class="tok-builtin">@divTrunc</s |
| 9ad60 | 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 73 3d 22 74 | pan>(a,.b).*.b).+.<span.class="t |
| 9ad80 | 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 62 29 20 3d 3d | ok-builtin">@rem</span>(a,.b).== |
| 9ada0 | 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 20 20 20 20 | .a</code></li>.......</ul>...... |
| 9adc0 | 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 72 6e 73 20 | .<p>For.a.function.that.returns. |
| 9ade0 | 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 63 6f 64 65 | a.possible.error.code,.use.<code |
| 9ae00 | 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 |
| 9ae20 | 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"> |
| 9ae40 | 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 |
| 9ae60 | 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 53 65 65 20 61 | Trunc</code>.</p>.......<p>See.a |
| 9ae80 | 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 46 6c | lso:</p><ul>.<li><a.href="#divFl |
| 9aea0 | 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 3e 3c 61 20 68 | oor">@divFloor</a></li>.<li><a.h |
| 9aec0 | 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 6c | ref="#divExact">@divExact</a></l |
| 9aee0 | 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=" |
| 9af00 | 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 62 65 64 46 69 | embedFile"><a.href="#toc-embedFi |
| 9af20 | 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 3d 22 68 64 72 | le">@embedFile</a>.<a.class="hdr |
| 9af40 | 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 2f 68 33 3e 0a | ".href="#embedFile">..</a></h3>. |
| 9af60 | 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 |
| 9af80 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 6d 62 65 64 46 69 6c 65 3c 2f 73 70 61 6e 3e 28 3c 73 | ok-builtin">@embedFile</span>(<s |
| 9afa0 | 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 |
| 9afc0 | 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 22 3e | n>.path:.[]<span.class="tok-kw"> |
| 9afe0 | 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 |
| 9b000 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pe">u8</span>).*<span.class="tok |
| 9b020 | 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 63 6c 61 73 73 | -kw">const</span>.[N:<span.class |
| 9b040 | 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 |
| 9b060 | 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 2f | ss="tok-type">u8</span></code></ |
| 9b080 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 | pre>.......<p>.......This.functi |
| 9b0a0 | 6f 6e 20 72 65 74 75 72 6e 73 20 61 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 | on.returns.a.compile.time.consta |
| 9b0c0 | 6e 74 20 70 6f 69 6e 74 65 72 20 74 6f 20 6e 75 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 2c 0a 20 | nt.pointer.to.null-terminated,.. |
| 9b0e0 | 20 20 20 20 20 66 69 78 65 64 2d 73 69 7a 65 20 61 72 72 61 79 20 77 69 74 68 20 6c 65 6e 67 74 | .....fixed-size.array.with.lengt |
| 9b100 | 68 20 65 71 75 61 6c 20 74 6f 20 74 68 65 20 62 79 74 65 20 63 6f 75 6e 74 20 6f 66 20 74 68 65 | h.equal.to.the.byte.count.of.the |
| 9b120 | 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 70 61 74 68 3c | .file.given.by.......<code>path< |
| 9b140 | 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 20 61 72 72 61 | /code>..The.contents.of.the.arra |
| 9b160 | 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 69 6c 65 2e 0a | y.are.the.contents.of.the.file.. |
| 9b180 | 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 20 61 20 3c 61 | ......This.is.equivalent.to.a.<a |
| 9b1a0 | 20 68 72 65 66 3d 22 23 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 2d 61 6e 64 2d 55 6e 69 63 | .href="#String-Literals-and-Unic |
| 9b1c0 | 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 72 69 6e 67 20 | ode-Code-Point-Literals">string. |
| 9b1e0 | 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 66 69 6c 65 20 | literal</a>.......with.the.file. |
| 9b200 | 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 3c 70 3e 0a 20 | contents........</p>.......<p>.. |
| 9b220 | 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 62 73 6f 6c 75 | .....<code>path</code>.is.absolu |
| 9b240 | 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 6e 74 20 66 69 | te.or.relative.to.the.current.fi |
| 9b260 | 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 6c 61 73 73 3d | le,.just.like.<code><span.class= |
| 9b280 | 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 2f 63 6f | "tok-builtin">@import</span></co |
| 9b2a0 | 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 |
| 9b2c0 | 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 70 6f 72 74 22 | o:</p><ul>.<li><a.href="#import" |
| 9b2e0 | 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 20 20 20 0a | >@import</a></li>.</ul>......... |
| 9b300 | 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 3e 3c 61 20 68 | .......<h3.id="enumFromInt"><a.h |
| 9b320 | 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 6d 46 72 6f 6d | ref="#toc-enumFromInt">@enumFrom |
| 9b340 | 49 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 6e | Int</a>.<a.class="hdr".href="#en |
| 9b360 | 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 20 20 20 3c 70 | umFromInt">..</a></h3>........<p |
| 9b380 | 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 |
| 9b3a0 | 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 67 65 72 3a 20 | n">@enumFromInt</span>(integer:. |
| 9b3c0 | 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 |
| 9b3e0 | 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 |
| 9b400 | 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>. |
| 9b420 | 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 6e 74 6f 20 61 | ......Converts.an.integer.into.a |
| 9b440 | 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 76 61 6c 75 65 | n.<a.href="#enum">enum</a>.value |
| 9b460 | 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 66 65 72 72 65 | ..The.return.type.is.the.inferre |
| 9b480 | 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 20 20 20 20 20 | d.result.type........</p>....... |
| 9b4a0 | 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 76 65 72 74 20 | <p>.......Attempting.to.convert. |
| 9b4c0 | 61 6e 20 69 6e 74 65 67 65 72 20 77 68 69 63 68 20 72 65 70 72 65 73 65 6e 74 73 20 6e 6f 20 76 | an.integer.which.represents.no.v |
| 9b4e0 | 61 6c 75 65 20 69 6e 20 74 68 65 20 63 68 6f 73 65 6e 20 65 6e 75 6d 20 74 79 70 65 20 69 6e 76 | alue.in.the.chosen.enum.type.inv |
| 9b500 | 6f 6b 65 73 0a 20 20 20 20 20 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 | okes.......safety-checked.<a.hre |
| 9b520 | 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 | f="#Undefined-Behavior">Undefine |
| 9b540 | 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | d.Behavior</a>........</p>...... |
| 9b560 | 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 |
| 9b580 | 66 3d 22 23 69 6e 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 | f="#intFromEnum">@intFromEnum</a |
| 9b5a0 | 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. |
| 9b5c0 | 69 64 3d 22 65 72 72 6f 72 46 72 6f 6d 49 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | id="errorFromInt"><a.href="#toc- |
| 9b5e0 | 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>. |
| 9b600 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 72 72 6f 72 46 72 6f 6d 49 | <a.class="hdr".href="#errorFromI |
| 9b620 | 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 63 6f 64 | nt">..</a></h3>........<pre><cod |
| 9b640 | 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 |
| 9b660 | 6f 72 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 73 74 64 2e 6d 65 74 61 | orFromInt</span>(value:.std.meta |
| 9b680 | 2e 49 6e 74 28 2e 75 6e 73 69 67 6e 65 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .Int(.unsigned,.<span.class="tok |
| 9b6a0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 53 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | -builtin">@bitSizeOf</span>(<spa |
| 9b6c0 | 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 |
| 9b6e0 | 6e 3e 29 29 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 | n>))).<span.class="tok-type">any |
| 9b700 | 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | error</span></code></pre>....... |
| 9b720 | 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 66 72 6f 6d 20 74 68 65 20 69 6e 74 65 | <p>.......Converts.from.the.inte |
| 9b740 | 67 65 72 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 69 | ger.representation.of.an.error.i |
| 9b760 | 6e 74 6f 20 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 | nto.<a.href="#The-Global-Error-S |
| 9b780 | 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 20 74 79 70 | et">The.Global.Error.Set</a>.typ |
| 9b7a0 | 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 |
| 9b7c0 | 20 69 73 20 67 65 6e 65 72 61 6c 6c 79 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 61 76 6f | .is.generally.recommended.to.avo |
| 9b7e0 | 69 64 20 74 68 69 73 0a 20 20 20 20 20 20 63 61 73 74 2c 20 61 73 20 74 68 65 20 69 6e 74 65 67 | id.this.......cast,.as.the.integ |
| 9b800 | 65 72 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 69 73 | er.representation.of.an.error.is |
| 9b820 | 20 6e 6f 74 20 73 74 61 62 6c 65 20 61 63 72 6f 73 73 20 73 6f 75 72 63 65 20 63 6f 64 65 20 63 | .not.stable.across.source.code.c |
| 9b840 | 68 61 6e 67 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 | hanges........</p>.......<p>.... |
| 9b860 | 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 6e 20 69 6e 74 65 | ...Attempting.to.convert.an.inte |
| 9b880 | 67 65 72 20 74 68 61 74 20 64 6f 65 73 20 6e 6f 74 20 63 6f 72 72 65 73 70 6f 6e 64 20 74 6f 20 | ger.that.does.not.correspond.to. |
| 9b8a0 | 61 6e 79 20 65 72 72 6f 72 20 72 65 73 75 6c 74 73 20 69 6e 0a 20 20 20 20 20 20 73 61 66 65 74 | any.error.results.in.......safet |
| 9b8c0 | 79 2d 70 72 6f 74 65 63 74 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d | y-protected.<a.href="#Undefined- |
| 9b8e0 | 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e | Behavior">Undefined.Behavior</a> |
| 9b900 | 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:< |
| 9b920 | 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 45 72 72 | /p><ul>.<li><a.href="#intFromErr |
| 9b940 | 6f 72 22 3e 40 69 6e 74 46 72 6f 6d 45 72 72 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e | or">@intFromError</a></li>.</ul> |
| 9b960 | 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 4e 61 6d | ................<h3.id="errorNam |
| 9b980 | 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 72 72 6f 72 4e 61 6d 65 22 3e 40 65 72 72 | e"><a.href="#toc-errorName">@err |
| 9b9a0 | 6f 72 4e 61 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 66 3d 22 | orName</a>.<a.class="hdr".href=" |
| 9b9c0 | 23 65 72 72 6f 72 4e 61 6d 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c | #errorName">..</a></h3>........< |
| 9b9e0 | 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 |
| 9ba00 | 69 6e 22 3e 40 65 72 72 6f 72 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 65 72 72 3a 20 3c 73 70 61 6e | in">@errorName</span>(err:.<span |
| 9ba20 | 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 |
| 9ba40 | 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 22 3e 30 3c | >).[:<span.class="tok-number">0< |
| 9ba60 | 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 63 6f 6e 73 | /span>]<span.class="tok-kw">cons |
| 9ba80 | 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"> |
| 9baa0 | 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 20 3c 70 3e | u8</span></code></pre>.......<p> |
| 9bac0 | 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 74 68 65 | .......This.function.returns.the |
| 9bae0 | 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 61 6e 20 65 72 72 | .string.representation.of.an.err |
| 9bb00 | 6f 72 2e 20 54 68 65 20 73 74 72 69 6e 67 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 0a 20 20 | or..The.string.representation... |
| 9bb20 | 20 20 20 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 6b 2d 6b 77 | ....of.<code><span.class="tok-kw |
| 9bb40 | 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 75 74 4f 66 4d 65 6d 3c 2f 63 6f 64 65 3e 20 69 | ">error</span>.OutOfMem</code>.i |
| 9bb60 | 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 73 74 72 22 3e 26 71 | s.<code><span.class="tok-str">&q |
| 9bb80 | 75 6f 74 3b 4f 75 74 4f 66 4d 65 6d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | uot;OutOfMem"</span></code> |
| 9bba0 | 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. |
| 9bbc0 | 74 68 65 72 65 20 61 72 65 20 6e 6f 20 63 61 6c 6c 73 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 | there.are.no.calls.to.<code><spa |
| 9bbe0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 4e 61 6d 65 | n.class="tok-builtin">@errorName |
| 9bc00 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 6e 20 61 6e 20 65 6e 74 69 72 65 20 61 70 70 6c | </span></code>.in.an.entire.appl |
| 9bc20 | 69 63 61 74 69 6f 6e 2c 0a 20 20 20 20 20 20 6f 72 20 61 6c 6c 20 63 61 6c 6c 73 20 68 61 76 65 | ication,.......or.all.calls.have |
| 9bc40 | 20 61 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 20 76 61 6c 75 65 20 66 6f 72 20 | .a.compile-time.known.value.for. |
| 9bc60 | 3c 63 6f 64 65 3e 65 72 72 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 6e 20 6e 6f 0a 20 20 20 20 20 20 | <code>err</code>,.then.no....... |
| 9bc80 | 65 72 72 6f 72 20 6e 61 6d 65 20 74 61 62 6c 65 20 77 69 6c 6c 20 62 65 20 67 65 6e 65 72 61 74 | error.name.table.will.be.generat |
| 9bca0 | 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 68 33 | ed........</p>...............<h3 |
| 9bcc0 | 20 69 64 3d 22 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 | .id="errorReturnTrace"><a.href=" |
| 9bce0 | 23 74 6f 63 2d 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 22 3e 40 65 72 72 6f 72 52 65 74 | #toc-errorReturnTrace">@errorRet |
| 9bd00 | 75 72 6e 54 72 61 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | urnTrace</a>.<a.class="hdr".href |
| 9bd20 | 3d 22 23 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e | ="#errorReturnTrace">..</a></h3> |
| 9bd40 | 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=" |
| 9bd60 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 3c 2f | tok-builtin">@errorReturnTrace</ |
| 9bd80 | 73 70 61 6e 3e 28 29 20 3f 2a 62 75 69 6c 74 69 6e 2e 53 74 61 63 6b 54 72 61 63 65 3c 2f 63 6f | span>().?*builtin.StackTrace</co |
| 9bda0 | 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 | de></pre>.......<p>.......If.the |
| 9bdc0 | 20 62 69 6e 61 72 79 20 69 73 20 62 75 69 6c 74 20 77 69 74 68 20 65 72 72 6f 72 20 72 65 74 75 | .binary.is.built.with.error.retu |
| 9bde0 | 72 6e 20 74 72 61 63 69 6e 67 2c 20 61 6e 64 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 | rn.tracing,.and.this.function.is |
| 9be00 | 20 69 6e 76 6f 6b 65 64 20 69 6e 20 61 0a 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 | .invoked.in.a.......function.tha |
| 9be20 | 74 20 63 61 6c 6c 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 61 6e 20 65 72 72 6f 72 | t.calls.a.function.with.an.error |
| 9be40 | 20 6f 72 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 72 65 74 75 72 6e 20 74 79 70 65 2c 20 72 65 74 | .or.error.union.return.type,.ret |
| 9be60 | 75 72 6e 73 20 61 0a 20 20 20 20 20 20 73 74 61 63 6b 20 74 72 61 63 65 20 6f 62 6a 65 63 74 2e | urns.a.......stack.trace.object. |
| 9be80 | 20 4f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 61 20 68 72 65 66 3d 22 23 6e 75 6c | .Otherwise.returns.<a.href="#nul |
| 9bea0 | 6c 22 3e 6e 75 6c 6c 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 | l">null</a>........</p>......... |
| 9bec0 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 65 72 72 6f 72 43 61 73 74 22 3e 3c 61 20 68 72 65 66 | ......<h3.id="errorCast"><a.href |
| 9bee0 | 3d 22 23 74 6f 63 2d 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 | ="#toc-errorCast">@errorCast</a> |
| 9bf00 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 72 72 6f 72 43 61 73 74 | .<a.class="hdr".href="#errorCast |
| 9bf20 | 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> |
| 9bf40 | 3c 73 70 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 |
| 9bf60 | 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 73 73 3d 22 | Cast</span>(value:.<span.class=" |
| 9bf80 | 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 |
| 9bfa0 | 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 |
| 9bfc0 | 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 |
| 9bfe0 | 73 20 61 6e 20 65 72 72 6f 72 20 73 65 74 20 6f 72 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 76 61 | s.an.error.set.or.error.union.va |
| 9c000 | 6c 75 65 20 66 72 6f 6d 20 6f 6e 65 20 65 72 72 6f 72 20 73 65 74 20 74 6f 20 61 6e 6f 74 68 65 | lue.from.one.error.set.to.anothe |
| 9c020 | 72 20 65 72 72 6f 72 20 73 65 74 2e 20 54 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 | r.error.set..The.return.type.is. |
| 9c040 | 74 68 65 0a 09 09 09 69 6e 66 65 72 72 65 64 20 72 65 73 75 6c 74 20 74 79 70 65 2e 20 41 74 74 | the....inferred.result.type..Att |
| 9c060 | 65 6d 70 74 69 6e 67 20 74 6f 20 63 6f 6e 76 65 72 74 20 61 6e 20 65 72 72 6f 72 20 77 68 69 63 | empting.to.convert.an.error.whic |
| 9c080 | 68 20 69 73 20 6e 6f 74 20 69 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 65 72 72 6f | h.is.not.in.the.destination.erro |
| 9c0a0 | 72 0a 09 09 09 73 65 74 20 72 65 73 75 6c 74 73 20 69 6e 20 73 61 66 65 74 79 2d 70 72 6f 74 65 | r....set.results.in.safety-prote |
| 9c0c0 | 63 74 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f | cted.<a.href="#Undefined-Behavio |
| 9c0e0 | 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 | r">Undefined.Behavior</a>....... |
| 9c100 | 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 70 6f | .</p>...............<h3.id="expo |
| 9c120 | 72 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 70 6f 72 74 22 3e 40 65 78 70 6f 72 | rt"><a.href="#toc-export">@expor |
| 9c140 | 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 70 6f | t</a>.<a.class="hdr".href="#expo |
| 9c160 | 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 63 6f 64 | rt">..</a></h3>........<pre><cod |
| 9c180 | 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 78 70 | e><span.class="tok-builtin">@exp |
| 9c1a0 | 6f 72 74 3c 2f 73 70 61 6e 3e 28 64 65 63 6c 61 72 61 74 69 6f 6e 2c 20 3c 73 70 61 6e 20 63 6c | ort</span>(declaration,.<span.cl |
| 9c1c0 | 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 70 74 | ass="tok-kw">comptime</span>.opt |
| 9c1e0 | 69 6f 6e 73 3a 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 45 78 70 6f 72 74 4f 70 74 69 6f 6e 73 29 | ions:.std.builtin.ExportOptions) |
| 9c200 | 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 |
| 9c220 | 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>...... |
| 9c240 | 20 43 72 65 61 74 65 73 20 61 20 73 79 6d 62 6f 6c 20 69 6e 20 74 68 65 20 6f 75 74 70 75 74 20 | .Creates.a.symbol.in.the.output. |
| 9c260 | 6f 62 6a 65 63 74 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | object.file........</p>.......<p |
| 9c280 | 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 64 65 63 6c 61 72 61 74 69 6f 6e 3c 2f 63 6f 64 65 3e | >.......<code>declaration</code> |
| 9c2a0 | 20 6d 75 73 74 20 62 65 20 6f 6e 65 20 6f 66 20 74 77 6f 20 74 68 69 6e 67 73 3a 0a 20 20 20 20 | .must.be.one.of.two.things:..... |
| 9c2c0 | 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 6e | ..</p>.......<ul>.........<li>An |
| 9c2e0 | 20 69 64 65 6e 74 69 66 69 65 72 20 28 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 29 20 69 64 65 | .identifier.(<code>x</code>).ide |
| 9c300 | 6e 74 69 66 79 69 6e 67 20 61 20 3c 61 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 73 22 3e | ntifying.a.<a.href="#Functions"> |
| 9c320 | 66 75 6e 63 74 69 6f 6e 3c 2f 61 3e 20 6f 72 20 61 0a 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 | function</a>.or.a...........<a.h |
| 9c340 | 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 73 22 | ref="#Container-Level-Variables" |
| 9c360 | 3e 76 61 72 69 61 62 6c 65 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e | >variable</a>.</li>.........<li> |
| 9c380 | 46 69 65 6c 64 20 61 63 63 65 73 73 20 28 3c 63 6f 64 65 3e 78 2e 79 3c 2f 63 6f 64 65 3e 29 20 | Field.access.(<code>x.y</code>). |
| 9c3a0 | 6c 6f 6f 6b 69 6e 67 20 75 70 20 61 20 3c 61 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 73 | looking.up.a.<a.href="#Functions |
| 9c3c0 | 22 3e 66 75 6e 63 74 69 6f 6e 3c 2f 61 3e 20 6f 72 20 61 0a 20 20 20 20 20 20 20 20 20 20 3c 61 | ">function</a>.or.a...........<a |
| 9c3e0 | 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 |
| 9c400 | 73 22 3e 76 61 72 69 61 62 6c 65 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c | s">variable</a>.</li>.......</ul |
| 9c420 | 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 6e 20 63 | >.......<p>.......This.builtin.c |
| 9c440 | 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 3d 22 23 63 6f | an.be.called.from.a.<a.href="#co |
| 9c460 | 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 74 6f 20 63 6f | mptime">comptime</a>.block.to.co |
| 9c480 | 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 0a 20 20 20 20 | nditionally.export.symbols...... |
| 9c4a0 | 20 20 57 68 65 6e 20 3c 63 6f 64 65 3e 64 65 63 6c 61 72 61 74 69 6f 6e 3c 2f 63 6f 64 65 3e 20 | ..When.<code>declaration</code>. |
| 9c4c0 | 69 73 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 6c 69 6e 67 | is.a.function.with.the.C.calling |
| 9c4e0 | 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 6f 70 74 69 | .convention.and.......<code>opti |
| 9c500 | 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 53 74 72 6f | ons.linkage</code>.is.<code>Stro |
| 9c520 | 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 6e 74 20 74 6f | ng</code>,.this.is.equivalent.to |
| 9c540 | 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 3d 22 74 6f | .......the.<code><span.class="to |
| 9c560 | 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f | k-kw">export</span></code>.keywo |
| 9c580 | 72 64 20 75 73 65 64 20 6f 6e 20 61 20 66 75 6e 63 74 69 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 | rd.used.on.a.function:.......</p |
| 9c5a0 | 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 |
| 9c5c0 | 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 65 | s="zig-cap"><cite.class="file">e |
| 9c5e0 | 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 69 67 63 61 70 | xport_builtin.zig</cite></figcap |
| 9c600 | 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 |
| 9c620 | 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 |
| 9c640 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 78 70 6f 72 74 3c 2f 73 70 | .class="tok-builtin">@export</sp |
| 9c660 | 61 6e 3e 28 69 6e 74 65 72 6e 61 6c 4e 61 6d 65 2c 20 2e 7b 20 2e 6e 61 6d 65 20 3d 20 3c 73 70 | an>(internalName,..{..name.=.<sp |
| 9c680 | 61 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 |
| 9c6a0 | 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 6c 69 6e 6b 61 67 65 20 3d 20 2e 73 74 72 6f 6e 67 20 7d 29 | t;</span>,..linkage.=..strong.}) |
| 9c6c0 | 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 |
| 9c6e0 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 69 6e 74 65 72 6e 61 | an>.<span.class="tok-fn">interna |
| 9c700 | 6c 4e 61 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 6f 6b 2d | lName</span>().<span.class="tok- |
| 9c720 | 6b 77 22 3e 63 61 6c 6c 63 6f 6e 76 3c 2f 73 70 61 6e 3e 28 2e 43 29 20 3c 73 70 61 6e 20 63 6c | kw">callconv</span>(.C).<span.cl |
| 9c740 | 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 |
| 9c760 | 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 |
| 9c780 | 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</ |
| 9c7a0 | 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 |
| 9c7c0 | 20 62 75 69 6c 64 2d 6f 62 6a 20 65 78 70 6f 72 74 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b | .build-obj.export_builtin.zig</k |
| 9c7e0 | 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 20 20 | bd>.</samp></pre></figure>...... |
| 9c800 | 20 20 3c 70 3e 54 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 | ..<p>This.is.equivalent.to:</p>. |
| 9c820 | 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= |
| 9c840 | 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 65 78 70 | "zig-cap"><cite.class="file">exp |
| 9c860 | 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 67 3c | ort_builtin_equivalent_code.zig< |
| 9c880 | 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 |
| 9c8a0 | 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> |
| 9c8c0 | 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>. |
| 9c8e0 | 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 28 | <span.class="tok-fn">foo</span>( |
| 9c900 | 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 |
| 9c920 | 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 |
| 9c940 | 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 |
| 9c960 | 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> |
| 9c980 | 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 |
| 9c9a0 | 74 69 6e 5f 65 71 75 69 76 61 6c 65 6e 74 5f 63 6f 64 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 2f | tin_equivalent_code.zig</kbd>.</ |
| 9c9c0 | 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 |
| 9c9e0 | 6f 74 65 20 74 68 61 74 20 65 76 65 6e 20 77 68 65 6e 20 75 73 69 6e 67 20 3c 63 6f 64 65 3e 3c | ote.that.even.when.using.<code>< |
| 9ca00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e | span.class="tok-kw">export</span |
| 9ca20 | 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 20 3c 63 6f 64 65 3e 40 26 71 75 6f 74 3b 66 6f 6f 26 71 | ></code>,.the.<code>@"foo&q |
| 9ca40 | 75 6f 74 3b 3c 2f 63 6f 64 65 3e 20 73 79 6e 74 61 78 20 66 6f 72 0a 20 20 20 20 20 20 3c 61 20 | uot;</code>.syntax.for.......<a. |
| 9ca60 | 68 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 | href="#Identifiers">identifiers< |
| 9ca80 | 2f 61 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 63 68 6f 6f 73 65 20 61 6e 79 20 73 74 | /a>.can.be.used.to.choose.any.st |
| 9caa0 | 72 69 6e 67 20 66 6f 72 20 74 68 65 20 73 79 6d 62 6f 6c 20 6e 61 6d 65 3a 3c 2f 70 3e 0a 20 20 | ring.for.the.symbol.name:</p>... |
| 9cac0 | 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 |
| 9cae0 | 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 65 78 70 6f 72 | ig-cap"><cite.class="file">expor |
| 9cb00 | 74 5f 61 6e 79 5f 73 79 6d 62 6f 6c 5f 6e 61 6d 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 | t_any_symbol_name.zig</cite></fi |
| 9cb20 | 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= |
| 9cb40 | 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 |
| 9cb60 | 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 |
| 9cb80 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 40 26 71 75 6f 74 3b 41 20 66 75 6e 63 74 69 6f 6e 20 6e 61 6d | s="tok-fn">@"A.function.nam |
| 9cba0 | 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 26 71 | e.that.is.a.complete.sentence.&q |
| 9cbc0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | uot;</span>().<span.class="tok-t |
| 9cbe0 | 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> |
| 9cc00 | 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 |
| 9cc20 | 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 |
| 9cc40 | 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 6a | ><pre><samp>$.<kbd>zig.build-obj |
| 9cc60 | 20 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 2f 6b 62 64 | .export_any_symbol_name.zig</kbd |
| 9cc80 | 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 20 | >.</samp></pre></figure>........ |
| 9cca0 | 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 6c 6f 6f 6b 69 6e 67 20 61 74 20 74 68 65 20 72 65 | <p>.......When.looking.at.the.re |
| 9ccc0 | 73 75 6c 74 69 6e 67 20 6f 62 6a 65 63 74 2c 20 79 6f 75 20 63 61 6e 20 73 65 65 20 74 68 65 20 | sulting.object,.you.can.see.the. |
| 9cce0 | 73 79 6d 62 6f 6c 20 69 73 20 75 73 65 64 20 76 65 72 62 61 74 69 6d 3a 0a 20 20 20 20 20 20 3c | symbol.is.used.verbatim:.......< |
| 9cd00 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 30 30 30 30 30 30 30 30 30 30 30 | /p>.......<pre><code>00000000000 |
| 9cd20 | 30 30 31 66 30 20 54 20 41 20 66 75 6e 63 74 69 6f 6e 20 6e 61 6d 65 20 74 68 61 74 20 69 73 20 | 001f0.T.A.function.name.that.is. |
| 9cd40 | 61 20 63 6f 6d 70 6c 65 74 65 20 73 65 6e 74 65 6e 63 65 2e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | a.complete.sentence.</code></pre |
| 9cd60 | 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 |
| 9cd80 | 3e 3c 61 20 68 72 65 66 3d 22 23 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 61 72 79 | ><a.href="#Exporting-a-C-Library |
| 9cda0 | 22 3e 45 78 70 6f 72 74 69 6e 67 20 61 20 43 20 4c 69 62 72 61 72 79 3c 2f 61 3e 3c 2f 6c 69 3e | ">Exporting.a.C.Library</a></li> |
| 9cdc0 | 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 65 78 | .</ul>................<h3.id="ex |
| 9cde0 | 74 65 72 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 74 65 72 6e 22 3e 40 65 78 74 | tern"><a.href="#toc-extern">@ext |
| 9ce00 | 65 72 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 | ern</a>.<a.class="hdr".href="#ex |
| 9ce20 | 74 65 72 6e 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 | tern">..</a></h3>........<pre><c |
| 9ce40 | 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 65 | ode><span.class="tok-builtin">@e |
| 9ce60 | 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 28 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | xtern</span>(T:.<span.class="tok |
| 9ce80 | 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 73 3d | -type">type</span>,.<span.class= |
| 9cea0 | 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 74 69 6f 6e 73 | "tok-kw">comptime</span>.options |
| 9cec0 | 3a 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 45 78 74 65 72 6e 4f 70 74 69 6f 6e 73 29 20 54 3c 2f | :.std.builtin.ExternOptions).T</ |
| 9cee0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 72 65 61 | code></pre>.......<p>.......Crea |
| 9cf00 | 74 65 73 20 61 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 61 6e 20 65 78 74 65 72 6e 61 6c 20 73 | tes.a.reference.to.an.external.s |
| 9cf20 | 79 6d 62 6f 6c 20 69 6e 20 74 68 65 20 6f 75 74 70 75 74 20 6f 62 6a 65 63 74 20 66 69 6c 65 2e | ymbol.in.the.output.object.file. |
| 9cf40 | 0a 20 20 20 20 20 20 54 20 6d 75 73 74 20 62 65 20 61 20 70 6f 69 6e 74 65 72 20 74 79 70 65 2e | .......T.must.be.a.pointer.type. |
| 9cf60 | 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:</ |
| 9cf80 | 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 78 70 6f 72 74 22 3e 40 65 78 | p><ul>.<li><a.href="#export">@ex |
| 9cfa0 | 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 0a 0a 20 20 20 | port</a></li>.</ul>............. |
| 9cfc0 | 20 20 20 3c 68 33 20 69 64 3d 22 66 65 6e 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | ...<h3.id="fence"><a.href="#toc- |
| 9cfe0 | 66 65 6e 63 65 22 3e 40 66 65 6e 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | fence">@fence</a>.<a.class="hdr" |
| 9d000 | 20 68 72 65 66 3d 22 23 66 65 6e 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 | .href="#fence">..</a></h3>...... |
| 9d020 | 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 |
| 9d040 | 69 6c 74 69 6e 22 3e 40 66 65 6e 63 65 3c 2f 73 70 61 6e 3e 28 6f 72 64 65 72 3a 20 41 74 6f 6d | iltin">@fence</span>(order:.Atom |
| 9d060 | 69 63 4f 72 64 65 72 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 | icOrder).<span.class="tok-type"> |
| 9d080 | 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 20 20 20 20 3c | void</span></code></pre>.......< |
| 9d0a0 | 70 3e 0a 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 3e 66 65 6e 63 65 3c 2f 63 6f 64 65 3e 20 | p>.......The.<code>fence</code>. |
| 9d0c0 | 66 75 6e 63 74 69 6f 6e 20 69 73 20 75 73 65 64 20 74 6f 20 69 6e 74 72 6f 64 75 63 65 20 68 61 | function.is.used.to.introduce.ha |
| 9d0e0 | 70 70 65 6e 73 2d 62 65 66 6f 72 65 20 65 64 67 65 73 20 62 65 74 77 65 65 6e 20 6f 70 65 72 61 | ppens-before.edges.between.opera |
| 9d100 | 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 3c 63 6f 64 65 | tions........</p>.......<p><code |
| 9d120 | 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 |
| 9d140 | 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 |
| 9d160 | 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 |
| 9d180 | 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 |
| 9d1a0 | 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>.</ |
| 9d1c0 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c | p>.......<p>See.also:</p><ul>.<l |
| 9d1e0 | 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 40 61 74 6f 6d 69 63 | i><a.href="#atomicStore">@atomic |
| 9d200 | 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 66 3d 22 23 61 74 6f | Store</a></li>.<li><a.href="#ato |
| 9d220 | 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 3c 6c | micLoad">@atomicLoad</a></li>.<l |
| 9d240 | 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 74 6f 6d 69 63 52 6d | i><a.href="#atomicRmw">@atomicRm |
| 9d260 | 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 63 6d 70 78 63 68 67 | w</a></li>.<li><a.href="#cmpxchg |
| 9d280 | 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 3c 6c 69 3e | Weak">@cmpxchgWeak</a></li>.<li> |
| 9d2a0 | 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 |
| 9d2c0 | 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>.......... |
| 9d2e0 | 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 72 65 66 3d 22 23 74 | ......<h3.id="field"><a.href="#t |
| 9d300 | 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 6c 61 73 73 3d 22 68 | oc-field">@field</a>.<a.class="h |
| 9d320 | 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 2f 68 33 3e 0a 0a 20 | dr".href="#field">..</a></h3>... |
| 9d340 | 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 |
| 9d360 | 2d 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 3c 2f 73 70 61 6e 3e 28 6c 68 73 3a 20 3c 73 70 | -builtin">@field</span>(lhs:.<sp |
| 9d380 | 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> |
| 9d3a0 | 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 3c | ,.<span.class="tok-kw">comptime< |
| 9d3c0 | 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 73 | /span>.field_name:.[]<span.class |
| 9d3e0 | 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 |
| 9d400 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 28 66 69 65 6c 64 29 | ss="tok-type">u8</span>).(field) |
| 9d420 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 50 65 72 66 6f 72 6d 73 20 | </code></pre>.......<p>Performs. |
| 9d440 | 66 69 65 6c 64 20 61 63 63 65 73 73 20 62 79 20 61 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 73 | field.access.by.a.compile-time.s |
| 9d460 | 74 72 69 6e 67 2e 20 57 6f 72 6b 73 20 6f 6e 20 62 6f 74 68 20 66 69 65 6c 64 73 20 61 6e 64 20 | tring..Works.on.both.fields.and. |
| 9d480 | 64 65 63 6c 61 72 61 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | declarations........</p>.......< |
| 9d4a0 | 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 |
| 9d4c0 | 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 66 69 65 6c 64 | p"><cite.class="file">test_field |
| 9d4e0 | 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 6e 3e | _builtin.zig</cite></figcaption> |
| 9d500 | 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"> |
| 9d520 | 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=" |
| 9d540 | 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 |
| 9d560 | 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" |
| 9d580 | 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" |
| 9d5a0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | >const</span>.Point.=.<span.clas |
| 9d5c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 78 | s="tok-kw">struct</span>.{.....x |
| 9d5e0 | 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 |
| 9d600 | 61 6e 3e 2c 0a 20 20 20 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | an>,.....y:.<span.class="tok-typ |
| 9d620 | 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 20 63 6c 61 73 73 3d | e">u32</span>,......<span.class= |
| 9d640 | 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= |
| 9d660 | 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 70 61 6e 20 63 6c 61 | "tok-kw">var</span>.z:.<span.cla |
| 9d680 | 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 |
| 9d6a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3b | .class="tok-number">1</span>;.}; |
| 9d6c0 | 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 |
| 9d6e0 | 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 66 | n>.<span.class="tok-str">"f |
| 9d700 | 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 74 3b 3c 2f 73 70 61 | ield.access.by.string"</spa |
| 9d720 | 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 |
| 9d740 | 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. |
| 9d760 | 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 74 6f 6b 2d 6b 77 22 | expect;.....<span.class="tok-kw" |
| 9d780 | 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 20 3d 20 3c 73 70 61 | >var</span>.p.=.Point{..x.=.<spa |
| 9d7a0 | 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 20 2e | n.class="tok-number">0</span>,.. |
| 9d7c0 | 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 30 3c 2f | y.=.<span.class="tok-number">0</ |
| 9d7e0 | 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | span>.};......<span.class="tok-b |
| 9d800 | 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 |
| 9d820 | 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 |
| 9d840 | 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 75 6d 62 65 72 22 3e | an>).=.<span.class="tok-number"> |
| 9d860 | 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 6f 6b 2d 62 | 4</span>;.....<span.class="tok-b |
| 9d880 | 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 |
| 9d8a0 | 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 6f 74 3b 3c 2f 73 70 | lass="tok-str">"y"</sp |
| 9d8c0 | 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 75 69 6c 74 69 6e 22 | an>).=.<span.class="tok-builtin" |
| 9d8e0 | 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 6c 61 73 73 3d 22 74 | >@field</span>(p,.<span.class="t |
| 9d900 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 78 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 2b 20 | ok-str">"x"</span>).+. |
| 9d920 | 3c 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 |
| 9d940 | 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 | >;......<span.class="tok-kw">try |
| 9d960 | 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- |
| 9d980 | 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 3c 2f 73 70 61 6e 3e 28 70 2c 20 3c 73 70 61 6e 20 | builtin">@field</span>(p,.<span. |
| 9d9a0 | 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 73 | class="tok-str">"x"</s |
| 9d9c0 | 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | pan>).==.<span.class="tok-number |
| 9d9e0 | 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 22 74 6f | ">4</span>);.....<span.class="to |
| 9da00 | 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 |
| 9da20 | 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>( |
| 9da40 | 70 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 79 | p,.<span.class="tok-str">"y |
| 9da60 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | "</span>).==.<span.class="t |
| 9da80 | 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 3c 73 70 61 6e 20 63 | ok-number">5</span>);.}..<span.c |
| 9daa0 | 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. |
| 9dac0 | 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 6c 20 61 63 63 65 73 | class="tok-str">"decl.acces |
| 9dae0 | 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 7b 0a 20 20 20 20 3c | s.by.string"</span>.{.....< |
| 9db00 | 73 70 61 6e 20 63 6c 61 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> |
| 9db20 | 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 20 | .expect.=.std.testing.expect;... |
| 9db40 | 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 |
| 9db60 | 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 |
| 9db80 | 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 3c 73 70 61 6e 20 63 | in">@field</span>(Point,.<span.c |
| 9dba0 | 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 6f 74 3b 3c 2f 73 70 | lass="tok-str">"z"</sp |
| 9dbc0 | 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" |
| 9dbe0 | 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 61 73 73 3d 22 74 6f | >1</span>);......<span.class="to |
| 9dc00 | 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,. |
| 9dc20 | 3c 73 70 61 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 |
| 9dc40 | 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 |
| 9dc60 | 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 |
| 9dc80 | 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 |
| 9dca0 | 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 2f 73 70 | n.class="tok-builtin">@field</sp |
| 9dcc0 | 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 6f 6b 2d 73 74 72 22 | an>(Point,.<span.class="tok-str" |
| 9dce0 | 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 20 3c 73 70 61 6e 20 | >"z"</span>).==.<span. |
| 9dd00 | 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 7d 3c | class="tok-number">2</span>);.}< |
| 9dd20 | 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 |
| 9dd40 | 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 |
| 9dd60 | 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 |
| 9dd80 | 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 6e 2e 7a 69 67 3c 2f | ig.test.test_field_builtin.zig</ |
| 9dda0 | 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 69 6e 2e 74 65 73 74 | kbd>.1/2.test_field_builtin.test |
| 9ddc0 | 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 2e 4f 4b 0a 32 2f 32 | .field.access.by.string...OK.2/2 |
| 9dde0 | 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 64 65 63 6c 20 61 63 | .test_field_builtin.test.decl.ac |
| 9de00 | 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 20 74 65 73 74 73 20 | cess.by.string...OK.All.2.tests. |
| 9de20 | 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>.. |
| 9de40 | 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 65 6c 64 50 61 72 65 | ...............<h3.id="fieldPare |
| 9de60 | 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 64 50 61 72 65 6e 74 | ntPtr"><a.href="#toc-fieldParent |
| 9de80 | 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 3c 61 20 63 6c 61 73 | Ptr">@fieldParentPtr</a>.<a.clas |
| 9dea0 | 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 74 50 74 72 22 3e c2 | s="hdr".href="#fieldParentPtr">. |
| 9dec0 | 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 |
| 9dee0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 50 61 72 | an.class="tok-builtin">@fieldPar |
| 9df00 | 65 6e 74 50 74 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | entPtr</span>(<span.class="tok-k |
| 9df20 | 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 65 3a 20 5b | w">comptime</span>.field_name:.[ |
| 9df40 | 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 |
| 9df60 | 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 |
| 9df80 | 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 20 63 6c 61 73 73 3d | an>,.field_ptr:.*T).<span.class= |
| 9dfa0 | 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 3e 3c 2f | "tok-kw">anytype</span></code></ |
| 9dfc0 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 47 69 76 65 6e 20 61 20 70 6f 69 | pre>.......<p>.......Given.a.poi |
| 9dfe0 | 6e 74 65 72 20 74 6f 20 61 20 66 69 65 6c 64 2c 20 72 65 74 75 72 6e 73 20 74 68 65 20 62 61 73 | nter.to.a.field,.returns.the.bas |
| 9e000 | 65 20 70 6f 69 6e 74 65 72 20 6f 66 20 61 20 73 74 72 75 63 74 2e 0a 20 20 20 20 20 20 3c 2f 70 | e.pointer.of.a.struct........</p |
| 9e020 | 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 61 73 | >...............<h3.id="floatCas |
| 9e040 | 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 6c 6f 61 74 43 61 73 74 22 3e 40 66 6c 6f | t"><a.href="#toc-floatCast">@flo |
| 9e060 | 61 74 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | atCast</a>.<a.class="hdr".href=" |
| 9e080 | 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 20 3c | #floatCast">..</a></h3>........< |
| 9e0a0 | 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 |
| 9e0c0 | 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 73 70 | in">@floatCast</span>(value:.<sp |
| 9e0e0 | 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> |
| 9e100 | 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 3c 2f | ).<span.class="tok-kw">anytype</ |
| 9e120 | 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>.... |
| 9e140 | 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 20 74 | ...Convert.from.one.float.type.t |
| 9e160 | 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 62 75 | o.another..This.cast.is.safe,.bu |
| 9e180 | 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 76 61 | t.may.cause.the.......numeric.va |
| 9e1a0 | 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 75 72 | lue.to.lose.precision..The.retur |
| 9e1c0 | 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 74 79 | n.type.is.the.inferred.result.ty |
| 9e1e0 | 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 68 33 | pe........</p>...............<h3 |
| 9e200 | 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 6f 63 | .id="floatFromInt"><a.href="#toc |
| 9e220 | 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 61 3e | -floatFromInt">@floatFromInt</a> |
| 9e240 | 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 6f 6d | .<a.class="hdr".href="#floatFrom |
| 9e260 | 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 63 6f | Int">..</a></h3>........<pre><co |
| 9e280 | 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 6c | de><span.class="tok-builtin">@fl |
| 9e2a0 | 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 6c 61 | oatFromInt</span>(int:.<span.cla |
| 9e2c0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 | ss="tok-kw">anytype</span>).<spa |
| 9e2e0 | 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 3c | n.class="tok-kw">anytype</span>< |
| 9e300 | 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 6f 6e | /code></pre>.......<p>.......Con |
| 9e320 | 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 74 20 | verts.an.integer.to.the.closest. |
| 9e340 | 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 20 54 | floating.point.representation..T |
| 9e360 | 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 20 72 | he.return.type.is.the.inferred.r |
| 9e380 | 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 6f 74 | esult.type.....To.convert.the.ot |
| 9e3a0 | 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 46 6c | her.way,.use.<a.href="#intFromFl |
| 9e3c0 | 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 70 65 | oat">@intFromFloat</a>..This.ope |
| 9e3e0 | 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 76 61 | ration.is.legal.......for.all.va |
| 9e400 | 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 20 20 | lues.of.all.integer.types....... |
| 9e420 | 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 61 6d | .</p>...............<h3.id="fram |
| 9e440 | 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 64 64 | eAddress"><a.href="#toc-frameAdd |
| 9e460 | 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 73 73 | ress">@frameAddress</a>.<a.class |
| 9e480 | 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 3c 2f | ="hdr".href="#frameAddress">..</ |
| 9e4a0 | 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. |
| 9e4c0 | 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 65 73 | class="tok-builtin">@frameAddres |
| 9e4e0 | 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 70 65 | s</span>().<span.class="tok-type |
| 9e500 | 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 20 20 | ">usize</span></code></pre>..... |
| 9e520 | 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 6e | ..<p>.......This.function.return |
| 9e540 | 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 65 6e | s.the.base.pointer.of.the.curren |
| 9e560 | 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 20 20 | t.stack.frame........</p>....... |
| 9e580 | 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 74 68 | <p>.......The.implications.of.th |
| 9e5a0 | 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 20 63 | is.are.target-specific.and.not.c |
| 9e5c0 | 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 74 66 | onsistent.across.all.......platf |
| 9e5e0 | 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 74 20 | orms..The.frame.address.may.not. |
| 9e600 | 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 75 65 | be.available.in.release.mode.due |
| 9e620 | 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 69 6f | .to.......aggressive.optimizatio |
| 9e640 | 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 | ns........</p>.......<p>.......T |
| 9e660 | 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 6f 6e 6c 79 20 76 61 6c 69 64 20 77 69 74 68 69 | his.function.is.only.valid.withi |
| 9e680 | 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 20 20 | n.function.scope........</p>.... |
| 9e6a0 | 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 20 68 | ...........<h3.id="hasDecl"><a.h |
| 9e6c0 | 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 3e 20 | ref="#toc-hasDecl">@hasDecl</a>. |
| 9e6e0 | 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 3e c2 | <a.class="hdr".href="#hasDecl">. |
| 9e700 | 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 |
| 9e720 | 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 6c 3c | an.class="tok-builtin">@hasDecl< |
| 9e740 | 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 |
| 9e760 | 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 6c 61 | time</span>.Container:.<span.cla |
| 9e780 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | ss="tok-type">type</span>,.<span |
| 9e7a0 | 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>. |
| 9e7c0 | 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 |
| 9e7e0 | 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" |
| 9e800 | 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 70 | >u8</span>).<span.class="tok-typ |
| 9e820 | 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 20 20 | e">bool</span></code></pre>..... |
| 9e840 | 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 20 6e | ..<p>.......Returns.whether.or.n |
| 9e860 | 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 74 61 | ot.a.<a.href="#Containers">conta |
| 9e880 | 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 20 20 | iner</a>.has.a.declaration...... |
| 9e8a0 | 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 20 20 | .matching.<code>name</code>..... |
| 9e8c0 | 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 |
| 9e8e0 | 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 |
| 9e900 | 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 2f 63 | ile">test_hasDecl_builtin.zig</c |
| 9e920 | 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 |
| 9e940 | 6e 20 63 6c 61 73 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 |
| 9e960 | 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 |
| 9e980 | 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 |
| 9e9a0 | 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 |
| 9e9c0 | 6e 20 63 6c 61 73 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 |
| 9e9e0 | 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 |
| 9ea00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f | n.class="tok-kw">const</span>.Fo |
| 9ea20 | 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 74 3c | o.=.<span.class="tok-kw">struct< |
| 9ea40 | 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 3d 22 | /span>.{.....nope:.<span.class=" |
| 9ea60 | 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 61 6e | tok-type">i32</span>,......<span |
| 9ea80 | 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 |
| 9eaa0 | 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 68 20 | .class="tok-kw">var</span>.blah. |
| 9eac0 | 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 78 78 | =.<span.class="tok-str">"xx |
| 9eae0 | 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 73 3d | x"</span>;.....<span.class= |
| 9eb00 | 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 61 6e | "tok-kw">const</span>.hi.=.<span |
| 9eb20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3b | .class="tok-number">1</span>;.}; |
| 9eb40 | 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 |
| 9eb60 | 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">"@ |
| 9eb80 | 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 61 6e | hasDecl"</span>.{.....<span |
| 9eba0 | 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 |
| 9ebc0 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 68 61 73 | t(<span.class="tok-builtin">@has |
| 9ebe0 | 44 65 63 6c 3c 2f 73 70 61 6e 3e 28 46 6f 6f 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | Decl</span>(Foo,.<span.class="to |
| 9ec00 | 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 29 29 | k-str">"blah"</span>)) |
| 9ec20 | 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" |
| 9ec40 | 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 65 2c | >//.Even.though.`hi`.is.private, |
| 9ec60 | 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 20 74 | .@hasDecl.returns.true.because.t |
| 9ec80 | 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 6c 61 | his.test.is</span>.....<span.cla |
| 9eca0 | 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 65 20 | ss="tok-comment">//.in.the.same. |
| 9ecc0 | 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 74 75 | file.scope.as.Foo..It.would.retu |
| 9ece0 | 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 73 70 | rn.false.if.Foo.was.declared</sp |
| 9ed00 | 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 |
| 9ed20 | 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 6e 3e | ">//.in.a.different.file.</span> |
| 9ed40 | 0a 20 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 |
| 9ed60 | 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 |
| 9ed80 | 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 61 6e | ltin">@hasDecl</span>(Foo,.<span |
| 9eda0 | 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 3c | .class="tok-str">"hi"< |
| 9edc0 | 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 6b 2d | /span>));......<span.class="tok- |
| 9ede0 | 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 63 6c | comment">//.@hasDecl.is.for.decl |
| 9ee00 | 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 20 20 | arations;.not.fields.</span>.... |
| 9ee20 | 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> |
| 9ee40 | 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 74 69 | .expect(!<span.class="tok-builti |
| 9ee60 | 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 63 6c | n">@hasDecl</span>(Foo,.<span.cl |
| 9ee80 | 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 3c 2f | ass="tok-str">"nope"</ |
| 9eea0 | 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 |
| 9eec0 | 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 73 73 | ">try</span>.expect(!<span.class |
| 9eee0 | 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 28 46 | ="tok-builtin">@hasDecl</span>(F |
| 9ef00 | 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 74 3b | oo,.<span.class="tok-str">" |
| 9ef20 | 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 64 65 | nope1234"</span>));.}</code |
| 9ef40 | 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 |
| 9ef60 | 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 |
| 9ef80 | 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 |
| 9efa0 | 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 62 64 | st.test_hasDecl_builtin.zig</kbd |
| 9efc0 | 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 74 2e | >.1/1.test_hasDecl_builtin.test. |
| 9efe0 | 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 65 64 | @hasDecl...OK.All.1.tests.passed |
| 9f000 | 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>........ |
| 9f020 | 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 |
| 9f040 | 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 3e 0a | ="#hasField">@hasField</a></li>. |
| 9f060 | 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 61 73 | </ul>................<h3.id="has |
| 9f080 | 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 3e 40 | Field"><a.href="#toc-hasField">@ |
| 9f0a0 | 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 65 66 | hasField</a>.<a.class="hdr".href |
| 9f0c0 | 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 20 20 | ="#hasField">..</a></h3>........ |
| 9f0e0 | 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 |
| 9f100 | 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 61 73 | tin">@hasField</span>(<span.clas |
| 9f120 | 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 74 61 | s="tok-kw">comptime</span>.Conta |
| 9f140 | 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 79 70 | iner:.<span.class="tok-type">typ |
| 9f160 | 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 |
| 9f180 | 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 6c 61 | omptime</span>.name:.[]<span.cla |
| 9f1a0 | 73 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 |
| 9f1c0 | 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 6e | lass="tok-type">u8</span>).<span |
| 9f1e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 | .class="tok-type">bool</span></c |
| 9f200 | 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 65 74 | ode></pre>.......<p>Returns.whet |
| 9f220 | 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 2c 20 | her.the.field.name.of.a.struct,. |
| 9f240 | 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 20 20 | union,.or.enum.exists.</p>...... |
| 9f260 | 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 70 69 | .<p>.......The.result.is.a.compi |
| 9f280 | 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 20 20 | le.time.constant........</p>.... |
| 9f2a0 | 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 64 65 | ...<p>.......It.does.not.include |
| 9f2c0 | 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 74 61 | .functions,.variables,.or.consta |
| 9f2e0 | 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 6c 73 | nts........</p>.......<p>See.als |
| 9f300 | 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 63 6c | o:</p><ul>.<li><a.href="#hasDecl |
| 9f320 | 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 20 20 | ">@hasDecl</a></li>.</ul>....... |
| 9f340 | 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 65 66 | .........<h3.id="import"><a.href |
| 9f360 | 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 63 6c | ="#toc-import">@import</a>.<a.cl |
| 9f380 | 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 3e 3c | ass="hdr".href="#import">..</a>< |
| 9f3a0 | 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 |
| 9f3c0 | 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>( |
| 9f3e0 | 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 |
| 9f400 | 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 |
| 9f420 | 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- |
| 9f440 | 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 |
| 9f460 | 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> |
| 9f480 | 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 66 | .......<p>.......This.function.f |
| 9f4a0 | 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 74 6f | inds.a.zig.file.corresponding.to |
| 9f4c0 | 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 20 74 | .<code>path</code>.and.adds.it.t |
| 9f4e0 | 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 74 20 | o.the.build,.......if.it.is.not. |
| 9f500 | 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 20 20 | already.added........</p>....... |
| 9f520 | 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 20 69 | <p>.......Zig.source.files.are.i |
| 9f540 | 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 20 65 | mplicitly.structs,.with.a.name.e |
| 9f560 | 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 74 68 | qual.to.the.file's.basename.with |
| 9f580 | 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 2e 20 | .the.extension.......truncated.. |
| 9f5a0 | 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"> |
| 9f5c0 | 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 74 68 | @import</span></code>.returns.th |
| 9f5e0 | 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 20 74 | e.struct.type.corresponding.to.t |
| 9f600 | 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 20 20 | he.file........</p>.......<p>... |
| 9f620 | 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 65 20 | ....Declarations.which.have.the. |
| 9f640 | 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</ |
| 9f660 | 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 66 65 | span></code>.keyword.may.be.refe |
| 9f680 | 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 73 6f | renced.from.a.different.......so |
| 9f6a0 | 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 65 20 | urce.file.than.the.one.they.are. |
| 9f6c0 | 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 3c 70 | declared.in........</p>.......<p |
| 9f6e0 | 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 62 65 | >.......<code>path</code>.can.be |
| 9f700 | 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 74 68 | .a.relative.path.or.it.can.be.th |
| 9f720 | 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 69 74 | e.name.of.a.package........If.it |
| 9f740 | 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 61 74 | .is.a.relative.path,.it.is.relat |
| 9f760 | 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 74 68 | ive.to.the.file.that.contains.th |
| 9f780 | 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 |
| 9f7a0 | 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 66 75 | ">@import</span></code>.......fu |
| 9f7c0 | 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 3c 70 | nction.call........</p>.......<p |
| 9f7e0 | 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 20 61 | >.......The.following.packages.a |
| 9f800 | 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 3e 0a | re.always.available:.......</p>. |
| 9f820 | 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 3c | ......<ul>...........<li><code>< |
| 9f840 | 73 70 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 |
| 9f860 | 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 |
| 9f880 | 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 20 5a | uot;std"</span>)</code>.-.Z |
| 9f8a0 | 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 20 20 | ig.Standard.Library</li>........ |
| 9f8c0 | 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 62 75 | ...<li><code><span.class="tok-bu |
| 9f8e0 | 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 |
| 9f900 | 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"< |
| 9f920 | 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 69 63 | /span>)</code>.-.Target-specific |
| 9f940 | 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 20 63 | .information...............The.c |
| 9f960 | 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 68 6f | ommand.<code>zig.build-exe.--sho |
| 9f980 | 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 6f 75 | w-builtin</code>.outputs.the.sou |
| 9f9a0 | 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 20 20 | rce.to.stdout.for.reference..... |
| 9f9c0 | 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 64 65 | .......</li>...........<li><code |
| 9f9e0 | 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 |
| 9fa00 | 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"> |
| 9fa20 | 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 3e 20 | "root"</span>)</code>. |
| 9fa40 | 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 20 20 | -.Root.source.file.............. |
| 9fa60 | 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 6e 2e | .This.is.usually.<code>src/main. |
| 9fa80 | 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 20 66 | zig</code>.but.depends.on.what.f |
| 9faa0 | 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 20 20 | ile.is.built............</li>... |
| 9fac0 | 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 70 3e | ....</ul>.......<p>See.also:</p> |
| 9fae0 | 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 69 61 | <ul>.<li><a.href="#Compile-Varia |
| 9fb00 | 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 69 3e | bles">Compile.Variables</a></li> |
| 9fb20 | 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 65 64 | .<li><a.href="#embedFile">@embed |
| 9fb40 | 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 20 20 | File</a></li>.</ul>............. |
| 9fb60 | 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 3d 22 | ...<h3.id="inComptime"><a.href=" |
| 9fb80 | 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 61 3e | #toc-inComptime">@inComptime</a> |
| 9fba0 | 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 69 6d | .<a.class="hdr".href="#inComptim |
| 9fbc0 | 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 |
| 9fbe0 | 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 43 6f | ><span.class="tok-builtin">@inCo |
| 9fc00 | 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 6f 6b | mptime</span>().<span.class="tok |
| 9fc20 | 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 3e 0a | -type">bool</span></code></pre>. |
| 9fc40 | 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 72 20 | ......<p>.......Returns.whether. |
| 9fc60 | 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 3e 3c | the.builtin.was.run.in.a.<code>< |
| 9fc80 | 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 |
| 9fca0 | 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 20 69 | an></code>.context..The.result.i |
| 9fcc0 | 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 20 20 | s.a.compile-time.constant....... |
| 9fce0 | 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 20 62 | .</p>.......<p>.......This.can.b |
| 9fd00 | 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 20 63 | e.used.to.provide.alternative,.c |
| 9fd20 | 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 6e 73 | omptime-friendly.implementations |
| 9fd40 | 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 65 20 | .of.functions..It.should.not.be. |
| 9fd60 | 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 20 63 | used,.for.instance,.to.exclude.c |
| 9fd80 | 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 61 6c | ertain.functions.from.being.eval |
| 9fda0 | 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 20 20 | uated.at.comptime........</p>... |
| 9fdc0 | 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. |
| 9fde0 | 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 2f 6c | href="#comptime">comptime</a></l |
| 9fe00 | 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=" |
| 9fe20 | 69 6e 74 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 74 43 61 73 74 22 3e | intCast"><a.href="#toc-intCast"> |
| 9fe40 | 40 69 6e 74 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | @intCast</a>.<a.class="hdr".href |
| 9fe60 | 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 20 3c | ="#intCast">..</a></h3>........< |
| 9fe80 | 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 |
| 9fea0 | 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 20 63 | in">@intCast</span>(int:.<span.c |
| 9fec0 | 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 |
| 9fee0 | 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 |
| 9ff00 | 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 |
| 9ff20 | 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 69 6e | onverts.an.integer.to.another.in |
| 9ff40 | 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 75 6d | teger.while.keeping.the.same.num |
| 9ff60 | 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 70 65 | erical.value.....The.return.type |
| 9ff80 | 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 20 20 | .is.the.inferred.result.type.... |
| 9ffa0 | 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 6d 62 | ....Attempting.to.convert.a.numb |
| 9ffc0 | 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 65 20 | er.which.is.out.of.range.of.the. |
| 9ffe0 | 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 20 20 | destination.type.results.in..... |
| a0000 | 20 20 73 61 66 65 74 79 2d 70 72 6f 74 65 63 74 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 | ..safety-protected.<a.href="#Und |
| a0020 | 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 | efined-Behavior">Undefined.Behav |
| a0040 | 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 | ior</a>........</p>.......<figur |
| a0060 | 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 |
| a0080 | 69 74 65 20 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 | ite.class="file">test_intCast_bu |
| a00a0 | 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 70 72 | iltin.zig</cite></figcaption><pr |
| a00c0 | 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 |
| a00e0 | 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">& |
| a0100 | 71 75 6f 74 3b 69 6e 74 65 67 65 72 20 63 61 73 74 20 70 61 6e 69 63 26 71 75 6f 74 3b 3c 2f 73 | quot;integer.cast.panic"</s |
| a0120 | 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"> |
| a0140 | 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | var</span>.a:.<span.class="tok-t |
| a0160 | 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 73 73 3d 22 74 | ype">u16</span>.=.<span.class="t |
| a0180 | 6f 6b 2d 6e 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 | ok-number">0xabcd</span>;.<span. |
| a01a0 | 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 |
| a01c0 | 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 61 3b 0a 20 20 20 20 | nown</span>....._.=.&a;..... |
| a01e0 | 3c 73 70 61 6e 20 63 6c 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 |
| a0200 | 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 38 3c 2f | >.b:.<span.class="tok-type">u8</ |
| a0220 | 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 6e | span>.=.<span.class="tok-builtin |
| a0240 | 22 3e 40 69 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 | ">@intCast</span>(a);....._.=.b; |
| a0260 | 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> |
| a0280 | 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 |
| a02a0 | 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 |
| a02c0 | 64 3e 7a 69 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 | d>zig.test.test_intCast_builtin. |
| a02e0 | 7a 69 67 3c 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 | zig</kbd>.1/1.test_intCast_built |
| a0300 | 69 6e 2e 74 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 | in.test.integer.cast.panic...thr |
| a0320 | 65 61 64 20 33 35 37 33 38 32 30 20 70 61 6e 69 63 3a 20 69 6e 74 65 67 65 72 20 63 61 73 74 20 | ead.3573820.panic:.integer.cast. |
| a0340 | 74 72 75 6e 63 61 74 65 64 20 62 69 74 73 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | truncated.bits.<span.class="sgr- |
| a0360 | 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 | 1m">/home/andy/src/zig/doc/langr |
| a0380 | 65 66 2f 74 65 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 | ef/test_intCast_builtin.zig:4:19 |
| a03a0 | 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 |
| a03c0 | 31 30 33 63 65 36 62 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 | 103ce6b.in.test.integer.cast.pan |
| a03e0 | 69 63 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 62 3a 20 75 38 | ic.(test)</span>.....const.b:.u8 |
| a0400 | 20 3d 20 40 69 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 | .=.@intCast(a);................. |
| a0420 | 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> |
| a0440 | 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 |
| a0460 | 2f 73 72 63 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 | /src/zig/lib/compiler/test_runne |
| a0480 | 72 2e 7a 69 67 3a 31 35 37 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:157:25</span>:.<span.class |
| a04a0 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 38 32 39 30 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 | ="sgr-2m">0x1048290.in.mainTermi |
| a04c0 | 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 |
| a04e0 | 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()).|_|.{............. |
| a0500 | 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 |
| a0520 | 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"> |
| a0540 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f | /home/andy/src/zig/lib/compiler/ |
| a0560 | 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 33 37 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | test_runner.zig:37:28</span>:.<s |
| a0580 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 65 32 34 62 20 69 6e 20 | pan.class="sgr-2m">0x103e24b.in. |
| a05a0 | 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 |
| a05c0 | 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();............... |
| a05e0 | 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 |
| a0600 | 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" |
| a0620 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 | >/home/andy/src/zig/lib/std/star |
| a0640 | 74 2e 7a 69 67 3a 35 31 34 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:514:22</span>:.<span.class |
| a0660 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 64 33 38 39 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c | ="sgr-2m">0x103d389.in.posixCall |
| a0680 | 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>....... |
| a06a0 | 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();.............. |
| a06c0 | 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">^< |
| a06e0 | 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 |
| a0700 | 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 | e/andy/src/zig/lib/std/start.zig |
| a0720 | 3a 32 36 36 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 | :266:5</span>:.<span.class="sgr- |
| a0740 | 32 6d 22 3e 30 78 31 30 33 63 65 66 31 20 69 6e 20 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f | 2m">0x103cef1.in._start.(test)</ |
| a0760 | 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.( |
| a0780 | 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=" |
| a07a0 | 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 |
| a07c0 | 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 |
| a07e0 | 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 |
| a0800 | 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 |
| a0820 | 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 73 72 63 2f 7a 69 | mmand.crashed:./home/andy/src/zi |
| a0840 | 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 61 33 62 36 35 33 39 34 33 37 64 35 35 38 30 30 65 | g/.zig-cache/o/a3b6539437d55800e |
| a0860 | 38 39 31 65 36 32 30 39 30 37 30 30 33 35 31 2f 74 65 73 74 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 | 891e62090700351/test.</samp></pr |
| a0880 | 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 6f 20 | e></figure>........<p>.......To. |
| a08a0 | 74 72 75 6e 63 61 74 65 20 74 68 65 20 73 69 67 6e 69 66 69 63 61 6e 74 20 62 69 74 73 20 6f 66 | truncate.the.significant.bits.of |
| a08c0 | 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 20 74 68 65 20 64 65 | .a.number.out.of.range.of.the.de |
| a08e0 | 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 74 72 | stination.type,.use.<a.href="#tr |
| a0900 | 75 6e 63 61 74 65 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | uncate">@truncate</a>........</p |
| a0920 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f | >.......<p>.......If.<code>T</co |
| a0940 | 64 65 3e 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 74 79 | de>.is.<code><span.class="tok-ty |
| a0960 | 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a | pe">comptime_int</span></code>,. |
| a0980 | 20 20 20 20 20 20 74 68 65 6e 20 74 68 69 73 20 69 73 20 73 65 6d 61 6e 74 69 63 61 6c 6c 79 20 | ......then.this.is.semantically. |
| a09a0 | 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 | equivalent.to.<a.href="#Type-Coe |
| a09c0 | 72 63 69 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 | rcion">Type.Coercion</a>........ |
| a09e0 | 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 69 6e 74 46 72 | </p>...............<h3.id="intFr |
| a0a00 | 6f 6d 42 6f 6f 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 74 46 72 6f 6d 42 6f 6f | omBool"><a.href="#toc-intFromBoo |
| a0a20 | 6c 22 3e 40 69 6e 74 46 72 6f 6d 42 6f 6f 6c 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | l">@intFromBool</a>.<a.class="hd |
| a0a40 | 72 22 20 68 72 65 66 3d 22 23 69 6e 74 46 72 6f 6d 42 6f 6f 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | r".href="#intFromBool">..</a></h |
| a0a60 | 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 |
| a0a80 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 42 6f 6f 6c 3c 2f 73 70 61 | ="tok-builtin">@intFromBool</spa |
| a0aa0 | 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | n>(value:.<span.class="tok-type" |
| a0ac0 | 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | >bool</span>).<span.class="tok-t |
| a0ae0 | 79 70 65 22 3e 75 31 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | ype">u1</span></code></pre>..... |
| a0b00 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | ..<p>.......Converts.<code><span |
| a0b20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | .class="tok-null">true</span></c |
| a0b40 | 6f 64 65 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 2d 62 | ode>.to.<code><span.class="tok-b |
| a0b60 | 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | uiltin">@as</span>(<span.class=" |
| a0b80 | 74 6f 6b 2d 74 79 70 65 22 3e 75 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-type">u1</span>,.<span.class |
| a0ba0 | 3d 22 74 6f 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 20 61 | ="tok-number">1</span>)</code>.a |
| a0bc0 | 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 6e 75 6c 6c 22 3e | nd.<code><span.class="tok-null"> |
| a0be0 | 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 0a 20 20 20 20 20 20 20 20 20 | false</span></code>.to.......... |
| a0c00 | 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 2d | .........<code><span.class="tok- |
| a0c20 | 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | builtin">@as</span>(<span.class= |
| a0c40 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | "tok-type">u1</span>,.<span.clas |
| a0c60 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 2e | s="tok-number">0</span>)</code>. |
| a0c80 | 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 69 64 | .......</p>...............<h3.id |
| a0ca0 | 3d 22 69 6e 74 46 72 6f 6d 45 6e 75 6d 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 74 | ="intFromEnum"><a.href="#toc-int |
| a0cc0 | 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 3c 61 20 63 6c | FromEnum">@intFromEnum</a>.<a.cl |
| a0ce0 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 69 6e 74 46 72 6f 6d 45 6e 75 6d 22 3e c2 a7 | ass="hdr".href="#intFromEnum">.. |
| a0d00 | 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 |
| a0d20 | 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 45 6e | n.class="tok-builtin">@intFromEn |
| a0d40 | 75 6d 3c 2f 73 70 61 6e 3e 28 65 6e 75 6d 5f 6f 72 5f 74 61 67 67 65 64 5f 75 6e 69 6f 6e 3a 20 | um</span>(enum_or_tagged_union:. |
| a0d60 | 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 |
| a0d80 | 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 |
| a0da0 | 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>. |
| a0dc0 | 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 6e 20 65 6e 75 6d 65 72 61 74 69 6f 6e 20 76 61 | ......Converts.an.enumeration.va |
| a0de0 | 6c 75 65 20 69 6e 74 6f 20 69 74 73 20 69 6e 74 65 67 65 72 20 74 61 67 20 74 79 70 65 2e 20 57 | lue.into.its.integer.tag.type..W |
| a0e00 | 68 65 6e 20 61 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 20 69 73 20 70 61 73 73 65 64 2c 0a 20 20 | hen.a.tagged.union.is.passed,... |
| a0e20 | 20 20 20 20 74 68 65 20 74 61 67 20 76 61 6c 75 65 20 69 73 20 75 73 65 64 20 61 73 20 74 68 65 | ....the.tag.value.is.used.as.the |
| a0e40 | 20 65 6e 75 6d 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 | .enumeration.value........</p>.. |
| a0e60 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 72 65 20 69 73 20 6f 6e 6c 79 20 | .....<p>.......If.there.is.only. |
| a0e80 | 6f 6e 65 20 70 6f 73 73 69 62 6c 65 20 65 6e 75 6d 20 76 61 6c 75 65 2c 20 74 68 65 20 72 65 73 | one.possible.enum.value,.the.res |
| a0ea0 | 75 6c 74 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 | ult.is.a.<code><span.class="tok- |
| a0ec0 | 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | type">comptime_int</span></code> |
| a0ee0 | 0a 20 20 20 20 20 20 6b 6e 6f 77 6e 20 61 74 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 | .......known.at.<a.href="#compti |
| a0f00 | 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | me">comptime</a>........</p>.... |
| a0f20 | 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 |
| a0f40 | 72 65 66 3d 22 23 65 6e 75 6d 46 72 6f 6d 49 6e 74 22 3e 40 65 6e 75 6d 46 72 6f 6d 49 6e 74 3c | ref="#enumFromInt">@enumFromInt< |
| a0f60 | 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 |
| a0f80 | 33 20 69 64 3d 22 69 6e 74 46 72 6f 6d 45 72 72 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | 3.id="intFromError"><a.href="#to |
| a0fa0 | 63 2d 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 | c-intFromError">@intFromError</a |
| a0fc0 | 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 72 6f 6d 45 | >.<a.class="hdr".href="#intFromE |
| a0fe0 | 72 72 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 63 | rror">..</a></h3>........<pre><c |
| a1000 | 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 69 | ode><span.class="tok-builtin">@i |
| a1020 | 6e 74 46 72 6f 6d 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 65 72 72 3a 20 3c 73 70 61 6e 20 63 6c | ntFromError</span>(err:.<span.cl |
| a1040 | 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 73 74 64 | ass="tok-kw">anytype</span>).std |
| a1060 | 2e 6d 65 74 61 2e 49 6e 74 28 2e 75 6e 73 69 67 6e 65 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .meta.Int(.unsigned,.<span.class |
| a1080 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 53 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e | ="tok-builtin">@bitSizeOf</span> |
| a10a0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 | (<span.class="tok-type">anyerror |
| a10c0 | 3c 2f 73 70 61 6e 3e 29 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e | </span>))</code></pre>.......<p> |
| a10e0 | 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 79 | .......Supports.the.following.ty |
| a1100 | 70 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 | pes:.......</p>.......<ul>...... |
| a1120 | 20 20 20 20 20 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 | .....<li><a.href="#The-Global-Er |
| a1140 | 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 |
| a1160 | 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 45 | ></li>...........<li><a.href="#E |
| a1180 | 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 53 65 74 20 54 79 70 65 3c 2f 61 | rror-Set-Type">Error.Set.Type</a |
| a11a0 | 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 45 | ></li>...........<li><a.href="#E |
| a11c0 | 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 | rror-Union-Type">Error.Union.Typ |
| a11e0 | 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e | e</a></li>.......</ul>.......<p> |
| a1200 | 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 74 6f 20 74 68 65 20 | .......Converts.an.error.to.the. |
| a1220 | 69 6e 74 65 67 65 72 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 6e 20 65 72 72 | integer.representation.of.an.err |
| a1240 | 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 | or........</p>.......<p>.......I |
| a1260 | 74 20 69 73 20 67 65 6e 65 72 61 6c 6c 79 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 61 76 | t.is.generally.recommended.to.av |
| a1280 | 6f 69 64 20 74 68 69 73 0a 20 20 20 20 20 20 63 61 73 74 2c 20 61 73 20 74 68 65 20 69 6e 74 65 | oid.this.......cast,.as.the.inte |
| a12a0 | 67 65 72 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 69 | ger.representation.of.an.error.i |
| a12c0 | 73 20 6e 6f 74 20 73 74 61 62 6c 65 20 61 63 72 6f 73 73 20 73 6f 75 72 63 65 20 63 6f 64 65 20 | s.not.stable.across.source.code. |
| a12e0 | 63 68 61 6e 67 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 | changes........</p>.......<p>See |
| a1300 | 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 72 72 | .also:</p><ul>.<li><a.href="#err |
| a1320 | 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 3c 2f 6c 69 | orFromInt">@errorFromInt</a></li |
| a1340 | 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 69 | >.</ul>................<h3.id="i |
| a1360 | 6e 74 46 72 6f 6d 46 6c 6f 61 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 74 46 72 | ntFromFloat"><a.href="#toc-intFr |
| a1380 | 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 3c 61 20 63 6c | omFloat">@intFromFloat</a>.<a.cl |
| a13a0 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 22 3e c2 | ass="hdr".href="#intFromFloat">. |
| a13c0 | 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 |
| a13e0 | 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 46 | an.class="tok-builtin">@intFromF |
| a1400 | 6c 6f 61 74 3c 2f 73 70 61 6e 3e 28 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | loat</span>(float:.<span.class=" |
| a1420 | 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 |
| a1440 | 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 |
| a1460 | 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 |
| a1480 | 73 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 69 6e 67 | s.the.integer.part.of.a.floating |
| a14a0 | 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 20 74 6f 20 74 68 65 20 69 6e 66 65 72 72 65 64 20 72 65 | .point.number.to.the.inferred.re |
| a14c0 | 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 0a | sult.type........</p>.......<p>. |
| a14e0 | 20 20 20 20 20 20 49 66 20 74 68 65 20 69 6e 74 65 67 65 72 20 70 61 72 74 20 6f 66 20 74 68 65 | ......If.the.integer.part.of.the |
| a1500 | 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 20 63 61 6e 6e 6f 74 20 66 69 | .floating.point.number.cannot.fi |
| a1520 | 74 20 69 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 2c 0a 20 20 20 20 20 | t.in.the.destination.type,...... |
| a1540 | 20 69 74 20 69 6e 76 6f 6b 65 73 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 | .it.invokes.safety-checked.<a.hr |
| a1560 | 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e | ef="#Undefined-Behavior">Undefin |
| a1580 | 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ed.Behavior</a>........</p>..... |
| a15a0 | 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 |
| a15c0 | 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 6f 6d 49 6e 74 | ef="#floatFromInt">@floatFromInt |
| a15e0 | 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>................< |
| a1600 | 68 33 20 69 64 3d 22 69 6e 74 46 72 6f 6d 50 74 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | h3.id="intFromPtr"><a.href="#toc |
| a1620 | 2d 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 3c 61 20 | -intFromPtr">@intFromPtr</a>.<a. |
| a1640 | 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 50 74 72 22 3e c2 | class="hdr".href="#intFromPtr">. |
| a1660 | 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 |
| a1680 | 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 50 | an.class="tok-builtin">@intFromP |
| a16a0 | 74 72 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 | tr</span>(value:.<span.class="to |
| a16c0 | 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 | k-kw">anytype</span>).<span.clas |
| a16e0 | 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 3e | s="tok-type">usize</span></code> |
| a1700 | 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 73 20 | </pre>.......<p>.......Converts. |
| a1720 | 3c 63 6f 64 65 3e 76 61 6c 75 65 3c 2f 63 6f 64 65 3e 20 74 6f 20 61 20 3c 63 6f 64 65 3e 3c 73 | <code>value</code>.to.a.<code><s |
| a1740 | 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 |
| a1760 | 3e 3c 2f 63 6f 64 65 3e 20 77 68 69 63 68 20 69 73 20 74 68 65 20 61 64 64 72 65 73 73 20 6f 66 | ></code>.which.is.the.address.of |
| a1780 | 20 74 68 65 20 70 6f 69 6e 74 65 72 2e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 76 61 6c 75 65 3c | .the.pointer........<code>value< |
| a17a0 | 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 20 6f 72 | /code>.can.be.<code>*T</code>.or |
| a17c0 | 20 3c 63 6f 64 65 3e 3f 2a 54 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | .<code>?*T</code>........</p>... |
| a17e0 | 20 20 20 20 3c 70 3e 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 | ....<p>To.convert.the.other.way, |
| a1800 | 20 75 73 65 20 3c 61 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 | .use.<a.href="#ptrFromInt">@ptrF |
| a1820 | 72 6f 6d 49 6e 74 3c 2f 61 3e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 | romInt</a></p>...............<h3 |
| a1840 | 20 69 64 3d 22 6d 61 78 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6d 61 78 22 3e 40 6d 61 | .id="max"><a.href="#toc-max">@ma |
| a1860 | 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 6d 61 78 22 | x</a>.<a.class="hdr".href="#max" |
| a1880 | 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>< |
| a18a0 | 73 70 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 61 78 3c 2f 73 | span.class="tok-builtin">@max</s |
| a18c0 | 70 61 6e 3e 28 61 3a 20 54 2c 20 62 3a 20 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | pan>(a:.T,.b:.T).T</code></pre>. |
| a18e0 | 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 6d 61 78 69 | ......<p>.......Returns.the.maxi |
| a1900 | 6d 75 6d 20 76 61 6c 75 65 20 6f 66 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 | mum.value.of.<code>a</code>.and. |
| a1920 | 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 2e 20 54 68 69 73 20 62 75 69 6c 74 69 6e 20 61 63 63 | <code>b</code>..This.builtin.acc |
| a1940 | 65 70 74 73 20 69 6e 74 65 67 65 72 73 2c 20 66 6c 6f 61 74 73 2c 20 61 6e 64 20 76 65 63 74 6f | epts.integers,.floats,.and.vecto |
| a1960 | 72 73 20 6f 66 20 65 69 74 68 65 72 2e 20 49 6e 20 74 68 65 20 6c 61 74 74 65 72 20 63 61 73 65 | rs.of.either..In.the.latter.case |
| a1980 | 2c 20 74 68 65 20 6f 70 65 72 61 74 69 6f 6e 20 69 73 20 70 65 72 66 6f 72 6d 65 64 20 65 6c 65 | ,.the.operation.is.performed.ele |
| a19a0 | 6d 65 6e 74 20 77 69 73 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | ment.wise........</p>.......<p>. |
| a19c0 | 20 20 20 20 20 20 4e 61 4e 73 20 61 72 65 20 68 61 6e 64 6c 65 64 20 61 73 20 66 6f 6c 6c 6f 77 | ......NaNs.are.handled.as.follow |
| a19e0 | 73 3a 20 69 66 20 6f 6e 65 20 6f 66 20 74 68 65 20 6f 70 65 72 61 6e 64 73 20 6f 66 20 61 20 28 | s:.if.one.of.the.operands.of.a.( |
| a1a00 | 70 61 69 72 77 69 73 65 29 20 6f 70 65 72 61 74 69 6f 6e 20 69 73 20 4e 61 4e 2c 20 74 68 65 20 | pairwise).operation.is.NaN,.the. |
| a1a20 | 6f 74 68 65 72 20 6f 70 65 72 61 6e 64 20 69 73 20 72 65 74 75 72 6e 65 64 2e 20 49 66 20 62 6f | other.operand.is.returned..If.bo |
| a1a40 | 74 68 20 6f 70 65 72 61 6e 64 73 20 61 72 65 20 4e 61 4e 2c 20 4e 61 4e 20 69 73 20 72 65 74 75 | th.operands.are.NaN,.NaN.is.retu |
| a1a60 | 72 6e 65 64 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 | rned........</p>.......<p>See.al |
| a1a80 | 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 40 | so:</p><ul>.<li><a.href="#min">@ |
| a1aa0 | 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 6f | min</a></li>.<li><a.href="#Vecto |
| a1ac0 | 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 20 | rs">Vectors</a></li>.</ul>...... |
| a1ae0 | 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 65 | ..........<h3.id="memcpy"><a.hre |
| a1b00 | 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 63 | f="#toc-memcpy">@memcpy</a>.<a.c |
| a1b20 | 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 3e | lass="hdr".href="#memcpy">..</a> |
| a1b40 | 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 |
| a1b60 | 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 3e | ass="tok-builtin">@memcpy</span> |
| a1b80 | 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 73 | (<span.class="tok-kw">noalias</s |
| a1ba0 | 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 3e | pan>.dest,.<span.class="tok-kw"> |
| a1bc0 | 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 61 | noalias</span>.source).<span.cla |
| a1be0 | 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 3e | ss="tok-type">void</span></code> |
| a1c00 | 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 6f | </pre>.......<p>This.function.co |
| a1c20 | 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 65 | pies.bytes.from.one.region.of.me |
| a1c40 | 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 63 | mory.to.another.</p>.......<p><c |
| a1c60 | 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 6c | ode>dest</code>.must.be.a.mutabl |
| a1c80 | 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 6e | e.slice,.a.mutable.pointer.to.an |
| a1ca0 | 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 6e | .array,.or.........a.mutable.man |
| a1cc0 | 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 74 | y-item.<a.href="#Pointers">point |
| a1ce0 | 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 20 | er</a>..It.may.have.any......... |
| a1d00 | 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 65 | alignment,.and.it.may.have.any.e |
| a1d20 | 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 3e | lement.type.</p>.......<p><code> |
| a1d40 | 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 61 | source</code>.must.be.a.slice,.a |
| a1d60 | 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 72 | .pointer.to.........an.array,.or |
| a1d80 | 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 22 | .a.many-item.<a.href="#Pointers" |
| a1da0 | 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 76 | >pointer</a>..It.may.........hav |
| a1dc0 | 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 65 | e.any.alignment,.and.it.may.have |
| a1de0 | 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 3e | .any.element.type.</p>.......<p> |
| a1e00 | 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 20 | The.<code>source</code>.element. |
| a1e20 | 74 79 70 65 20 6d 75 73 74 20 73 75 70 70 6f 72 74 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 | type.must.support.<a.href="#Type |
| a1e40 | 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 0a 20 20 20 | -Coercion">Type.Coercion</a>.... |
| a1e60 | 20 20 20 20 20 69 6e 74 6f 20 74 68 65 20 3c 63 6f 64 65 3e 64 65 73 74 3c 2f 63 6f 64 65 3e 20 | .....into.the.<code>dest</code>. |
| a1e80 | 65 6c 65 6d 65 6e 74 20 74 79 70 65 2e 20 54 68 65 20 65 6c 65 6d 65 6e 74 20 74 79 70 65 73 20 | element.type..The.element.types. |
| a1ea0 | 6d 61 79 20 68 61 76 65 0a 20 20 20 20 20 20 20 20 64 69 66 66 65 72 65 6e 74 20 41 42 49 20 73 | may.have.........different.ABI.s |
| a1ec0 | 69 7a 65 2c 20 68 6f 77 65 76 65 72 2c 20 74 68 61 74 20 6d 61 79 20 69 6e 63 75 72 20 61 20 70 | ize,.however,.that.may.incur.a.p |
| a1ee0 | 65 72 66 6f 72 6d 61 6e 63 65 20 70 65 6e 61 6c 74 79 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | erformance.penalty.</p>.......<p |
| a1f00 | 3e 53 69 6d 69 6c 61 72 20 74 6f 20 3c 61 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f | >Similar.to.<a.href="#for">for</ |
| a1f20 | 61 3e 20 6c 6f 6f 70 73 2c 20 61 74 20 6c 65 61 73 74 20 6f 6e 65 20 6f 66 20 3c 63 6f 64 65 3e | a>.loops,.at.least.one.of.<code> |
| a1f40 | 73 6f 75 72 63 65 3c 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e | source</code>.and.........<code> |
| a1f60 | 64 65 73 74 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 70 72 6f 76 69 64 65 20 61 20 6c 65 6e 67 74 | dest</code>.must.provide.a.lengt |
| a1f80 | 68 2c 20 61 6e 64 20 69 66 20 74 77 6f 20 6c 65 6e 67 74 68 73 20 61 72 65 20 70 72 6f 76 69 64 | h,.and.if.two.lengths.are.provid |
| a1fa0 | 65 64 2c 0a 20 20 20 20 20 20 20 20 74 68 65 79 20 6d 75 73 74 20 62 65 20 65 71 75 61 6c 2e 3c | ed,.........they.must.be.equal.< |
| a1fc0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 46 69 6e 61 6c 6c 79 2c 20 74 68 65 20 74 77 6f 20 6d 65 | /p>.......<p>Finally,.the.two.me |
| a1fe0 | 6d 6f 72 79 20 72 65 67 69 6f 6e 73 20 6d 75 73 74 20 6e 6f 74 20 6f 76 65 72 6c 61 70 2e 3c 2f | mory.regions.must.not.overlap.</ |
| a2000 | 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 6d 65 6d 73 65 74 22 | p>...............<h3.id="memset" |
| a2020 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6d 65 6d 73 65 74 22 3e 40 6d 65 6d 73 65 74 3c 2f | ><a.href="#toc-memset">@memset</ |
| a2040 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6d 65 6d 73 65 74 22 | a>.<a.class="hdr".href="#memset" |
| a2060 | 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>< |
| a2080 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 65 6d 73 65 74 | span.class="tok-builtin">@memset |
| a20a0 | 3c 2f 73 70 61 6e 3e 28 64 65 73 74 2c 20 65 6c 65 6d 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | </span>(dest,.elem).<span.class= |
| a20c0 | 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 70 | "tok-type">void</span></code></p |
| a20e0 | 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 73 65 74 73 20 | re>.......<p>This.function.sets. |
| a2100 | 61 6c 6c 20 74 68 65 20 65 6c 65 6d 65 6e 74 73 20 6f 66 20 61 20 6d 65 6d 6f 72 79 20 72 65 67 | all.the.elements.of.a.memory.reg |
| a2120 | 69 6f 6e 20 74 6f 20 3c 63 6f 64 65 3e 65 6c 65 6d 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 | ion.to.<code>elem</code>.</p>... |
| a2140 | 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 64 65 73 74 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 | ....<p><code>dest</code>.must.be |
| a2160 | 20 61 20 6d 75 74 61 62 6c 65 20 73 6c 69 63 65 20 6f 72 20 61 20 6d 75 74 61 62 6c 65 20 70 6f | .a.mutable.slice.or.a.mutable.po |
| a2180 | 69 6e 74 65 72 20 74 6f 20 61 6e 20 61 72 72 61 79 2e 0a 20 20 20 20 20 20 49 74 20 6d 61 79 20 | inter.to.an.array........It.may. |
| a21a0 | 68 61 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 | have.any.alignment,.and.it.may.h |
| a21c0 | 61 76 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 | ave.any.element.type.</p>....... |
| a21e0 | 3c 70 3e 3c 63 6f 64 65 3e 65 6c 65 6d 3c 2f 63 6f 64 65 3e 20 69 73 20 63 6f 65 72 63 65 64 20 | <p><code>elem</code>.is.coerced. |
| a2200 | 74 6f 20 74 68 65 20 65 6c 65 6d 65 6e 74 20 74 79 70 65 20 6f 66 20 3c 63 6f 64 65 3e 64 65 73 | to.the.element.type.of.<code>des |
| a2220 | 74 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 73 65 63 75 72 | t</code>.</p>.......<p>For.secur |
| a2240 | 65 6c 79 20 7a 65 72 6f 69 6e 67 20 6f 75 74 20 73 65 6e 73 69 74 69 76 65 20 63 6f 6e 74 65 6e | ely.zeroing.out.sensitive.conten |
| a2260 | 74 73 20 66 72 6f 6d 20 6d 65 6d 6f 72 79 2c 20 79 6f 75 20 73 68 6f 75 6c 64 20 75 73 65 0a 20 | ts.from.memory,.you.should.use.. |
| a2280 | 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 2e 63 72 79 70 74 6f 2e 75 74 69 6c 73 2e 73 65 63 75 | .....<code>std.crypto.utils.secu |
| a22a0 | 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 0a 20 20 20 20 20 20 | reZero</code></p>............... |
| a22c0 | 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 63 2d 6d 69 6e 22 3e | <h3.id="min"><a.href="#toc-min"> |
| a22e0 | 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 72 65 66 3d 22 23 6d | @min</a>.<a.class="hdr".href="#m |
| a2300 | 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 72 65 3e 3c 63 6f 64 | in">..</a></h3>........<pre><cod |
| a2320 | 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 6d 69 6e | e><span.class="tok-builtin">@min |
| a2340 | 3c 2f 73 70 61 6e 3e 28 61 3a 20 54 2c 20 62 3a 20 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | </span>(a:.T,.b:.T).T</code></pr |
| a2360 | 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 6d | e>.......<p>.......Returns.the.m |
| a2380 | 69 6e 69 6d 75 6d 20 76 61 6c 75 65 20 6f 66 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e 20 61 | inimum.value.of.<code>a</code>.a |
| a23a0 | 6e 64 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 2e 20 54 68 69 73 20 62 75 69 6c 74 69 6e 20 | nd.<code>b</code>..This.builtin. |
| a23c0 | 61 63 63 65 70 74 73 20 69 6e 74 65 67 65 72 73 2c 20 66 6c 6f 61 74 73 2c 20 61 6e 64 20 76 65 | accepts.integers,.floats,.and.ve |
| a23e0 | 63 74 6f 72 73 20 6f 66 20 65 69 74 68 65 72 2e 20 49 6e 20 74 68 65 20 6c 61 74 74 65 72 20 63 | ctors.of.either..In.the.latter.c |
| a2400 | 61 73 65 2c 20 74 68 65 20 6f 70 65 72 61 74 69 6f 6e 20 69 73 20 70 65 72 66 6f 72 6d 65 64 20 | ase,.the.operation.is.performed. |
| a2420 | 65 6c 65 6d 65 6e 74 20 77 69 73 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | element.wise........</p>.......< |
| a2440 | 70 3e 0a 20 20 20 20 20 20 4e 61 4e 73 20 61 72 65 20 68 61 6e 64 6c 65 64 20 61 73 20 66 6f 6c | p>.......NaNs.are.handled.as.fol |
| a2460 | 6c 6f 77 73 3a 20 69 66 20 6f 6e 65 20 6f 66 20 74 68 65 20 6f 70 65 72 61 6e 64 73 20 6f 66 20 | lows:.if.one.of.the.operands.of. |
| a2480 | 61 20 28 70 61 69 72 77 69 73 65 29 20 6f 70 65 72 61 74 69 6f 6e 20 69 73 20 4e 61 4e 2c 20 74 | a.(pairwise).operation.is.NaN,.t |
| a24a0 | 68 65 20 6f 74 68 65 72 20 6f 70 65 72 61 6e 64 20 69 73 20 72 65 74 75 72 6e 65 64 2e 20 49 66 | he.other.operand.is.returned..If |
| a24c0 | 20 62 6f 74 68 20 6f 70 65 72 61 6e 64 73 20 61 72 65 20 4e 61 4e 2c 20 4e 61 4e 20 69 73 20 72 | .both.operands.are.NaN,.NaN.is.r |
| a24e0 | 65 74 75 72 6e 65 64 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 | eturned........</p>.......<p>See |
| a2500 | 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 78 | .also:</p><ul>.<li><a.href="#max |
| a2520 | 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 65 | ">@max</a></li>.<li><a.href="#Ve |
| a2540 | 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 20 | ctors">Vectors</a></li>.</ul>... |
| a2560 | 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 53 | .............<h3.id="wasmMemoryS |
| a2580 | 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 7a | ize"><a.href="#toc-wasmMemorySiz |
| a25a0 | 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 3d | e">@wasmMemorySize</a>.<a.class= |
| a25c0 | 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 3c | "hdr".href="#wasmMemorySize">..< |
| a25e0 | 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 |
| a2600 | 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 79 | .class="tok-builtin">@wasmMemory |
| a2620 | 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 22 | Size</span>(index:.<span.class=" |
| a2640 | 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 73 | tok-type">u32</span>).<span.clas |
| a2660 | 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 3e | s="tok-type">usize</span></code> |
| a2680 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 | </pre>.......<p>.......This.func |
| a26a0 | 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 73 | tion.returns.the.size.of.the.Was |
| a26c0 | 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 64 | m.memory.identified.by.<code>ind |
| a26e0 | 65 78 3c 2f 63 6f 64 65 3e 20 61 73 0a 20 20 20 20 20 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 76 | ex</code>.as.......an.unsigned.v |
| a2700 | 61 6c 75 65 20 69 6e 20 75 6e 69 74 73 20 6f 66 20 57 61 73 6d 20 70 61 67 65 73 2e 20 4e 6f 74 | alue.in.units.of.Wasm.pages..Not |
| a2720 | 65 20 74 68 61 74 20 65 61 63 68 20 57 61 73 6d 20 70 61 67 65 20 69 73 20 36 34 4b 42 20 69 6e | e.that.each.Wasm.page.is.64KB.in |
| a2740 | 20 73 69 7a 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | .size........</p>.......<p>..... |
| a2760 | 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 61 20 6c 6f 77 20 6c 65 76 65 6c 20 69 | ..This.function.is.a.low.level.i |
| a2780 | 6e 74 72 69 6e 73 69 63 20 77 69 74 68 20 6e 6f 20 73 61 66 65 74 79 20 6d 65 63 68 61 6e 69 73 | ntrinsic.with.no.safety.mechanis |
| a27a0 | 6d 73 20 75 73 75 61 6c 6c 79 20 75 73 65 66 75 6c 20 66 6f 72 20 61 6c 6c 6f 63 61 74 6f 72 0a | ms.usually.useful.for.allocator. |
| a27c0 | 20 20 20 20 20 20 64 65 73 69 67 6e 65 72 73 20 74 61 72 67 65 74 69 6e 67 20 57 61 73 6d 2e 20 | ......designers.targeting.Wasm.. |
| a27e0 | 53 6f 20 75 6e 6c 65 73 73 20 79 6f 75 20 61 72 65 20 77 72 69 74 69 6e 67 20 61 20 6e 65 77 20 | So.unless.you.are.writing.a.new. |
| a2800 | 61 6c 6c 6f 63 61 74 6f 72 20 66 72 6f 6d 20 73 63 72 61 74 63 68 2c 20 79 6f 75 20 73 68 6f 75 | allocator.from.scratch,.you.shou |
| a2820 | 6c 64 20 75 73 65 0a 20 20 20 20 20 20 73 6f 6d 65 74 68 69 6e 67 20 6c 69 6b 65 20 3c 63 6f 64 | ld.use.......something.like.<cod |
| a2840 | 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 70 | e><span.class="tok-builtin">@imp |
| a2860 | 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" |
| a2880 | 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 61 | >"std"</span>).heap.Wa |
| a28a0 | 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 2f | smPageAllocator</code>........</ |
| a28c0 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c | p>.......<p>See.also:</p><ul>.<l |
| a28e0 | 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 73 | i><a.href="#wasmMemoryGrow">@was |
| a2900 | 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 20 | mMemoryGrow</a></li>.</ul>...... |
| a2920 | 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 77 | ..........<h3.id="wasmMemoryGrow |
| a2940 | 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 3e | "><a.href="#toc-wasmMemoryGrow"> |
| a2960 | 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 64 | @wasmMemoryGrow</a>.<a.class="hd |
| a2980 | 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 3e | r".href="#wasmMemoryGrow">..</a> |
| a29a0 | 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 |
| a29c0 | 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 6f | ass="tok-builtin">@wasmMemoryGro |
| a29e0 | 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 6b | w</span>(index:.<span.class="tok |
| a2a00 | 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 20 | -type">u32</span>,.delta:.<span. |
| a2a20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 3c | class="tok-type">usize</span>).< |
| a2a40 | 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 61 | span.class="tok-type">isize</spa |
| a2a60 | 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>....... |
| a2a80 | 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 65 | This.function.increases.the.size |
| a2aa0 | 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 62 | .of.the.Wasm.memory.identified.b |
| a2ac0 | 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 63 | y.<code>index</code>.by.......<c |
| a2ae0 | 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 73 | ode>delta</code>.in.units.of.uns |
| a2b00 | 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 65 | igned.number.of.Wasm.pages..Note |
| a2b20 | 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 34 | .that.each.Wasm.page.......is.64 |
| a2b40 | 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 20 | KB.in.size..On.success,.returns. |
| a2b60 | 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 65 | previous.memory.size;.on.failure |
| a2b80 | 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 20 | ,.if.the.allocation.fails,...... |
| a2ba0 | 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 70 | .returns.-1........</p>.......<p |
| a2bc0 | 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 6c | >.......This.function.is.a.low.l |
| a2be0 | 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 65 | evel.intrinsic.with.no.safety.me |
| a2c00 | 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 6f | chanisms.usually.useful.for.allo |
| a2c20 | 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 20 | cator.......designers.targeting. |
| a2c40 | 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 20 | Wasm..So.unless.you.are.writing. |
| a2c60 | 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 6f | a.new.allocator.from.scratch,.yo |
| a2c80 | 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 6b | u.should.use.......something.lik |
| a2ca0 | 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 |
| a2cc0 | 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 |
| a2ce0 | 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 68 | k-str">"std"</span>).h |
| a2d00 | 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 20 | eap.WasmPageAllocator</code>.... |
| a2d20 | 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 |
| a2d40 | 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=" |
| a2d60 | 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 69 | file">test_wasmMemoryGrow_builti |
| a2d80 | 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 |
| a2da0 | 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</ |
| a2dc0 | 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 |
| a2de0 | 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 |
| a2e00 | 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 |
| a2e20 | 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</ |
| a2e40 | 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 3d | span>.native_arch.=.<span.class= |
| a2e60 | 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 |
| a2e80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e | an.class="tok-str">"builtin |
| a2ea0 | 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 0a | "</span>).target.cpu.arch;. |
| a2ec0 | 3c 73 70 61 6e 20 63 6c 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 |
| a2ee0 | 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a | >.expect.=.std.testing.expect;.. |
| a2f00 | 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> |
| a2f20 | 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 61 | .<span.class="tok-str">"@wa |
| a2f40 | 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 20 | smMemoryGrow"</span>.{..... |
| a2f60 | 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>.( |
| a2f80 | 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 6c | native_arch.!=..wasm32).<span.cl |
| a2fa0 | 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 |
| a2fc0 | 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 69 | .class="tok-kw">error</span>.Ski |
| a2fe0 | 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 2d | pZigTest;......<span.class="tok- |
| a3000 | 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 6c | kw">const</span>.prev.=.<span.cl |
| a3020 | 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 7a | ass="tok-builtin">@wasmMemorySiz |
| a3040 | 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 72 | e</span>(<span.class="tok-number |
| a3060 | 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 6f | ">0</span>);.....<span.class="to |
| a3080 | 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 20 | k-kw">try</span>.expect(prev.==. |
| a30a0 | 3c 73 70 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 4d | <span.class="tok-builtin">@wasmM |
| a30c0 | 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 6f | emoryGrow</span>(<span.class="to |
| a30e0 | 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 3d | k-number">0</span>,.<span.class= |
| a3100 | 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 70 | "tok-number">1</span>));.....<sp |
| a3120 | 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 |
| a3140 | 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 62 | ect(prev.+.<span.class="tok-numb |
| a3160 | 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 6b | er">1</span>.==.<span.class="tok |
| a3180 | 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 3e | -builtin">@wasmMemorySize</span> |
| a31a0 | 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 61 | (<span.class="tok-number">0</spa |
| a31c0 | 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 69 | n>));.}</code></pre></figure><fi |
| a31e0 | 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 |
| a3200 | 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> |
| a3220 | 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 47 | $.<kbd>zig.test.test_wasmMemoryG |
| a3240 | 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 77 | row_builtin.zig</kbd>.1/1.test_w |
| a3260 | 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 6d | asmMemoryGrow_builtin.test.@wasm |
| a3280 | 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 6b | MemoryGrow...SKIP.0.passed;.1.sk |
| a32a0 | 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></ |
| a32c0 | 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 3c | figure>........<p>See.also:</p>< |
| a32e0 | 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 | ul>.<li><a.href="#wasmMemorySize |
| a3300 | 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e | ">@wasmMemorySize</a></li>.</ul> |
| a3320 | 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 20 | ................<h3.id="mod"><a. |
| a3340 | 68 72 65 66 3d 22 23 74 6f 63 2d 6d 6f 64 22 3e 40 6d 6f 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | href="#toc-mod">@mod</a>.<a.clas |
| a3360 | 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 0a | s="hdr".href="#mod">..</a></h3>. |
| a3380 | 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 |
| a33a0 | 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 6f | ok-builtin">@mod</span>(numerato |
| a33c0 | 72 3a 20 54 2c 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3a 20 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f | r:.T,.denominator:.T).T</code></ |
| a33e0 | 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 76 | pre>.......<p>.......Modulus.div |
| a3400 | 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 69 | ision..For.unsigned.integers.thi |
| a3420 | 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 6d | s.is.the.same.as.......<code>num |
| a3440 | 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 6c | erator.%.denominator</code>..Cal |
| a3460 | 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 72 | ler.guarantees.<code>denominator |
| a3480 | 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 30 | .>.<span.class="tok-number">0 |
| a34a0 | 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 20 | </span></code>,.otherwise.the... |
| a34c0 | 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 3c | ....operation.will.result.in.a.< |
| a34e0 | 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 5a | a.href="#Remainder-Division-by-Z |
| a3500 | 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 3c | ero">Remainder.Division.by.Zero< |
| a3520 | 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 61 | /a>.when.runtime.safety.checks.a |
| a3540 | 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 6c | re.enabled........</p>.......<ul |
| a3560 | 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 |
| a3580 | 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 70 | s="tok-builtin">@mod</span>(-<sp |
| a35a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 | an.class="tok-number">5</span>,. |
| a35c0 | 3c 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 |
| a35e0 | 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 31 | >).==.<span.class="tok-number">1 |
| a3600 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c | </span></code></li>...........<l |
| a3620 | 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 69 | i><code>(<span.class="tok-builti |
| a3640 | 6e 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 2a 20 62 29 20 2b | n">@divFloor</span>(a,.b).*.b).+ |
| a3660 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 6f 64 3c | .<span.class="tok-builtin">@mod< |
| a3680 | 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 | /span>(a,.b).==.a</code></li>... |
| a36a0 | 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 61 20 66 75 6e 63 74 69 6f | ....</ul>.......<p>For.a.functio |
| a36c0 | 6e 20 74 68 61 74 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f 72 20 63 6f 64 65 2c 20 73 65 | n.that.returns.an.error.code,.se |
| a36e0 | 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 |
| a3700 | 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 |
| a3720 | 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 6d | k-str">"std"</span>).m |
| a3740 | 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 65 | ath.mod</code>.</p>.......<p>See |
| a3760 | 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 6d | .also:</p><ul>.<li><a.href="#rem |
| a3780 | 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 20 | ">@rem</a></li>.</ul>........... |
| a37a0 | 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 61 | .....<h3.id="mulWithOverflow"><a |
| a37c0 | 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 75 | .href="#toc-mulWithOverflow">@mu |
| a37e0 | 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 22 | lWithOverflow</a>.<a.class="hdr" |
| a3800 | 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 3c | .href="#mulWithOverflow">..</a>< |
| a3820 | 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 |
| a3840 | 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 6f | ss="tok-builtin">@mulWithOverflo |
| a3860 | 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 22 | w</span>(a:.<span.class="tok-kw" |
| a3880 | 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 3d | >anytype</span>,.b:.<span.class= |
| a38a0 | 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 63 | "tok-kw">anytype</span>).<span.c |
| a38c0 | 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 73 | lass="tok-kw">struct</span>.{.<s |
| a38e0 | 70 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< |
| a3900 | 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 74 | /span>(a,.b),.<span.class="tok-t |
| a3920 | 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 20 | ype">u1</span>.}</code></pre>... |
| a3940 | 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 2a | ....<p>.......Performs.<code>a.* |
| a3960 | 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 69 | .b</code>.and.returns.a.tuple.wi |
| a3980 | 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 65 | th.the.result.and.a.possible.ove |
| a39a0 | 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 20 | rflow.bit........</p>........... |
| a39c0 | 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 63 | ....<h3.id="panic"><a.href="#toc |
| a39e0 | 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 72 | -panic">@panic</a>.<a.class="hdr |
| a3a00 | 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 20 | ".href="#panic">..</a></h3>..... |
| a3a20 | 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 |
| a3a40 | 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 5b | uiltin">@panic</span>(message:.[ |
| a3a60 | 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 |
| a3a80 | 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 |
| a3aa0 | 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 65 | an>).<span.class="tok-type">nore |
| a3ac0 | 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 3c | turn</span></code></pre>.......< |
| a3ae0 | 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 6c | p>.......Invokes.the.panic.handl |
| a3b00 | 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 69 | er.function..By.default.the.pani |
| a3b20 | 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 74 | c.handler.function.......calls.t |
| a3b40 | 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 6e | he.public.<code>panic</code>.fun |
| a3b60 | 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 65 | ction.exposed.in.the.root.source |
| a3b80 | 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 20 | .file,.or.......if.there.is.not. |
| a3ba0 | 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 69 | one.specified,.the.<code>std.bui |
| a3bc0 | 6c 74 69 6e 2e 64 65 66 61 75 6c 74 5f 70 61 6e 69 63 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 | ltin.default_panic</code>....... |
| a3be0 | 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 2e | function.from.<code>std/builtin. |
| a3c00 | 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 3e | zig</code>........</p>.......<p> |
| a3c20 | 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 63 | Generally.it.is.better.to.use.<c |
| a3c40 | 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 69 | ode><span.class="tok-builtin">@i |
| a3c60 | 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 |
| a3c80 | 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 |
| a3ca0 | 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 72 | .panic</code>............However |
| a3cc0 | 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 |
| a3ce0 | 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 73 | ">@panic</span></code>.can.be.us |
| a3d00 | 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 3e | eful.for.2.scenarios:.......</p> |
| a3d20 | 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 62 | .......<ul>.........<li>From.lib |
| a3d40 | 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 65 | rary.code,.calling.the.programme |
| a3d60 | 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 73 | r's.panic.function.if.they.expos |
| a3d80 | 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 3c | ed.one.in.the.root.source.file.< |
| a3da0 | 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 61 | /li>.........<li>When.mixing.C.a |
| a3dc0 | 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 63 | nd.Zig.code,.calling.the.canonic |
| a3de0 | 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 6d | al.panic.implementation.across.m |
| a3e00 | 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 75 | ultiple..o.files.</li>.......</u |
| a3e20 | 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c | l>.......<p>See.also:</p><ul>.<l |
| a3e40 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 52 6f 6f 74 2d 53 6f 75 72 63 65 2d 46 69 6c 65 22 3e 52 6f | i><a.href="#Root-Source-File">Ro |
| a3e60 | 6f 74 20 53 6f 75 72 63 65 20 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 | ot.Source.File</a></li>.</ul>... |
| a3e80 | 20 20 20 20 20 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 | .............<h3.id="popCount">< |
| a3ea0 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 6f 70 43 6f 75 6e 74 22 3e 40 70 6f 70 43 6f 75 6e 74 | a.href="#toc-popCount">@popCount |
| a3ec0 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 70 6f 70 43 6f | </a>.<a.class="hdr".href="#popCo |
| a3ee0 | 75 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 63 6f | unt">..</a></h3>........<pre><co |
| a3f00 | 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 70 6f | de><span.class="tok-builtin">@po |
| a3f20 | 70 43 6f 75 6e 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 | pCount</span>(operand:.<span.cla |
| a3f40 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 | ss="tok-kw">anytype</span>).<spa |
| a3f60 | 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 3c | n.class="tok-kw">anytype</span>< |
| a3f80 | 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 3e 3c 73 70 61 | /code></pre>.......<p><code><spa |
| a3fa0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 | n.class="tok-builtin">@TypeOf</s |
| a3fc0 | 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 65 20 61 6e 20 | pan>(operand)</code>.must.be.an. |
| a3fe0 | 69 6e 74 65 67 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 | integer.type.</p>.......<p><code |
| a4000 | 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 20 68 72 65 | >operand</code>.may.be.an.<a.hre |
| a4020 | 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 20 3c 61 20 | f="#Integers">integer</a>.or.<a. |
| a4040 | 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 2f 70 3e 0a | href="#Vectors">vector</a>.</p>. |
| a4060 | 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 75 6d 62 65 | ......<p>.......Counts.the.numbe |
| a4080 | 72 20 6f 66 20 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 | r.of.bits.set.in.an.integer.-."p |
| a40a0 | 6f 70 75 6c 61 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 | opulation.count"........</p>.... |
| a40c0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 3e 6f 70 65 72 61 6e 64 3c 2f 63 | ...<p>.......If.<code>operand</c |
| a40e0 | 6f 64 65 3e 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 | ode>.is.a.<a.href="#comptime">co |
| a4100 | 6d 70 74 69 6d 65 3c 2f 61 3e 2d 6b 6e 6f 77 6e 20 69 6e 74 65 67 65 72 2c 0a 20 20 20 20 20 20 | mptime</a>-known.integer,....... |
| a4120 | 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | the.return.type.is.<code><span.c |
| a4140 | 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 70 | lass="tok-type">comptime_int</sp |
| a4160 | 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 | an></code>........Otherwise,.the |
| a4180 | 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 20 69 6e 74 65 | .return.type.is.an.unsigned.inte |
| a41a0 | 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 6e 74 65 67 65 | ger.or.vector.of.unsigned.intege |
| a41c0 | 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 20 20 20 20 20 | rs.with.the.minimum.number...... |
| a41e0 | 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 20 74 68 65 20 | .of.bits.that.can.represent.the. |
| a4200 | 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 70 65 2e 0a 20 | bit.count.of.the.integer.type... |
| a4220 | 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> |
| a4240 | 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 74 7a 22 3e 40 63 74 7a 3c 2f 61 3e | <ul>.<li><a.href="#ctz">@ctz</a> |
| a4260 | 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6c 7a 22 3e 40 63 6c 7a 3c 2f 61 | </li>.<li><a.href="#clz">@clz</a |
| a4280 | 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. |
| a42a0 | 69 64 3d 22 70 72 65 66 65 74 63 68 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 72 65 66 | id="prefetch"><a.href="#toc-pref |
| a42c0 | 65 74 63 68 22 3e 40 70 72 65 66 65 74 63 68 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | etch">@prefetch</a>.<a.class="hd |
| a42e0 | 72 22 20 68 72 65 66 3d 22 23 70 72 65 66 65 74 63 68 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | r".href="#prefetch">..</a></h3>. |
| a4300 | 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 |
| a4320 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 72 65 66 65 74 63 68 3c 2f 73 70 61 6e 3e 28 70 74 72 | ok-builtin">@prefetch</span>(ptr |
| a4340 | 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</ |
| a4360 | 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 6d 70 | span>,.<span.class="tok-kw">comp |
| a4380 | 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 6f 6e 73 3a 20 50 72 65 66 65 74 63 68 4f 70 74 | time</span>.options:.PrefetchOpt |
| a43a0 | 69 6f 6e 73 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 | ions).<span.class="tok-type">voi |
| a43c0 | 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 0a | d</span></code></pre>.......<p>. |
| a43e0 | 20 20 20 20 20 20 54 68 69 73 20 62 75 69 6c 74 69 6e 20 74 65 6c 6c 73 20 74 68 65 20 63 6f 6d | ......This.builtin.tells.the.com |
| a4400 | 70 69 6c 65 72 20 74 6f 20 65 6d 69 74 20 61 20 70 72 65 66 65 74 63 68 20 69 6e 73 74 72 75 63 | piler.to.emit.a.prefetch.instruc |
| a4420 | 74 69 6f 6e 20 69 66 20 73 75 70 70 6f 72 74 65 64 20 62 79 20 74 68 65 0a 20 20 20 20 20 20 74 | tion.if.supported.by.the.......t |
| a4440 | 61 72 67 65 74 20 43 50 55 2e 20 49 66 20 74 68 65 20 74 61 72 67 65 74 20 43 50 55 20 64 6f 65 | arget.CPU..If.the.target.CPU.doe |
| a4460 | 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 20 74 68 65 20 72 65 71 75 65 73 74 65 64 20 70 72 65 66 | s.not.support.the.requested.pref |
| a4480 | 65 74 63 68 20 69 6e 73 74 72 75 63 74 69 6f 6e 2c 0a 20 20 20 20 20 20 74 68 69 73 20 62 75 69 | etch.instruction,.......this.bui |
| a44a0 | 6c 74 69 6e 20 69 73 20 61 20 6e 6f 2d 6f 70 2e 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 68 | ltin.is.a.no-op..This.function.h |
| a44c0 | 61 73 20 6e 6f 20 65 66 66 65 63 74 20 6f 6e 20 74 68 65 20 62 65 68 61 76 69 6f 72 20 6f 66 20 | as.no.effect.on.the.behavior.of. |
| a44e0 | 74 68 65 20 70 72 6f 67 72 61 6d 2c 0a 20 20 20 20 20 20 6f 6e 6c 79 20 6f 6e 20 74 68 65 20 70 | the.program,.......only.on.the.p |
| a4500 | 65 72 66 6f 72 6d 61 6e 63 65 20 63 68 61 72 61 63 74 65 72 69 73 74 69 63 73 2e 0a 20 20 20 20 | erformance.characteristics...... |
| a4520 | 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 65 | ..</p>.......<p>.......The.<code |
| a4540 | 3e 70 74 72 3c 2f 63 6f 64 65 3e 20 61 72 67 75 6d 65 6e 74 20 6d 61 79 20 62 65 20 61 6e 79 20 | >ptr</code>.argument.may.be.any. |
| a4560 | 70 6f 69 6e 74 65 72 20 74 79 70 65 20 61 6e 64 20 64 65 74 65 72 6d 69 6e 65 73 20 74 68 65 20 | pointer.type.and.determines.the. |
| a4580 | 6d 65 6d 6f 72 79 0a 20 20 20 20 20 20 61 64 64 72 65 73 73 20 74 6f 20 70 72 65 66 65 74 63 68 | memory.......address.to.prefetch |
| a45a0 | 2e 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 64 65 72 65 66 65 72 | ..This.function.does.not.derefer |
| a45c0 | 65 6e 63 65 20 74 68 65 20 70 6f 69 6e 74 65 72 2c 20 69 74 20 69 73 20 70 65 72 66 65 63 74 6c | ence.the.pointer,.it.is.perfectl |
| a45e0 | 79 20 6c 65 67 61 6c 0a 20 20 20 20 20 20 74 6f 20 70 61 73 73 20 61 20 70 6f 69 6e 74 65 72 20 | y.legal.......to.pass.a.pointer. |
| a4600 | 74 6f 20 69 6e 76 61 6c 69 64 20 6d 65 6d 6f 72 79 20 74 6f 20 74 68 69 73 20 66 75 6e 63 74 69 | to.invalid.memory.to.this.functi |
| a4620 | 6f 6e 20 61 6e 64 20 6e 6f 20 69 6c 6c 65 67 61 6c 20 62 65 68 61 76 69 6f 72 20 77 69 6c 6c 20 | on.and.no.illegal.behavior.will. |
| a4640 | 72 65 73 75 6c 74 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 | result........</p>.......<p><cod |
| a4660 | 65 3e 50 72 65 66 65 74 63 68 4f 70 74 69 6f 6e 73 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 | e>PrefetchOptions</code>.can.be. |
| a4680 | 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 74 6f | found.with.<code><span.class="to |
| a46a0 | 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. |
| a46c0 | 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"< |
| a46e0 | 2f 73 70 61 6e 3e 29 2e 62 75 69 6c 74 69 6e 2e 50 72 65 66 65 74 63 68 4f 70 74 69 6f 6e 73 3c | /span>).builtin.PrefetchOptions< |
| a4700 | 2f 63 6f 64 65 3e 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 64 | /code>.</p>...............<h3.id |
| a4720 | 3d 22 70 74 72 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 74 72 43 61 73 74 | ="ptrCast"><a.href="#toc-ptrCast |
| a4740 | 22 3e 40 70 74 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 72 | ">@ptrCast</a>.<a.class="hdr".hr |
| a4760 | 65 66 3d 22 23 70 74 72 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="#ptrCast">..</a></h3>....... |
| a4780 | 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 |
| a47a0 | 6c 74 69 6e 22 3e 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 | ltin">@ptrCast</span>(value:.<sp |
| a47c0 | 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> |
| a47e0 | 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 3c 2f | ).<span.class="tok-kw">anytype</ |
| a4800 | 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>.... |
| a4820 | 20 20 20 43 6f 6e 76 65 72 74 73 20 61 20 70 6f 69 6e 74 65 72 20 6f 66 20 6f 6e 65 20 74 79 70 | ...Converts.a.pointer.of.one.typ |
| a4840 | 65 20 74 6f 20 61 20 70 6f 69 6e 74 65 72 20 6f 66 20 61 6e 6f 74 68 65 72 20 74 79 70 65 2e 20 | e.to.a.pointer.of.another.type.. |
| a4860 | 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 20 | The.return.type.is.the.inferred. |
| a4880 | 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 20 20 20 20 20 3c 70 | result.type........</p>.......<p |
| a48a0 | 3e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 | >.......<a.href="#Optional-Point |
| a48c0 | 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 20 61 72 65 20 61 | ers">Optional.Pointers</a>.are.a |
| a48e0 | 6c 6c 6f 77 65 64 2e 20 43 61 73 74 69 6e 67 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e | llowed..Casting.an.optional.poin |
| a4900 | 74 65 72 20 77 68 69 63 68 20 69 73 20 3c 61 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 3e 6e 75 6c | ter.which.is.<a.href="#null">nul |
| a4920 | 6c 3c 2f 61 3e 0a 20 20 20 20 20 20 74 6f 20 61 20 6e 6f 6e 2d 6f 70 74 69 6f 6e 61 6c 20 70 6f | l</a>.......to.a.non-optional.po |
| a4940 | 69 6e 74 65 72 20 69 6e 76 6f 6b 65 73 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 | inter.invokes.safety-checked.<a. |
| a4960 | 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 | href="#Undefined-Behavior">Undef |
| a4980 | 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ined.Behavior</a>........</p>... |
| a49a0 | 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 3d | ....<p>.......<code><span.class= |
| a49c0 | 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 3c 2f 63 | "tok-builtin">@ptrCast</span></c |
| a49e0 | 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 20 20 20 20 20 20 3c | ode>.cannot.be.used.for:.......< |
| a4a00 | 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 52 65 6d | /p>.......<ul>...........<li>Rem |
| a4a20 | 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 6f 6b 2d 6b 77 22 | oving.<code><span.class="tok-kw" |
| a4a40 | 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 72 2c 20 | >const</span></code>.qualifier,. |
| a4a60 | 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 40 63 6f 6e 73 74 43 | use.<a.href="#constCast">@constC |
| a4a80 | 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 6c 69 3e 52 65 6d 6f | ast</a>.</li>...........<li>Remo |
| a4aa0 | 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 6f 6b 2d 6b 77 22 3e | ving.<code><span.class="tok-kw"> |
| a4ac0 | 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 61 6c 69 66 69 65 72 | volatile</span></code>.qualifier |
| a4ae0 | 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 61 73 74 22 3e 40 76 | ,.use.<a.href="#volatileCast">@v |
| a4b00 | 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 20 20 20 20 20 20 20 | olatileCast</a>.</li>........... |
| a4b20 | 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 65 73 73 20 73 70 61 | <li>Changing.pointer.address.spa |
| a4b40 | 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 63 65 43 61 73 74 22 | ce,.use.<a.href="#addrSpaceCast" |
| a4b60 | 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 0a 20 20 20 20 20 20 | >@addrSpaceCast</a>.</li>....... |
| a4b80 | 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 72 20 61 6c 69 67 6e | ....<li>Increasing.pointer.align |
| a4ba0 | 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 3e 40 | ment,.use.<a.href="#alignCast">@ |
| a4bc0 | 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 20 20 20 20 20 3c 6c | alignCast</a>.</li>...........<l |
| a4be0 | 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 6e 74 65 72 20 74 6f | i>Casting.a.non-slice.pointer.to |
| a4c00 | 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 74 61 78 20 3c 63 6f | .a.slice,.use.slicing.syntax.<co |
| a4c20 | 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 2e 3c 2f 6c 69 3e 0a | de>ptr[start..end]</code>.</li>. |
| a4c40 | 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 |
| a4c60 | 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 6f 63 2d 70 74 72 46 | ="ptrFromInt"><a.href="#toc-ptrF |
| a4c80 | 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 61 20 63 6c 61 73 73 | romInt">@ptrFromInt</a>.<a.class |
| a4ca0 | 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 3e c2 a7 3c 2f 61 3e | ="hdr".href="#ptrFromInt">..</a> |
| a4cc0 | 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 |
| a4ce0 | 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 73 | ass="tok-builtin">@ptrFromInt</s |
| a4d00 | 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 3d 22 74 6f 6b 2d 74 | pan>(address:.<span.class="tok-t |
| a4d20 | 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 6c 61 73 73 3d 22 | ype">usize</span>).<span.class=" |
| a4d40 | 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 3e 3c 2f 70 | tok-kw">anytype</span></code></p |
| a4d60 | 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 6e 20 | re>.......<p>.......Converts.an. |
| a4d80 | 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 69 6e 74 65 72 73 22 | integer.to.a.<a.href="#Pointers" |
| a4da0 | 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 74 79 70 65 20 69 73 | >pointer</a>..The.return.type.is |
| a4dc0 | 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 09 09 09 54 6f | .the.inferred.result.type.....To |
| a4de0 | 20 63 6f 6e 76 65 72 74 20 74 68 65 20 6f 74 68 65 72 20 77 61 79 2c 20 75 73 65 20 3c 61 20 68 | .convert.the.other.way,.use.<a.h |
| a4e00 | 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 2f 61 | ref="#intFromPtr">@intFromPtr</a |
| a4e20 | 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 30 20 74 6f 20 61 20 | >..Casting.an.address.of.0.to.a. |
| a4e40 | 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 69 63 68 20 69 6e 20 | destination.type.......which.in. |
| a4e60 | 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 69 6e 74 65 72 73 22 | not.<a.href="#Optional-Pointers" |
| a4e80 | 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 74 20 68 61 76 65 20 | >optional</a>.and.does.not.have. |
| a4ea0 | 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 61 | the.<code><span.class="tok-kw">a |
| a4ec0 | 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 62 75 74 65 | llowzero</span></code>.attribute |
| a4ee0 | 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 61 20 68 72 65 66 3d | .will.result.in.a.......<a.href= |
| a4f00 | 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 3e 50 6f 69 | "#Pointer-Cast-Invalid-Null">Poi |
| a4f20 | 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 61 6e 69 63 | nter.Cast.Invalid.Null</a>.panic |
| a4f40 | 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 61 72 65 20 | .when.runtime.safety.checks.are. |
| a4f60 | 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 70 3e 0a 20 20 | enabled........</p>.......<p>... |
| a4f80 | 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 69 6e 74 65 72 20 74 | ....If.the.destination.pointer.t |
| a4fa0 | 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 73 20 7a 65 72 6f 20 | ype.does.not.allow.address.zero. |
| a4fc0 | 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 20 20 20 20 20 20 69 | and.<code>address</code>.......i |
| a4fe0 | 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 74 79 2d 63 68 65 63 | s.zero,.this.invokes.safety-chec |
| a5000 | 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 | ked.<a.href="#Undefined-Behavior |
| a5020 | 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 | ">Undefined.Behavior</a>........ |
| a5040 | 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 6d 22 3e | </p>...............<h3.id="rem"> |
| a5060 | 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 61 20 63 | <a.href="#toc-rem">@rem</a>.<a.c |
| a5080 | 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 3c 2f 68 | lass="hdr".href="#rem">..</a></h |
| a50a0 | 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 |
| a50c0 | 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 6d 65 72 | ="tok-builtin">@rem</span>(numer |
| a50e0 | 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 65 | ator:.T,.denominator:.T).T</code |
| a5100 | 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 6e 64 65 | ></pre>.......<p>.......Remainde |
| a5120 | 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 67 65 72 | r.division..For.unsigned.integer |
| a5140 | 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 63 6f 64 | s.this.is.the.same.as.......<cod |
| a5160 | 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 64 65 3e | e>numerator.%.denominator</code> |
| a5180 | 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 6f 6d 69 | ..Caller.guarantees.<code>denomi |
| a51a0 | 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 75 6d 62 | nator.>.<span.class="tok-numb |
| a51c0 | 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 65 20 74 | er">0</span></code>,.otherwise.t |
| a51e0 | 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 74 20 69 | he.......operation.will.result.i |
| a5200 | 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 69 6f 6e | n.a.<a.href="#Remainder-Division |
| a5220 | 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 62 79 20 | -by-Zero">Remainder.Division.by. |
| a5240 | 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 63 68 65 | Zero</a>.when.runtime.safety.che |
| a5260 | 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 20 20 20 | cks.are.enabled........</p>..... |
| a5280 | 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 6e | ..<ul>...........<li><code><span |
| a52a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 6d 3c 2f 73 70 61 6e 3e | .class="tok-builtin">@rem</span> |
| a52c0 | 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 2f 73 70 | (-<span.class="tok-number">5</sp |
| a52e0 | 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< |
| a5300 | 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 6d | /span>).==.-<span.class="tok-num |
| a5320 | 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 20 20 20 | ber">2</span></code></li>....... |
| a5340 | 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 6f 6b 2d | ....<li><code>(<span.class="tok- |
| a5360 | 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 62 29 20 | builtin">@divTrunc</span>(a,.b). |
| a5380 | 2a 20 62 29 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | *.b).+.<span.class="tok-builtin" |
| a53a0 | 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 3e 3c 2f | >@rem</span>(a,.b).==.a</code></ |
| a53c0 | 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 61 20 66 | li>.......</ul>.......<p>For.a.f |
| a53e0 | 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 20 63 6f | unction.that.returns.an.error.co |
| a5400 | 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 6b 2d 62 | de,.see.<code><span.class="tok-b |
| a5420 | 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 |
| a5440 | 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 |
| a5460 | 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 20 20 20 | an>).math.rem</code>.</p>....... |
| a5480 | 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 |
| a54a0 | 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 20 20 20 | ="#mod">@mod</a></li>.</ul>..... |
| a54c0 | 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 65 73 73 | ...........<h3.id="returnAddress |
| a54e0 | 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 22 3e 40 | "><a.href="#toc-returnAddress">@ |
| a5500 | 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 64 72 22 | returnAddress</a>.<a.class="hdr" |
| a5520 | 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 3c 2f 68 | .href="#returnAddress">..</a></h |
| a5540 | 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 |
| a5560 | 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 3c 2f 73 | ="tok-builtin">@returnAddress</s |
| a5580 | 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 75 73 | pan>().<span.class="tok-type">us |
| a55a0 | 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 20 3c 70 | ize</span></code></pre>.......<p |
| a55c0 | 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 74 68 | >.......This.function.returns.th |
| a55e0 | 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 20 63 6f | e.address.of.the.next.machine.co |
| a5600 | 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 78 65 63 | de.instruction.that.will.be.exec |
| a5620 | 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 75 6e 63 | uted.......when.the.current.func |
| a5640 | 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 20 20 3c | tion.returns........</p>.......< |
| a5660 | 70 3e 0a 20 20 20 20 20 20 54 68 65 20 69 6d 70 6c 69 63 61 74 69 6f 6e 73 20 6f 66 20 74 68 69 | p>.......The.implications.of.thi |
| a5680 | 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 20 63 6f | s.are.target-specific.and.not.co |
| a56a0 | 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 74 66 6f | nsistent.across.......all.platfo |
| a56c0 | 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 20 20 20 | rms........</p>.......<p>....... |
| a56e0 | 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 68 | This.function.is.only.valid.with |
| a5700 | 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 63 74 69 | in.function.scope..If.the.functi |
| a5720 | 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 63 61 6c | on.gets.inlined.into.......a.cal |
| a5740 | 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 64 64 72 | ling.function,.the.returned.addr |
| a5760 | 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 20 66 75 | ess.will.apply.to.the.calling.fu |
| a5780 | 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 20 20 20 | nction........</p>.............. |
| a57a0 | 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 63 2d 73 | .<h3.id="select"><a.href="#toc-s |
| a57c0 | 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 68 64 72 | elect">@select</a>.<a.class="hdr |
| a57e0 | 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 0a 20 20 | ".href="#select">..</a></h3>.... |
| a5800 | 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- |
| a5820 | 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 20 63 6c | builtin">@select</span>(<span.cl |
| a5840 | 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:. |
| a5860 | 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 |
| a5880 | 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 69 6c 74 | n>,.pred:.<span.class="tok-built |
| a58a0 | 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 20 63 6c | in">@Vector</span>(len,.<span.cl |
| a58c0 | 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 61 3a 20 | ass="tok-type">bool</span>),.a:. |
| a58e0 | 3c 73 70 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 |
| a5900 | 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 61 73 73 | r</span>(len,.T),.b:.<span.class |
| a5920 | 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 6c 65 | ="tok-builtin">@Vector</span>(le |
| a5940 | 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 69 6e 22 | n,.T)).<span.class="tok-builtin" |
| a5960 | 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 3e 3c 2f | >@Vector</span>(len,.T)</code></ |
| a5980 | 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 76 61 6c | pre>.......<p>.......Selects.val |
| a59a0 | 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 3c 2f 63 | ues.element-wise.from.<code>a</c |
| a59c0 | 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 6f 6e 20 | ode>.or.<code>b</code>.based.on. |
| a59e0 | 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 72 65 64 | <code>pred</code>..If.<code>pred |
| a5a00 | 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 73 73 3d | [i]</code>.is.<code><span.class= |
| a5a20 | 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 2c 20 74 | "tok-null">true</span></code>,.t |
| a5a40 | 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 68 65 20 | he.corresponding.element.in.the. |
| a5a60 | 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 64 65 3e | result.will.be.<code>a[i]</code> |
| a5a80 | 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 64 65 3e | .and.otherwise.<code>b[i]</code> |
| a5aa0 | 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:< |
| a5ac0 | 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 22 3e 56 | /p><ul>.<li><a.href="#Vectors">V |
| a5ae0 | 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 0a 0a 20 | ectors</a></li>.</ul>........... |
| a5b00 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 73 65 74 41 6c 69 67 6e 53 74 61 63 6b 22 3e 3c 61 20 68 | .....<h3.id="setAlignStack"><a.h |
| a5b20 | 72 65 66 3d 22 23 74 6f 63 2d 73 65 74 41 6c 69 67 6e 53 74 61 63 6b 22 3e 40 73 65 74 41 6c 69 | ref="#toc-setAlignStack">@setAli |
| a5b40 | 67 6e 53 74 61 63 6b 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 | gnStack</a>.<a.class="hdr".href= |
| a5b60 | 22 23 73 65 74 41 6c 69 67 6e 53 74 61 63 6b 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | "#setAlignStack">..</a></h3>.... |
| a5b80 | 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- |
| a5ba0 | 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 41 6c 69 67 6e 53 74 61 63 6b 3c 2f 73 70 61 6e 3e 28 3c | builtin">@setAlignStack</span>(< |
| a5bc0 | 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 |
| a5be0 | 61 6e 3e 20 61 6c 69 67 6e 6d 65 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | an>.alignment:.<span.class="tok- |
| a5c00 | 74 79 70 65 22 3e 75 32 39 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | type">u29</span>).<span.class="t |
| a5c20 | 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 65 | ok-type">void</span></code></pre |
| a5c40 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 6e 73 75 72 65 73 20 74 68 61 74 20 61 | >.......<p>.......Ensures.that.a |
| a5c60 | 20 66 75 6e 63 74 69 6f 6e 20 77 69 6c 6c 20 68 61 76 65 20 61 20 73 74 61 63 6b 20 61 6c 69 67 | .function.will.have.a.stack.alig |
| a5c80 | 6e 6d 65 6e 74 20 6f 66 20 61 74 20 6c 65 61 73 74 20 3c 63 6f 64 65 3e 61 6c 69 67 6e 6d 65 6e | nment.of.at.least.<code>alignmen |
| a5ca0 | 74 3c 2f 63 6f 64 65 3e 20 62 79 74 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | t</code>.bytes........</p>...... |
| a5cc0 | 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 73 65 74 43 6f 6c 64 22 3e 3c 61 20 68 72 65 | .........<h3.id="setCold"><a.hre |
| a5ce0 | 66 3d 22 23 74 6f 63 2d 73 65 74 43 6f 6c 64 22 3e 40 73 65 74 43 6f 6c 64 3c 2f 61 3e 20 3c 61 | f="#toc-setCold">@setCold</a>.<a |
| a5d00 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 65 74 43 6f 6c 64 22 3e c2 a7 3c | .class="hdr".href="#setCold">..< |
| a5d20 | 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 |
| a5d40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 43 6f 6c 64 3c 2f 73 | .class="tok-builtin">@setCold</s |
| a5d60 | 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 |
| a5d80 | 6d 65 3c 2f 73 70 61 6e 3e 20 69 73 5f 63 6f 6c 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | me</span>.is_cold:.<span.class=" |
| a5da0 | 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 63 6c 61 | tok-type">bool</span>).<span.cla |
| a5dc0 | 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 3e | ss="tok-type">void</span></code> |
| a5de0 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 65 6c 6c 73 20 74 68 65 | </pre>.......<p>.......Tells.the |
| a5e00 | 20 6f 70 74 69 6d 69 7a 65 72 20 74 68 61 74 20 74 68 65 20 63 75 72 72 65 6e 74 20 66 75 6e 63 | .optimizer.that.the.current.func |
| a5e20 | 74 69 6f 6e 20 69 73 20 28 6f 72 20 69 73 20 6e 6f 74 29 20 72 61 72 65 6c 79 20 63 61 6c 6c 65 | tion.is.(or.is.not).rarely.calle |
| a5e40 | 64 2e 0a 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 6e 6c 79 20 | d.........This.function.is.only. |
| a5e60 | 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 0a 20 20 20 | valid.within.function.scope..... |
| a5e80 | 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 73 65 | ...</p>...............<h3.id="se |
| a5ea0 | 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | tEvalBranchQuota"><a.href="#toc- |
| a5ec0 | 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 72 61 6e | setEvalBranchQuota">@setEvalBran |
| a5ee0 | 63 68 51 75 6f 74 61 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | chQuota</a>.<a.class="hdr".href= |
| a5f00 | 22 23 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 | "#setEvalBranchQuota">..</a></h3 |
| a5f20 | 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= |
| a5f40 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 | "tok-builtin">@setEvalBranchQuot |
| a5f60 | 61 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 | a</span>(<span.class="tok-kw">co |
| a5f80 | 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6e 65 77 5f 71 75 6f 74 61 3a 20 3c 73 70 61 6e 20 63 | mptime</span>.new_quota:.<span.c |
| a5fa0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 | lass="tok-type">u32</span>).<spa |
| a5fc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f | n.class="tok-type">void</span></ |
| a5fe0 | 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 6e 63 72 | code></pre>.......<p>.......Incr |
| a6000 | 65 61 73 65 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 62 61 63 6b 77 | ease.the.maximum.number.of.backw |
| a6020 | 61 72 64 73 20 62 72 61 6e 63 68 65 73 20 74 68 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 | ards.branches.that.compile-time. |
| a6040 | 63 6f 64 65 0a 20 20 20 20 20 20 65 78 65 63 75 74 69 6f 6e 20 63 61 6e 20 75 73 65 20 62 65 66 | code.......execution.can.use.bef |
| a6060 | 6f 72 65 20 67 69 76 69 6e 67 20 75 70 20 61 6e 64 20 6d 61 6b 69 6e 67 20 61 20 63 6f 6d 70 69 | ore.giving.up.and.making.a.compi |
| a6080 | 6c 65 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | le.error........</p>.......<p>.. |
| a60a0 | 20 20 20 20 20 49 66 20 74 68 65 20 3c 63 6f 64 65 3e 6e 65 77 5f 71 75 6f 74 61 3c 2f 63 6f 64 | .....If.the.<code>new_quota</cod |
| a60c0 | 65 3e 20 69 73 20 73 6d 61 6c 6c 65 72 20 74 68 61 6e 20 74 68 65 20 64 65 66 61 75 6c 74 20 71 | e>.is.smaller.than.the.default.q |
| a60e0 | 75 6f 74 61 20 28 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 | uota.(<code><span.class="tok-num |
| a6100 | 62 65 72 22 3e 31 30 30 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 20 6f 72 0a 20 20 20 20 | ber">1000</span></code>).or..... |
| a6120 | 20 20 61 20 70 72 65 76 69 6f 75 73 6c 79 20 65 78 70 6c 69 63 69 74 6c 79 20 73 65 74 20 71 75 | ..a.previously.explicitly.set.qu |
| a6140 | 6f 74 61 2c 20 69 74 20 69 73 20 69 67 6e 6f 72 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | ota,.it.is.ignored........</p>.. |
| a6160 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f | .....<p>.......Example:.......</ |
| a6180 | 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 |
| a61a0 | 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"> |
| a61c0 | 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 61 5f | test_without_setEvalBranchQuota_ |
| a61e0 | 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>< |
| a6200 | 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 |
| a6220 | 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" |
| a6240 | 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 20 20 20 20 3c 73 | >"foo"</span>.{.....<s |
| a6260 | 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 |
| a6280 | 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n>.{.........<span.class="tok-kw |
| a62a0 | 22 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 | ">var</span>.i.=.<span.class="to |
| a62c0 | 6b 2d 6e 75 6d 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 | k-number">0</span>;.........<spa |
| a62e0 | 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 69 | n.class="tok-kw">while</span>.(i |
| a6300 | 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | .<.<span.class="tok-number">1 |
| a6320 | 30 30 31 3c 2f 73 70 61 6e 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | 001</span>).:.(i.+=.<span.class= |
| a6340 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 7d 0a 20 20 20 20 7d 0a | "tok-number">1</span>).{}.....}. |
| a6360 | 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>< |
| a6380 | 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 |
| a63a0 | 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 |
| a63c0 | 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 77 69 74 68 6f 75 74 5f 73 65 74 45 76 61 6c 42 72 | >zig.test.test_without_setEvalBr |
| a63e0 | 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 3c 73 70 61 | anchQuota_builtin.zig</kbd>.<spa |
| a6400 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 | n.class="sgr-1m">doc/langref/tes |
| a6420 | 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 61 5f 62 75 69 | t_without_setEvalBranchQuota_bui |
| a6440 | 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 63 6c 61 73 73 | ltin.zig:4:9:.</span><span.class |
| a6460 | 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 |
| a6480 | 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 63 65 65 64 65 | lass="sgr-1m">evaluation.exceede |
| a64a0 | 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 2f 73 70 61 6e | d.1000.backwards.branches.</span |
| a64c0 | 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 29 20 3a 20 28 | >........while.(i.<.1001).:.( |
| a64e0 | 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 61 73 73 3d 22 | i.+=.1).{}.........<span.class=" |
| a6500 | 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 7e | sgr-32m">^~~~~~~~~~~~~~~~~~~~~~~ |
| a6520 | 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 2d | ~~~~~~~.</span><span.class="sgr- |
| a6540 | 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 77 69 74 68 6f 75 74 5f 73 65 74 | 1m">doc/langref/test_without_set |
| a6560 | 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 3a 34 3a 39 3a | EvalBranchQuota_builtin.zig:4:9: |
| a6580 | 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 |
| a65a0 | 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"> |
| a65c0 | 75 73 65 20 40 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 28 29 20 74 6f 20 72 61 69 | use.@setEvalBranchQuota().to.rai |
| a65e0 | 73 65 20 74 68 65 20 62 72 61 6e 63 68 20 6c 69 6d 69 74 20 66 72 6f 6d 20 31 30 30 30 0a 3c 2f | se.the.branch.limit.from.1000.</ |
| a6600 | 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>.... |
| a6620 | 20 20 20 20 3c 70 3e 4e 6f 77 20 77 65 20 75 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | ....<p>Now.we.use.<code><span.cl |
| a6640 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 45 76 61 6c 42 72 61 6e 63 68 | ass="tok-builtin">@setEvalBranch |
| a6660 | 51 75 6f 74 61 3c 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 | Quota</span></code>:</p>.......< |
| a6680 | 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 |
| a66a0 | 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 74 45 76 | p"><cite.class="file">test_setEv |
| a66c0 | 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 69 74 65 3e | alBranchQuota_builtin.zig</cite> |
| a66e0 | 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 |
| a6700 | 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 |
| a6720 | 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 74 3b 3c 2f | lass="tok-str">"foo"</ |
| a6740 | 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" |
| a6760 | 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 6e | >comptime</span>.{.........<span |
| a6780 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 45 76 61 6c 42 72 61 | .class="tok-builtin">@setEvalBra |
| a67a0 | 6e 63 68 51 75 6f 74 61 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | nchQuota</span>(<span.class="tok |
| a67c0 | 2d 6e 75 6d 62 65 72 22 3e 31 30 30 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c | -number">1001</span>);.........< |
| a67e0 | 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 |
| a6800 | 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 |
| a6820 | 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 |
| a6840 | 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 |
| a6860 | 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>).:. |
| a6880 | 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 |
| a68a0 | 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> |
| a68c0 | 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 |
| a68e0 | 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 |
| a6900 | 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 |
| a6920 | 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 6e 2e 7a 69 67 3c | _setEvalBranchQuota_builtin.zig< |
| a6940 | 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 | /kbd>.1/1.test_setEvalBranchQuot |
| a6960 | 61 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 66 6f 6f 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 | a_builtin.test.foo...OK.All.1.te |
| a6980 | 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 |
| a69a0 | 65 3e 0a 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 | e>.........<p>See.also:</p><ul>. |
| a69c0 | 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 |
| a69e0 | 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>................< |
| a6a00 | 68 33 20 69 64 3d 22 73 65 74 46 6c 6f 61 74 4d 6f 64 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | h3.id="setFloatMode"><a.href="#t |
| a6a20 | 6f 63 2d 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 2f | oc-setFloatMode">@setFloatMode</ |
| a6a40 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 65 74 46 6c 6f 61 | a>.<a.class="hdr".href="#setFloa |
| a6a60 | 74 4d 6f 64 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 | tMode">..</a></h3>........<pre>< |
| a6a80 | 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">@ |
| a6aa0 | 73 65 74 46 6c 6f 61 74 4d 6f 64 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | setFloatMode</span>(<span.class= |
| a6ac0 | 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 6f 64 65 3a 20 46 | "tok-kw">comptime</span>.mode:.F |
| a6ae0 | 6c 6f 61 74 4d 6f 64 65 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | loatMode).<span.class="tok-type" |
| a6b00 | 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 20 20 20 20 | >void</span></code></pre>....... |
| a6b20 | 3c 70 3e 43 68 61 6e 67 65 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 63 6f 70 65 27 73 20 72 | <p>Changes.the.current.scope's.r |
| a6b40 | 75 6c 65 73 20 61 62 6f 75 74 20 68 6f 77 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6f 70 | ules.about.how.floating.point.op |
| a6b60 | 65 72 61 74 69 6f 6e 73 20 61 72 65 20 64 65 66 69 6e 65 64 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 | erations.are.defined.</p>....... |
| a6b80 | 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 20 20 3c 63 | <ul>.........<li>.............<c |
| a6ba0 | 6f 64 65 3e 53 74 72 69 63 74 3c 2f 63 6f 64 65 3e 20 28 64 65 66 61 75 6c 74 29 20 2d 20 46 6c | ode>Strict</code>.(default).-.Fl |
| a6bc0 | 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 66 6f 6c 6c 6f 77 20 73 | oating.point.operations.follow.s |
| a6be0 | 74 72 69 63 74 20 49 45 45 45 20 63 6f 6d 70 6c 69 61 6e 63 65 2e 0a 20 20 20 20 20 20 20 20 3c | trict.IEEE.compliance..........< |
| a6c00 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 | /li>.........<li>.............<c |
| a6c20 | 6f 64 65 3e 4f 70 74 69 6d 69 7a 65 64 3c 2f 63 6f 64 65 3e 20 2d 20 46 6c 6f 61 74 69 6e 67 20 | ode>Optimized</code>.-.Floating. |
| a6c40 | 70 6f 69 6e 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 6d 61 79 20 64 6f 20 61 6c 6c 20 6f 66 20 74 | point.operations.may.do.all.of.t |
| a6c60 | 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 3a 0a 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | he.following:...........<ul>.... |
| a6c80 | 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 65 6e 74 | .........<li>Assume.the.argument |
| a6ca0 | 73 20 61 6e 64 20 72 65 73 75 6c 74 20 61 72 65 20 6e 6f 74 20 4e 61 4e 2e 20 4f 70 74 69 6d 69 | s.and.result.are.not.NaN..Optimi |
| a6cc0 | 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 74 61 69 6e 20 64 | zations.are.required.to.retain.d |
| a6ce0 | 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 20 6f 76 65 72 20 4e 61 4e 73 2c 20 62 75 74 20 74 | efined.behavior.over.NaNs,.but.t |
| a6d00 | 68 65 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 72 65 73 75 6c 74 20 69 73 20 75 6e 64 65 66 69 | he.value.of.the.result.is.undefi |
| a6d20 | 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 41 73 73 75 6d 65 | ned.</li>.............<li>Assume |
| a6d40 | 20 74 68 65 20 61 72 67 75 6d 65 6e 74 73 20 61 6e 64 20 72 65 73 75 6c 74 20 61 72 65 20 6e 6f | .the.arguments.and.result.are.no |
| a6d60 | 74 20 2b 2f 2d 49 6e 66 2e 20 4f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 61 72 65 20 72 65 71 75 | t.+/-Inf..Optimizations.are.requ |
| a6d80 | 69 72 65 64 20 74 6f 20 72 65 74 61 69 6e 20 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 20 | ired.to.retain.defined.behavior. |
| a6da0 | 6f 76 65 72 20 2b 2f 2d 49 6e 66 2c 20 62 75 74 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 74 68 | over.+/-Inf,.but.the.value.of.th |
| a6dc0 | 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 20 20 20 20 | e.result.is.undefined.</li>..... |
| a6de0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 72 65 61 74 20 74 68 65 20 73 69 67 6e 20 6f 66 20 61 20 | ........<li>Treat.the.sign.of.a. |
| a6e00 | 7a 65 72 6f 20 61 72 67 75 6d 65 6e 74 20 6f 72 20 72 65 73 75 6c 74 20 61 73 20 69 6e 73 69 67 | zero.argument.or.result.as.insig |
| a6e20 | 6e 69 66 69 63 61 6e 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 55 | nificant.</li>.............<li>U |
| a6e40 | 73 65 20 74 68 65 20 72 65 63 69 70 72 6f 63 61 6c 20 6f 66 20 61 6e 20 61 72 67 75 6d 65 6e 74 | se.the.reciprocal.of.an.argument |
| a6e60 | 20 72 61 74 68 65 72 20 74 68 61 6e 20 70 65 72 66 6f 72 6d 20 64 69 76 69 73 69 6f 6e 2e 3c 2f | .rather.than.perform.division.</ |
| a6e80 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 50 65 72 66 6f 72 6d 20 66 6c 6f 61 | li>.............<li>Perform.floa |
| a6ea0 | 74 69 6e 67 2d 70 6f 69 6e 74 20 63 6f 6e 74 72 61 63 74 69 6f 6e 20 28 65 2e 67 2e 20 66 75 73 | ting-point.contraction.(e.g..fus |
| a6ec0 | 69 6e 67 20 61 20 6d 75 6c 74 69 70 6c 79 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 6e 20 61 64 | ing.a.multiply.followed.by.an.ad |
| a6ee0 | 64 69 74 69 6f 6e 20 69 6e 74 6f 20 61 20 66 75 73 65 64 20 6d 75 6c 74 69 70 6c 79 2d 61 64 64 | dition.into.a.fused.multiply-add |
| a6f00 | 29 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 50 65 72 66 6f 72 6d 20 | ).</li>.............<li>Perform. |
| a6f20 | 61 6c 67 65 62 72 61 69 63 61 6c 6c 79 20 65 71 75 69 76 61 6c 65 6e 74 20 74 72 61 6e 73 66 6f | algebraically.equivalent.transfo |
| a6f40 | 72 6d 61 74 69 6f 6e 73 20 74 68 61 74 20 6d 61 79 20 63 68 61 6e 67 65 20 72 65 73 75 6c 74 73 | rmations.that.may.change.results |
| a6f60 | 20 69 6e 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 28 65 2e 67 2e 20 72 65 61 73 73 6f 63 | .in.floating.point.(e.g..reassoc |
| a6f80 | 69 61 74 65 29 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 | iate).</li>...........</ul>..... |
| a6fa0 | 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 20 3c 63 6f 64 | ......This.is.equivalent.to.<cod |
| a6fc0 | 65 3e 2d 66 66 61 73 74 2d 6d 61 74 68 3c 2f 63 6f 64 65 3e 20 69 6e 20 47 43 43 2e 0a 20 20 20 | e>-ffast-math</code>.in.GCC..... |
| a6fe0 | 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 3c 70 3e | .....</li>.......</ul>.......<p> |
| a7000 | 0a 20 20 20 20 20 20 54 68 65 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6d 6f 64 65 20 69 | .......The.floating.point.mode.i |
| a7020 | 73 20 69 6e 68 65 72 69 74 65 64 20 62 79 20 63 68 69 6c 64 20 73 63 6f 70 65 73 2c 20 61 6e 64 | s.inherited.by.child.scopes,.and |
| a7040 | 20 63 61 6e 20 62 65 20 6f 76 65 72 72 69 64 64 65 6e 20 69 6e 20 61 6e 79 20 73 63 6f 70 65 2e | .can.be.overridden.in.any.scope. |
| a7060 | 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 73 65 74 20 74 68 65 20 66 6c 6f 61 74 69 6e 67 20 | .......You.can.set.the.floating. |
| a7080 | 70 6f 69 6e 74 20 6d 6f 64 65 20 69 6e 20 61 20 73 74 72 75 63 74 20 6f 72 20 6d 6f 64 75 6c 65 | point.mode.in.a.struct.or.module |
| a70a0 | 20 73 63 6f 70 65 20 62 79 20 75 73 69 6e 67 20 61 20 63 6f 6d 70 74 69 6d 65 20 62 6c 6f 63 6b | .scope.by.using.a.comptime.block |
| a70c0 | 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 3e 46 6c 6f 61 | ........</p>.......<p><code>Floa |
| a70e0 | 74 4d 6f 64 65 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 | tMode</code>.can.be.found.with.< |
| a7100 | 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">@ |
| a7120 | 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 |
| a7140 | 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 |
| a7160 | 74 69 6e 2e 46 6c 6f 61 74 4d 6f 64 65 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 | tin.FloatMode</code>.</p>....... |
| a7180 | 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 |
| a71a0 | 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 6c | ="#Floating-Point-Operations">Fl |
| a71c0 | 6f 61 74 69 6e 67 20 50 6f 69 6e 74 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e | oating.Point.Operations</a></li> |
| a71e0 | 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 65 | .</ul>................<h3.id="se |
| a7200 | 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 65 | tRuntimeSafety"><a.href="#toc-se |
| a7220 | 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 | tRuntimeSafety">@setRuntimeSafet |
| a7240 | 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 73 65 74 52 | y</a>.<a.class="hdr".href="#setR |
| a7260 | 75 6e 74 69 6d 65 53 61 66 65 74 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | untimeSafety">..</a></h3>....... |
| a7280 | 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 |
| a72a0 | 6c 74 69 6e 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 73 70 61 6e 3e 28 3c | ltin">@setRuntimeSafety</span>(< |
| a72c0 | 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 |
| a72e0 | 61 6e 3e 20 73 61 66 65 74 79 5f 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | an>.safety_on:.<span.class="tok- |
| a7300 | 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=" |
| a7320 | 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 |
| a7340 | 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 65 74 73 20 77 68 65 74 68 65 72 20 | e>.......<p>.......Sets.whether. |
| a7360 | 72 75 6e 74 69 6d 65 20 73 61 66 65 74 79 20 63 68 65 63 6b 73 20 61 72 65 20 65 6e 61 62 6c 65 | runtime.safety.checks.are.enable |
| a7380 | 64 20 66 6f 72 20 74 68 65 20 73 63 6f 70 65 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 73 20 74 68 | d.for.the.scope.that.contains.th |
| a73a0 | 65 20 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 | e.function.call........</p>..... |
| a73c0 | 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 |
| a73e0 | 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 |
| a7400 | 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 | tRuntimeSafety_builtin.zig</cite |
| a7420 | 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 |
| a7440 | 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. |
| a7460 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 73 65 74 52 75 6e 74 69 6d | class="tok-str">"@setRuntim |
| a7480 | 65 53 61 66 65 74 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 | eSafety"</span>.{.....<span |
| a74a0 | 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 62 75 69 6c | .class="tok-comment">//.The.buil |
| a74c0 | 74 69 6e 20 61 70 70 6c 69 65 73 20 74 6f 20 74 68 65 20 73 63 6f 70 65 20 74 68 61 74 20 69 74 | tin.applies.to.the.scope.that.it |
| a74e0 | 20 69 73 20 63 61 6c 6c 65 64 20 69 6e 2e 20 53 6f 20 68 65 72 65 2c 20 69 6e 74 65 67 65 72 20 | .is.called.in..So.here,.integer. |
| a7500 | 6f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | overflow</span>.....<span.class= |
| a7520 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 63 61 75 | "tok-comment">//.will.not.be.cau |
| a7540 | 67 68 74 20 69 6e 20 52 65 6c 65 61 73 65 46 61 73 74 20 61 6e 64 20 52 65 6c 65 61 73 65 53 6d | ght.in.ReleaseFast.and.ReleaseSm |
| a7560 | 61 6c 6c 20 6d 6f 64 65 73 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | all.modes:</span>.....<span.clas |
| a7580 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 61 72 20 78 3a 20 75 38 20 3d 20 32 | s="tok-comment">//.var.x:.u8.=.2 |
| a75a0 | 35 35 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 6f 6b 2d | 55;</span>.....<span.class="tok- |
| a75c0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 78 20 2b 3d 20 31 3b 20 2f 2f 20 75 6e 64 65 66 69 6e 65 64 | comment">//.x.+=.1;.//.undefined |
| a75e0 | 20 62 65 68 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 | .behavior.in.ReleaseFast/Release |
| a7600 | 53 6d 61 6c 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 | Small.modes.</span>.....{....... |
| a7620 | 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 48 | ..<span.class="tok-comment">//.H |
| a7640 | 6f 77 65 76 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 | owever.this.block.has.safety.ena |
| a7660 | 62 6c 65 64 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 | bled,.so.safety.checks.happen.he |
| a7680 | 72 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 73 73 3d 22 | re,</span>.........<span.class=" |
| a76a0 | 74 6f 6b 2d 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 | tok-comment">//.even.in.ReleaseF |
| a76c0 | 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 2e 3c 2f 73 70 61 | ast.and.ReleaseSmall.modes.</spa |
| a76e0 | 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 69 6c | n>.........<span.class="tok-buil |
| a7700 | 74 69 6e 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 73 70 61 6e 3e 28 3c 73 | tin">@setRuntimeSafety</span>(<s |
| a7720 | 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> |
| a7740 | 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | );.........<span.class="tok-kw"> |
| a7760 | 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 |
| a7780 | 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 |
| a77a0 | 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 20 20 20 20 78 20 | k-number">255</span>;.........x. |
| a77c0 | 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 |
| a77e0 | 70 61 6e 3e 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 | pan>;..........{.............<sp |
| a7800 | 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 76 61 | an.class="tok-comment">//.The.va |
| a7820 | 6c 75 65 20 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 | lue.can.be.overridden.at.any.sco |
| a7840 | 70 65 2e 20 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 | pe..So.here.integer.overflow</sp |
| a7860 | 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | an>.............<span.class="tok |
| a7880 | 2d 63 6f 6d 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 | -comment">//.would.not.be.caught |
| a78a0 | 20 69 6e 20 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 | .in.any.build.mode.</span>...... |
| a78c0 | 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" |
| a78e0 | 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. |
| a7900 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 3b 0a | class="tok-null">false</span>);. |
| a7920 | 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 |
| a7940 | 6d 65 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 | ment">//.var.x:.u8.=.255;</span> |
| a7960 | 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 63 6f | .............<span.class="tok-co |
| a7980 | 6d 6d 65 6e 74 22 3e 2f 2f 20 78 20 2b 3d 20 31 3b 20 2f 2f 20 75 6e 64 65 66 69 6e 65 64 20 62 | mment">//.x.+=.1;.//.undefined.b |
| a79a0 | 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 2f 73 70 61 | ehavior.in.all.build.modes.</spa |
| a79c0 | 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 2f 70 72 65 | n>.........}.....}.}</code></pre |
| a79e0 | 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 |
| a7a00 | 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 |
| a7a20 | 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 |
| a7a40 | 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 69 67 20 2d | t_setRuntimeSafety_builtin.zig.- |
| a7a60 | 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 73 65 74 52 | OReleaseFast</kbd>.1/1.test_setR |
| a7a80 | 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 65 74 52 75 | untimeSafety_builtin.test.@setRu |
| a7aa0 | 6e 74 69 6d 65 53 61 66 65 74 79 2e 2e 2e 74 68 72 65 61 64 20 33 35 37 39 37 34 32 20 70 61 6e | ntimeSafety...thread.3579742.pan |
| a7ac0 | 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 61 73 73 | ic:.integer.overflow.<span.class |
| a7ae0 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 | ="sgr-1m">/home/andy/src/zig/doc |
| a7b00 | 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 79 5f 62 | /langref/test_setRuntimeSafety_b |
| a7b20 | 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 6e 20 63 | uiltin.zig:11:11</span>:.<span.c |
| a7b40 | 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 30 61 65 35 34 20 69 6e 20 74 65 73 74 2e | lass="sgr-2m">0x100ae54.in.test. |
| a7b60 | 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 6e 3e 0a | @setRuntimeSafety.(test)</span>. |
| a7b80 | 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 61 6e 20 | ........x.+=.1;...........<span. |
| a7ba0 | 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 |
| a7bc0 | 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 73 72 63 2f 7a 69 67 | lass="sgr-1m">/home/andy/src/zig |
| a7be0 | 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 31 35 | /lib/compiler/test_runner.zig:15 |
| a7c00 | 37 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 | 7:25</span>:.<span.class="sgr-2m |
| a7c20 | 22 3e 30 78 31 30 30 63 39 62 30 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e | ">0x100c9b0.in.main.(test)</span |
| a7c40 | 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 20 7c 5f | >.........if.(test_fn.func()).|_ |
| a7c60 | 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 73 70 61 | |.{.........................<spa |
| a7c80 | 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 |
| a7ca0 | 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 73 72 63 2f 7a | .class="sgr-1m">/home/andy/src/z |
| a7cc0 | 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 3c 2f 73 70 61 | ig/lib/std/start.zig:514:22</spa |
| a7ce0 | 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 30 61 66 | n>:.<span.class="sgr-2m">0x100af |
| a7d00 | 34 34 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 | 44.in.posixCallMainAndExit.(test |
| a7d20 | 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() |
| a7d40 | 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 |
| a7d60 | 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 |
| a7d80 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 | s="sgr-1m">/home/andy/src/zig/li |
| a7da0 | 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 36 36 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | b/std/start.zig:266:5</span>:.<s |
| a7dc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 30 61 65 37 31 20 69 6e 20 | pan.class="sgr-2m">0x100ae71.in. |
| a7de0 | 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 |
| a7e00 | 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).{... |
| a7e20 | 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> |
| a7e40 | 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 |
| a7e60 | 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 |
| a7e80 | 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 |
| a7ea0 | 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 |
| a7ec0 | 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 37 63 | ome/andy/src/zig/.zig-cache/o/7c |
| a7ee0 | 37 34 61 32 39 33 39 64 38 34 64 64 64 30 66 34 35 35 31 39 64 37 61 39 66 31 63 30 66 37 2f 74 | 74a2939d84ddd0f45519d7a9f1c0f7/t |
| a7f00 | 65 73 74 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 | est.</samp></pre></figure>...... |
| a7f20 | 20 20 3c 70 3e 4e 6f 74 65 3a 20 69 74 20 69 73 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a | ..<p>Note:.it.is.<a.href="https: |
| a7f40 | 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/ |
| a7f60 | 39 37 38 22 3e 70 6c 61 6e 6e 65 64 3c 2f 61 3e 20 74 6f 20 72 65 70 6c 61 63 65 0a 20 20 20 20 | 978">planned</a>.to.replace..... |
| a7f80 | 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 |
| a7fa0 | 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ">@setRuntimeSafety</span></code |
| a7fc0 | 3e 20 77 69 74 68 20 3c 63 6f 64 65 3e 40 6f 70 74 69 6d 69 7a 65 46 6f 72 3c 2f 63 6f 64 65 3e | >.with.<code>@optimizeFor</code> |
| a7fe0 | 3c 2f 70 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 68 6c 45 | </p>................<h3.id="shlE |
| a8000 | 78 61 63 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 68 6c 45 78 61 63 74 22 3e 40 73 | xact"><a.href="#toc-shlExact">@s |
| a8020 | 68 6c 45 78 61 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 | hlExact</a>.<a.class="hdr".href= |
| a8040 | 22 23 73 68 6c 45 78 61 63 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c | "#shlExact">..</a></h3>........< |
| a8060 | 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 |
| a8080 | 69 6e 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 54 2c 20 73 | in">@shlExact</span>(value:.T,.s |
| a80a0 | 68 69 66 74 5f 61 6d 74 3a 20 4c 6f 67 32 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | hift_amt:.Log2T).T</code></pre>. |
| a80c0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 74 68 65 20 6c 65 66 | ......<p>.......Performs.the.lef |
| a80e0 | 74 20 73 68 69 66 74 20 6f 70 65 72 61 74 69 6f 6e 20 28 3c 63 6f 64 65 3e 26 6c 74 3b 26 6c 74 | t.shift.operation.(<code><< |
| a8100 | 3b 3c 2f 63 6f 64 65 3e 29 2e 0a 20 20 20 20 20 20 46 6f 72 20 75 6e 73 69 67 6e 65 64 20 69 6e | ;</code>)........For.unsigned.in |
| a8120 | 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="# |
| a8140 | 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 20 61 6e 79 20 | undefined">undefined</a>.if.any. |
| a8160 | 31 20 62 69 74 73 0a 20 20 20 20 20 20 61 72 65 20 73 68 69 66 74 65 64 20 6f 75 74 2e 20 46 6f | 1.bits.......are.shifted.out..Fo |
| a8180 | 72 20 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 73 2c 20 74 68 65 20 72 65 73 75 6c 74 20 69 73 | r.signed.integers,.the.result.is |
| a81a0 | 20 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< |
| a81c0 | 2f 61 3e 20 69 66 0a 20 20 20 20 20 20 61 6e 79 20 62 69 74 73 20 74 68 61 74 20 64 69 73 61 67 | /a>.if.......any.bits.that.disag |
| a81e0 | 72 65 65 20 77 69 74 68 20 74 68 65 20 72 65 73 75 6c 74 61 6e 74 20 73 69 67 6e 20 62 69 74 20 | ree.with.the.resultant.sign.bit. |
| a8200 | 61 72 65 20 73 68 69 66 74 65 64 20 6f 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | are.shifted.out........</p>..... |
| a8220 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 74 79 70 65 20 6f 66 20 3c 63 6f 64 65 3e 73 68 | ..<p>.......The.type.of.<code>sh |
| a8240 | 69 66 74 5f 61 6d 74 3c 2f 63 6f 64 65 3e 20 69 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e | ift_amt</code>.is.an.unsigned.in |
| a8260 | 74 65 67 65 72 20 77 69 74 68 20 3c 63 6f 64 65 3e 6c 6f 67 32 28 3c 73 70 61 6e 20 63 6c 61 73 | teger.with.<code>log2(<span.clas |
| a8280 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e | s="tok-builtin">@typeInfo</span> |
| a82a0 | 28 54 29 2e 49 6e 74 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 | (T).Int.bits)</code>.bits....... |
| a82c0 | 20 20 20 20 20 20 20 20 20 54 68 69 73 20 69 73 20 62 65 63 61 75 73 65 20 3c 63 6f 64 65 3e 73 | .........This.is.because.<code>s |
| a82e0 | 68 69 66 74 5f 61 6d 74 20 26 67 74 3b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | hift_amt.>=.<span.class="tok- |
| a8300 | 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 49 6e 74 | builtin">@typeInfo</span>(T).Int |
| a8320 | 2e 62 69 74 73 3c 2f 63 6f 64 65 3e 20 69 73 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 | .bits</code>.is.undefined.behavi |
| a8340 | 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c | or........</p>.......<p>.......< |
| a8360 | 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 |
| a8380 | 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 |
| a83a0 | 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 |
| a83c0 | 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 |
| a83e0 | 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 |
| a8400 | 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 |
| a8420 | 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 |
| a8440 | 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 |
| a8460 | 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 |
| a8480 | 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=" |
| a84a0 | 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 |
| a84c0 | 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 |
| a84e0 | 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>.... |
| a8500 | 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 |
| a8520 | 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 |
| a8540 | 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 |
| a8560 | 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"> |
| a8580 | 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 |
| a85a0 | 70 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 |
| a85c0 | 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=" |
| a85e0 | 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 |
| a8600 | 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 |
| a8620 | 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- |
| a8640 | 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 |
| a8660 | 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>.}</ |
| a8680 | 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 |
| a86a0 | 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 |
| a86c0 | 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 |
| a86e0 | 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.. |
| a8700 | 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 |
| a8720 | 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 |
| a8740 | 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> |
| a8760 | 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">@ |
| a8780 | 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 |
| a87a0 | 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 49 6e 74 | -builtin">@TypeOf</span>(a)).Int |
| a87c0 | 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 20 20 20 20 20 20 | .bits)</code>.bits.............. |
| a87e0 | 20 20 54 68 69 73 20 69 73 20 62 65 63 61 75 73 65 20 3c 63 6f 64 65 3e 73 68 69 66 74 5f 61 6d | ..This.is.because.<code>shift_am |
| a8800 | 74 20 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 74 69 6e | t.>=.<span.class="tok-builtin |
| a8820 | 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=" |
| a8840 | 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 29 29 2e | tok-builtin">@TypeOf</span>(a)). |
| a8860 | 49 6e 74 2e 62 69 74 73 3c 2f 63 6f 64 65 3e 20 69 73 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 | Int.bits</code>.is.undefined.beh |
| a8880 | 61 76 69 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 | avior........</p>.......<p>See.a |
| a88a0 | 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 73 68 6c 45 78 | lso:</p><ul>.<li><a.href="#shlEx |
| a88c0 | 61 63 74 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 | act">@shlExact</a></li>.<li><a.h |
| a88e0 | 72 65 66 3d 22 23 73 68 72 45 78 61 63 74 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 61 3e 3c 2f 6c | ref="#shrExact">@shrExact</a></l |
| a8900 | 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=" |
| a8920 | 73 68 72 45 78 61 63 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 68 72 45 78 61 63 74 | shrExact"><a.href="#toc-shrExact |
| a8940 | 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | ">@shrExact</a>.<a.class="hdr".h |
| a8960 | 72 65 66 3d 22 23 73 68 72 45 78 61 63 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 | ref="#shrExact">..</a></h3>..... |
| a8980 | 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 |
| a89a0 | 75 69 6c 74 69 6e 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 | uiltin">@shrExact</span>(value:. |
| a89c0 | 54 2c 20 73 68 69 66 74 5f 61 6d 74 3a 20 4c 6f 67 32 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 | T,.shift_amt:.Log2T).T</code></p |
| a89e0 | 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 74 68 65 | re>.......<p>.......Performs.the |
| a8a00 | 20 72 69 67 68 74 20 73 68 69 66 74 20 6f 70 65 72 61 74 69 6f 6e 20 28 3c 63 6f 64 65 3e 26 67 | .right.shift.operation.(<code>&g |
| a8a20 | 74 3b 26 67 74 3b 3c 2f 63 6f 64 65 3e 29 2e 20 43 61 6c 6c 65 72 20 67 75 61 72 61 6e 74 65 65 | t;></code>)..Caller.guarantee |
| a8a40 | 73 0a 20 20 20 20 20 20 74 68 61 74 20 74 68 65 20 73 68 69 66 74 20 77 69 6c 6c 20 6e 6f 74 20 | s.......that.the.shift.will.not. |
| a8a60 | 73 68 69 66 74 20 61 6e 79 20 31 20 62 69 74 73 20 6f 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | shift.any.1.bits.out........</p> |
| a8a80 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 74 79 70 65 20 6f 66 20 3c 63 6f | .......<p>.......The.type.of.<co |
| a8aa0 | 64 65 3e 73 68 69 66 74 5f 61 6d 74 3c 2f 63 6f 64 65 3e 20 69 73 20 61 6e 20 75 6e 73 69 67 6e | de>shift_amt</code>.is.an.unsign |
| a8ac0 | 65 64 20 69 6e 74 65 67 65 72 20 77 69 74 68 20 3c 63 6f 64 65 3e 6c 6f 67 32 28 3c 73 70 61 6e | ed.integer.with.<code>log2(<span |
| a8ae0 | 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 2f | .class="tok-builtin">@typeInfo</ |
| a8b00 | 73 70 61 6e 3e 28 54 29 2e 49 6e 74 2e 62 69 74 73 29 3c 2f 63 6f 64 65 3e 20 62 69 74 73 2e 0a | span>(T).Int.bits)</code>.bits.. |
| a8b20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54 68 69 73 20 69 73 20 62 65 63 61 75 73 65 20 3c 63 | ..............This.is.because.<c |
| a8b40 | 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 73 73 3d | ode>shift_amt.>=.<span.class= |
| a8b60 | 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 54 | "tok-builtin">@typeInfo</span>(T |
| a8b80 | 29 2e 49 6e 74 2e 62 69 74 73 3c 2f 63 6f 64 65 3e 20 69 73 20 75 6e 64 65 66 69 6e 65 64 20 62 | ).Int.bits</code>.is.undefined.b |
| a8ba0 | 65 68 61 76 69 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 | ehavior........</p>.......<p>See |
| a8bc0 | 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 73 68 6c | .also:</p><ul>.<li><a.href="#shl |
| a8be0 | 45 78 61 63 74 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 | Exact">@shlExact</a></li>.<li><a |
| a8c00 | 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 6c 57 69 74 | .href="#shlWithOverflow">@shlWit |
| a8c20 | 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 20 20 20 20 | hOverflow</a></li>.</ul>........ |
| a8c40 | 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 73 68 75 66 66 6c 65 22 3e 3c 61 20 68 72 65 66 | ........<h3.id="shuffle"><a.href |
| a8c60 | 3d 22 23 74 6f 63 2d 73 68 75 66 66 6c 65 22 3e 40 73 68 75 66 66 6c 65 3c 2f 61 3e 20 3c 61 20 | ="#toc-shuffle">@shuffle</a>.<a. |
| a8c80 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 68 75 66 66 6c 65 22 3e c2 a7 3c 2f | class="hdr".href="#shuffle">..</ |
| a8ca0 | 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. |
| a8cc0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 75 66 66 6c 65 3c 2f 73 70 | class="tok-builtin">@shuffle</sp |
| a8ce0 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d | an>(<span.class="tok-kw">comptim |
| a8d00 | 65 3c 2f 73 70 61 6e 3e 20 45 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | e</span>.E:.<span.class="tok-typ |
| a8d20 | 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | e">type</span>,.a:.<span.class=" |
| a8d40 | 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 61 5f 6c 65 | tok-builtin">@Vector</span>(a_le |
| a8d60 | 6e 2c 20 45 29 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | n,.E),.b:.<span.class="tok-built |
| a8d80 | 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 62 5f 6c 65 6e 2c 20 45 29 2c 20 3c 73 | in">@Vector</span>(b_len,.E),.<s |
| a8da0 | 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 |
| a8dc0 | 6e 3e 20 6d 61 73 6b 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 | n>.mask:.<span.class="tok-builti |
| a8de0 | 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 6d 61 73 6b 5f 6c 65 6e 2c 20 3c 73 70 61 | n">@Vector</span>(mask_len,.<spa |
| a8e00 | 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 20 | n.class="tok-type">i32</span>)). |
| a8e20 | 3c 73 70 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 |
| a8e40 | 72 3c 2f 73 70 61 6e 3e 28 6d 61 73 6b 5f 6c 65 6e 2c 20 45 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | r</span>(mask_len,.E)</code></pr |
| a8e60 | 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 73 74 72 75 63 74 73 20 61 20 | e>.......<p>.......Constructs.a. |
| a8e80 | 6e 65 77 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 | new.<a.href="#Vectors">vector</a |
| a8ea0 | 3e 20 62 79 20 73 65 6c 65 63 74 69 6e 67 20 65 6c 65 6d 65 6e 74 73 20 66 72 6f 6d 20 3c 63 6f | >.by.selecting.elements.from.<co |
| a8ec0 | 64 65 3e 61 3c 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 62 3c 2f 63 | de>a</code>.and.......<code>b</c |
| a8ee0 | 6f 64 65 3e 20 62 61 73 65 64 20 6f 6e 20 3c 63 6f 64 65 3e 6d 61 73 6b 3c 2f 63 6f 64 65 3e 2e | ode>.based.on.<code>mask</code>. |
| a8f00 | 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 61 63 68 | .......</p>.......<p>.......Each |
| a8f20 | 20 65 6c 65 6d 65 6e 74 20 69 6e 20 3c 63 6f 64 65 3e 6d 61 73 6b 3c 2f 63 6f 64 65 3e 20 73 65 | .element.in.<code>mask</code>.se |
| a8f40 | 6c 65 63 74 73 20 61 6e 20 65 6c 65 6d 65 6e 74 20 66 72 6f 6d 20 65 69 74 68 65 72 20 3c 63 6f | lects.an.element.from.either.<co |
| a8f60 | 64 65 3e 61 3c 2f 63 6f 64 65 3e 20 6f 72 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f | de>a</code>.or.......<code>b</co |
| a8f80 | 64 65 3e 2e 20 50 6f 73 69 74 69 76 65 20 6e 75 6d 62 65 72 73 20 73 65 6c 65 63 74 20 66 72 6f | de>..Positive.numbers.select.fro |
| a8fa0 | 6d 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e 20 73 74 61 72 74 69 6e 67 20 61 74 20 30 2e 0a | m.<code>a</code>.starting.at.0.. |
| a8fc0 | 20 20 20 20 20 20 4e 65 67 61 74 69 76 65 20 76 61 6c 75 65 73 20 73 65 6c 65 63 74 20 66 72 6f | ......Negative.values.select.fro |
| a8fe0 | 6d 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 2c 20 73 74 61 72 74 69 6e 67 20 61 74 20 3c 63 | m.<code>b</code>,.starting.at.<c |
| a9000 | 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 22 3e 31 3c | ode>-<span.class="tok-number">1< |
| a9020 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 67 6f 69 6e 67 20 64 6f 77 6e 2e 0a 20 20 | /span></code>.and.going.down.... |
| a9040 | 20 20 20 20 49 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 75 73 65 20 74 68 65 | ....It.is.recommended.to.use.the |
| a9060 | 20 3c 63 6f 64 65 3e 7e 3c 2f 63 6f 64 65 3e 20 6f 70 65 72 61 74 6f 72 20 66 6f 72 20 69 6e 64 | .<code>~</code>.operator.for.ind |
| a9080 | 65 78 65 73 20 66 72 6f 6d 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 73 | exes.from.<code>b</code>.......s |
| a90a0 | 6f 20 74 68 61 74 20 62 6f 74 68 20 69 6e 64 65 78 65 73 20 63 61 6e 20 73 74 61 72 74 20 66 72 | o.that.both.indexes.can.start.fr |
| a90c0 | 6f 6d 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 | om.<code><span.class="tok-number |
| a90e0 | 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 28 69 2e 65 2e 20 3c 63 6f 64 65 3e 7e 3c | ">0</span></code>.(i.e..<code>~< |
| a9100 | 73 70 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 |
| a9120 | 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 32 3c 2f | an>(<span.class="tok-type">i32</ |
| a9140 | 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"> |
| a9160 | 30 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 20 69 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e | 0</span>)</code>.is.......<code> |
| a9180 | 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 70 61 | -<span.class="tok-number">1</spa |
| a91a0 | 6e 3e 3c 2f 63 6f 64 65 3e 29 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | n></code>)........</p>.......<p> |
| a91c0 | 0a 20 20 20 20 20 20 46 6f 72 20 65 61 63 68 20 65 6c 65 6d 65 6e 74 20 6f 66 20 3c 63 6f 64 65 | .......For.each.element.of.<code |
| a91e0 | 3e 6d 61 73 6b 3c 2f 63 6f 64 65 3e 2c 20 69 66 20 69 74 20 6f 72 20 74 68 65 20 73 65 6c 65 63 | >mask</code>,.if.it.or.the.selec |
| a9200 | 74 65 64 20 76 61 6c 75 65 20 66 72 6f 6d 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f | ted.value.from.......<code>a</co |
| a9220 | 64 65 3e 20 6f 72 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 3e 3c | de>.or.<code>b</code>.is.<code>< |
| a9240 | 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< |
| a9260 | 2f 73 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 65 20 72 65 | /span></code>,.......then.the.re |
| a9280 | 73 75 6c 74 69 6e 67 20 65 6c 65 6d 65 6e 74 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | sulting.element.is.<code><span.c |
| a92a0 | 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> |
| a92c0 | 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>... |
| a92e0 | 20 20 20 20 3c 63 6f 64 65 3e 61 5f 6c 65 6e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 | ....<code>a_len</code>.and.<code |
| a9300 | 3e 62 5f 6c 65 6e 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 64 69 66 66 65 72 20 69 6e 20 6c 65 6e 67 | >b_len</code>.may.differ.in.leng |
| a9320 | 74 68 2e 20 4f 75 74 2d 6f 66 2d 62 6f 75 6e 64 73 20 65 6c 65 6d 65 6e 74 0a 20 20 20 20 20 20 | th..Out-of-bounds.element....... |
| a9340 | 69 6e 64 65 78 65 73 20 69 6e 20 3c 63 6f 64 65 3e 6d 61 73 6b 3c 2f 63 6f 64 65 3e 20 72 65 73 | indexes.in.<code>mask</code>.res |
| a9360 | 75 6c 74 20 69 6e 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 73 2e 0a 20 20 20 20 20 20 3c 2f 70 | ult.in.compile.errors........</p |
| a9380 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f | >.......<p>.......If.<code>a</co |
| a93a0 | 64 65 3e 20 6f 72 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 3e 3c | de>.or.<code>b</code>.is.<code>< |
| a93c0 | 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< |
| a93e0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 69 74 0a 20 20 20 20 20 20 69 73 20 65 71 75 69 76 | /span></code>,.it.......is.equiv |
| a9400 | 61 6c 65 6e 74 20 74 6f 20 61 20 76 65 63 74 6f 72 20 6f 66 20 61 6c 6c 20 3c 63 6f 64 65 3e 3c | alent.to.a.vector.of.all.<code>< |
| a9420 | 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< |
| a9440 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 20 6c 65 6e 67 | /span></code>.with.the.same.leng |
| a9460 | 74 68 20 61 73 20 74 68 65 20 6f 74 68 65 72 20 76 65 63 74 6f 72 2e 0a 20 20 20 20 20 20 49 66 | th.as.the.other.vector........If |
| a9480 | 20 62 6f 74 68 20 76 65 63 74 6f 72 73 20 61 72 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | .both.vectors.are.<code><span.cl |
| a94a0 | 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 3c | ass="tok-null">undefined</span>< |
| a94c0 | 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 2d 62 | /code>,.<code><span.class="tok-b |
| a94e0 | 75 69 6c 74 69 6e 22 3e 40 73 68 75 66 66 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 | uiltin">@shuffle</span></code>.r |
| a9500 | 65 74 75 72 6e 73 0a 20 20 20 20 20 20 61 20 76 65 63 74 6f 72 20 77 69 74 68 20 61 6c 6c 20 65 | eturns.......a.vector.with.all.e |
| a9520 | 6c 65 6d 65 6e 74 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 | lements.<code><span.class="tok-n |
| a9540 | 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 20 | ull">undefined</span></code>.... |
| a9560 | 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 45 | ....</p>.......<p>.......<code>E |
| a9580 | 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 | </code>.must.be.an.<a.href="#Int |
| a95a0 | 65 67 65 72 73 22 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 46 6c | egers">integer</a>,.<a.href="#Fl |
| a95c0 | 6f 61 74 73 22 3e 66 6c 6f 61 74 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 | oats">float</a>,.......<a.href=" |
| a95e0 | 23 50 6f 69 6e 74 65 72 73 22 3e 70 6f 69 6e 74 65 72 3c 2f 61 3e 2c 20 6f 72 20 3c 63 6f 64 65 | #Pointers">pointer</a>,.or.<code |
| a9600 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 | ><span.class="tok-type">bool</sp |
| a9620 | 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 54 68 65 20 6d 61 73 6b 20 6d 61 79 20 62 65 20 61 6e 79 20 | an></code>..The.mask.may.be.any. |
| a9640 | 76 65 63 74 6f 72 20 6c 65 6e 67 74 68 2c 20 61 6e 64 20 69 74 73 0a 20 20 20 20 20 20 6c 65 6e | vector.length,.and.its.......len |
| a9660 | 67 74 68 20 64 65 74 65 72 6d 69 6e 65 73 20 74 68 65 20 72 65 73 75 6c 74 20 6c 65 6e 67 74 68 | gth.determines.the.result.length |
| a9680 | 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 |
| a96a0 | 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 |
| a96c0 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 68 75 66 66 6c 65 5f 62 75 69 6c 74 69 6e 2e 7a | ss="file">test_shuffle_builtin.z |
| a96e0 | 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 |
| a9700 | 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 |
| a9720 | 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 |
| a9740 | 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 |
| a9760 | 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>); |
| a9780 | 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 |
| a97a0 | 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;. |
| a97c0 | 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 |
| a97e0 | 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 65 | >.<span.class="tok-str">"ve |
| a9800 | 63 74 6f 72 20 40 73 68 75 66 66 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | ctor.@shuffle"</span>.{.... |
| a9820 | 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 |
| a9840 | 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 6e 22 | n>.a.=.<span.class="tok-builtin" |
| a9860 | 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 6f 6b | >@Vector</span>(<span.class="tok |
| a9880 | 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=" |
| a98a0 | 74 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 | tok-type">u8</span>){.<span.clas |
| a98c0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6f 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | s="tok-str">'o'</span>,.<span.cl |
| a98e0 | 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. |
| a9900 | 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 |
| a9920 | 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 |
| a9940 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 72 27 3c 2f 73 70 61 6e 3e 2c 20 | pan.class="tok-str">'r'</span>,. |
| a9960 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 7a 27 3c 2f 73 70 61 6e 3e | <span.class="tok-str">'z'</span> |
| a9980 | 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 77 27 3c 2f 73 70 61 | ,.<span.class="tok-str">'w'</spa |
| a99a0 | 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 63 | n>.};.....<span.class="tok-kw">c |
| a99c0 | 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 6b | onst</span>.b.=.<span.class="tok |
| a99e0 | 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 63 | -builtin">@Vector</span>(<span.c |
| a9a00 | 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 61 | lass="tok-number">4</span>,.<spa |
| a9a20 | 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 7b 20 3c | n.class="tok-type">u8</span>){.< |
| a9a40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 77 27 3c 2f 73 70 61 6e 3e 2c | span.class="tok-str">'w'</span>, |
| a9a60 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 64 27 3c 2f 73 70 61 6e | .<span.class="tok-str">'d'</span |
| a9a80 | 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 21 27 3c 2f 73 70 | >,.<span.class="tok-str">'!'</sp |
| a9aa0 | 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 78 27 3c 2f | an>,.<span.class="tok-str">'x'</ |
| a9ac0 | 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | span>.};......<span.class="tok-c |
| a9ae0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 6f 20 73 68 75 66 66 6c 65 20 77 69 74 68 69 6e 20 61 20 73 | omment">//.To.shuffle.within.a.s |
| a9b00 | 69 6e 67 6c 65 20 76 65 63 74 6f 72 2c 20 70 61 73 73 20 75 6e 64 65 66 69 6e 65 64 20 61 73 20 | ingle.vector,.pass.undefined.as. |
| a9b20 | 74 68 65 20 73 65 63 6f 6e 64 20 61 72 67 75 6d 65 6e 74 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | the.second.argument.</span>..... |
| a9b40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 6f 74 | <span.class="tok-comment">//.Not |
| a9b60 | 69 63 65 20 74 68 61 74 20 77 65 20 63 61 6e 20 72 65 2d 6f 72 64 65 72 2c 20 64 75 70 6c 69 63 | ice.that.we.can.re-order,.duplic |
| a9b80 | 61 74 65 2c 20 6f 72 20 6f 6d 69 74 20 65 6c 65 6d 65 6e 74 73 20 6f 66 20 74 68 65 20 69 6e 70 | ate,.or.omit.elements.of.the.inp |
| a9ba0 | 75 74 20 76 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ut.vector</span>.....<span.class |
| a9bc0 | 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 31 20 3d 20 3c | ="tok-kw">const</span>.mask1.=.< |
| a9be0 | 73 70 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 |
| a9c00 | 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" |
| a9c20 | 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 79 70 65 | >5</span>,.<span.class="tok-type |
| a9c40 | 22 3e 69 33 32 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 | ">i32</span>){.<span.class="tok- |
| a9c60 | 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 |
| a9c80 | 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 |
| a9ca0 | 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 6c | ="tok-number">1</span>,.<span.cl |
| a9cc0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | ass="tok-number">1</span>,.<span |
| a9ce0 | 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 3b 0a | .class="tok-number">0</span>.};. |
| a9d00 | 20 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</ |
| a9d20 | 73 70 61 6e 3e 20 72 65 73 31 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | span>.res1:.<span.class="tok-bui |
| a9d40 | 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 |
| a9d60 | 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 |
| a9d80 | 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 3d 20 3c 73 70 61 | ass="tok-type">u8</span>).=.<spa |
| a9da0 | 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 75 66 66 6c 65 3c 2f | n.class="tok-builtin">@shuffle</ |
| a9dc0 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c | span>(<span.class="tok-type">u8< |
| a9de0 | 2f 73 70 61 6e 3e 2c 20 61 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | /span>,.a,.<span.class="tok-null |
| a9e00 | 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 2c 20 6d 61 73 6b 31 29 3b 0a 20 20 20 20 | ">undefined</span>,.mask1);..... |
| a9e20 | 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>. |
| a9e40 | 65 78 70 65 63 74 28 73 74 64 2e 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | expect(std.mem.eql(<span.class=" |
| a9e60 | 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 20 | tok-type">u8</span>,.&<span. |
| a9e80 | 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 5b | class="tok-builtin">@as</span>([ |
| a9ea0 | 3c 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 |
| a9ec0 | 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 |
| a9ee0 | 6e 3e 2c 20 72 65 73 31 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | n>,.res1),.<span.class="tok-str" |
| a9f00 | 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 29 3b 0a 0a 20 20 | >"hello"</span>));.... |
| a9f20 | 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 43 | ..<span.class="tok-comment">//.C |
| a9f40 | 6f 6d 62 69 6e 69 6e 67 20 74 77 6f 20 76 65 63 74 6f 72 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | ombining.two.vectors</span>..... |
| a9f60 | 3c 73 70 61 6e 20 63 6c 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 |
| a9f80 | 3e 20 6d 61 73 6b 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | >.mask2.=.<span.class="tok-built |
| a9fa0 | 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=" |
| a9fc0 | 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 |
| a9fe0 | 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 20 2d 3c 73 70 61 6e | s="tok-type">i32</span>){.-<span |
| aa000 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | .class="tok-number">1</span>,.<s |
| aa020 | 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 2c | pan.class="tok-number">0</span>, |
| aa040 | 20 3c 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 |
| aa060 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f | n>,.<span.class="tok-number">1</ |
| aa080 | 73 70 61 6e 3e 2c 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | span>,.-<span.class="tok-number" |
| aa0a0 | 3e 32 3c 2f 73 70 61 6e 3e 2c 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | >2</span>,.-<span.class="tok-num |
| aa0c0 | 62 65 72 22 3e 33 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">3</span>.};.....<span.class |
| aa0e0 | 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 32 3a 20 3c 73 70 | ="tok-kw">const</span>.res2:.<sp |
| aa100 | 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</ |
| aa120 | 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 36 | span>(<span.class="tok-number">6 |
| aa140 | 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"> |
| aa160 | 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 6f 6b 2d 62 75 | u8</span>).=.<span.class="tok-bu |
| aa180 | 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 63 6c 61 | iltin">@shuffle</span>(<span.cla |
| aa1a0 | 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 20 62 2c 20 6d | ss="tok-type">u8</span>,.a,.b,.m |
| aa1c0 | 61 73 6b 32 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 | ask2);.....<span.class="tok-kw"> |
| aa1e0 | 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 |
| aa200 | 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>,. |
| aa220 | 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">@ |
| aa240 | 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 |
| aa260 | 65 72 22 3e 36 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">6</span>]<span.class="tok-ty |
| aa280 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 72 65 73 32 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | pe">u8</span>,.res2),.<span.clas |
| aa2a0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 6f 72 6c 64 21 26 71 75 6f 74 3b 3c 2f | s="tok-str">"world!"</ |
| aa2c0 | 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> |
| aa2e0 | 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 |
| aa300 | 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 |
| aa320 | 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 68 75 66 66 6c 65 5f | mp>$.<kbd>zig.test.test_shuffle_ |
| aa340 | 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 73 68 75 66 66 | builtin.zig</kbd>.1/1.test_shuff |
| aa360 | 6c 65 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 76 65 63 74 6f 72 20 40 73 68 75 66 66 6c 65 2e | le_builtin.test.vector.@shuffle. |
| aa380 | 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> |
| aa3a0 | 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 61 6c | </pre></figure>........<p>See.al |
| aa3c0 | 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 | so:</p><ul>.<li><a.href="#Vector |
| aa3e0 | 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 20 20 | s">Vectors</a></li>.</ul>....... |
| aa400 | 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 73 69 7a 65 4f 66 22 3e 3c 61 20 68 72 65 66 | .........<h3.id="sizeOf"><a.href |
| aa420 | 3d 22 23 74 6f 63 2d 73 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 20 3c 61 20 63 6c | ="#toc-sizeOf">@sizeOf</a>.<a.cl |
| aa440 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 69 7a 65 4f 66 22 3e c2 a7 3c 2f 61 3e 3c | ass="hdr".href="#sizeOf">..</a>< |
| aa460 | 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 |
| aa480 | 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 6e 3e 28 | ss="tok-builtin">@sizeOf</span>( |
| aa4a0 | 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 |
| aa4c0 | 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 | pan>.T:.<span.class="tok-type">t |
| aa4e0 | 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | ype</span>).<span.class="tok-typ |
| aa500 | 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 | e">comptime_int</span></code></p |
| aa520 | 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f | re>.......<p>.......This.functio |
| aa540 | 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 69 74 | n.returns.the.number.of.bytes.it |
| aa560 | 20 74 61 6b 65 73 20 74 6f 20 73 74 6f 72 65 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 20 69 | .takes.to.store.<code>T</code>.i |
| aa580 | 6e 20 6d 65 6d 6f 72 79 2e 0a 20 20 20 20 20 20 54 68 65 20 72 65 73 75 6c 74 20 69 73 20 61 20 | n.memory........The.result.is.a. |
| aa5a0 | 74 61 72 67 65 74 2d 73 70 65 63 69 66 69 63 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e | target-specific.compile.time.con |
| aa5c0 | 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 0a 20 20 20 20 | stant........</p>.......<p>..... |
| aa5e0 | 20 20 54 68 69 73 20 73 69 7a 65 20 6d 61 79 20 63 6f 6e 74 61 69 6e 20 70 61 64 64 69 6e 67 20 | ..This.size.may.contain.padding. |
| aa600 | 62 79 74 65 73 2e 20 49 66 20 74 68 65 72 65 20 77 65 72 65 20 74 77 6f 20 63 6f 6e 73 65 63 75 | bytes..If.there.were.two.consecu |
| aa620 | 74 69 76 65 20 54 20 69 6e 20 6d 65 6d 6f 72 79 2c 20 74 68 65 20 70 61 64 64 69 6e 67 20 77 6f | tive.T.in.memory,.the.padding.wo |
| aa640 | 75 6c 64 20 62 65 20 74 68 65 20 6f 66 66 73 65 74 0a 20 20 20 20 20 20 69 6e 20 62 79 74 65 73 | uld.be.the.offset.......in.bytes |
| aa660 | 20 62 65 74 77 65 65 6e 20 65 6c 65 6d 65 6e 74 20 61 74 20 69 6e 64 65 78 20 30 20 61 6e 64 20 | .between.element.at.index.0.and. |
| aa680 | 74 68 65 20 65 6c 65 6d 65 6e 74 20 61 74 20 69 6e 64 65 78 20 31 2e 20 46 6f 72 20 3c 61 20 68 | the.element.at.index.1..For.<a.h |
| aa6a0 | 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 2c 0a 20 20 20 | ref="#Integers">integer</a>,.... |
| aa6c0 | 20 20 20 63 6f 6e 73 69 64 65 72 20 77 68 65 74 68 65 72 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 | ...consider.whether.you.want.to. |
| aa6e0 | 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 62 75 69 6c 74 | use.<code><span.class="tok-built |
| aa700 | 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 54 29 3c 2f 63 6f 64 65 3e 20 6f 72 0a | in">@sizeOf</span>(T)</code>.or. |
| aa720 | 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 69 | ......<code><span.class="tok-bui |
| aa740 | 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 49 6e 74 2e 62 69 | ltin">@typeInfo</span>(T).Int.bi |
| aa760 | 74 73 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 | ts</code>........</p>.......<p>. |
| aa780 | 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 65 | ......This.function.measures.the |
| aa7a0 | 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 74 | .size.at.runtime..For.types.that |
| aa7c0 | 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 68 | .are.disallowed.at.runtime,.such |
| aa7e0 | 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 6b | .as.......<code><span.class="tok |
| aa800 | 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 65 | -type">comptime_int</span></code |
| aa820 | 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 70 | >.and.<code><span.class="tok-typ |
| aa840 | 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 6c | e">type</span></code>,.the.resul |
| aa860 | 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 62 | t.is.<code><span.class="tok-numb |
| aa880 | 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 0a | er">0</span></code>........</p>. |
| aa8a0 | 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>< |
| aa8c0 | 61 20 68 72 65 66 3d 22 23 62 69 74 53 69 7a 65 4f 66 22 3e 40 62 69 74 53 69 7a 65 4f 66 3c 2f | a.href="#bitSizeOf">@bitSizeOf</ |
| aa8e0 | 61 3e 3c 2f 6c 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 | a></li>.<li><a.href="#typeInfo"> |
| aa900 | 40 74 79 70 65 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 | @typeInfo</a></li>.</ul>........ |
| aa920 | 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 73 70 6c 61 74 22 3e 3c 61 20 68 72 65 66 3d 22 | ........<h3.id="splat"><a.href=" |
| aa940 | 23 74 6f 63 2d 73 70 6c 61 74 22 3e 40 73 70 6c 61 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | #toc-splat">@splat</a>.<a.class= |
| aa960 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 70 6c 61 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | "hdr".href="#splat">..</a></h3>. |
| aa980 | 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 |
| aa9a0 | 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 6c 61 72 | ok-builtin">@splat</span>(scalar |
| aa9c0 | 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</ |
| aa9e0 | 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 |
| aaa00 | 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 |
| aaa20 | 3e 0a 20 20 20 20 20 20 50 72 6f 64 75 63 65 73 20 61 20 76 65 63 74 6f 72 20 77 68 65 72 65 20 | >.......Produces.a.vector.where. |
| aaa40 | 65 61 63 68 20 65 6c 65 6d 65 6e 74 20 69 73 20 74 68 65 20 76 61 6c 75 65 20 3c 63 6f 64 65 3e | each.element.is.the.value.<code> |
| aaa60 | 73 63 61 6c 61 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 54 68 65 20 72 65 74 75 72 6e 20 | scalar</code>........The.return. |
| aaa80 | 74 79 70 65 20 61 6e 64 20 74 68 75 73 20 74 68 65 20 6c 65 6e 67 74 68 20 6f 66 20 74 68 65 20 | type.and.thus.the.length.of.the. |
| aaaa0 | 76 65 63 74 6f 72 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 | vector.is.inferred........</p>.. |
| aaac0 | 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=" |
| aaae0 | 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 |
| aab00 | 5f 73 70 6c 61 74 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 | _splat_builtin.zig</cite></figca |
| aab20 | 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 |
| aab40 | 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 |
| aab60 | 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 |
| aab80 | 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 |
| aaba0 | 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 |
| aabc0 | 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. |
| aabe0 | 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 |
| aac00 | 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 |
| aac20 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 65 63 74 6f 72 20 40 73 70 6c 61 74 26 71 75 6f 74 | ok-str">"vector.@splat" |
| aac40 | 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- |
| aac60 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 63 61 6c 61 72 3a 20 3c 73 70 61 6e 20 63 | kw">const</span>.scalar:.<span.c |
| aac80 | 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 |
| aaca0 | 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 0a | an.class="tok-number">5</span>;. |
| aacc0 | 20 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</ |
| aace0 | 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 6f 6b 2d 62 | span>.result:.<span.class="tok-b |
| aad00 | 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 61 | uiltin">@Vector</span>(<span.cla |
| aad20 | 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. |
| aad40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3d 20 3c | class="tok-type">u32</span>).=.< |
| aad60 | 73 70 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 61 74 3c | span.class="tok-builtin">@splat< |
| aad80 | 2f 73 70 61 6e 3e 28 73 63 61 6c 61 72 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | /span>(scalar);.....<span.class= |
| aada0 | 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 |
| aadc0 | 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 | em.eql(<span.class="tok-type">u3 |
| aade0 | 32 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 2d | 2</span>,.&<span.class="tok- |
| aae00 | 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 73 | builtin">@as</span>([<span.class |
| aae20 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 | ="tok-number">4</span>]<span.cla |
| aae40 | 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 72 65 73 75 6c 74 | ss="tok-type">u32</span>,.result |
| aae60 | 29 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 70 65 | ),.&[_]<span.class="tok-type |
| aae80 | 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 6b 2d 6e | ">u32</span>{.<span.class="tok-n |
| aaea0 | 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 74 6f | umber">5</span>,.<span.class="to |
| aaec0 | 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= |
| aaee0 | 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 61 | "tok-number">5</span>,.<span.cla |
| aaf00 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 7d 29 29 3b 0a 7d 3c | ss="tok-number">5</span>.}));.}< |
| aaf20 | 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 |
| aaf40 | 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 |
| aaf60 | 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 |
| aaf80 | 69 67 20 74 65 73 74 20 74 65 73 74 5f 73 70 6c 61 74 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f | ig.test.test_splat_builtin.zig</ |
| aafa0 | 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 70 6c 61 74 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 | kbd>.1/1.test_splat_builtin.test |
| aafc0 | 2e 76 65 63 74 6f 72 20 40 73 70 6c 61 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 | .vector.@splat...OK.All.1.tests. |
| aafe0 | 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>.. |
| ab000 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 63 61 6c 61 72 3c 2f 63 6f | ......<p>.......<code>scalar</co |
| ab020 | 64 65 3e 20 6d 75 73 74 20 62 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 | de>.must.be.an.<a.href="#Integer |
| ab040 | 73 22 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 | s">integer</a>,.<a.href="#Primit |
| ab060 | 69 76 65 2d 54 79 70 65 73 22 3e 62 6f 6f 6c 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 3c 61 20 68 72 | ive-Types">bool</a>,.......<a.hr |
| ab080 | 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 66 6c 6f 61 74 3c 2f 61 3e 2c 20 6f 72 20 3c 61 20 68 72 | ef="#Floats">float</a>,.or.<a.hr |
| ab0a0 | 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 70 6f 69 6e 74 65 72 3c 2f 61 3e 2e 0a 20 20 20 20 | ef="#Pointers">pointer</a>...... |
| ab0c0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c | ..</p>.......<p>See.also:</p><ul |
| ab0e0 | 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 |
| ab100 | 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 6c 65 22 | </a></li>.<li><a.href="#shuffle" |
| ab120 | 3e 40 73 68 75 66 66 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 | >@shuffle</a></li>.</ul>........ |
| ab140 | 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 72 65 64 75 63 65 22 3e 3c 61 20 68 72 65 66 3d | ........<h3.id="reduce"><a.href= |
| ab160 | 22 23 74 6f 63 2d 72 65 64 75 63 65 22 3e 40 72 65 64 75 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 | "#toc-reduce">@reduce</a>.<a.cla |
| ab180 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 72 65 64 75 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f | ss="hdr".href="#reduce">..</a></ |
| ab1a0 | 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 73 | h3>........<pre><code><span.clas |
| ab1c0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 64 75 63 65 3c 2f 73 70 61 6e 3e 28 3c | s="tok-builtin">@reduce</span>(< |
| ab1e0 | 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 |
| ab200 | 61 6e 3e 20 6f 70 3a 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 52 65 64 75 63 65 4f 70 2c 20 76 61 | an>.op:.std.builtin.ReduceOp,.va |
| ab220 | 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 |
| ab240 | 65 3c 2f 73 70 61 6e 3e 29 20 45 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c | e</span>).E</code></pre>.......< |
| ab260 | 70 3e 0a 20 20 20 20 20 20 54 72 61 6e 73 66 6f 72 6d 73 20 61 20 3c 61 20 68 72 65 66 3d 22 23 | p>.......Transforms.a.<a.href="# |
| ab280 | 56 65 63 74 6f 72 73 22 3e 76 65 63 74 6f 72 3c 2f 61 3e 20 69 6e 74 6f 20 61 20 73 63 61 6c 61 | Vectors">vector</a>.into.a.scala |
| ab2a0 | 72 20 76 61 6c 75 65 20 28 6f 66 20 74 79 70 65 20 3c 63 6f 64 65 3e 45 3c 2f 63 6f 64 65 3e 29 | r.value.(of.type.<code>E</code>) |
| ab2c0 | 0a 20 20 20 20 20 20 62 79 20 70 65 72 66 6f 72 6d 69 6e 67 20 61 20 73 65 71 75 65 6e 74 69 61 | .......by.performing.a.sequentia |
| ab2e0 | 6c 20 68 6f 72 69 7a 6f 6e 74 61 6c 20 72 65 64 75 63 74 69 6f 6e 20 6f 66 20 69 74 73 20 65 6c | l.horizontal.reduction.of.its.el |
| ab300 | 65 6d 65 6e 74 73 20 75 73 69 6e 67 20 74 68 65 0a 20 20 20 20 20 20 73 70 65 63 69 66 69 65 64 | ements.using.the.......specified |
| ab320 | 20 6f 70 65 72 61 74 6f 72 20 3c 63 6f 64 65 3e 6f 70 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 | .operator.<code>op</code>....... |
| ab340 | 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 20 65 76 65 72 79 20 | .</p>.......<p>.......Not.every. |
| ab360 | 6f 70 65 72 61 74 6f 72 20 69 73 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 65 76 65 72 79 20 | operator.is.available.for.every. |
| ab380 | 76 65 63 74 6f 72 20 65 6c 65 6d 65 6e 74 20 74 79 70 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | vector.element.type:.......</p>. |
| ab3a0 | 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 45 76 65 72 79 20 6f | ......<ul>...........<li>Every.o |
| ab3c0 | 70 65 72 61 74 6f 72 20 69 73 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 3c 61 20 68 72 65 66 | perator.is.available.for.<a.href |
| ab3e0 | 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 76 65 63 74 6f 72 73 | ="#Integers">integer</a>.vectors |
| ab400 | 2e 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 2e 41 6e 64 3c | .</li>...........<li><code>.And< |
| ab420 | 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 2e 4f 72 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 | /code>,.<code>.Or</code>,....... |
| ab440 | 20 20 20 20 20 20 3c 63 6f 64 65 3e 2e 58 6f 72 3c 2f 63 6f 64 65 3e 20 61 72 65 20 61 64 64 69 | ......<code>.Xor</code>.are.addi |
| ab460 | 74 69 6f 6e 61 6c 6c 79 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 0a 20 20 20 20 20 20 20 20 20 | tionally.available.for.......... |
| ab480 | 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 3e | ...<code><span.class="tok-type"> |
| ab4a0 | 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 65 63 74 6f 72 73 2c 3c 2f 6c 69 3e | bool</span></code>.vectors,</li> |
| ab4c0 | 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 2e 4d 69 6e 3c 2f 63 6f 64 65 3e | ...........<li><code>.Min</code> |
| ab4e0 | 2c 20 3c 63 6f 64 65 3e 2e 4d 61 78 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 | ,.<code>.Max</code>,............ |
| ab500 | 20 3c 63 6f 64 65 3e 2e 41 64 64 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 2e 4d 75 6c 3c 2f | .<code>.Add</code>,.<code>.Mul</ |
| ab520 | 63 6f 64 65 3e 20 61 72 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 61 64 64 69 74 69 6f 6e 61 6c | code>.are.............additional |
| ab540 | 6c 79 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 | ly.available.for.<a.href="#Float |
| ab560 | 73 22 3e 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 3c 2f 61 3e 20 76 65 63 74 6f 72 73 2c 3c 2f | s">floating.point</a>.vectors,</ |
| ab580 | 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | li>.......</ul>.......<p>....... |
| ab5a0 | 4e 6f 74 65 20 74 68 61 74 20 3c 63 6f 64 65 3e 2e 41 64 64 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 | Note.that.<code>.Add</code>.and. |
| ab5c0 | 3c 63 6f 64 65 3e 2e 4d 75 6c 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 72 65 64 75 63 74 69 6f | <code>.Mul</code>.......reductio |
| ab5e0 | 6e 73 20 6f 6e 20 69 6e 74 65 67 72 61 6c 20 74 79 70 65 73 20 61 72 65 20 77 72 61 70 70 69 6e | ns.on.integral.types.are.wrappin |
| ab600 | 67 3b 20 77 68 65 6e 20 61 70 70 6c 69 65 64 20 6f 6e 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e | g;.when.applied.on.floating.poin |
| ab620 | 74 0a 20 20 20 20 20 20 74 79 70 65 73 20 74 68 65 20 6f 70 65 72 61 74 69 6f 6e 20 61 73 73 6f | t.......types.the.operation.asso |
| ab640 | 63 69 61 74 69 76 69 74 79 20 69 73 20 70 72 65 73 65 72 76 65 64 2c 20 75 6e 6c 65 73 73 20 74 | ciativity.is.preserved,.unless.t |
| ab660 | 68 65 20 66 6c 6f 61 74 20 6d 6f 64 65 20 69 73 0a 20 20 20 20 20 20 73 65 74 20 74 6f 20 3c 63 | he.float.mode.is.......set.to.<c |
| ab680 | 6f 64 65 3e 4f 70 74 69 6d 69 7a 65 64 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | ode>Optimized</code>........</p> |
| ab6a0 | 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 |
| ab6c0 | 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 |
| ab6e0 | 73 74 5f 72 65 64 75 63 65 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 | st_reduce_builtin.zig</cite></fi |
| ab700 | 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= |
| ab720 | 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 |
| ab740 | 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 |
| ab760 | 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">" |
| ab780 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ;std"</span>);.<span.class= |
| ab7a0 | 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 |
| ab7c0 | 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= |
| ab7e0 | 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 |
| ab800 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 65 63 74 6f 72 20 40 72 65 64 75 63 65 26 | ="tok-str">"vector.@reduce& |
| ab820 | 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=" |
| ab840 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 56 20 3d 20 3c 73 70 61 6e 20 63 | tok-kw">const</span>.V.=.<span.c |
| ab860 | 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 6e | lass="tok-builtin">@Vector</span |
| ab880 | 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 70 | >(<span.class="tok-number">4</sp |
| ab8a0 | 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 69 33 32 3c | an>,.<span.class="tok-type">i32< |
| ab8c0 | 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 |
| ab8e0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 20 3d 20 56 7b 20 3c 73 70 61 6e 20 | ">const</span>.value.=.V{.<span. |
| ab900 | 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 |
| ab920 | 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>, |
| ab940 | 20 3c 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 |
| ab960 | 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 3c | n>,.-<span.class="tok-number">1< |
| ab980 | 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 6b | /span>.};.....<span.class="tok-k |
| ab9a0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 76 61 6c 75 65 20 26 | w">const</span>.result.=.value.& |
| ab9c0 | 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 | gt;.<span.class="tok-builtin">@a |
| ab9e0 | 73 3c 2f 73 70 61 6e 3e 28 56 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | s</span>(V,.<span.class="tok-bui |
| aba00 | 6c 74 69 6e 22 3e 40 73 70 6c 61 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ltin">@splat</span>(<span.class= |
| aba20 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 | "tok-number">0</span>));.....<sp |
| aba40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 72 65 73 75 6c 74 | an.class="tok-comment">//.result |
| aba60 | 20 69 73 20 7b 20 74 72 75 65 2c 20 66 61 6c 73 65 2c 20 74 72 75 65 2c 20 66 61 6c 73 65 20 7d | .is.{.true,.false,.true,.false.} |
| aba80 | 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 6f 6b 2d 6b 77 | ;</span>.....<span.class="tok-kw |
| abaa0 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ">try</span>.<span.class="tok-kw |
| abac0 | 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 3c 73 70 61 6e 20 63 | ">comptime</span>.expect(<span.c |
| abae0 | 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 |
| abb00 | 3e 28 72 65 73 75 6c 74 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | >(result).==.<span.class="tok-bu |
| abb20 | 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 61 73 | iltin">@Vector</span>(<span.clas |
| abb40 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | s="tok-number">4</span>,.<span.c |
| abb60 | 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 29 3b 0a 20 | lass="tok-type">bool</span>));.. |
| abb80 | 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 |
| abba0 | 70 61 6e 3e 20 69 73 5f 61 6c 6c 5f 74 72 75 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>.is_all_true.=.<span.class=" |
| abbc0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 64 75 63 65 3c 2f 73 70 61 6e 3e 28 2e 41 6e 64 | tok-builtin">@reduce</span>(.And |
| abbe0 | 2c 20 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ,.result);.....<span.class="tok- |
| abc00 | 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- |
| abc20 | 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 3c 73 70 61 6e | kw">comptime</span>.expect(<span |
| abc40 | 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 |
| abc60 | 61 6e 3e 28 69 73 5f 61 6c 6c 5f 74 72 75 65 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | an>(is_all_true).==.<span.class= |
| abc80 | 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 | "tok-type">bool</span>);.....<sp |
| abca0 | 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 |
| abcc0 | 65 63 74 28 69 73 5f 61 6c 6c 5f 74 72 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ect(is_all_true.==.<span.class=" |
| abce0 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 | tok-null">false</span>);.}</code |
| abd00 | 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 |
| abd20 | 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 |
| abd40 | 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 |
| abd60 | 73 74 20 74 65 73 74 5f 72 65 64 75 63 65 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e | st.test_reduce_builtin.zig</kbd> |
| abd80 | 0a 31 2f 31 20 74 65 73 74 5f 72 65 64 75 63 65 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 76 65 | .1/1.test_reduce_builtin.test.ve |
| abda0 | 63 74 6f 72 20 40 72 65 64 75 63 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 | ctor.@reduce...OK.All.1.tests.pa |
| abdc0 | 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>.... |
| abde0 | 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. |
| abe00 | 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 3c 2f 6c 69 3e | href="#Vectors">Vectors</a></li> |
| abe20 | 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 65 74 46 6c 6f 61 74 4d 6f 64 65 22 3e 40 73 65 | .<li><a.href="#setFloatMode">@se |
| abe40 | 74 46 6c 6f 61 74 4d 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 | tFloatMode</a></li>.</ul>....... |
| abe60 | 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 73 72 63 22 3e 3c 61 20 68 72 65 66 3d 22 23 | .........<h3.id="src"><a.href="# |
| abe80 | 74 6f 63 2d 73 72 63 22 3e 40 73 72 63 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | toc-src">@src</a>.<a.class="hdr" |
| abea0 | 20 68 72 65 66 3d 22 23 73 72 63 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | .href="#src">..</a></h3>........ |
| abec0 | 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 |
| abee0 | 74 69 6e 22 3e 40 73 72 63 3c 2f 73 70 61 6e 3e 28 29 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 53 | tin">@src</span>().std.builtin.S |
| abf00 | 6f 75 72 63 65 4c 6f 63 61 74 69 6f 6e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | ourceLocation</code></pre>...... |
| abf20 | 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 61 20 3c 63 6f 64 65 3e 53 6f 75 72 63 | .<p>.......Returns.a.<code>Sourc |
| abf40 | 65 4c 6f 63 61 74 69 6f 6e 3c 2f 63 6f 64 65 3e 20 73 74 72 75 63 74 20 72 65 70 72 65 73 65 6e | eLocation</code>.struct.represen |
| abf60 | 74 69 6e 67 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 27 73 20 6e 61 6d 65 20 61 6e 64 20 6c 6f 63 | ting.the.function's.name.and.loc |
| abf80 | 61 74 69 6f 6e 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 2e 20 54 68 69 73 20 6d | ation.in.the.source.code..This.m |
| abfa0 | 75 73 74 20 62 65 20 63 61 6c 6c 65 64 20 69 6e 20 61 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 | ust.be.called.in.a.function..... |
| abfc0 | 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 |
| abfe0 | 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 |
| ac000 | 69 6c 65 22 3e 74 65 73 74 5f 73 72 63 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e | ile">test_src_builtin.zig</cite> |
| ac020 | 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 |
| ac040 | 61 73 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.=. |
| ac060 | 3c 73 70 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 |
| ac080 | 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">& |
| ac0a0 | 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 |
| ac0c0 | 61 73 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 |
| ac0e0 | 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 |
| ac100 | 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 |
| ac120 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 73 72 63 26 71 75 6f 74 3b 3c | lass="tok-str">"@src"< |
| ac140 | 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 |
| ac160 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 64 6f 54 68 65 54 65 73 74 28 29 3b 0a 7d 0a 0a 3c 73 70 | ">try</span>.doTheTest();.}..<sp |
| ac180 | 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 |
| ac1a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 54 68 65 54 65 73 74 3c 2f 73 70 61 6e | n.class="tok-fn">doTheTest</span |
| ac1c0 | 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 |
| ac1e0 | 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 |
| ac200 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 72 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | w">const</span>.src.=.<span.clas |
| ac220 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 72 63 3c 2f 73 70 61 6e 3e 28 29 3b 0a 0a | s="tok-builtin">@src</span>();.. |
| ac240 | 20 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 |
| ac260 | 61 6e 3e 20 65 78 70 65 63 74 28 73 72 63 2e 6c 69 6e 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | an>.expect(src.line.==.<span.cla |
| ac280 | 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 20 20 20 20 3c | ss="tok-number">9</span>);.....< |
| ac2a0 | 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 |
| ac2c0 | 78 70 65 63 74 28 73 72 63 2e 63 6f 6c 75 6d 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | xpect(src.column.==.<span.class= |
| ac2e0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 37 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 | "tok-number">17</span>);.....<sp |
| ac300 | 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 |
| ac320 | 65 63 74 28 73 74 64 2e 6d 65 6d 2e 65 6e 64 73 57 69 74 68 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ect(std.mem.endsWith(<span.class |
| ac340 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 73 72 63 2e 66 6e 5f 6e 61 | ="tok-type">u8</span>,.src.fn_na |
| ac360 | 6d 65 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 | me,.<span.class="tok-str">" |
| ac380 | 64 6f 54 68 65 54 65 73 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 | doTheTest"</span>));.....<s |
| ac3a0 | 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 |
| ac3c0 | 70 65 63 74 28 73 74 64 2e 6d 65 6d 2e 65 6e 64 73 57 69 74 68 28 3c 73 70 61 6e 20 63 6c 61 73 | pect(std.mem.endsWith(<span.clas |
| ac3e0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 73 72 63 2e 66 69 6c 65 | s="tok-type">u8</span>,.src.file |
| ac400 | 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 | ,.<span.class="tok-str">"te |
| ac420 | 73 74 5f 73 72 63 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | st_src_builtin.zig"</span>) |
| ac440 | 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 |
| ac460 | 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"> |
| ac480 | 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>$.< |
| ac4a0 | 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 73 72 63 5f 62 75 69 6c 74 69 6e 2e 7a 69 | kbd>zig.test.test_src_builtin.zi |
| ac4c0 | 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 72 63 5f 62 75 69 6c 74 69 6e 2e 74 65 73 | g</kbd>.1/1.test_src_builtin.tes |
| ac4e0 | 74 2e 40 73 72 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 | t.@src...OK.All.1.tests.passed.. |
| ac500 | 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>.......... |
| ac520 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 73 71 72 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | .....<h3.id="sqrt"><a.href="#toc |
| ac540 | 2d 73 71 72 74 22 3e 40 73 71 72 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | -sqrt">@sqrt</a>.<a.class="hdr". |
| ac560 | 68 72 65 66 3d 22 23 73 71 72 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | href="#sqrt">..</a></h3>........ |
| ac580 | 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 |
| ac5a0 | 74 69 6e 22 3e 40 73 71 72 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 | tin">@sqrt</span>(value:.<span.c |
| ac5c0 | 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 |
| ac5e0 | 70 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< |
| ac600 | 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | /span>(value)</code></pre>...... |
| ac620 | 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 74 68 65 20 73 71 75 61 72 65 20 72 | .<p>.......Performs.the.square.r |
| ac640 | 6f 6f 74 20 6f 66 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 2e 20 | oot.of.a.floating.point.number.. |
| ac660 | 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 | Uses.a.dedicated.hardware.instru |
| ac680 | 63 74 69 6f 6e 0a 20 20 20 20 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 | ction.......when.available...... |
| ac6a0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 | ..</p>.......<p>.......Supports. |
| ac6c0 | 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 | <a.href="#Floats">Floats</a>.and |
| ac6e0 | 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 | .<a.href="#Vectors">Vectors</a>. |
| ac700 | 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 20 20 | of.floats........</p>........... |
| ac720 | 20 20 20 3c 68 33 20 69 64 3d 22 73 69 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 69 | ...<h3.id="sin"><a.href="#toc-si |
| ac740 | 6e 22 3e 40 73 69 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | n">@sin</a>.<a.class="hdr".href= |
| ac760 | 22 23 73 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 72 65 3e 3c | "#sin">..</a></h3>........<pre>< |
| ac780 | 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">@ |
| ac7a0 | 73 69 6e 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 | sin</span>(value:.<span.class="t |
| ac7c0 | 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 |
| ac7e0 | 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>( |
| ac800 | 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 20 | value)</code></pre>.......<p>... |
| ac820 | 20 20 20 20 53 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 | ....Sine.trigonometric.function. |
| ac840 | 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 |
| ac860 | 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 |
| ac880 | 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 |
| ac8a0 | 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 |
| ac8c0 | 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< |
| ac8e0 | 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 |
| ac900 | 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>.... |
| ac920 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 63 6f 73 22 3e 3c 61 20 68 72 65 66 3d | ...........<h3.id="cos"><a.href= |
| ac940 | 22 23 74 6f 63 2d 63 6f 73 22 3e 40 63 6f 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | "#toc-cos">@cos</a>.<a.class="hd |
| ac960 | 72 22 20 68 72 65 66 3d 22 23 63 6f 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 | r".href="#cos">..</a></h3>...... |
| ac980 | 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 |
| ac9a0 | 69 6c 74 69 6e 22 3e 40 63 6f 73 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 | iltin">@cos</span>(value:.<span. |
| ac9c0 | 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>).< |
| ac9e0 | 73 70 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 |
| aca00 | 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>..... |
| aca20 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 73 69 6e 65 20 74 72 69 67 6f 6e 6f 6d 65 74 72 69 63 | ..<p>.......Cosine.trigonometric |
| aca40 | 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 75 | .function.on.a.floating.point.nu |
| aca60 | 6d 62 65 72 20 69 6e 20 72 61 64 69 61 6e 73 2e 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 | mber.in.radians..Uses.a.dedicate |
| aca80 | 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 0a 20 20 20 20 20 20 77 68 65 | d.hardware.instruction.......whe |
| acaa0 | 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | n.available........</p>.......<p |
| acac0 | 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 | >.......Supports.<a.href="#Float |
| acae0 | 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 | s">Floats</a>.and.<a.href="#Vect |
| acb00 | 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 20 | ors">Vectors</a>.of.floats...... |
| acb20 | 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 74 61 6e | ..</p>...............<h3.id="tan |
| acb40 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 74 61 6e 22 3e 40 74 61 6e 3c 2f 61 3e 20 3c 61 | "><a.href="#toc-tan">@tan</a>.<a |
| acb60 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 74 61 6e 22 3e c2 a7 3c 2f 61 3e 3c | .class="hdr".href="#tan">..</a>< |
| acb80 | 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 |
| acba0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 61 6e 3c 2f 73 70 61 6e 3e 28 76 61 6c | ss="tok-builtin">@tan</span>(val |
| acbc0 | 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 |
| acbe0 | 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 69 | </span>).<span.class="tok-builti |
| acc00 | 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 3c | n">@TypeOf</span>(value)</code>< |
| acc20 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 61 6e 67 65 6e 74 20 74 72 | /pre>.......<p>.......Tangent.tr |
| acc40 | 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 69 | igonometric.function.on.a.floati |
| acc60 | 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 0a 20 20 20 20 | ng.point.number.in.radians...... |
| acc80 | 20 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 | ..Uses.a.dedicated.hardware.inst |
| acca0 | 72 75 63 74 69 6f 6e 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f | ruction.when.available........</ |
| accc0 | 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 68 | p>.......<p>.......Supports.<a.h |
| acce0 | 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. |
| acd00 | 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 |
| acd20 | 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>............... |
| acd40 | 3c 68 33 20 69 64 3d 22 65 78 70 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 70 22 3e | <h3.id="exp"><a.href="#toc-exp"> |
| acd60 | 40 65 78 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 65 | @exp</a>.<a.class="hdr".href="#e |
| acd80 | 78 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 6f 64 | xp">..</a></h3>........<pre><cod |
| acda0 | 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 78 70 | e><span.class="tok-builtin">@exp |
| acdc0 | 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- |
| acde0 | 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= |
| ace00 | 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 |
| ace20 | 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>...... |
| ace40 | 20 42 61 73 65 2d 65 20 65 78 70 6f 6e 65 6e 74 69 61 6c 20 66 75 6e 63 74 69 6f 6e 20 6f 6e 20 | .Base-e.exponential.function.on. |
| ace60 | 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 2e 20 55 73 65 73 20 61 20 | a.floating.point.number..Uses.a. |
| ace80 | 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 0a 20 | dedicated.hardware.instruction.. |
| acea0 | 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 2f 70 3e 0a | .....when.available........</p>. |
| acec0 | 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 72 65 66 | ......<p>.......Supports.<a.href |
| acee0 | 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 68 72 65 | ="#Floats">Floats</a>.and.<a.hre |
| acf00 | 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 6c 6f 61 | f="#Vectors">Vectors</a>.of.floa |
| acf20 | 74 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 20 3c 68 33 20 | ts........</p>..............<h3. |
| acf40 | 69 64 3d 22 65 78 70 32 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 70 32 22 3e 40 65 | id="exp2"><a.href="#toc-exp2">@e |
| acf60 | 78 70 32 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 | xp2</a>.<a.class="hdr".href="#ex |
| acf80 | 70 32 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 | p2">..</a></h3>........<pre><cod |
| acfa0 | 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 78 70 | e><span.class="tok-builtin">@exp |
| acfc0 | 32 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 | 2</span>(value:.<span.class="tok |
| acfe0 | 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 |
| ad000 | 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 |
| ad020 | 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>..... |
| ad040 | 20 20 42 61 73 65 2d 32 20 65 78 70 6f 6e 65 6e 74 69 61 6c 20 66 75 6e 63 74 69 6f 6e 20 6f 6e | ..Base-2.exponential.function.on |
| ad060 | 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 2e 20 55 73 65 73 20 61 | .a.floating.point.number..Uses.a |
| ad080 | 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 0a | .dedicated.hardware.instruction. |
| ad0a0 | 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 2f 70 3e | ......when.available........</p> |
| ad0c0 | 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 72 65 | .......<p>.......Supports.<a.hre |
| ad0e0 | 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 68 72 | f="#Floats">Floats</a>.and.<a.hr |
| ad100 | 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 6c 6f | ef="#Vectors">Vectors</a>.of.flo |
| ad120 | 61 74 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 20 3c 68 33 | ats........</p>..............<h3 |
| ad140 | 20 69 64 3d 22 6c 6f 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6c 6f 67 22 3e 40 6c 6f | .id="log"><a.href="#toc-log">@lo |
| ad160 | 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6c 6f 67 22 | g</a>.<a.class="hdr".href="#log" |
| ad180 | 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>< |
| ad1a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6c 6f 67 3c 2f 73 | span.class="tok-builtin">@log</s |
| ad1c0 | 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" |
| ad1e0 | 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 |
| ad200 | 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) |
| ad220 | 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 |
| ad240 | 74 75 72 6e 73 20 74 68 65 20 6e 61 74 75 72 61 6c 20 6c 6f 67 61 72 69 74 68 6d 20 6f 66 20 61 | turns.the.natural.logarithm.of.a |
| ad260 | 20 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 | .floating.point.number..Uses.a.d |
| ad280 | 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 0a 20 20 | edicated.hardware.instruction... |
| ad2a0 | 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 2f 70 3e 0a 20 | ....when.available........</p>.. |
| ad2c0 | 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 72 65 66 3d | .....<p>.......Supports.<a.href= |
| ad2e0 | 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 68 72 65 66 | "#Floats">Floats</a>.and.<a.href |
| ad300 | 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 6c 6f 61 74 | ="#Vectors">Vectors</a>.of.float |
| ad320 | 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 20 3c 68 33 20 69 | s........</p>..............<h3.i |
| ad340 | 64 3d 22 6c 6f 67 32 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6c 6f 67 32 22 3e 40 6c 6f | d="log2"><a.href="#toc-log2">@lo |
| ad360 | 67 32 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6c 6f 67 | g2</a>.<a.class="hdr".href="#log |
| ad380 | 32 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 | 2">..</a></h3>........<pre><code |
| ad3a0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6c 6f 67 32 | ><span.class="tok-builtin">@log2 |
| ad3c0 | 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- |
| ad3e0 | 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= |
| ad400 | 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 |
| ad420 | 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>...... |
| ad440 | 20 52 65 74 75 72 6e 73 20 74 68 65 20 6c 6f 67 61 72 69 74 68 6d 20 74 6f 20 74 68 65 20 62 61 | .Returns.the.logarithm.to.the.ba |
| ad460 | 73 65 20 32 20 6f 66 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 2e | se.2.of.a.floating.point.number. |
| ad480 | 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 | .Uses.a.dedicated.hardware.instr |
| ad4a0 | 75 63 74 69 6f 6e 0a 20 20 20 20 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 | uction.......when.available..... |
| ad4c0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 | ...</p>.......<p>.......Supports |
| ad4e0 | 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e | .<a.href="#Floats">Floats</a>.an |
| ad500 | 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e | d.<a.href="#Vectors">Vectors</a> |
| ad520 | 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 20 | .of.floats........</p>.......... |
| ad540 | 20 20 20 20 3c 68 33 20 69 64 3d 22 6c 6f 67 31 30 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | ....<h3.id="log10"><a.href="#toc |
| ad560 | 2d 6c 6f 67 31 30 22 3e 40 6c 6f 67 31 30 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | -log10">@log10</a>.<a.class="hdr |
| ad580 | 22 20 68 72 65 66 3d 22 23 6c 6f 67 31 30 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 | ".href="#log10">..</a></h3>..... |
| ad5a0 | 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 |
| ad5c0 | 75 69 6c 74 69 6e 22 3e 40 6c 6f 67 31 30 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 | uiltin">@log10</span>(value:.<sp |
| ad5e0 | 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> |
| ad600 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 | ).<span.class="tok-builtin">@Typ |
| ad620 | 65 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | eOf</span>(value)</code></pre>.. |
| ad640 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 74 68 65 20 6c 6f 67 61 72 | .....<p>.......Returns.the.logar |
| ad660 | 69 74 68 6d 20 74 6f 20 74 68 65 20 62 61 73 65 20 31 30 20 6f 66 20 61 20 66 6c 6f 61 74 69 6e | ithm.to.the.base.10.of.a.floatin |
| ad680 | 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 |
| ad6a0 | 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 |
| ad6c0 | 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> |
| ad6e0 | 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 |
| ad700 | 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 |
| ad720 | 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....... |
| ad740 | 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 61 62 73 22 3e | .</p>..............<h3.id="abs"> |
| ad760 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 62 73 22 3e 40 61 62 73 3c 2f 61 3e 20 3c 61 20 63 | <a.href="#toc-abs">@abs</a>.<a.c |
| ad780 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 61 62 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | lass="hdr".href="#abs">..</a></h |
| ad7a0 | 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 |
| ad7c0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 62 73 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 | ="tok-builtin">@abs</span>(value |
| ad7e0 | 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</ |
| ad800 | 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 |
| ad820 | 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 |
| ad840 | 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 74 68 65 20 61 62 73 6f 6c 75 74 65 20 76 61 6c | >.......Returns.the.absolute.val |
| ad860 | 75 65 20 6f 66 20 61 6e 20 69 6e 74 65 67 65 72 20 6f 72 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 | ue.of.an.integer.or.a.floating.p |
| ad880 | 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 61 | oint.number..Uses.a.dedicated.ha |
| ad8a0 | 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 76 | rdware.instruction.......when.av |
| ad8c0 | 61 69 6c 61 62 6c 65 2e 0a 0a 20 20 20 20 20 20 54 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 | ailable.........The.return.type. |
| ad8e0 | 69 73 20 61 6c 77 61 79 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 6f 66 | is.always.an.unsigned.integer.of |
| ad900 | 20 74 68 65 20 73 61 6d 65 20 62 69 74 20 77 69 64 74 68 20 61 73 20 74 68 65 20 6f 70 65 72 61 | .the.same.bit.width.as.the.opera |
| ad920 | 6e 64 20 69 66 20 74 68 65 20 6f 70 65 72 61 6e 64 20 69 73 20 61 6e 20 69 6e 74 65 67 65 72 2e | nd.if.the.operand.is.an.integer. |
| ad940 | 0a 20 20 20 20 20 20 55 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 6f 70 65 72 61 6e 64 73 | .......Unsigned.integer.operands |
| ad960 | 20 61 72 65 20 73 75 70 70 6f 72 74 65 64 2e 20 54 68 65 20 62 75 69 6c 74 69 6e 20 63 61 6e 6e | .are.supported..The.builtin.cann |
| ad980 | 6f 74 20 6f 76 65 72 66 6c 6f 77 20 66 6f 72 20 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 6f | ot.overflow.for.signed.integer.o |
| ad9a0 | 70 65 72 61 6e 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 | perands........</p>.......<p>... |
| ad9c0 | 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 46 | ....Supports.<a.href="#Floats">F |
| ad9e0 | 6c 6f 61 74 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 | loats</a>,.<a.href="#Integers">I |
| ada00 | 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 56 65 63 74 6f 72 | ntegers</a>.and.<a.href="#Vector |
| ada20 | 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 20 6f 72 20 69 6e 74 65 | s">Vectors</a>.of.floats.or.inte |
| ada40 | 67 65 72 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 20 3c 68 | gers........</p>..............<h |
| ada60 | 33 20 69 64 3d 22 66 6c 6f 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 6c 6f 6f 72 | 3.id="floor"><a.href="#toc-floor |
| ada80 | 22 3e 40 66 6c 6f 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | ">@floor</a>.<a.class="hdr".href |
| adaa0 | 3d 22 23 66 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 | ="#floor">..</a></h3>........<pr |
| adac0 | 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 |
| adae0 | 22 3e 40 66 6c 6f 6f 72 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 | ">@floor</span>(value:.<span.cla |
| adb00 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 | ss="tok-kw">anytype</span>).<spa |
| adb20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 | n.class="tok-builtin">@TypeOf</s |
| adb40 | 70 61 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c | pan>(value)</code></pre>.......< |
| adb60 | 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 74 68 65 20 6c 61 72 67 65 73 74 20 69 6e 74 | p>.......Returns.the.largest.int |
| adb80 | 65 67 72 61 6c 20 76 61 6c 75 65 20 6e 6f 74 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 74 68 65 | egral.value.not.greater.than.the |
| adba0 | 20 67 69 76 65 6e 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 2e 0a 20 20 | .given.floating.point.number.... |
| adbc0 | 20 20 20 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e | ....Uses.a.dedicated.hardware.in |
| adbe0 | 73 74 72 75 63 74 69 6f 6e 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 20 20 | struction.when.available........ |
| adc00 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 3c 61 | </p>.......<p>.......Supports.<a |
| adc20 | 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 20 3c | .href="#Floats">Floats</a>.and.< |
| adc40 | 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 6f 66 | a.href="#Vectors">Vectors</a>.of |
| adc60 | 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 20 20 20 20 | .floats........</p>............. |
| adc80 | 20 3c 68 33 20 69 64 3d 22 63 65 69 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 65 69 | .<h3.id="ceil"><a.href="#toc-cei |
| adca0 | 6c 22 3e 40 63 65 69 6c 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | l">@ceil</a>.<a.class="hdr".href |
| adcc0 | 3d 22 23 63 65 69 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 | ="#ceil">..</a></h3>........<pre |
| adce0 | 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" |
| add00 | 3e 40 63 65 69 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 73 73 | >@ceil</span>(value:.<span.class |
| add20 | 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. |
| add40 | 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 |
| add60 | 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e | n>(value)</code></pre>.......<p> |
| add80 | 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 74 68 65 20 73 6d 61 6c 6c 65 73 74 20 69 6e 74 65 | .......Returns.the.smallest.inte |
| adda0 | 67 72 61 6c 20 76 61 6c 75 65 20 6e 6f 74 20 6c 65 73 73 20 74 68 61 6e 20 74 68 65 20 67 69 76 | gral.value.not.less.than.the.giv |
| addc0 | 65 6e 20 66 6c 6f 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 | en.floating.point.number........ |
| adde0 | 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 | Uses.a.dedicated.hardware.instru |
| ade00 | 63 74 69 6f 6e 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | ction.when.available........</p> |
| ade20 | 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 72 65 | .......<p>.......Supports.<a.hre |
| ade40 | 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 68 72 | f="#Floats">Floats</a>.and.<a.hr |
| ade60 | 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 6c 6f | ef="#Vectors">Vectors</a>.of.flo |
| ade80 | 61 74 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 20 3c 68 33 | ats........</p>..............<h3 |
| adea0 | 20 69 64 3d 22 74 72 75 6e 63 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 74 72 75 6e 63 22 | .id="trunc"><a.href="#toc-trunc" |
| adec0 | 3e 40 74 72 75 6e 63 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | >@trunc</a>.<a.class="hdr".href= |
| adee0 | 22 23 74 72 75 6e 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 | "#trunc">..</a></h3>........<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 62 75 69 6c 74 69 6e 22 | ><code><span.class="tok-builtin" |
| adf20 | 3e 40 74 72 75 6e 63 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 | >@trunc</span>(value:.<span.clas |
| adf40 | 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 |
| adf60 | 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 |
| adf80 | 61 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 | an>(value)</code></pre>.......<p |
| adfa0 | 3e 0a 20 20 20 20 20 20 52 6f 75 6e 64 73 20 74 68 65 20 67 69 76 65 6e 20 66 6c 6f 61 74 69 6e | >.......Rounds.the.given.floatin |
| adfc0 | 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 20 74 6f 20 61 6e 20 69 6e 74 65 67 65 72 2c 20 74 6f | g.point.number.to.an.integer,.to |
| adfe0 | 77 61 72 64 73 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 | wards.zero........Uses.a.dedicat |
| ae000 | 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 77 68 65 6e 20 61 76 61 | ed.hardware.instruction.when.ava |
| ae020 | 69 6c 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | ilable........</p>.......<p>.... |
| ae040 | 20 20 20 53 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c | ...Supports.<a.href="#Floats">Fl |
| ae060 | 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e | oats</a>.and.<a.href="#Vectors"> |
| ae080 | 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 2f 70 | Vectors</a>.of.floats........</p |
| ae0a0 | 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 72 6f 75 6e 64 22 3e 3c 61 | >..............<h3.id="round"><a |
| ae0c0 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 72 6f 75 6e 64 22 3e 40 72 6f 75 6e 64 3c 2f 61 3e 20 3c 61 | .href="#toc-round">@round</a>.<a |
| ae0e0 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 72 6f 75 6e 64 22 3e c2 a7 3c 2f 61 | .class="hdr".href="#round">..</a |
| ae100 | 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 |
| ae120 | 6c 61 73 73 3d 22 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 | lass="tok-builtin">@round</span> |
| ae140 | 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 |
| ae160 | 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 |
| ae180 | 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 |
| ae1a0 | 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 6f 75 6e 64 73 | de></pre>.......<p>.......Rounds |
| ae1c0 | 20 74 68 65 20 67 69 76 65 6e 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 | .the.given.floating.point.number |
| ae1e0 | 20 74 6f 20 61 6e 20 69 6e 74 65 67 65 72 2c 20 61 77 61 79 20 66 72 6f 6d 20 7a 65 72 6f 2e 20 | .to.an.integer,.away.from.zero.. |
| ae200 | 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 | Uses.a.dedicated.hardware.instru |
| ae220 | 63 74 69 6f 6e 0a 20 20 20 20 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 | ction.......when.available...... |
| ae240 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 | ..</p>.......<p>.......Supports. |
| ae260 | 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 | <a.href="#Floats">Floats</a>.and |
| ae280 | 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 | .<a.href="#Vectors">Vectors</a>. |
| ae2a0 | 6f 66 20 66 6c 6f 61 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 | of.floats........</p>........... |
| ae2c0 | 20 20 20 20 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 | ....<h3.id="subWithOverflow"><a. |
| ae2e0 | 68 72 65 66 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 | href="#toc-subWithOverflow">@sub |
| ae300 | 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 22 20 | WithOverflow</a>.<a.class="hdr". |
| ae320 | 68 72 65 66 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 | href="#subWithOverflow">..</a></ |
| ae340 | 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 73 | h3>........<pre><code><span.clas |
| ae360 | 73 3d 22 74 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 | s="tok-builtin">@subWithOverflow |
| ae380 | 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 22 3e | </span>(a:.<span.class="tok-kw"> |
| ae3a0 | 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 3d 22 | anytype</span>,.b:.<span.class=" |
| ae3c0 | 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 |
| ae3e0 | 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 73 70 | ass="tok-kw">struct</span>.{.<sp |
| ae400 | 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</ |
| ae420 | 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 74 79 | span>(a,.b),.<span.class="tok-ty |
| ae440 | 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 20 20 | pe">u1</span>.}</code></pre>.... |
| ae460 | 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 2d 20 | ...<p>.......Performs.<code>a.-. |
| ae480 | 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 69 74 | b</code>.and.returns.a.tuple.wit |
| ae4a0 | 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 65 72 | h.the.result.and.a.possible.over |
| ae4c0 | 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 20 20 | flow.bit........</p>............ |
| ae4e0 | 20 20 20 3c 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 | ...<h3.id="tagName"><a.href="#to |
| ae500 | 63 2d 74 61 67 4e 61 6d 65 22 3e 40 74 61 67 4e 61 6d 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | c-tagName">@tagName</a>.<a.class |
| ae520 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 74 61 67 4e 61 6d 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | ="hdr".href="#tagName">..</a></h |
| ae540 | 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 |
| ae560 | 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 6e 3e 28 76 | ="tok-builtin">@tagName</span>(v |
| ae580 | 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 |
| ae5a0 | 70 65 3c 2f 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 | pe</span>).[:<span.class="tok-nu |
| ae5c0 | 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- |
| ae5e0 | 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 |
| ae600 | 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 2f 70 72 65 3e 0a 20 | k-type">u8</span></code></pre>.. |
| ae620 | 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 6e 75 6d 20 | .....<p>.......Converts.an.enum. |
| ae640 | 76 61 6c 75 65 20 6f 72 20 75 6e 69 6f 6e 20 76 61 6c 75 65 20 74 6f 20 61 20 73 74 72 69 6e 67 | value.or.union.value.to.a.string |
| ae660 | 20 6c 69 74 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 | .literal.representing.the.name.< |
| ae680 | 2f 70 3e 3c 70 3e 49 66 20 74 68 65 20 65 6e 75 6d 20 69 73 20 6e 6f 6e 2d 65 78 68 61 75 73 74 | /p><p>If.the.enum.is.non-exhaust |
| ae6a0 | 69 76 65 20 61 6e 64 20 74 68 65 20 74 61 67 20 76 61 6c 75 65 20 64 6f 65 73 20 6e 6f 74 20 6d | ive.and.the.tag.value.does.not.m |
| ae6c0 | 61 70 20 74 6f 20 61 20 6e 61 6d 65 2c 20 69 74 20 69 6e 76 6f 6b 65 73 20 73 61 66 65 74 79 2d | ap.to.a.name,.it.invokes.safety- |
| ae6e0 | 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 | checked.<a.href="#Undefined-Beha |
| ae700 | 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 | vior">Undefined.Behavior</a>.... |
| ae720 | 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 54 | ....</p>...............<h3.id="T |
| ae740 | 68 69 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 68 69 73 22 3e 40 54 68 69 73 3c 2f | his"><a.href="#toc-This">@This</ |
| ae760 | 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 68 69 73 22 3e c2 | a>.<a.class="hdr".href="#This">. |
| ae780 | 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 |
| ae7a0 | 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 69 73 3c 2f 73 70 | an.class="tok-builtin">@This</sp |
| ae7c0 | 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 74 79 70 | an>().<span.class="tok-type">typ |
| ae7e0 | 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>. |
| ae800 | 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 74 68 65 20 69 6e 6e 65 72 6d 6f 73 74 20 73 74 72 75 | ......Returns.the.innermost.stru |
| ae820 | 63 74 2c 20 65 6e 75 6d 2c 20 6f 72 20 75 6e 69 6f 6e 20 74 68 61 74 20 74 68 69 73 20 66 75 6e | ct,.enum,.or.union.that.this.fun |
| ae840 | 63 74 69 6f 6e 20 63 61 6c 6c 20 69 73 20 69 6e 73 69 64 65 2e 0a 20 20 20 20 20 20 54 68 69 73 | ction.call.is.inside........This |
| ae860 | 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c 20 66 6f 72 20 61 6e 20 61 6e 6f 6e 79 6d 6f 75 73 20 | .can.be.useful.for.an.anonymous. |
| ae880 | 73 74 72 75 63 74 20 74 68 61 74 20 6e 65 65 64 73 20 74 6f 20 72 65 66 65 72 20 74 6f 20 69 74 | struct.that.needs.to.refer.to.it |
| ae8a0 | 73 65 6c 66 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 | self:.......</p>.......<figure>< |
| ae8c0 | 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 |
| ae8e0 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 74 68 69 73 5f 62 75 69 6c 74 69 6e 2e | .class="file">test_this_builtin. |
| ae900 | 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 |
| ae920 | 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 |
| ae940 | 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 |
| ae960 | 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=" |
| ae980 | 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>) |
| ae9a0 | 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 |
| ae9c0 | 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; |
| ae9e0 | 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 |
| aea00 | 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">"@ |
| aea20 | 54 68 69 73 28 29 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | This()"</span>.{.....<span. |
| aea40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 74 65 6d 73 20 | class="tok-kw">var</span>.items. |
| aea60 | 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 3c | =.[_]<span.class="tok-type">i32< |
| aea80 | 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 22 | /span>{.<span.class="tok-number" |
| aeaa0 | 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 62 | >1</span>,.<span.class="tok-numb |
| aeac0 | 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 6e | er">2</span>,.<span.class="tok-n |
| aeae0 | 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 6f | umber">3</span>,.<span.class="to |
| aeb00 | 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 73 70 61 6e 20 | k-number">4</span>.};.....<span. |
| aeb20 | 63 6c 61 73 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 73 74 | class="tok-kw">const</span>.list |
| aeb40 | 20 3d 20 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | .=.List(<span.class="tok-type">i |
| aeb60 | 33 32 3c 2f 73 70 61 6e 3e 29 7b 20 2e 69 74 65 6d 73 20 3d 20 69 74 65 6d 73 5b 3c 73 70 61 6e | 32</span>){..items.=.items[<span |
| aeb80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 20 | .class="tok-number">0</span>..]. |
| aeba0 | 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c | };.....<span.class="tok-kw">try< |
| aebc0 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6c 69 73 74 2e 6c 65 6e 67 74 68 28 29 20 3d 3d 20 3c | /span>.expect(list.length().==.< |
| aebe0 | 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> |
| aec00 | 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 |
| aec20 | 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 2f | pan>.<span.class="tok-fn">List</ |
| aec40 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 | span>(<span.class="tok-kw">compt |
| aec60 | 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ime</span>.T:.<span.class="tok-t |
| aec80 | 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 74 | ype">type</span>).<span.class="t |
| aeca0 | 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | ok-type">type</span>.{.....<span |
| aecc0 | 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 |
| aece0 | 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> |
| aed00 | 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"> |
| aed20 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 65 6c 66 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | const</span>.Self.=.<span.class= |
| aed40 | 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 3b 0a 0a 20 | "tok-builtin">@This</span>();... |
| aed60 | 20 20 20 20 20 20 20 69 74 65 6d 73 3a 20 5b 5d 54 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | .......items:.[]T,..........<spa |
| aed80 | 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 |
| aeda0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6c 65 6e 67 74 68 3c 2f 73 70 61 6e 3e 28 73 65 | .class="tok-fn">length</span>(se |
| aedc0 | 6c 66 3a 20 53 65 6c 66 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | lf:.Self).<span.class="tok-type" |
| aede0 | 3e 75 73 69 7a 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 | >usize</span>.{.............<spa |
| aee00 | 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 73 | n.class="tok-kw">return</span>.s |
| aee20 | 65 6c 66 2e 69 74 65 6d 73 2e 6c 65 6e 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 3b 0a | elf.items.len;.........}.....};. |
| aee40 | 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>< |
| aee60 | 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 |
| aee80 | 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 |
| aeea0 | 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 74 68 69 73 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c | >zig.test.test_this_builtin.zig< |
| aeec0 | 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 74 68 69 73 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 | /kbd>.1/1.test_this_builtin.test |
| aeee0 | 2e 40 54 68 69 73 28 29 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 | .@This()...OK.All.1.tests.passed |
| aef00 | 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>........ |
| aef20 | 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | <p>.......When.<code><span.class |
| aef40 | 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 3c 2f 63 | ="tok-builtin">@This</span>()</c |
| aef60 | 6f 64 65 3e 20 69 73 20 75 73 65 64 20 61 74 20 66 69 6c 65 20 73 63 6f 70 65 2c 20 69 74 20 72 | ode>.is.used.at.file.scope,.it.r |
| aef80 | 65 74 75 72 6e 73 20 61 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 74 68 65 0a 20 20 20 20 20 20 | eturns.a.reference.to.the....... |
| aefa0 | 73 74 72 75 63 74 20 74 68 61 74 20 63 6f 72 72 65 73 70 6f 6e 64 73 20 74 6f 20 74 68 65 20 63 | struct.that.corresponds.to.the.c |
| aefc0 | 75 72 72 65 6e 74 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a | urrent.file........</p>......... |
| aefe0 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 74 72 61 70 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | ......<h3.id="trap"><a.href="#to |
| af000 | 63 2d 74 72 61 70 22 3e 40 74 72 61 70 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | c-trap">@trap</a>.<a.class="hdr" |
| af020 | 20 68 72 65 66 3d 22 23 74 72 61 70 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | .href="#trap">..</a></h3>....... |
| af040 | 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 |
| af060 | 6c 74 69 6e 22 3e 40 74 72 61 70 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ltin">@trap</span>().<span.class |
| af080 | 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 2f 63 6f 64 | ="tok-type">noreturn</span></cod |
| af0a0 | 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 75 | e></pre>.......<p>.......This.fu |
| af0c0 | 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 66 | nction.inserts.a.platform-specif |
| af0e0 | 69 63 20 74 72 61 70 2f 6a 61 6d 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 77 68 69 63 68 20 63 61 | ic.trap/jam.instruction.which.ca |
| af100 | 6e 20 62 65 20 75 73 65 64 20 74 6f 20 65 78 69 74 20 74 68 65 20 70 72 6f 67 72 61 6d 20 61 62 | n.be.used.to.exit.the.program.ab |
| af120 | 6e 6f 72 6d 61 6c 6c 79 2e 0a 20 20 20 20 20 20 54 68 69 73 20 6d 61 79 20 62 65 20 69 6d 70 6c | normally........This.may.be.impl |
| af140 | 65 6d 65 6e 74 65 64 20 62 79 20 65 78 70 6c 69 63 69 74 6c 79 20 65 6d 69 74 74 69 6e 67 20 61 | emented.by.explicitly.emitting.a |
| af160 | 6e 20 69 6e 76 61 6c 69 64 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 77 68 69 63 68 20 6d 61 79 20 | n.invalid.instruction.which.may. |
| af180 | 63 61 75 73 65 20 61 6e 20 69 6c 6c 65 67 61 6c 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 65 78 63 | cause.an.illegal.instruction.exc |
| af1a0 | 65 70 74 69 6f 6e 20 6f 66 20 73 6f 6d 65 20 73 6f 72 74 2e 0a 20 20 20 20 20 20 55 6e 6c 69 6b | eption.of.some.sort........Unlik |
| af1c0 | 65 20 66 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 | e.for.<code><span.class="tok-bui |
| af1e0 | 6c 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 3c 2f 63 6f 64 65 | ltin">@breakpoint</span>()</code |
| af200 | 3e 2c 20 65 78 65 63 75 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 63 6f 6e 74 69 6e 75 65 20 61 | >,.execution.does.not.continue.a |
| af220 | 66 74 65 72 20 74 68 69 73 20 70 6f 69 6e 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | fter.this.point........</p>..... |
| af240 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 75 74 73 69 64 65 20 66 75 6e 63 74 69 6f 6e 20 73 63 6f | ..<p>.......Outside.function.sco |
| af260 | 70 65 2c 20 74 68 69 73 20 62 75 69 6c 74 69 6e 20 63 61 75 73 65 73 20 61 20 63 6f 6d 70 69 6c | pe,.this.builtin.causes.a.compil |
| af280 | 65 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 | e.error........</p>.......<p>See |
| af2a0 | 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 72 65 | .also:</p><ul>.<li><a.href="#bre |
| af2c0 | 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 3c 2f | akpoint">@breakpoint</a></li>.</ |
| af2e0 | 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 74 72 75 6e 63 | ul>................<h3.id="trunc |
| af300 | 61 74 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 74 72 75 6e 63 61 74 65 22 3e 40 74 72 | ate"><a.href="#toc-truncate">@tr |
| af320 | 75 6e 63 61 74 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | uncate</a>.<a.class="hdr".href=" |
| af340 | 23 74 72 75 6e 63 61 74 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 | #truncate">..</a></h3>........<p |
| af360 | 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 |
| af380 | 6e 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f 73 70 61 6e 3e 28 69 6e 74 65 67 65 72 3a 20 3c 73 70 | n">@truncate</span>(integer:.<sp |
| af3a0 | 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> |
| af3c0 | 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 3c 2f | ).<span.class="tok-kw">anytype</ |
| af3e0 | 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>.... |
| af400 | 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 74 72 75 6e 63 61 74 65 73 20 62 69 74 73 20 | ...This.function.truncates.bits. |
| af420 | 66 72 6f 6d 20 61 6e 20 69 6e 74 65 67 65 72 20 74 79 70 65 2c 20 72 65 73 75 6c 74 69 6e 67 20 | from.an.integer.type,.resulting. |
| af440 | 69 6e 20 61 20 73 6d 61 6c 6c 65 72 0a 20 20 20 20 20 20 6f 72 20 73 61 6d 65 2d 73 69 7a 65 64 | in.a.smaller.......or.same-sized |
| af460 | 20 69 6e 74 65 67 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 | .integer.type..The.return.type.i |
| af480 | 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 20 20 20 20 | s.the.inferred.result.type...... |
| af4a0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 | ..</p>.......<p>.......This.func |
| af4c0 | 74 69 6f 6e 20 61 6c 77 61 79 73 20 74 72 75 6e 63 61 74 65 73 20 74 68 65 20 73 69 67 6e 69 66 | tion.always.truncates.the.signif |
| af4e0 | 69 63 61 6e 74 20 62 69 74 73 20 6f 66 20 74 68 65 20 69 6e 74 65 67 65 72 2c 20 72 65 67 61 72 | icant.bits.of.the.integer,.regar |
| af500 | 64 6c 65 73 73 0a 20 20 20 20 20 20 6f 66 20 65 6e 64 69 61 6e 6e 65 73 73 20 6f 6e 20 74 68 65 | dless.......of.endianness.on.the |
| af520 | 20 74 61 72 67 65 74 20 70 6c 61 74 66 6f 72 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | .target.platform........</p>.... |
| af540 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 61 6c 6c 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | ...<p>.......Calling.<code><span |
| af560 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f | .class="tok-builtin">@truncate</ |
| af580 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 6e 20 61 20 6e 75 6d 62 65 72 20 6f 75 74 20 6f 66 20 | span></code>.on.a.number.out.of. |
| af5a0 | 72 61 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 20 69 73 | range.of.the.destination.type.is |
| af5c0 | 20 77 65 6c 6c 20 64 65 66 69 6e 65 64 20 61 6e 64 20 77 6f 72 6b 69 6e 67 20 63 6f 64 65 3a 0a | .well.defined.and.working.code:. |
| af5e0 | 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 |
| af600 | 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 |
| af620 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 74 72 75 6e 63 61 74 65 5f 62 75 69 6c 74 69 6e 2e 7a 69 | ="file">test_truncate_builtin.zi |
| af640 | 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> |
| af660 | 3c 73 70 61 6e 20 63 6c 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 |
| af680 | 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 |
| af6a0 | 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 |
| af6c0 | 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>);. |
| af6e0 | 3c 73 70 61 6e 20 63 6c 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 |
| af700 | 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a | >.expect.=.std.testing.expect;.. |
| af720 | 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> |
| af740 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 74 | .<span.class="tok-str">"int |
| af760 | 65 67 65 72 20 74 72 75 6e 63 61 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | eger.truncation"</span>.{.. |
| af780 | 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 |
| af7a0 | 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | pan>.a:.<span.class="tok-type">u |
| af7c0 | 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 75 6d | 16</span>.=.<span.class="tok-num |
| af7e0 | 62 65 72 22 3e 30 78 61 62 63 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ber">0xabcd</span>;.....<span.cl |
| af800 | 61 73 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 3c 73 70 | ass="tok-kw">const</span>.b:.<sp |
| af820 | 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>.=. |
| af840 | 3c 73 70 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 | <span.class="tok-builtin">@trunc |
| af860 | 61 74 65 3c 2f 73 70 61 6e 3e 28 61 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ate</span>(a);.....<span.class=" |
| af880 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 62 20 3d 3d 20 3c | tok-kw">try</span>.expect(b.==.< |
| af8a0 | 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 63 64 3c 2f 73 70 | span.class="tok-number">0xcd</sp |
| af8c0 | 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 |
| af8e0 | 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 |
| af900 | 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> |
| af920 | 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 74 72 75 6e 63 61 74 65 5f 62 75 | $.<kbd>zig.test.test_truncate_bu |
| af940 | 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 74 72 75 6e 63 61 74 | iltin.zig</kbd>.1/1.test_truncat |
| af960 | 65 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 69 6e 74 65 67 65 72 20 74 72 75 6e 63 61 74 69 6f | e_builtin.test.integer.truncatio |
| af980 | 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 73 61 6d | n...OK.All.1.tests.passed..</sam |
| af9a0 | 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>.... |
| af9c0 | 20 20 20 55 73 65 20 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 | ...Use.<a.href="#intCast">@intCa |
| af9e0 | 73 74 3c 2f 61 3e 20 74 6f 20 63 6f 6e 76 65 72 74 20 6e 75 6d 62 65 72 73 20 67 75 61 72 61 6e | st</a>.to.convert.numbers.guaran |
| afa00 | 74 65 65 64 20 74 6f 20 66 69 74 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 | teed.to.fit.the.destination.type |
| afa20 | 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 69 | ........</p>...............<h3.i |
| afa40 | 64 3d 22 54 79 70 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 22 3e 40 54 79 | d="Type"><a.href="#toc-Type">@Ty |
| afa60 | 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 54 79 70 | pe</a>.<a.class="hdr".href="#Typ |
| afa80 | 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 |
| afaa0 | 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 |
| afac0 | 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 |
| afae0 | 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 69 6e 66 6f 3a 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 54 | ptime</span>.info:.std.builtin.T |
| afb00 | 79 70 65 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 | ype).<span.class="tok-type">type |
| afb20 | 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>.. |
| afb40 | 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 74 68 65 20 69 6e 76 65 72 73 | .....This.function.is.the.invers |
| afb60 | 65 20 6f 66 20 3c 61 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 49 6e | e.of.<a.href="#typeInfo">@typeIn |
| afb80 | 66 6f 3c 2f 61 3e 2e 20 49 74 20 72 65 69 66 69 65 73 20 74 79 70 65 20 69 6e 66 6f 72 6d 61 74 | fo</a>..It.reifies.type.informat |
| afba0 | 69 6f 6e 0a 20 20 20 20 20 20 69 6e 74 6f 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | ion.......into.a.<code><span.cla |
| afbc0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ss="tok-type">type</span></code> |
| afbe0 | 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 20 | ........</p>.......<p>.......It. |
| afc00 | 69 73 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 | is.available.for.the.following.t |
| afc20 | 79 70 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 | ypes:.......</p>.......<ul>..... |
| afc40 | 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 |
| afc60 | 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 6c 69 3e 0a 20 | -type">type</span></code></li>.. |
| afc80 | 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=" |
| afca0 | 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | tok-type">noreturn</span></code> |
| afcc0 | 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. |
| afce0 | 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 |
| afd00 | 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 |
| afd20 | 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>< |
| afd40 | 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 61 20 68 72 65 | /code></li>...........<li><a.hre |
| afd60 | 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 2d 20 54 68 65 | f="#Integers">Integers</a>.-.The |
| afd80 | 20 6d 61 78 69 6d 75 6d 20 62 69 74 20 63 6f 75 6e 74 20 66 6f 72 20 61 6e 20 69 6e 74 65 67 65 | .maximum.bit.count.for.an.intege |
| afda0 | 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 22 74 6f 6b | r.type.is.<code><span.class="tok |
| afdc0 | 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 2e 3c 2f 6c | -number">65535</span></code>.</l |
| afde0 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 | i>...........<li><a.href="#Float |
| afe00 | 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 3c 6c 69 | s">Floats</a></li>...........<li |
| afe20 | 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 72 73 3c 2f 61 | ><a.href="#Pointers">Pointers</a |
| afe40 | 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 6e | ></li>...........<li><code><span |
| afe60 | 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</ |
| afe80 | 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> |
| afea0 | 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 |
| afec0 | 70 74 69 6d 65 5f 66 6c 6f 61 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 | ptime_float</span></code></li>.. |
| afee0 | 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=" |
| aff00 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | tok-builtin">@TypeOf</span>(<spa |
| aff20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 | n.class="tok-null">undefined</sp |
| aff40 | 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 3c 6c 69 3e 3c | an>)</code></li>...........<li>< |
| aff60 | 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">@ |
| aff80 | 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 22 74 6f 6b 2d 6e | TypeOf</span>(<span.class="tok-n |
| affa0 | 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 | ull">null</span>)</code></li>... |
| affc0 | 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 3e 41 72 | ........<li><a.href="#Arrays">Ar |
| affe0 | 72 61 79 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 | rays</a></li>...........<li><a.h |
| b0000 | 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f | ref="#Optionals">Optionals</a></ |
| b0020 | 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 72 6f | li>...........<li><a.href="#Erro |
| b0040 | 72 2d 53 65 74 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 53 65 74 20 54 79 70 65 3c 2f 61 3e 3c 2f | r-Set-Type">Error.Set.Type</a></ |
| b0060 | 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 72 6f | li>...........<li><a.href="#Erro |
| b0080 | 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f | r-Union-Type">Error.Union.Type</ |
| b00a0 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | a></li>...........<li><a.href="# |
| b00c0 | 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 20 20 20 20 20 20 | Vectors">Vectors</a></li>....... |
| b00e0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 6f 70 61 71 75 65 22 3e 6f 70 61 71 75 65 | ....<li><a.href="#opaque">opaque |
| b0100 | 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 63 6f 64 65 3e 3c 73 | </a></li>...........<li><code><s |
| b0120 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 | pan.class="tok-kw">anyframe</spa |
| b0140 | 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 61 20 | n></code></li>...........<li><a. |
| b0160 | 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 3c 2f 6c 69 3e 0a 20 | href="#struct">struct</a></li>.. |
| b0180 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 | .........<li><a.href="#enum">enu |
| b01a0 | 6d 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 | m</a></li>...........<li><a.href |
| b01c0 | 3d 22 23 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c | ="#Enum-Literals">Enum.Literals< |
| b01e0 | 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 | /a></li>...........<li><a.href=" |
| b0200 | 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 20 20 20 20 20 20 20 | #union">union</a></li>.......... |
| b0220 | 20 3c 6c 69 3e 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 69 | .<li><a.href="#Functions">Functi |
| b0240 | 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a | ons</a></li>.......</ul>........ |
| b0260 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 74 79 70 65 49 6e 66 6f 22 3e 3c 61 20 68 72 65 66 3d | ......<h3.id="typeInfo"><a.href= |
| b0280 | 22 23 74 6f 63 2d 74 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 61 3e 20 3c 61 | "#toc-typeInfo">@typeInfo</a>.<a |
| b02a0 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e c2 a7 | .class="hdr".href="#typeInfo">.. |
| b02c0 | 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 |
| b02e0 | 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< |
| b0300 | 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 |
| b0320 | 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- |
| b0340 | 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 54 | type">type</span>).std.builtin.T |
| b0360 | 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 20 | ype</code></pre>.......<p>...... |
| b0380 | 20 50 72 6f 76 69 64 65 73 20 74 79 70 65 20 72 65 66 6c 65 63 74 69 6f 6e 2e 0a 20 20 20 20 20 | .Provides.type.reflection....... |
| b03a0 | 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 65 20 69 6e 66 6f 72 | .</p>.......<p>.......Type.infor |
| b03c0 | 6d 61 74 69 6f 6e 20 6f 66 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 73 74 72 75 | mation.of.<a.href="#struct">stru |
| b03e0 | 63 74 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 73 | cts</a>,.<a.href="#union">unions |
| b0400 | 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 73 3c 2f 61 3e 2c | </a>,.<a.href="#enum">enums</a>, |
| b0420 | 20 61 6e 64 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 74 2d 54 | .and.......<a.href="#Error-Set-T |
| b0440 | 79 70 65 22 3e 65 72 72 6f 72 20 73 65 74 73 3c 2f 61 3e 20 68 61 73 20 66 69 65 6c 64 73 20 77 | ype">error.sets</a>.has.fields.w |
| b0460 | 68 69 63 68 20 61 72 65 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 69 6e 20 74 68 65 | hich.are.guaranteed.to.be.in.the |
| b0480 | 20 73 61 6d 65 0a 20 20 20 20 20 20 6f 72 64 65 72 20 61 73 20 61 70 70 65 61 72 61 6e 63 65 20 | .same.......order.as.appearance. |
| b04a0 | 69 6e 20 74 68 65 20 73 6f 75 72 63 65 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | in.the.source.file........</p>.. |
| b04c0 | 20 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 | .....<p>.......Type.information. |
| b04e0 | 6f 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 | of.<a.href="#struct">structs</a> |
| b0500 | 2c 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 | ,.<a.href="#union">unions</a>,.< |
| b0520 | 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 61 6e 64 0a 20 20 | a.href="#enum">enums</a>,.and... |
| b0540 | 20 20 20 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 73 3c 2f 61 | ....<a.href="#opaque">opaques</a |
| b0560 | 3e 20 68 61 73 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2c 20 77 68 69 63 68 20 61 72 65 20 61 6c | >.has.declarations,.which.are.al |
| b0580 | 73 6f 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 | so.guaranteed.to.be.in.the.same. |
| b05a0 | 20 20 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 | ......order.as.appearance.in.the |
| b05c0 | 20 73 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 0a | .source.file........</p>........ |
| b05e0 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 74 79 70 65 4e 61 6d 65 22 3e 3c 61 20 68 72 65 66 | .......<h3.id="typeName"><a.href |
| b0600 | 3d 22 23 74 6f 63 2d 74 79 70 65 4e 61 6d 65 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 61 3e 20 3c | ="#toc-typeName">@typeName</a>.< |
| b0620 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 74 79 70 65 4e 61 6d 65 22 3e c2 | a.class="hdr".href="#typeName">. |
| b0640 | 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 |
| b0660 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e 61 6d 65 | an.class="tok-builtin">@typeName |
| b0680 | 3c 2f 73 70 61 6e 3e 28 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>(T:.<span.class="tok-type |
| b06a0 | 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">type</span>).*<span.class="tok |
| b06c0 | 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 63 6c 61 73 73 | -kw">const</span>.[N:<span.class |
| b06e0 | 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 |
| b0700 | 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 2f | ss="tok-type">u8</span></code></ |
| b0720 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 | pre>.......<p>.......This.functi |
| b0740 | 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 61 | on.returns.the.string.representa |
| b0760 | 74 69 6f 6e 20 6f 66 20 61 20 74 79 70 65 2c 20 61 73 0a 20 20 20 20 20 20 61 6e 20 61 72 72 61 | tion.of.a.type,.as.......an.arra |
| b0780 | 79 2e 20 49 74 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 61 20 73 74 72 69 6e 67 20 | y..It.is.equivalent.to.a.string. |
| b07a0 | 6c 69 74 65 72 61 6c 20 6f 66 20 74 68 65 20 74 79 70 65 20 6e 61 6d 65 2e 0a 20 20 20 20 20 20 | literal.of.the.type.name........ |
| b07c0 | 54 68 65 20 72 65 74 75 72 6e 65 64 20 74 79 70 65 20 6e 61 6d 65 20 69 73 20 66 75 6c 6c 79 20 | The.returned.type.name.is.fully. |
| b07e0 | 71 75 61 6c 69 66 69 65 64 20 77 69 74 68 20 74 68 65 20 70 61 72 65 6e 74 20 6e 61 6d 65 73 70 | qualified.with.the.parent.namesp |
| b0800 | 61 63 65 20 69 6e 63 6c 75 64 65 64 0a 20 20 20 20 20 20 61 73 20 70 61 72 74 20 6f 66 20 74 68 | ace.included.......as.part.of.th |
| b0820 | 65 20 74 79 70 65 20 6e 61 6d 65 20 77 69 74 68 20 61 20 73 65 72 69 65 73 20 6f 66 20 64 6f 74 | e.type.name.with.a.series.of.dot |
| b0840 | 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 3c 68 33 20 | s........</p>...............<h3. |
| b0860 | 69 64 3d 22 54 79 70 65 4f 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 4f 66 | id="TypeOf"><a.href="#toc-TypeOf |
| b0880 | 22 3e 40 54 79 70 65 4f 66 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | ">@TypeOf</a>.<a.class="hdr".hre |
| b08a0 | 66 3d 22 23 54 79 70 65 4f 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c | f="#TypeOf">..</a></h3>........< |
| b08c0 | 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 |
| b08e0 | 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 2e 2e 2e 29 20 3c 73 70 61 6e 20 63 6c | in">@TypeOf</span>(...).<span.cl |
| b0900 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-type">type</span></code |
| b0920 | 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 3c 73 | ></pre>.......<p>.......<code><s |
| b0940 | 70 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< |
| b0960 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 73 70 65 63 69 61 6c 20 62 75 69 6c 74 | /span></code>.is.a.special.built |
| b0980 | 69 6e 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 74 61 6b 65 73 20 61 6e 79 20 28 6e 6f 6e 7a | in.function.that.takes.any.(nonz |
| b09a0 | 65 72 6f 29 20 6e 75 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 | ero).number.of.expressions...... |
| b09c0 | 20 61 73 20 70 61 72 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 | .as.parameters.and.returns.the.t |
| b09e0 | 79 70 65 20 6f 66 20 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 | ype.of.the.result,.using.<a.href |
| b0a00 | 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 |
| b0a20 | 70 65 20 52 65 73 6f 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 | pe.Resolution</a>........</p>... |
| b0a40 | 20 20 20 20 3c 70 3e 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 | ....<p>.......The.expressions.ar |
| b0a60 | 65 20 65 76 61 6c 75 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 | e.evaluated,.however.they.are.gu |
| b0a80 | 61 72 61 6e 74 65 65 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 | aranteed.to.have.no.<em>runtime< |
| b0aa0 | 2f 65 6d 3e 20 73 69 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 | /em>.side-effects:.......</p>... |
| b0ac0 | 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 |
| b0ae0 | 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_ |
| b0b00 | 54 79 70 65 4f 66 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 | TypeOf_builtin.zig</cite></figca |
| b0b20 | 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 |
| b0b40 | 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 |
| b0b60 | 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 |
| b0b80 | 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 |
| b0ba0 | 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 |
| b0bc0 | 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. |
| b0be0 | 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 |
| b0c00 | 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 |
| b0c20 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 6f 20 72 75 6e 74 69 6d 65 20 73 69 64 65 20 65 66 | ok-str">"no.runtime.side.ef |
| b0c40 | 66 65 63 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | fects"</span>.{.....<span.c |
| b0c60 | 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 3a 20 3c | lass="tok-kw">var</span>.data:.< |
| b0c80 | 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> |
| b0ca0 | 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 |
| b0cc0 | 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | pan>;.....<span.class="tok-kw">c |
| b0ce0 | 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 6b | onst</span>.T.=.<span.class="tok |
| b0d00 | 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 66 6f 6f 28 3c 73 70 | -builtin">@TypeOf</span>(foo(<sp |
| b0d20 | 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>,. |
| b0d40 | 26 61 6d 70 3b 64 61 74 61 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | &data));.....<span.class="to |
| b0d60 | 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 3d 22 74 6f | k-kw">try</span>.<span.class="to |
| b0d80 | 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 74 28 54 20 3d | k-kw">comptime</span>.expect(T.= |
| b0da0 | 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 70 | =.<span.class="tok-type">i32</sp |
| b0dc0 | 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 |
| b0de0 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 64 61 74 61 20 3d 3d 20 3c 73 70 61 6e 20 63 | ry</span>.expect(data.==.<span.c |
| b0e00 | 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 7d 0a 0a | lass="tok-number">0</span>);.}.. |
| b0e20 | 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>.< |
| b0e40 | 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 3c | span.class="tok-fn">foo</span>(< |
| b0e60 | 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 |
| b0e80 | 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 |
| b0ea0 | 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 54 29 20 54 20 7b 0a 20 20 20 20 70 74 72 2e | pe</span>,.ptr:.*T).T.{.....ptr. |
| b0ec0 | 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | *.+=.<span.class="tok-number">1< |
| b0ee0 | 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" |
| b0f00 | 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 70 74 72 2e 2a 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | >return</span>.ptr.*;.}</code></ |
| b0f20 | 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 |
| b0f40 | 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 |
| b0f60 | 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. |
| b0f80 | 74 65 73 74 5f 54 79 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 | test_TypeOf_builtin.zig</kbd>.1/ |
| b0fa0 | 31 20 74 65 73 74 5f 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 | 1.test_TypeOf_builtin.test.no.ru |
| b0fc0 | 6e 74 69 6d 65 20 73 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 | ntime.side.effects...OK.All.1.te |
| b0fe0 | 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 |
| b1000 | 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 75 6e 69 6f 6e 49 | e>................<h3.id="unionI |
| b1020 | 6e 69 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 75 6e 69 6f 6e 49 6e 69 74 22 3e 40 75 | nit"><a.href="#toc-unionInit">@u |
| b1040 | 6e 69 6f 6e 49 6e 69 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | nionInit</a>.<a.class="hdr".href |
| b1060 | 3d 22 23 75 6e 69 6f 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 | ="#unionInit">..</a></h3>....... |
| b1080 | 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 |
| b10a0 | 6c 74 69 6e 22 3e 40 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 | ltin">@unionInit</span>(<span.cl |
| b10c0 | 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 55 6e 69 | ass="tok-kw">comptime</span>.Uni |
| b10e0 | 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 74 79 70 65 3c | on:.<span.class="tok-type">type< |
| b1100 | 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 6d | /span>,.<span.class="tok-kw">com |
| b1120 | 70 74 69 6d 65 3c 2f 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 | ptime</span>.active_field_name:. |
| b1140 | 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 |
| b1160 | 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 |
| b1180 | 70 61 6e 3e 2c 20 69 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 | pan>,.init_expr).Union</code></p |
| b11a0 | 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 69 73 20 74 68 65 20 | re>.......<p>.......This.is.the. |
| b11c0 | 73 61 6d 65 20 74 68 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 | same.thing.as.<a.href="#union">u |
| b11e0 | 6e 69 6f 6e 3c 2f 61 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 | nion</a>.initialization.syntax,. |
| b1200 | 65 78 63 65 70 74 20 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 | except.that.the.field.name.is.a. |
| b1220 | 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 69 | ......<a.href="#comptime">compti |
| b1240 | 6d 65 3c 2f 61 3e 2d 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 | me</a>-known.value.rather.than.a |
| b1260 | 6e 20 69 64 65 6e 74 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 | n.identifier.token........</p>.. |
| b1280 | 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 |
| b12a0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 75 6e 69 6f 6e 49 6e 69 74 3c 2f 73 70 61 6e 3e | ="tok-builtin">@unionInit</span> |
| b12c0 | 3c 2f 63 6f 64 65 3e 20 66 6f 72 77 61 72 64 73 20 69 74 73 20 3c 61 20 68 72 65 66 3d 22 23 52 | </code>.forwards.its.<a.href="#R |
| b12e0 | 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 2d 53 65 6d 61 6e 74 69 63 73 22 3e 72 65 73 75 6c 74 | esult-Location-Semantics">result |
| b1300 | 20 6c 6f 63 61 74 69 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 | .location</a>.to.<code>init_expr |
| b1320 | 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 0a 0a 20 20 20 | </code>........</p>............. |
| b1340 | 20 20 20 3c 68 33 20 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 | ...<h3.id="Vector"><a.href="#toc |
| b1360 | 2d 56 65 63 74 6f 72 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 | -Vector">@Vector</a>.<a.class="h |
| b1380 | 64 72 22 20 68 72 65 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 | dr".href="#Vector">..</a></h3>.. |
| b13a0 | 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 |
| b13c0 | 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 6c 65 6e 3a 20 3c | k-builtin">@Vector</span>(len:.< |
| b13e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 | span.class="tok-type">comptime_i |
| b1400 | 6e 74 3c 2f 73 70 61 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 | nt</span>,.Element:.<span.class= |
| b1420 | 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | "tok-type">type</span>).<span.cl |
| b1440 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-type">type</span></code |
| b1460 | 3e 3c 2f 70 72 65 3e 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 | ></pre>.......<p>Creates.<a.href |
| b1480 | 3d 22 23 56 65 63 74 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 | ="#Vectors">Vectors</a>.</p>.... |
| b14a0 | 20 20 20 0a 0a 20 20 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 | ...........<h3.id="volatileCast" |
| b14c0 | 3e 3c 61 20 68 72 65 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 | ><a.href="#toc-volatileCast">@vo |
| b14e0 | 6c 61 74 69 6c 65 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 | latileCast</a>.<a.class="hdr".hr |
| b1500 | 65 66 3d 22 23 76 6f 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 | ef="#volatileCast">..</a></h3>.. |
| b1520 | 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 |
| b1540 | 6b 2d 62 75 69 6c 74 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 | k-builtin">@volatileCast</span>( |
| b1560 | 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 74 | value:.<span.class="tok-kw">anyt |
| b1580 | 79 70 65 3c 2f 73 70 61 6e 3e 29 20 44 65 73 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ype</span>).DestType</code></pre |
| b15a0 | 3e 0a 20 20 20 20 20 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 | >.......<p>.......Remove.<code>< |
| b15c0 | 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 |
| b15e0 | 61 6e 3e 3c 2f 63 6f 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 | an></code>.qualifier.from.a.poin |
| b1600 | 74 65 72 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 | ter........</p>...............<h |
| b1620 | 33 20 69 64 3d 22 77 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 | 3.id="workGroupId"><a.href="#toc |
| b1640 | 2d 77 6f 72 6b 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 20 3c | -workGroupId">@workGroupId</a>.< |
| b1660 | 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 75 70 49 64 | a.class="hdr".href="#workGroupId |
| b1680 | 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> |
| b16a0 | 3c 73 70 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 | <span.class="tok-builtin">@workG |
| b16c0 | 72 6f 75 70 49 64 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | roupId</span>(<span.class="tok-k |
| b16e0 | 77 22 3e 63 6f 6d 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 | w">comptime</span>.dimension:.<s |
| b1700 | 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>) |
| b1720 | 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 |
| b1740 | 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>....... |
| b1760 | 52 65 74 75 72 6e 73 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 | Returns.the.index.of.the.work.gr |
| b1780 | 6f 75 70 20 69 6e 20 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 | oup.in.the.current.kernel.invoca |
| b17a0 | 74 69 6f 6e 20 69 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 | tion.in.dimension.<code>dimensio |
| b17c0 | 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 0a 0a 20 20 20 | n</code>........</p>............ |
| b17e0 | 20 20 20 3c 68 33 20 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 | ...<h3.id="workGroupSize"><a.hre |
| b1800 | 66 3d 22 23 74 6f 63 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 | f="#toc-workGroupSize">@workGrou |
| b1820 | 70 53 69 7a 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 | pSize</a>.<a.class="hdr".href="# |
| b1840 | 77 6f 72 6b 47 72 6f 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 | workGroupSize">..</a></h3>...... |
| b1860 | 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 |
| b1880 | 69 6c 74 69 6e 22 3e 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 | iltin">@workGroupSize</span>(<sp |
| b18a0 | 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 |
| b18c0 | 3e 20 64 69 6d 65 6e 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 | >.dimension:.<span.class="tok-ty |
| b18e0 | 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 74 6f 6b | pe">u32</span>).<span.class="tok |
| b1900 | 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | -type">u32</span></code></pre>.. |
| b1920 | 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 6e 75 6d 62 65 | .....<p>.......Returns.the.numbe |
| b1940 | 72 20 6f 66 20 77 6f 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 | r.of.work.items.that.a.work.grou |
| b1960 | 70 20 68 61 73 20 69 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 | p.has.in.dimension.<code>dimensi |
| b1980 | 6f 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 0a 0a 20 20 | on</code>........</p>........... |
| b19a0 | 20 20 20 20 3c 68 33 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 | ....<h3.id="workItemId"><a.href= |
| b19c0 | 22 23 74 6f 63 2d 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 | "#toc-workItemId">@workItemId</a |
| b19e0 | 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 49 74 65 6d | >.<a.class="hdr".href="#workItem |
| b1a00 | 49 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 65 3e 3c 63 6f 64 | Id">..</a></h3>........<pre><cod |
| b1a20 | 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 77 6f 72 | e><span.class="tok-builtin">@wor |
| b1a40 | 6b 49 74 65 6d 49 64 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | kItemId</span>(<span.class="tok- |
| b1a60 | 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 73 69 6f 6e 3a 20 3c | kw">comptime</span>.dimension:.< |
| b1a80 | 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> |
| b1aa0 | 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 |
| b1ac0 | 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>...... |
| b1ae0 | 20 52 65 74 75 72 6e 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 | .Returns.the.index.of.the.work.i |
| b1b00 | 74 65 6d 20 69 6e 20 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 | tem.in.the.work.group.in.dimensi |
| b1b20 | 6f 6e 20 3c 63 6f 64 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 | on.<code>dimension</code>..This. |
| b1b40 | 66 75 6e 63 74 69 6f 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 | function.returns.values.between. |
| b1b60 | 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 30 | <code><span.class="tok-number">0 |
| b1b80 | 3c 2f 73 70 61 6e 3e 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 | </span></code>.(inclusive).and.< |
| b1ba0 | 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">@ |
| b1bc0 | 77 6f 72 6b 47 72 6f 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 | workGroupSize</span>(dimension)< |
| b1be0 | 2f 63 6f 64 65 3e 20 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 | /code>.(exclusive)........</p>.. |
| b1c00 | 20 20 20 20 20 0a 0a 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 | .....................<h2.id="Bui |
| b1c20 | 6c 64 2d 4d 6f 64 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 42 75 69 6c 64 2d 4d 6f 64 | ld-Mode"><a.href="#toc-Build-Mod |
| b1c40 | 65 22 3e 42 75 69 6c 64 20 4d 6f 64 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | e">Build.Mode</a>.<a.class="hdr" |
| b1c60 | 20 68 72 65 66 3d 22 23 42 75 69 6c 64 2d 4d 6f 64 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | .href="#Build-Mode">..</a></h2>. |
| b1c80 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 68 61 73 20 66 6f 75 72 20 62 75 | .......<p>.......Zig.has.four.bu |
| b1ca0 | 69 6c 64 20 6d 6f 64 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e | ild.modes:.......</p>.......<ul> |
| b1cc0 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 65 62 75 67 22 3e 44 65 | .........<li><a.href="#Debug">De |
| b1ce0 | 62 75 67 3c 2f 61 3e 20 28 64 65 66 61 75 6c 74 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | bug</a>.(default)</li>.........< |
| b1d00 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e 52 65 6c 65 61 73 | li><a.href="#ReleaseFast">Releas |
| b1d20 | 65 46 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 | eFast</a></li>.........<li><a.hr |
| b1d40 | 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 66 65 3c 2f 61 | ef="#ReleaseSafe">ReleaseSafe</a |
| b1d60 | 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 6c | ></li>.........<li><a.href="#Rel |
| b1d80 | 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 3c 2f 6c 69 3e | easeSmall">ReleaseSmall</a></li> |
| b1da0 | 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 6f 20 | .......</ul>.......<p>.......To. |
| b1dc0 | 61 64 64 20 73 74 61 6e 64 61 72 64 20 62 75 69 6c 64 20 6f 70 74 69 6f 6e 73 20 74 6f 20 61 20 | add.standard.build.options.to.a. |
| b1de0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 62 75 69 6c 64 2e 7a 69 67 3c 2f 63 6f | <code.class="file">build.zig</co |
| b1e00 | 64 65 3e 20 66 69 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 | de>.file:.......</p>.......<figu |
| b1e20 | 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">< |
| b1e40 | 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 62 75 69 6c 64 2e 7a 69 67 3c 2f 63 69 74 | cite.class="file">build.zig</cit |
| b1e60 | 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. |
| b1e80 | 63 6c 61 73 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. |
| b1ea0 | 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 |
| b1ec0 | 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" |
| b1ee0 | 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e | >"std"</span>);..<span |
| b1f00 | 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 |
| b1f20 | 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. |
| b1f40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 75 69 6c 64 3c 2f 73 70 61 6e 3e 28 62 3a 20 2a | class="tok-fn">build</span>(b:.* |
| b1f60 | 73 74 64 2e 42 75 69 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 | std.Build).<span.class="tok-type |
| b1f80 | 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= |
| b1fa0 | 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 6d 69 7a 65 20 3d | "tok-kw">const</span>.optimize.= |
| b1fc0 | 20 62 2e 73 74 61 6e 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 | .b.standardOptimizeOption(.{});. |
| b1fe0 | 20 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</ |
| b2000 | 73 70 61 6e 3e 20 65 78 65 20 3d 20 62 2e 61 64 64 45 78 65 63 75 74 61 62 6c 65 28 2e 7b 0a 20 | span>.exe.=.b.addExecutable(.{.. |
| b2020 | 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 73 3d 22 74 6f 6b 2d | ........name.=.<span.class="tok- |
| b2040 | 73 74 72 22 3e 26 71 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 | str">"example"</span>, |
| b2060 | 0a 20 20 20 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 | ..........root_source_file.=.b.p |
| b2080 | 61 74 68 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 | ath(<span.class="tok-str">" |
| b20a0 | 65 78 61 6d 70 6c 65 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 | example.zig"</span>),...... |
| b20c0 | 20 20 20 2e 6f 70 74 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 | ....optimize.=.optimize,.....}); |
| b20e0 | 0a 20 20 20 20 62 2e 64 65 66 61 75 6c 74 5f 73 74 65 70 2e 64 65 70 65 6e 64 4f 6e 28 26 61 6d | .....b.default_step.dependOn(&am |
| b2100 | 70 3b 65 78 65 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 | p;exe.step);.}</code></pre></fig |
| b2120 | 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 75 73 65 | ure>........<p>.......This.cause |
| b2140 | 73 20 74 68 65 73 65 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 | s.these.options.to.be.available: |
| b2160 | 0a 20 20 20 20 20 20 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 | .......</p>.......<dl>.........< |
| b2180 | 64 74 3e 3c 6b 62 64 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 | dt><kbd>-Doptimize=Debug</kbd></ |
| b21a0 | 64 74 3e 3c 64 64 3e 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 | dt><dd>Optimizations.off.and.saf |
| b21c0 | 65 74 79 20 6f 6e 20 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 | ety.on.(default)</dd>.........<d |
| b21e0 | 74 3e 3c 6b 62 64 3e 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 | t><kbd>-Doptimize=ReleaseSafe</k |
| b2200 | 62 64 3e 3c 2f 64 74 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 | bd></dt><dd>Optimizations.on.and |
| b2220 | 20 73 61 66 65 74 79 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 | .safety.on</dd>.........<dt><kbd |
| b2240 | 3e 2d 44 6f 70 74 69 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 | >-Doptimize=ReleaseFast</kbd></d |
| b2260 | 74 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 | t><dd>Optimizations.on.and.safet |
| b2280 | 79 20 6f 66 66 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 | y.off</dd>.........<dt><kbd>-Dop |
| b22a0 | 74 69 6d 69 7a 65 3d 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 | timize=ReleaseSmall</kbd></dt><d |
| b22c0 | 64 3e 53 69 7a 65 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 6f 6e 20 61 6e 64 20 73 61 66 65 | d>Size.optimizations.on.and.safe |
| b22e0 | 74 79 20 6f 66 66 3c 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 | ty.off</dd>.......</dl>.......<h |
| b2300 | 33 20 69 64 3d 22 44 65 62 75 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 65 62 75 67 | 3.id="Debug"><a.href="#toc-Debug |
| b2320 | 22 3e 44 65 62 75 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | ">Debug</a>.<a.class="hdr".href= |
| b2340 | 22 23 44 65 62 75 67 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 | "#Debug">..</a></h3>........<fig |
| b2360 | 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 |
| b2380 | 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>$ |
| b23a0 | 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 69 67 3c | .<kbd>zig.build-exe.example.zig< |
| b23c0 | 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 20 20 20 | /kbd>.</samp></pre></figure>.... |
| b23e0 | 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 61 73 74 20 63 6f 6d 70 69 6c 61 | ...<ul>.........<li>Fast.compila |
| b2400 | 74 69 6f 6e 20 73 70 65 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 61 66 65 | tion.speed</li>.........<li>Safe |
| b2420 | 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 3c | ty.checks.enabled</li>.........< |
| b2440 | 6c 69 3e 53 6c 6f 77 20 72 75 6e 74 69 6d 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 3c 2f 6c 69 3e | li>Slow.runtime.performance</li> |
| b2460 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4c 61 72 67 65 20 62 69 6e 61 72 79 20 73 69 7a 65 3c 2f | .........<li>Large.binary.size</ |
| b2480 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4e 6f 20 72 65 70 72 6f 64 75 63 69 62 6c 65 20 | li>.........<li>No.reproducible. |
| b24a0 | 62 75 69 6c 64 20 72 65 71 75 69 72 65 6d 65 6e 74 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 | build.requirement</li>.......</u |
| b24c0 | 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 61 73 65 46 | l>..............<h3.id="ReleaseF |
| b24e0 | 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 6c 65 61 73 65 46 61 73 74 22 3e | ast"><a.href="#toc-ReleaseFast"> |
| b2500 | 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | ReleaseFast</a>.<a.class="hdr".h |
| b2520 | 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a | ref="#ReleaseFast">..</a></h3>.. |
| b2540 | 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= |
| b2560 | 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 |
| b2580 | 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 65 78 | re><samp>$.<kbd>zig.build-exe.ex |
| b25a0 | 61 6d 70 6c 65 2e 7a 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 | ample.zig.-O.ReleaseFast</kbd>.< |
| b25c0 | 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> |
| b25e0 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 61 73 74 20 72 75 6e 74 69 6d 65 20 70 65 72 66 6f 72 | .........<li>Fast.runtime.perfor |
| b2600 | 6d 61 6e 63 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 61 66 65 74 79 20 63 68 | mance</li>.........<li>Safety.ch |
| b2620 | 65 63 6b 73 20 64 69 73 61 62 6c 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 | ecks.disabled</li>.........<li>S |
| b2640 | 6c 6f 77 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 73 70 65 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 | low.compilation.speed</li>...... |
| b2660 | 20 20 20 3c 6c 69 3e 4c 61 72 67 65 20 62 69 6e 61 72 79 20 73 69 7a 65 3c 2f 6c 69 3e 0a 20 20 | ...<li>Large.binary.size</li>... |
| b2680 | 20 20 20 20 20 20 3c 6c 69 3e 52 65 70 72 6f 64 75 63 69 62 6c 65 20 62 75 69 6c 64 3c 2f 6c 69 | ......<li>Reproducible.build</li |
| b26a0 | 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 33 20 69 | >.......</ul>..............<h3.i |
| b26c0 | 64 3d 22 52 65 6c 65 61 73 65 53 61 66 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 | d="ReleaseSafe"><a.href="#toc-Re |
| b26e0 | 6c 65 61 73 65 53 61 66 65 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 61 3e 20 3c 61 20 63 6c | leaseSafe">ReleaseSafe</a>.<a.cl |
| b2700 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 61 66 65 22 3e c2 a7 | ass="hdr".href="#ReleaseSafe">.. |
| b2720 | 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 63 61 70 | </a></h3>........<figure><figcap |
| b2740 | 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 |
| b2760 | 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 |
| b2780 | 75 69 6c 64 2d 65 78 65 20 65 78 61 6d 70 6c 65 2e 7a 69 67 20 2d 4f 20 52 65 6c 65 61 73 65 53 | uild-exe.example.zig.-O.ReleaseS |
| b27a0 | 61 66 65 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 | afe</kbd>.</samp></pre></figure> |
| b27c0 | 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4d 65 64 69 75 6d 20 72 | .......<ul>.........<li>Medium.r |
| b27e0 | 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 20 20 | untime.performance</li>......... |
| b2800 | 3c 6c 69 3e 53 61 66 65 74 79 20 63 68 65 63 6b 73 20 65 6e 61 62 6c 65 64 3c 2f 6c 69 3e 0a 20 | <li>Safety.checks.enabled</li>.. |
| b2820 | 20 20 20 20 20 20 20 3c 6c 69 3e 53 6c 6f 77 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 73 70 65 65 | .......<li>Slow.compilation.spee |
| b2840 | 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4c 61 72 67 65 20 62 69 6e 61 72 79 20 | d</li>.........<li>Large.binary. |
| b2860 | 73 69 7a 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 65 70 72 6f 64 75 63 69 62 | size</li>.........<li>Reproducib |
| b2880 | 6c 65 20 62 75 69 6c 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 | le.build</li>.......</ul>....... |
| b28a0 | 0a 20 20 20 20 20 20 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 | .......<h3.id="ReleaseSmall"><a. |
| b28c0 | 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 6c 65 61 73 65 53 6d 61 6c 6c 22 3e 52 65 6c 65 61 73 65 | href="#toc-ReleaseSmall">Release |
| b28e0 | 53 6d 61 6c 6c 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | Small</a>.<a.class="hdr".href="# |
| b2900 | 52 65 6c 65 61 73 65 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 | ReleaseSmall">..</a></h3>....... |
| b2920 | 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 |
| b2940 | 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 |
| b2960 | 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 65 78 61 6d 70 6c 65 | amp>$.<kbd>zig.build-exe.example |
| b2980 | 2e 7a 69 67 20 2d 4f 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 | .zig.-O.ReleaseSmall</kbd>.</sam |
| b29a0 | 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 0a 20 20 20 | p></pre></figure>.......<ul>.... |
| b29c0 | 20 20 20 20 20 3c 6c 69 3e 4d 65 64 69 75 6d 20 72 75 6e 74 69 6d 65 20 70 65 72 66 6f 72 6d 61 | .....<li>Medium.runtime.performa |
| b29e0 | 6e 63 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 61 66 65 74 79 20 63 68 65 63 | nce</li>.........<li>Safety.chec |
| b2a00 | 6b 73 20 64 69 73 61 62 6c 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 6c 6f | ks.disabled</li>.........<li>Slo |
| b2a20 | 77 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 73 70 65 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | w.compilation.speed</li>........ |
| b2a40 | 20 3c 6c 69 3e 53 6d 61 6c 6c 20 62 69 6e 61 72 79 20 73 69 7a 65 3c 2f 6c 69 3e 0a 20 20 20 20 | .<li>Small.binary.size</li>..... |
| b2a60 | 20 20 20 20 3c 6c 69 3e 52 65 70 72 6f 64 75 63 69 62 6c 65 20 62 75 69 6c 64 3c 2f 6c 69 3e 0a | ....<li>Reproducible.build</li>. |
| b2a80 | 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. |
| b2aa0 | 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 6f 6d 70 | also:</p><ul>.<li><a.href="#Comp |
| b2ac0 | 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d 70 69 6c 65 20 56 61 72 69 61 62 6c 65 73 | ile-Variables">Compile.Variables |
| b2ae0 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 42 75 69 6c | </a></li>.<li><a.href="#Zig-Buil |
| b2b00 | 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 3c 2f | d-System">Zig.Build.System</a></ |
| b2b20 | 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 | li>.<li><a.href="#Undefined-Beha |
| b2b40 | 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 3c 2f 6c 69 | vior">Undefined.Behavior</a></li |
| b2b60 | 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 53 | >.</ul>................<h2.id="S |
| b2b80 | 69 6e 67 6c 65 2d 54 68 72 65 61 64 65 64 2d 42 75 69 6c 64 73 22 3e 3c 61 20 68 72 65 66 3d 22 | ingle-Threaded-Builds"><a.href=" |
| b2ba0 | 23 74 6f 63 2d 53 69 6e 67 6c 65 2d 54 68 72 65 61 64 65 64 2d 42 75 69 6c 64 73 22 3e 53 69 6e | #toc-Single-Threaded-Builds">Sin |
| b2bc0 | 67 6c 65 20 54 68 72 65 61 64 65 64 20 42 75 69 6c 64 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | gle.Threaded.Builds</a>.<a.class |
| b2be0 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 69 6e 67 6c 65 2d 54 68 72 65 61 64 65 64 2d 42 75 | ="hdr".href="#Single-Threaded-Bu |
| b2c00 | 69 6c 64 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 5a 69 67 20 | ilds">..</a></h2>........<p>Zig. |
| b2c20 | 68 61 73 20 61 20 63 6f 6d 70 69 6c 65 20 6f 70 74 69 6f 6e 20 3c 6b 62 64 3e 2d 66 73 69 6e 67 | has.a.compile.option.<kbd>-fsing |
| b2c40 | 6c 65 2d 74 68 72 65 61 64 65 64 3c 2f 6b 62 64 3e 20 77 68 69 63 68 20 68 61 73 20 74 68 65 20 | le-threaded</kbd>.which.has.the. |
| b2c60 | 66 6f 6c 6c 6f 77 69 6e 67 20 65 66 66 65 63 74 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c | following.effects:</p>.......<ul |
| b2c80 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6c 6c 20 3c 61 20 68 72 65 66 3d 22 23 54 68 72 65 | >.........<li>All.<a.href="#Thre |
| b2ca0 | 61 64 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 54 68 72 65 61 64 20 4c 6f 63 61 6c | ad-Local-Variables">Thread.Local |
| b2cc0 | 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 20 61 72 65 20 74 72 65 61 74 65 64 20 61 73 20 72 65 | .Variables</a>.are.treated.as.re |
| b2ce0 | 67 75 6c 61 72 20 3c 61 20 68 72 65 66 3d 22 23 43 6f 6e 74 61 69 6e 65 72 2d 4c 65 76 65 6c 2d | gular.<a.href="#Container-Level- |
| b2d00 | 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 61 | Variables">Container.Level.Varia |
| b2d20 | 62 6c 65 73 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 68 65 20 6f | bles</a>.</li>.........<li>The.o |
| b2d40 | 76 65 72 68 65 61 64 20 6f 66 20 3c 61 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 | verhead.of.<a.href="#Async-Funct |
| b2d60 | 69 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 62 65 63 6f 6d 65 | ions">Async.Functions</a>.become |
| b2d80 | 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 6f 76 | s.equivalent.to.function.call.ov |
| b2da0 | 65 72 68 65 61 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 68 65 20 3c 63 6f | erhead.</li>.........<li>The.<co |
| b2dc0 | 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 |
| b2de0 | 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 |
| b2e00 | 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 73 69 | ">"builtin"</span>).si |
| b2e20 | 6e 67 6c 65 5f 74 68 72 65 61 64 65 64 3c 2f 63 6f 64 65 3e 20 62 65 63 6f 6d 65 73 20 3c 63 6f | ngle_threaded</code>.becomes.<co |
| b2e40 | 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</ |
| b2e60 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 61 6e 64 20 74 68 65 72 65 | span></code>...........and.there |
| b2e80 | 66 6f 72 65 20 76 61 72 69 6f 75 73 20 75 73 65 72 6c 61 6e 64 20 41 50 49 73 20 77 68 69 63 68 | fore.various.userland.APIs.which |
| b2ea0 | 20 72 65 61 64 20 74 68 69 73 20 76 61 72 69 61 62 6c 65 20 62 65 63 6f 6d 65 20 6d 6f 72 65 20 | .read.this.variable.become.more. |
| b2ec0 | 65 66 66 69 63 69 65 6e 74 2e 0a 20 20 20 20 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 | efficient............For.example |
| b2ee0 | 20 3c 63 6f 64 65 3e 73 74 64 2e 4d 75 74 65 78 3c 2f 63 6f 64 65 3e 20 62 65 63 6f 6d 65 73 0a | .<code>std.Mutex</code>.becomes. |
| b2f00 | 20 20 20 20 20 20 20 20 20 20 61 6e 20 65 6d 70 74 79 20 64 61 74 61 20 73 74 72 75 63 74 75 72 | ..........an.empty.data.structur |
| b2f20 | 65 20 61 6e 64 20 61 6c 6c 20 6f 66 20 69 74 73 20 66 75 6e 63 74 69 6f 6e 73 20 62 65 63 6f 6d | e.and.all.of.its.functions.becom |
| b2f40 | 65 20 6e 6f 2d 6f 70 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 | e.no-ops.</li>.......</ul>...... |
| b2f60 | 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 | .........<h2.id="Undefined-Behav |
| b2f80 | 69 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 | ior"><a.href="#toc-Undefined-Beh |
| b2fa0 | 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 20 3c 61 | avior">Undefined.Behavior</a>.<a |
| b2fc0 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 | .class="hdr".href="#Undefined-Be |
| b2fe0 | 68 61 76 69 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | havior">..</a></h2>........<p>.. |
| b3000 | 20 20 20 20 20 5a 69 67 20 68 61 73 20 6d 61 6e 79 20 69 6e 73 74 61 6e 63 65 73 20 6f 66 20 75 | .....Zig.has.many.instances.of.u |
| b3020 | 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 2e 20 49 66 20 75 6e 64 65 66 69 6e 65 64 20 | ndefined.behavior..If.undefined. |
| b3040 | 62 65 68 61 76 69 6f 72 20 69 73 0a 20 20 20 20 20 20 64 65 74 65 63 74 65 64 20 61 74 20 63 6f | behavior.is.......detected.at.co |
| b3060 | 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 6d 70 69 6c 65 20 | mpile-time,.Zig.emits.a.compile. |
| b3080 | 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 6e 75 65 2e 0a 20 | error.and.refuses.to.continue... |
| b30a0 | 20 20 20 20 20 4d 6f 73 74 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 20 74 68 61 | .....Most.undefined.behavior.tha |
| b30c0 | 74 20 63 61 6e 6e 6f 74 20 62 65 20 64 65 74 65 63 74 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d | t.cannot.be.detected.at.compile- |
| b30e0 | 74 69 6d 65 20 63 61 6e 20 62 65 20 64 65 74 65 63 74 65 64 0a 20 20 20 20 20 20 61 74 20 72 75 | time.can.be.detected.......at.ru |
| b3100 | 6e 74 69 6d 65 2e 20 49 6e 20 74 68 65 73 65 20 63 61 73 65 73 2c 20 5a 69 67 20 68 61 73 20 73 | ntime..In.these.cases,.Zig.has.s |
| b3120 | 61 66 65 74 79 20 63 68 65 63 6b 73 2e 20 53 61 66 65 74 79 20 63 68 65 63 6b 73 20 63 61 6e 20 | afety.checks..Safety.checks.can. |
| b3140 | 62 65 20 64 69 73 61 62 6c 65 64 0a 20 20 20 20 20 20 6f 6e 20 61 20 70 65 72 2d 62 6c 6f 63 6b | be.disabled.......on.a.per-block |
| b3160 | 20 62 61 73 69 73 20 77 69 74 68 20 3c 61 20 68 72 65 66 3d 22 23 73 65 74 52 75 6e 74 69 6d 65 | .basis.with.<a.href="#setRuntime |
| b3180 | 53 61 66 65 74 79 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 61 3e 2e 20 54 | Safety">@setRuntimeSafety</a>..T |
| b31a0 | 68 65 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e 52 65 6c 65 61 73 | he.<a.href="#ReleaseFast">Releas |
| b31c0 | 65 46 61 73 74 3c 2f 61 3e 0a 20 20 20 20 20 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 52 65 | eFast</a>.......and.<a.href="#Re |
| b31e0 | 6c 65 61 73 65 53 6d 61 6c 6c 22 3e 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e 20 62 75 69 | leaseSmall">ReleaseSmall</a>.bui |
| b3200 | 6c 64 20 6d 6f 64 65 73 20 64 69 73 61 62 6c 65 20 61 6c 6c 20 73 61 66 65 74 79 20 63 68 65 63 | ld.modes.disable.all.safety.chec |
| b3220 | 6b 73 20 28 65 78 63 65 70 74 20 77 68 65 72 65 20 6f 76 65 72 72 69 64 64 65 6e 0a 20 20 20 20 | ks.(except.where.overridden..... |
| b3240 | 20 20 62 79 20 3c 61 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 | ..by.<a.href="#setRuntimeSafety" |
| b3260 | 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 61 3e 29 20 69 6e 20 6f 72 64 65 72 | >@setRuntimeSafety</a>).in.order |
| b3280 | 20 74 6f 20 66 61 63 69 6c 69 74 61 74 65 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 2e 0a 20 20 | .to.facilitate.optimizations.... |
| b32a0 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 61 20 | ....</p>.......<p>.......When.a. |
| b32c0 | 73 61 66 65 74 79 20 63 68 65 63 6b 20 66 61 69 6c 73 2c 20 5a 69 67 20 63 72 61 73 68 65 73 20 | safety.check.fails,.Zig.crashes. |
| b32e0 | 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 74 68 69 73 3a 0a 20 | with.a.stack.trace,.like.this:.. |
| b3300 | 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 |
| b3320 | 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= |
| b3340 | 22 66 69 6c 65 22 3e 74 65 73 74 5f 75 6e 64 65 66 69 6e 65 64 5f 62 65 68 61 76 69 6f 72 2e 7a | "file">test_undefined_behavior.z |
| b3360 | 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 |
| b3380 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e | ><span.class="tok-kw">test</span |
| b33a0 | 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 61 | >.<span.class="tok-str">"sa |
| b33c0 | 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 20 20 20 3c 73 | fety.check"</span>.{.....<s |
| b33e0 | 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</ |
| b3400 | 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 3c 66 | span>;.}</code></pre></figure><f |
| b3420 | 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 |
| b3440 | 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 |
| b3460 | 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 75 6e 64 65 66 69 6e 65 64 5f | >$.<kbd>zig.test.test_undefined_ |
| b3480 | 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 75 6e 64 65 | behavior.zig</kbd>.1/1.test_unde |
| b34a0 | 66 69 6e 65 64 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 6b | fined_behavior.test.safety.check |
| b34c0 | 2e 2e 2e 74 68 72 65 61 64 20 33 35 37 31 32 32 36 20 70 61 6e 69 63 3a 20 72 65 61 63 68 65 64 | ...thread.3571226.panic:.reached |
| b34e0 | 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 |
| b3500 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 | gr-1m">/home/andy/src/zig/doc/la |
| b3520 | 6e 67 72 65 66 2f 74 65 73 74 5f 75 6e 64 65 66 69 6e 65 64 5f 62 65 68 61 76 69 6f 72 2e 7a 69 | ngref/test_undefined_behavior.zi |
| b3540 | 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 67 72 2d 32 | g:2:5</span>:.<span.class="sgr-2 |
| b3560 | 6d 22 3e 30 78 31 30 33 63 65 33 30 20 69 6e 20 74 65 73 74 2e 73 61 66 65 74 79 20 63 68 65 63 | m">0x103ce30.in.test.safety.chec |
| b3580 | 6b 20 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 | k.(test)</span>.....unreachable; |
| b35a0 | 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 |
| b35c0 | 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 |
| b35e0 | 6e 64 79 2f 73 72 63 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 | ndy/src/zig/lib/compiler/test_ru |
| b3600 | 6e 6e 65 72 2e 7a 69 67 3a 31 35 37 3a 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | nner.zig:157:25</span>:.<span.cl |
| b3620 | 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 38 32 36 30 20 69 6e 20 6d 61 69 6e 54 65 | ass="sgr-2m">0x1048260.in.mainTe |
| b3640 | 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 66 20 | rminal.(test)</span>.........if. |
| b3660 | 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 20 20 | (test_fn.func()).|_|.{.......... |
| b3680 | 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- |
| b36a0 | 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 |
| b36c0 | 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c | m">/home/andy/src/zig/lib/compil |
| b36e0 | 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 33 37 3a 32 38 3c 2f 73 70 61 6e 3e 3a | er/test_runner.zig:37:28</span>: |
| b3700 | 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 65 32 31 62 20 | .<span.class="sgr-2m">0x103e21b. |
| b3720 | 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 72 65 | in.main.(test)</span>.........re |
| b3740 | 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 20 20 | turn.mainTerminal();............ |
| b3760 | 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 |
| b3780 | 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- |
| b37a0 | 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 | 1m">/home/andy/src/zig/lib/std/s |
| b37c0 | 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | tart.zig:514:22</span>:.<span.cl |
| b37e0 | 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 64 33 35 39 20 69 6e 20 70 6f 73 69 78 43 | ass="sgr-2m">0x103d359.in.posixC |
| b3800 | 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 20 20 | allMainAndExit.(test)</span>.... |
| b3820 | 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 20 20 | .........root.main();........... |
| b3840 | 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" |
| b3860 | 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">/ |
| b3880 | 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e | home/andy/src/zig/lib/std/start. |
| b38a0 | 7a 69 67 3a 32 36 36 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 | zig:266:5</span>:.<span.class="s |
| b38c0 | 67 72 2d 32 6d 22 3e 30 78 31 30 33 63 65 63 31 20 69 6e 20 5f 73 74 61 72 74 20 28 74 65 73 74 | gr-2m">0x103cec1.in._start.(test |
| b38e0 | 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 63 | )</span>.....asm.volatile.(switc |
| b3900 | 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 73 | h.(native_arch).{.....<span.clas |
| b3920 | 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 |
| b3940 | 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 20 | ="sgr-1m">???:?:?</span>:.<span. |
| b3960 | 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 3c | class="sgr-2m">0x0.in.???.(???)< |
| b3980 | 2f 73 70 61 6e 3e 0a 65 72 72 6f 72 3a 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 65 73 74 | /span>.error:.the.following.test |
| b39a0 | 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 73 72 63 | .command.crashed:./home/andy/src |
| b39c0 | 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 61 37 31 66 39 66 33 37 61 66 64 35 62 33 | /zig/.zig-cache/o/a71f9f37afd5b3 |
| b39e0 | 63 36 30 33 64 32 62 39 65 61 37 32 33 37 33 66 61 37 2f 74 65 73 74 0a 3c 2f 73 61 6d 70 3e 3c | c603d2b9ea72373fa7/test.</samp>< |
| b3a00 | 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 52 65 | /pre></figure>........<h3.id="Re |
| b3a20 | 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 3c 61 20 68 72 65 66 | aching-Unreachable-Code"><a.href |
| b3a40 | 3d 22 23 74 6f 63 2d 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 | ="#toc-Reaching-Unreachable-Code |
| b3a60 | 22 3e 52 65 61 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 20 | ">Reaching.Unreachable.Code</a>. |
| b3a80 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 65 61 63 68 69 6e 67 2d 55 | <a.class="hdr".href="#Reaching-U |
| b3aa0 | 6e 72 65 61 63 68 61 62 6c 65 2d 43 6f 64 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | nreachable-Code">..</a></h3>.... |
| b3ac0 | 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>..... |
| b3ae0 | 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 |
| b3b00 | 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 |
| b3b20 | 6d 70 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 3c | mptime_reaching_unreachable.zig< |
| b3b40 | 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 |
| b3b60 | 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 |
| b3b80 | 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>.{.....assert(<span.class="tok |
| b3ba0 | 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c | -null">false</span>);.}.<span.cl |
| b3bc0 | 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 |
| b3be0 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 73 73 65 72 74 3c 2f 73 70 61 6e 3e 28 6f 6b 3a 20 3c 73 | ss="tok-fn">assert</span>(ok:.<s |
| b3c00 | 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> |
| b3c20 | 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 |
| b3c40 | 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"> |
| b3c60 | 69 66 3c 2f 73 70 61 6e 3e 20 28 21 6f 6b 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | if</span>.(!ok).<span.class="tok |
| b3c80 | 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 20 3c 73 70 61 6e 20 63 | -kw">unreachable</span>;.<span.c |
| b3ca0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 73 73 65 72 74 69 6f 6e 20 | lass="tok-comment">//.assertion. |
| b3cc0 | 66 61 69 6c 75 72 65 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 | failure</span>.}</code></pre></f |
| b3ce0 | 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= |
| b3d00 | 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 |
| b3d20 | 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 |
| b3d40 | 6d 70 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 3c | mptime_reaching_unreachable.zig< |
| b3d60 | 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 64 6f 63 2f 6c | /kbd>.<span.class="sgr-1m">doc/l |
| b3d80 | 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 5f 75 6e | angref/test_comptime_reaching_un |
| b3da0 | 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 70 61 6e | reachable.zig:5:14:.</span><span |
| b3dc0 | 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>< |
| b3de0 | 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 6e 72 65 | span.class="sgr-1m">reached.unre |
| b3e00 | 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 6f 6b 29 | achable.code.</span>....if.(!ok) |
| b3e20 | 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 |
| b3e40 | 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 |
| b3e60 | 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 6e 20 63 | -32m">^~~~~~~~~~~.</span><span.c |
| b3e80 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 | lass="sgr-1m">doc/langref/test_c |
| b3ea0 | 6f 6d 70 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 | omptime_reaching_unreachable.zig |
| b3ec0 | 3a 32 3a 31 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 33 | :2:11:.</span><span.class="sgr-3 |
| b3ee0 | 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 67 | 6m">note:.</span><span.class="sg |
| b3f00 | 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 61 6e 3e 20 20 | r-1m">called.from.here.</span>.. |
| b3f20 | 20 20 61 73 73 65 72 74 28 66 61 6c 73 65 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ..assert(false);.....<span.class |
| b3f40 | 3d 22 73 67 72 2d 33 32 6d 22 3e 7e 7e 7e 7e 7e 7e 5e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e | ="sgr-32m">~~~~~~^~~~~~~.</span> |
| b3f60 | 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>........< |
| b3f80 | 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 67 75 72 65 3e | p>At.runtime:</p>.......<figure> |
| b3fa0 | 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 |
| b3fc0 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 72 65 61 63 68 69 6e 67 5f | e.class="file">runtime_reaching_ |
| b3fe0 | 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 |
| b4000 | 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 |
| b4020 | 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 |
| b4040 | 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>(< |
| b4060 | 73 70 61 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 |
| b4080 | 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- |
| b40a0 | 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- |
| b40c0 | 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 |
| b40e0 | 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 |
| b4100 | 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 74 64 2e 64 65 | k-type">void</span>.{.....std.de |
| b4120 | 62 75 67 2e 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | bug.assert(<span.class="tok-null |
| b4140 | 22 3e 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 | ">false</span>);.}</code></pre>< |
| b4160 | 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 |
| b4180 | 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> |
| b41a0 | 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 20 | <pre><samp>$.<kbd>zig.build-exe. |
| b41c0 | 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 65 2e 7a 69 67 | runtime_reaching_unreachable.zig |
| b41e0 | 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 72 65 61 63 68 69 6e 67 | </kbd>.$.<kbd>./runtime_reaching |
| b4200 | 5f 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 33 35 37 35 36 34 | _unreachable</kbd>.thread.357564 |
| b4220 | 32 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 65 20 63 6f 64 | 2.panic:.reached.unreachable.cod |
| b4240 | 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 64 | e.<span.class="sgr-1m">/home/and |
| b4260 | 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 64 65 62 75 67 2e 7a 69 67 3a 34 31 32 3a | y/src/zig/lib/std/debug.zig:412: |
| b4280 | 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 2d 32 6d 22 3e | 14</span>:.<span.class="sgr-2m"> |
| b42a0 | 30 78 31 30 33 36 63 64 64 20 69 6e 20 61 73 73 65 72 74 20 28 72 75 6e 74 69 6d 65 5f 72 65 61 | 0x1036cdd.in.assert.(runtime_rea |
| b42c0 | 63 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 69 66 | ching_unreachable)</span>.....if |
| b42e0 | 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 65 72 74 69 6f 6e | .(!ok).unreachable;.//.assertion |
| b4300 | 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 6e 20 63 6c 61 73 | .failure..............<span.clas |
| b4320 | 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 |
| b4340 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 | ="sgr-1m">/home/andy/src/zig/doc |
| b4360 | 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 72 65 61 63 68 69 6e 67 5f 75 6e 72 65 61 63 | /langref/runtime_reaching_unreac |
| b4380 | 68 61 62 6c 65 2e 7a 69 67 3a 34 3a 32 31 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | hable.zig:4:21</span>:.<span.cla |
| b43a0 | 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 35 30 37 61 20 69 6e 20 6d 61 69 6e 20 28 72 | ss="sgr-2m">0x103507a.in.main.(r |
| b43c0 | 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 65 29 3c 2f 73 70 | untime_reaching_unreachable)</sp |
| b43e0 | 61 6e 3e 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 28 66 61 6c 73 65 29 3b | an>.....std.debug.assert(false); |
| b4400 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .....................<span.class |
| b4420 | 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= |
| b4440 | 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f | "sgr-1m">/home/andy/src/zig/lib/ |
| b4460 | 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | std/start.zig:514:22</span>:.<sp |
| b4480 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 34 39 32 39 20 69 6e 20 70 | an.class="sgr-2m">0x1034929.in.p |
| b44a0 | 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 72 65 61 | osixCallMainAndExit.(runtime_rea |
| b44c0 | 63 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 20 20 | ching_unreachable)</span>....... |
| b44e0 | 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();.............. |
| b4500 | 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">^< |
| b4520 | 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 |
| b4540 | 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 | e/andy/src/zig/lib/std/start.zig |
| b4560 | 3a 32 36 36 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 | :266:5</span>:.<span.class="sgr- |
| b4580 | 32 6d 22 3e 30 78 31 30 33 34 34 39 31 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 | 2m">0x1034491.in._start.(runtime |
| b45a0 | 5f 72 65 61 63 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 | _reaching_unreachable)</span>... |
| b45c0 | 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 |
| b45e0 | 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" |
| b4600 | 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">? |
| b4620 | 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- |
| b4640 | 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 |
| b4660 | 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 |
| b4680 | 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>............... |
| b46a0 | 3c 68 33 20 69 64 3d 22 49 6e 64 65 78 2d 6f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 22 3e 3c 61 20 | <h3.id="Index-out-of-Bounds"><a. |
| b46c0 | 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 64 65 78 2d 6f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 22 3e | href="#toc-Index-out-of-Bounds"> |
| b46e0 | 49 6e 64 65 78 20 6f 75 74 20 6f 66 20 42 6f 75 6e 64 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | Index.out.of.Bounds</a>.<a.class |
| b4700 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 49 6e 64 65 78 2d 6f 75 74 2d 6f 66 2d 42 6f 75 6e 64 | ="hdr".href="#Index-out-of-Bound |
| b4720 | 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 41 74 20 63 6f 6d 70 | s">..</a></h3>........<p>At.comp |
| b4740 | 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 67 | ile-time:</p>.......<figure><fig |
| b4760 | 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 |
| b4780 | 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 64 65 78 5f 6f | ass="file">test_comptime_index_o |
| b47a0 | 75 74 5f 6f 66 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 | ut_of_bounds.zig</cite></figcapt |
| b47c0 | 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- |
| b47e0 | 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 20 | kw">comptime</span>.{.....<span. |
| b4800 | 63 6c 61 73 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 | class="tok-kw">const</span>.arra |
| b4820 | 79 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f | y:.[<span.class="tok-number">5</ |
| b4840 | 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< |
| b4860 | 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 26 | /span>.=.<span.class="tok-str">& |
| b4880 | 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2e 2a 3b 0a 20 20 20 20 3c | quot;hello"</span>.*;.....< |
| b48a0 | 73 70 61 6e 20 63 6c 61 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> |
| b48c0 | 20 67 61 72 62 61 67 65 20 3d 20 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .garbage.=.array[<span.class="to |
| b48e0 | 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3b 0a 20 20 20 20 5f 20 3d 20 67 61 72 | k-number">5</span>];....._.=.gar |
| b4900 | 62 61 67 65 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 | bage;.}</code></pre></figure><fi |
| b4920 | 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 |
| b4940 | 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> |
| b4960 | 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 69 6e | $.<kbd>zig.test.test_comptime_in |
| b4980 | 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 3c 73 70 61 | dex_out_of_bounds.zig</kbd>.<spa |
| b49a0 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 | n.class="sgr-1m">doc/langref/tes |
| b49c0 | 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 73 2e 7a | t_comptime_index_out_of_bounds.z |
| b49e0 | 69 67 3a 33 3a 32 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | ig:3:27:.</span><span.class="sgr |
| b4a00 | 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= |
| b4a20 | 22 73 67 72 2d 31 6d 22 3e 69 6e 64 65 78 20 35 20 6f 75 74 73 69 64 65 20 61 72 72 61 79 20 6f | "sgr-1m">index.5.outside.array.o |
| b4a40 | 66 20 6c 65 6e 67 74 68 20 35 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 67 61 72 62 | f.length.5.</span>....const.garb |
| b4a60 | 61 67 65 20 3d 20 61 72 72 61 79 5b 35 5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | age.=.array[5];................. |
| b4a80 | 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"> |
| b4aa0 | 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 3e | ^.</span>.</samp></pre></figure> |
| b4ac0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 | ........<p>At.runtime:</p>...... |
| b4ae0 | 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- |
| b4b00 | 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 5f | cap"><cite.class="file">runtime_ |
| b4b20 | 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 63 69 74 65 3e 3c 2f | index_out_of_bounds.zig</cite></ |
| b4b40 | 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 |
| b4b60 | 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 |
| b4b80 | 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 |
| b4ba0 | 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 |
| b4bc0 | 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>.{.... |
| b4be0 | 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 |
| b4c00 | 6e 3e 20 78 20 3d 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 | n>.x.=.foo(<span.class="tok-str" |
| b4c20 | 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 20 20 20 20 | >"hello"</span>);..... |
| b4c40 | 5f 20 3d 20 78 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 | _.=.x;.}..<span.class="tok-kw">f |
| b4c60 | 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 |
| b4c80 | 6f 3c 2f 73 70 61 6e 3e 28 78 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | o</span>(x:.[]<span.class="tok-k |
| b4ca0 | 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 |
| b4cc0 | 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 74 | -type">u8</span>).<span.class="t |
| b4ce0 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ok-type">u8</span>.{.....<span.c |
| b4d00 | 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 78 5b 3c 73 | lass="tok-kw">return</span>.x[<s |
| b4d20 | 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>] |
| b4d40 | 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 |
| b4d60 | 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 |
| b4d80 | 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 |
| b4da0 | 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 64 65 78 5f 6f | bd>zig.build-exe.runtime_index_o |
| b4dc0 | 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f | ut_of_bounds.zig</kbd>.$.<kbd>./ |
| b4de0 | 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 3c 2f 6b 62 64 | runtime_index_out_of_bounds</kbd |
| b4e00 | 3e 0a 74 68 72 65 61 64 20 33 35 36 37 39 35 32 20 70 61 6e 69 63 3a 20 69 6e 64 65 78 20 6f 75 | >.thread.3567952.panic:.index.ou |
| b4e20 | 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 20 35 0a 3c 73 70 61 | t.of.bounds:.index.5,.len.5.<spa |
| b4e40 | 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 73 72 63 2f | n.class="sgr-1m">/home/andy/src/ |
| b4e60 | 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 64 65 78 5f 6f 75 | zig/doc/langref/runtime_index_ou |
| b4e80 | 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 6e 3e 3a 20 3c 73 70 | t_of_bounds.zig:7:13</span>:.<sp |
| b4ea0 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 37 31 36 39 20 69 6e 20 66 | an.class="sgr-2m">0x1037169.in.f |
| b4ec0 | 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 62 6f 75 6e 64 73 29 | oo.(runtime_index_out_of_bounds) |
| b4ee0 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 78 5b 35 5d 3b 0a 20 20 20 20 20 20 20 | </span>.....return.x[5];........ |
| b4f00 | 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 |
| b4f20 | 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 |
| b4f40 | 6e 64 79 2f 73 72 63 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 | ndy/src/zig/doc/langref/runtime_ |
| b4f60 | 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 3a 31 38 3c 2f 73 70 | index_out_of_bounds.zig:2:18</sp |
| b4f80 | 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 33 35 | an>:.<span.class="sgr-2m">0x1035 |
| b4fa0 | 30 62 36 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 69 6e 64 65 78 5f 6f 75 74 5f 6f | 0b6.in.main.(runtime_index_out_o |
| b4fc0 | 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 74 20 78 20 3d 20 66 | f_bounds)</span>.....const.x.=.f |
| b4fe0 | 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 20 20 20 20 20 20 20 | oo("hello");.......... |
| b5000 | 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">^< |
| b5020 | 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 |
| b5040 | 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 | e/andy/src/zig/lib/std/start.zig |
| b5060 | 3a 35 31 34 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 | :514:22</span>:.<span.class="sgr |
| b5080 | 2d 32 6d 22 3e 30 78 31 30 33 34 39 35 39 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 | -2m">0x1034959.in.posixCallMainA |
| b50a0 | 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 5f 6f 66 5f 62 6f 75 | ndExit.(runtime_index_out_of_bou |
| b50c0 | 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 6f 6f 74 2e 6d 61 69 | nds)</span>.............root.mai |
| b50e0 | 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. |
| b5100 | 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 |
| b5120 | 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 73 72 63 2f 7a 69 67 | lass="sgr-1m">/home/andy/src/zig |
| b5140 | 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 36 36 3a 35 3c 2f 73 70 61 6e 3e 3a | /lib/std/start.zig:266:5</span>: |
| b5160 | 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 34 34 63 31 20 | .<span.class="sgr-2m">0x10344c1. |
| b5180 | 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 6f 75 74 5f 6f 66 5f | in._start.(runtime_index_out_of_ |
| b51a0 | 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 6c 61 74 69 6c 65 20 | bounds)</span>.....asm.volatile. |
| b51c0 | 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 |
| b51e0 | 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 |
| b5200 | 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>:. |
| b5220 | 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.???. |
| b5240 | 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 |
| b5260 | 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 |
| b5280 | 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 43 61 73 74 2d 4e 65 | e>...............<h3.id="Cast-Ne |
| b52a0 | 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 2d 49 6e 74 65 67 65 | gative-Number-to-Unsigned-Intege |
| b52c0 | 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 61 74 69 76 65 2d 4e | r"><a.href="#toc-Cast-Negative-N |
| b52e0 | 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 61 73 74 20 | umber-to-Unsigned-Integer">Cast. |
| b5300 | 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 49 6e 74 65 | Negative.Number.to.Unsigned.Inte |
| b5320 | 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 65 66 3d 22 23 43 61 | ger</a>.<a.class="hdr".href="#Ca |
| b5340 | 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 2d 49 | st-Negative-Number-to-Unsigned-I |
| b5360 | 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 20 20 3c 70 3e 41 74 | nteger">..</a></h3>........<p>At |
| b5380 | 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 65 | .compile-time:</p>.......<figure |
| b53a0 | 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 |
| b53c0 | 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 6e | te.class="file">test_comptime_in |
| b53e0 | 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 67 63 61 70 74 69 6f | valid_cast.zig</cite></figcaptio |
| b5400 | 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 |
| b5420 | 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ">comptime</span>.{.....<span.cl |
| b5440 | 61 73 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 | ass="tok-kw">const</span>.value: |
| b5460 | 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 |
| b5480 | 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 6d 62 65 72 22 3e 31 | n>.=.-<span.class="tok-number">1 |
| b54a0 | 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 |
| b54c0 | 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 3c 73 70 61 6e 20 63 | ">const</span>.unsigned:.<span.c |
| b54e0 | 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 |
| b5500 | 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 3c | an.class="tok-builtin">@intCast< |
| b5520 | 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 73 69 67 6e 65 64 3b | /span>(value);....._.=.unsigned; |
| b5540 | 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> |
| b5560 | 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 |
| b5580 | 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 |
| b55a0 | 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 69 6e 76 61 6c 69 64 | d>zig.test.test_comptime_invalid |
| b55c0 | 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 67 72 | _cast.zig</kbd>.<span.class="sgr |
| b55e0 | 2d 31 6d 22 3e 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 | -1m">doc/langref/test_comptime_i |
| b5600 | 6e 76 61 6c 69 64 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 | nvalid_cast.zig:3:36:.</span><sp |
| b5620 | 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 6e | an.class="sgr-31m">error:.</span |
| b5640 | 3e 3c 73 70 61 6e 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 | ><span.class="sgr-1m">type.'u32' |
| b5660 | 20 63 61 6e 6e 6f 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 | .cannot.represent.integer.value. |
| b5680 | 27 2d 31 27 0a 3c 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 | '-1'.</span>....const.unsigned:. |
| b56a0 | 75 33 32 20 3d 20 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 | u32.=.@intCast(value);.......... |
| b56c0 | 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. |
| b56e0 | 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 3c 2f | class="sgr-32m">^~~~~.</span>.</ |
| b5700 | 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 |
| b5720 | 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 |
| b5740 | 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 |
| b5760 | 6c 61 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 63 61 73 74 | lass="file">runtime_invalid_cast |
| b5780 | 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 |
| b57a0 | 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 |
| b57c0 | 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 |
| b57e0 | 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= |
| b5800 | 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> |
| b5820 | 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 70 | );..<span.class="tok-kw">pub</sp |
| b5840 | 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 |
| b5860 | 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 70 | n>.<span.class="tok-fn">main</sp |
| b5880 | 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 |
| b58a0 | 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- |
| b58c0 | 6b 77 22 3e 76 61 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 | kw">var</span>.value:.<span.clas |
| b58e0 | 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 2d 3c 73 70 61 6e | s="tok-type">i32</span>.=.-<span |
| b5900 | 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 73 | .class="tok-number">1</span>;.<s |
| b5920 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 72 75 6e 74 69 | pan.class="tok-comment">//.runti |
| b5940 | 6d 65 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 76 61 6c | me-known</span>....._.=.&val |
| b5960 | 75 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | ue;.....<span.class="tok-kw">con |
| b5980 | 73 74 3c 2f 73 70 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 | st</span>.unsigned:.<span.class= |
| b59a0 | 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 |
| b59c0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e | ass="tok-builtin">@intCast</span |
| b59e0 | 3e 28 76 61 6c 75 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 | >(value);.....std.debug.print(<s |
| b5a00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a | pan.class="tok-str">"value: |
| b5a20 | 20 7b 7d 5c 6e 26 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 | .{}\n"</span>,..{unsigned}) |
| b5a40 | 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 |
| b5a60 | 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 |
| b5a80 | 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 |
| b5aa0 | 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 69 64 | bd>zig.build-exe.runtime_invalid |
| b5ac0 | 5f 63 61 73 74 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 | _cast.zig</kbd>.$.<kbd>./runtime |
| b5ae0 | 5f 69 6e 76 61 6c 69 64 5f 63 61 73 74 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 33 35 36 37 39 | _invalid_cast</kbd>.thread.35679 |
| b5b00 | 31 34 20 70 61 6e 69 63 3a 20 61 74 74 65 6d 70 74 20 74 6f 20 63 61 73 74 20 6e 65 67 61 74 69 | 14.panic:.attempt.to.cast.negati |
| b5b20 | 76 65 20 76 61 6c 75 65 20 74 6f 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 0a 3c 73 70 | ve.value.to.unsigned.integer.<sp |
| b5b40 | 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 73 72 63 | an.class="sgr-1m">/home/andy/src |
| b5b60 | 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 64 | /zig/doc/langref/runtime_invalid |
| b5b80 | 5f 63 61 73 74 2e 7a 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 | _cast.zig:6:27</span>:.<span.cla |
| b5ba0 | 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 35 31 65 32 20 69 6e 20 6d 61 69 6e 20 28 72 | ss="sgr-2m">0x10351e2.in.main.(r |
| b5bc0 | 75 6e 74 69 6d 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 | untime_invalid_cast)</span>..... |
| b5be0 | 63 6f 6e 73 74 20 75 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 | const.unsigned:.u32.=.@intCast(v |
| b5c00 | 61 6c 75 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | alue);.......................... |
| b5c20 | 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>. |
| b5c40 | 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/ |
| b5c60 | 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 | src/zig/lib/std/start.zig:514:22 |
| b5c80 | 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 |
| b5ca0 | 31 30 33 34 61 34 39 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 | 1034a49.in.posixCallMainAndExit. |
| b5cc0 | 28 72 75 6e 74 69 6d 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 | (runtime_invalid_cast)</span>... |
| b5ce0 | 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 20 | ..........root.main();.......... |
| b5d00 | 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 |
| b5d20 | 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"> |
| b5d40 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 | /home/andy/src/zig/lib/std/start |
| b5d60 | 2e 7a 69 67 3a 32 36 36 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .zig:266:5</span>:.<span.class=" |
| b5d80 | 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 34 35 62 31 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e | sgr-2m">0x10345b1.in._start.(run |
| b5da0 | 74 69 6d 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 61 73 | time_invalid_cast)</span>.....as |
| b5dc0 | 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 68 29 | m.volatile.(switch.(native_arch) |
| b5de0 | 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 3c 2f | .{.....<span.class="sgr-32m">^</ |
| b5e00 | 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 3a 3f | span>.<span.class="sgr-1m">???:? |
| b5e20 | 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 22 3e | :?</span>:.<span.class="sgr-2m"> |
| b5e40 | 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 63 65 73 73 | 0x0.in.???.(???)</span>.(process |
| b5e60 | 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 70 3e 3c 2f | .terminated.by.signal).</samp></ |
| b5e80 | 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 |
| b5ea0 | 6f 20 6f 62 74 61 69 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 | o.obtain.the.maximum.value.of.an |
| b5ec0 | 20 75 6e 73 69 67 6e 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 | .unsigned.integer,.use.<code>std |
| b5ee0 | 2e 6d 61 74 68 2e 6d 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 | .math.maxInt</code>........</p>. |
| b5f00 | 20 20 20 20 20 20 0a 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 | .............<h3.id="Cast-Trunca |
| b5f20 | 74 65 73 2d 44 61 74 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 | tes-Data"><a.href="#toc-Cast-Tru |
| b5f40 | 6e 63 61 74 65 73 2d 44 61 74 61 22 3e 43 61 73 74 20 54 72 75 6e 63 61 74 65 73 20 44 61 74 61 | ncates-Data">Cast.Truncates.Data |
| b5f60 | 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 61 73 74 2d | </a>.<a.class="hdr".href="#Cast- |
| b5f80 | 54 72 75 6e 63 61 74 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 | Truncates-Data">..</a></h3>..... |
| b5fa0 | 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 20 | ...<p>At.compile-time:</p>...... |
| b5fc0 | 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- |
| b5fe0 | 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 6d | cap"><cite.class="file">test_com |
| b6000 | 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 2e 7a 69 67 3c | ptime_invalid_cast_truncate.zig< |
| b6020 | 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 |
| b6040 | 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 |
| b6060 | 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 |
| b6080 | 6e 73 74 3c 2f 73 70 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 | nst</span>.spartan_count:.<span. |
| b60a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 | class="tok-type">u16</span>.=.<s |
| b60c0 | 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 30 3c 2f 73 70 61 6e | pan.class="tok-number">300</span |
| b60e0 | 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 |
| b6100 | 74 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 | t</span>.byte:.<span.class="tok- |
| b6120 | 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 |
| b6140 | 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 73 70 61 72 | ok-builtin">@intCast</span>(spar |
| b6160 | 74 61 6e 5f 63 6f 75 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 | tan_count);....._.=.byte;.}</cod |
| b6180 | 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 |
| b61a0 | 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 |
| b61c0 | 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 |
| b61e0 | 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 63 61 73 74 5f 74 | est.test_comptime_invalid_cast_t |
| b6200 | 72 75 6e 63 61 74 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 | runcate.zig</kbd>.<span.class="s |
| b6220 | 67 72 2d 31 6d 22 3e 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 | gr-1m">doc/langref/test_comptime |
| b6240 | 5f 69 6e 76 61 6c 69 64 5f 63 61 73 74 5f 74 72 75 6e 63 61 74 65 2e 7a 69 67 3a 33 3a 33 31 3a | _invalid_cast_truncate.zig:3:31: |
| b6260 | 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 |
| b6280 | 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" |
| b62a0 | 3e 74 79 70 65 20 27 75 38 27 20 63 61 6e 6e 6f 74 20 72 65 70 72 65 73 65 6e 74 20 69 6e 74 65 | >type.'u8'.cannot.represent.inte |
| b62c0 | 67 65 72 20 76 61 6c 75 65 20 27 33 30 30 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 | ger.value.'300'.</span>....const |
| b62e0 | 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 74 61 6e 5f 63 6f 75 | .byte:.u8.=.@intCast(spartan_cou |
| b6300 | 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 20 20 20 20 20 20 20 | nt);............................ |
| b6320 | 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 7e | ...<span.class="sgr-32m">^~~~~~~ |
| b6340 | 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 3e 3c 2f 66 69 | ~~~~~~.</span>.</samp></pre></fi |
| b6360 | 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>. |
| b6380 | 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= |
| b63a0 | 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 |
| b63c0 | 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 69 67 3c 2f | time_invalid_cast_truncate.zig</ |
| b63e0 | 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 |
| b6400 | 61 6e 20 63 6c 61 73 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 |
| b6420 | 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">@ |
| b6440 | 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 |
| b6460 | 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 |
| b6480 | 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 |
| b64a0 | 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 |
| b64c0 | 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>(). |
| b64e0 | 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 |
| b6500 | 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 |
| b6520 | 72 3c 2f 73 70 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 | r</span>.spartan_count:.<span.cl |
| b6540 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 | ass="tok-type">u16</span>.=.<spa |
| b6560 | 6e 20 63 6c 61 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 | n.class="tok-number">300</span>; |
| b6580 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 72 75 | .<span.class="tok-comment">//.ru |
| b65a0 | 6e 74 69 6d 65 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 | ntime-known</span>....._.=.& |
| b65c0 | 73 70 61 72 74 61 6e 5f 63 6f 75 6e 74 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | spartan_count;.....<span.class=" |
| b65e0 | 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 6e | tok-kw">const</span>.byte:.<span |
| b6600 | 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 |
| b6620 | 70 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 |
| b6640 | 3c 2f 73 70 61 6e 3e 28 73 70 61 72 74 61 6e 5f 63 6f 75 6e 74 29 3b 0a 20 20 20 20 73 74 64 2e | </span>(spartan_count);.....std. |
| b6660 | 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 |
| b6680 | 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> |
| b66a0 | 2c 20 2e 7b 62 79 74 65 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | ,..{byte});.}</code></pre></figu |
| b66c0 | 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 |
| b66e0 | 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> |
| b6700 | 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 69 | <samp>$.<kbd>zig.build-exe.runti |
| b6720 | 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 69 67 3c 2f 6b 62 | me_invalid_cast_truncate.zig</kb |
| b6740 | 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 5f 63 61 73 74 | d>.$.<kbd>./runtime_invalid_cast |
| b6760 | 5f 74 72 75 6e 63 61 74 65 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 33 35 37 36 30 32 30 20 70 | _truncate</kbd>.thread.3576020.p |
| b6780 | 61 6e 69 63 3a 20 69 6e 74 65 67 65 72 20 63 61 73 74 20 74 72 75 6e 63 61 74 65 64 20 62 69 74 | anic:.integer.cast.truncated.bit |
| b67a0 | 73 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 | s.<span.class="sgr-1m">/home/and |
| b67c0 | 79 2f 73 72 63 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 | y/src/zig/doc/langref/runtime_in |
| b67e0 | 76 61 6c 69 64 5f 63 61 73 74 5f 74 72 75 6e 63 61 74 65 2e 7a 69 67 3a 36 3a 32 32 3c 2f 73 70 | valid_cast_truncate.zig:6:22</sp |
| b6800 | 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 33 35 | an>:.<span.class="sgr-2m">0x1035 |
| b6820 | 32 37 35 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 63 61 73 | 275.in.main.(runtime_invalid_cas |
| b6840 | 74 5f 74 72 75 6e 63 61 74 65 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 62 79 74 | t_truncate)</span>.....const.byt |
| b6860 | 65 3a 20 75 38 20 3d 20 40 69 6e 74 43 61 73 74 28 73 70 61 72 74 61 6e 5f 63 6f 75 6e 74 29 3b | e:.u8.=.@intCast(spartan_count); |
| b6880 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ......................<span.clas |
| b68a0 | 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 |
| b68c0 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 | ="sgr-1m">/home/andy/src/zig/lib |
| b68e0 | 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | /std/start.zig:514:22</span>:.<s |
| b6900 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 34 61 64 39 20 69 6e 20 | pan.class="sgr-2m">0x1034ad9.in. |
| b6920 | 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 65 5f 69 6e | posixCallMainAndExit.(runtime_in |
| b6940 | 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 20 20 | valid_cast_truncate)</span>..... |
| b6960 | 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();............ |
| b6980 | 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"> |
| b69a0 | 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 |
| b69c0 | 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a | ome/andy/src/zig/lib/std/start.z |
| b69e0 | 69 67 3a 32 36 36 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:266:5</span>:.<span.class="sg |
| b6a00 | 72 2d 32 6d 22 3e 30 78 31 30 33 34 36 34 31 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 | r-2m">0x1034641.in._start.(runti |
| b6a20 | 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 2f 73 70 61 6e 3e | me_invalid_cast_truncate)</span> |
| b6a40 | 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 |
| b6a60 | 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 |
| b6a80 | 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 |
| b6aa0 | 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 |
| b6ac0 | 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 28 | gr-2m">0x0.in.???.(???)</span>.( |
| b6ae0 | 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 0a 3c 2f | process.terminated.by.signal).</ |
| b6b00 | 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>. |
| b6b20 | 20 20 20 20 20 20 54 6f 20 74 72 75 6e 63 61 74 65 20 62 69 74 73 2c 20 75 73 65 20 3c 61 20 68 | ......To.truncate.bits,.use.<a.h |
| b6b40 | 72 65 66 3d 22 23 74 72 75 6e 63 61 74 65 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f 61 3e 2e 0a 20 | ref="#truncate">@truncate</a>... |
| b6b60 | 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 49 | .....</p>..............<h3.id="I |
| b6b80 | 6e 74 65 67 65 72 2d 4f 76 65 72 66 6c 6f 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 | nteger-Overflow"><a.href="#toc-I |
| b6ba0 | 6e 74 65 67 65 72 2d 4f 76 65 72 66 6c 6f 77 22 3e 49 6e 74 65 67 65 72 20 4f 76 65 72 66 6c 6f | nteger-Overflow">Integer.Overflo |
| b6bc0 | 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 49 6e 74 65 | w</a>.<a.class="hdr".href="#Inte |
| b6be0 | 67 65 72 2d 4f 76 65 72 66 6c 6f 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | ger-Overflow">..</a></h3>....... |
| b6c00 | 20 3c 68 34 20 69 64 3d 22 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 3c 61 20 | .<h4.id="Default-Operations"><a. |
| b6c20 | 68 72 65 66 3d 22 23 74 6f 63 2d 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 44 | href="#toc-Default-Operations">D |
| b6c40 | 65 66 61 75 6c 74 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | efault.Operations</a>.<a.class=" |
| b6c60 | 68 64 72 22 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e | hdr".href="#Default-Operations"> |
| b6c80 | 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 66 6f 6c 6c 6f 77 | ..</a></h4>........<p>The.follow |
| b6ca0 | 69 6e 67 20 6f 70 65 72 61 74 6f 72 73 20 63 61 6e 20 63 61 75 73 65 20 69 6e 74 65 67 65 72 20 | ing.operators.can.cause.integer. |
| b6cc0 | 6f 76 65 72 66 6c 6f 77 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | overflow:</p>.......<ul>........ |
| b6ce0 | 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 2b 3c 2f 63 6f 64 65 3e 20 28 61 64 64 69 74 69 6f 6e 29 | ...<li><code>+</code>.(addition) |
| b6d00 | 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 2d 3c 2f 63 6f 64 | </li>...........<li><code>-</cod |
| b6d20 | 65 3e 20 28 73 75 62 74 72 61 63 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | e>.(subtraction)</li>........... |
| b6d40 | 3c 6c 69 3e 3c 63 6f 64 65 3e 2d 3c 2f 63 6f 64 65 3e 20 28 6e 65 67 61 74 69 6f 6e 29 3c 2f 6c | <li><code>-</code>.(negation)</l |
| b6d60 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 2a 3c 2f 63 6f 64 65 3e 20 | i>...........<li><code>*</code>. |
| b6d80 | 28 6d 75 6c 74 69 70 6c 69 63 61 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | (multiplication)</li>........... |
| b6da0 | 3c 6c 69 3e 3c 63 6f 64 65 3e 2f 3c 2f 63 6f 64 65 3e 20 28 64 69 76 69 73 69 6f 6e 29 3c 2f 6c | <li><code>/</code>.(division)</l |
| b6dc0 | 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 54 72 75 6e | i>.........<li><a.href="#divTrun |
| b6de0 | 63 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 20 28 64 69 76 69 73 69 6f 6e 29 3c 2f 6c 69 3e | c">@divTrunc</a>.(division)</li> |
| b6e00 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 | .........<li><a.href="#divFloor" |
| b6e20 | 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 61 3e 20 28 64 69 76 69 73 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 | >@divFloor</a>.(division)</li>.. |
| b6e40 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 45 78 61 63 74 22 3e 40 | .......<li><a.href="#divExact">@ |
| b6e60 | 64 69 76 45 78 61 63 74 3c 2f 61 3e 20 28 64 69 76 69 73 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 | divExact</a>.(division)</li>.... |
| b6e80 | 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 45 78 61 6d 70 6c 65 20 77 69 74 68 20 61 | ...</ul>.......<p>Example.with.a |
| b6ea0 | 64 64 69 74 69 6f 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 | ddition.at.compile-time:</p>.... |
| b6ec0 | 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 |
| b6ee0 | 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 63 | g-cap"><cite.class="file">test_c |
| b6f00 | 6f 6d 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 | omptime_overflow.zig</cite></fig |
| b6f20 | 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=" |
| b6f40 | 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 73 | tok-kw">comptime</span>.{.....<s |
| b6f60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 79 | pan.class="tok-kw">var</span>.by |
| b6f80 | 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 3c 2f 73 | te:.<span.class="tok-type">u8</s |
| b6fa0 | 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"> |
| b6fc0 | 32 35 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 62 79 74 65 20 2b 3d 20 3c 73 70 61 6e 20 63 6c | 255</span>;.....byte.+=.<span.cl |
| b6fe0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f | ass="tok-number">1</span>;.}</co |
| b7000 | 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 |
| b7020 | 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 |
| b7040 | 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. |
| b7060 | 74 65 73 74 20 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 | test.test_comptime_overflow.zig< |
| b7080 | 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 64 6f 63 2f 6c | /kbd>.<span.class="sgr-1m">doc/l |
| b70a0 | 61 6e 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 | angref/test_comptime_overflow.zi |
| b70c0 | 67 3a 33 3a 31 30 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | g:3:10:.</span><span.class="sgr- |
| b70e0 | 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=" |
| b7100 | 73 67 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 | sgr-1m">overflow.of.integer.type |
| b7120 | 20 27 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 | .'u8'.with.value.'256'.</span>.. |
| b7140 | 20 20 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 | ..byte.+=.1;.....<span.class="sg |
| b7160 | 72 2d 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 | r-32m">~~~~~^~~~.</span>.</samp> |
| b7180 | 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 |
| b71a0 | 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 |
| b71c0 | 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= |
| b71e0 | 22 66 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 | "file">runtime_overflow.zig</cit |
| b7200 | 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. |
| b7220 | 63 6c 61 73 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. |
| b7240 | 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 |
| b7260 | 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" |
| b7280 | 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e | >"std"</span>);..<span |
| b72a0 | 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 |
| b72c0 | 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. |
| b72e0 | 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 70 | class="tok-fn">main</span>().<sp |
| b7300 | 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>. |
| b7320 | 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</ |
| b7340 | 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 |
| b7360 | 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- |
| b7380 | 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 62 79 74 65 20 2b 3d 20 | number">255</span>;.....byte.+=. |
| b73a0 | 3c 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 |
| b73c0 | 3e 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 | >;.....std.debug.print(<span.cla |
| b73e0 | 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 71 | ss="tok-str">"value:.{}\n&q |
| b7400 | 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 3c | uot;</span>,..{byte});.}</code>< |
| b7420 | 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 |
| b7440 | 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 |
| b7460 | 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 |
| b7480 | 64 2d 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 | d-exe.runtime_overflow.zig</kbd> |
| b74a0 | 0a 24 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 | .$.<kbd>./runtime_overflow</kbd> |
| b74c0 | 0a 74 68 72 65 61 64 20 33 35 37 34 32 30 39 20 70 61 6e 69 63 3a 20 69 6e 74 65 67 65 72 20 6f | .thread.3574209.panic:.integer.o |
| b74e0 | 76 65 72 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 | verflow.<span.class="sgr-1m">/ho |
| b7500 | 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 | me/andy/src/zig/doc/langref/runt |
| b7520 | 69 6d 65 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 | ime_overflow.zig:5:10</span>:.<s |
| b7540 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 35 32 35 65 20 69 6e 20 | pan.class="sgr-2m">0x103525e.in. |
| b7560 | 6d 61 69 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 | main.(runtime_overflow)</span>.. |
| b7580 | 20 20 20 62 79 74 65 20 2b 3d 20 31 3b 0a 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ...byte.+=.1;..........<span.cla |
| b75a0 | 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 |
| b75c0 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 | s="sgr-1m">/home/andy/src/zig/li |
| b75e0 | 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c | b/std/start.zig:514:22</span>:.< |
| b7600 | 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 34 61 64 39 20 69 6e | span.class="sgr-2m">0x1034ad9.in |
| b7620 | 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 65 5f 6f | .posixCallMainAndExit.(runtime_o |
| b7640 | 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 20 20 20 72 6f 6f 74 | verflow)</span>.............root |
| b7660 | 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 |
| b7680 | 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 |
| b76a0 | 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 73 72 63 | an.class="sgr-1m">/home/andy/src |
| b76c0 | 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 36 36 3a 35 3c 2f 73 70 | /zig/lib/std/start.zig:266:5</sp |
| b76e0 | 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 33 34 | an>:.<span.class="sgr-2m">0x1034 |
| b7700 | 36 34 31 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 | 641.in._start.(runtime_overflow) |
| b7720 | 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 63 68 | </span>.....asm.volatile.(switch |
| b7740 | 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 73 73 | .(native_arch).{.....<span.class |
| b7760 | 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= |
| b7780 | 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 20 63 | "sgr-1m">???:?:?</span>:.<span.c |
| b77a0 | 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 3c 2f | lass="sgr-2m">0x0.in.???.(???)</ |
| b77c0 | 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 | span>.(process.terminated.by.sig |
| b77e0 | 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 20 20 | nal).</samp></pre></figure>..... |
| b7800 | 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 2d 4c 69 62 72 61 | ..........<h4.id="Standard-Libra |
| b7820 | 72 79 2d 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 | ry-Math-Functions"><a.href="#toc |
| b7840 | 2d 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 2d 4d 61 74 68 2d 46 75 6e 63 74 69 6f 6e 73 | -Standard-Library-Math-Functions |
| b7860 | 22 3e 53 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 | ">Standard.Library.Math.Function |
| b7880 | 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 74 61 6e | s</a>.<a.class="hdr".href="#Stan |
| b78a0 | 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 c2 a7 3c | dard-Library-Math-Functions">..< |
| b78c0 | 2f 61 3e 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 | /a></h4>........<p>These.functio |
| b78e0 | 6e 73 20 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 | ns.provided.by.the.standard.libr |
| b7900 | 61 72 79 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 | ary.return.possible.errors.</p>. |
| b7920 | 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 3c | ......<ul>...........<li><code>< |
| b7940 | 73 70 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 |
| b7960 | 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 |
| b7980 | 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 61 64 64 3c 2f | uot;std"</span>).math.add</ |
| b79a0 | 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 3e 3c | code></li>...........<li><code>< |
| b79c0 | 73 70 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 |
| b79e0 | 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 |
| b7a00 | 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 73 75 62 3c 2f | uot;std"</span>).math.sub</ |
| b7a20 | 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 3e 3c | code></li>...........<li><code>< |
| b7a40 | 73 70 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 |
| b7a60 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>(<span.class="tok-str">&q |
| b7a80 | 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 6d 75 6c 3c 2f | uot;std"</span>).math.mul</ |
| b7aa0 | 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 3e 3c | code></li>...........<li><code>< |
| b7ac0 | 73 70 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 |
| b7ae0 | 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 |
| b7b00 | 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 54 72 | uot;std"</span>).math.divTr |
| b7b20 | 75 6e 63 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 | unc</code></li>...........<li><c |
| b7b40 | 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 69 | ode><span.class="tok-builtin">@i |
| b7b60 | 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 |
| b7b80 | 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 2e | r">"std"</span>).math. |
| b7ba0 | 64 69 76 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 | divFloor</code></li>...........< |
| b7bc0 | 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 74 69 | li><code><span.class="tok-builti |
| b7be0 | 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 |
| b7c00 | 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>). |
| b7c20 | 6d 61 74 68 2e 64 69 76 45 78 61 63 74 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | math.divExact</code></li>....... |
| b7c40 | 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 62 | ....<li><code><span.class="tok-b |
| b7c60 | 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 |
| b7c80 | 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 |
| b7ca0 | 61 6e 3e 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 | an>).math.shl</code></li>....... |
| b7cc0 | 3c 2f 75 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 | </ul>.......<p>Example.of.catchi |
| b7ce0 | 6e 67 20 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 | ng.an.overflow.for.addition:</p> |
| b7d00 | 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 |
| b7d20 | 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 6d 61 | ="zig-cap"><cite.class="file">ma |
| b7d40 | 74 68 5f 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 | th_add.zig</cite></figcaption><p |
| b7d60 | 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 |
| b7d80 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 61 74 68 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | nst</span>.math.=.<span.class="t |
| b7da0 | 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 |
| b7dc0 | 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" |
| b7de0 | 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | </span>).math;.<span.class="tok- |
| b7e00 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 | kw">const</span>.print.=.<span.c |
| b7e20 | 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 |
| b7e40 | 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 |
| b7e60 | 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 73 70 | d"</span>).debug.print;.<sp |
| b7e80 | 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 |
| b7ea0 | 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 |
| b7ec0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 | n.class="tok-fn">main</span>().! |
| b7ee0 | 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 |
| b7f00 | 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 |
| b7f20 | 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- |
| b7f40 | 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 |
| b7f60 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 62 79 74 65 | ok-number">255</span>;......byte |
| b7f80 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e | .=.<span.class="tok-kw">if</span |
| b7fa0 | 3e 20 28 6d 61 74 68 2e 61 64 64 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | >.(math.add(<span.class="tok-typ |
| b7fc0 | 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 79 74 65 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e">u8</span>,.byte,.<span.class= |
| b7fe0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 29 20 7c 72 65 73 75 6c 74 7c | "tok-number">1</span>)).|result| |
| b8000 | 20 72 65 73 75 6c 74 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 | .result.<span.class="tok-kw">els |
| b8020 | 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c | e</span>.|err|.{.........print(< |
| b8040 | 73 70 61 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 | span.class="tok-str">"unabl |
| b8060 | 65 20 74 6f 20 61 64 64 20 6f 6e 65 3a 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | e.to.add.one:.{s}\n"</span> |
| b8080 | 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 65 | ,..{<span.class="tok-builtin">@e |
| b80a0 | 72 72 6f 72 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 65 72 72 29 7d 29 3b 0a 20 20 20 20 20 20 20 20 | rrorName</span>(err)});......... |
| b80c0 | 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 |
| b80e0 | 6e 3e 20 65 72 72 3b 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 | n>.err;.....};......print(<span. |
| b8100 | 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 3a 20 7b 7d | class="tok-str">"result:.{} |
| b8120 | 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 62 79 74 65 7d 29 3b 0a 7d 3c 2f 63 6f | \n"</span>,..{byte});.}</co |
| b8140 | 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 |
| b8160 | 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 |
| b8180 | 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. |
| b81a0 | 62 75 69 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 | build-exe.math_add.zig</kbd>.$.< |
| b81c0 | 6b 62 64 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 | kbd>./math_add</kbd>.unable.to.a |
| b81e0 | 64 64 20 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 | dd.one:.Overflow.error:.Overflow |
| b8200 | 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 |
| b8220 | 2f 73 72 63 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 | /src/zig/lib/std/math.zig:565:21 |
| b8240 | 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 |
| b8260 | 31 30 33 35 32 61 35 20 69 6e 20 61 64 64 5f 5f 61 6e 6f 6e 5f 32 35 39 32 20 28 6d 61 74 68 5f | 10352a5.in.add__anon_2592.(math_ |
| b8280 | 61 64 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 | add)</span>.....if.(ov[1].!=.0). |
| b82a0 | 72 65 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 | return.error.Overflow;.......... |
| b82c0 | 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" |
| b82e0 | 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">/ |
| b8300 | 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 6d 61 | home/andy/src/zig/doc/langref/ma |
| b8320 | 74 68 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 | th_add.zig:8:9</span>:.<span.cla |
| b8340 | 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 35 32 34 33 20 69 6e 20 6d 61 69 6e 20 28 6d | ss="sgr-2m">0x1035243.in.main.(m |
| b8360 | 61 74 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 | ath_add)</span>.........return.e |
| b8380 | 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 73 67 72 2d 33 32 6d | rr;.........<span.class="sgr-32m |
| b83a0 | 22 3e 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 | ">^</span>.</samp></pre></figure |
| b83c0 | 3e 0a 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 | >...............<h4.id="Builtin- |
| b83e0 | 4f 76 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 | Overflow-Functions"><a.href="#to |
| b8400 | 63 2d 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 | c-Builtin-Overflow-Functions">Bu |
| b8420 | 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 20 3c 61 20 | iltin.Overflow.Functions</a>.<a. |
| b8440 | 63 6c 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 | class="hdr".href="#Builtin-Overf |
| b8460 | 6c 6f 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 | low-Functions">..</a></h4>...... |
| b8480 | 20 20 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 | ..<p>.......These.builtins.retur |
| b84a0 | 6e 20 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 | n.a.tuple.containing.whether.the |
| b84c0 | 72 65 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 | re.was.an.overflow.......(as.a.< |
| b84e0 | 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 31 3c 2f | code><span.class="tok-type">u1</ |
| b8500 | 73 70 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 | span></code>).and.the.possibly.o |
| b8520 | 76 65 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 | verflowed.bits.of.the.operation: |
| b8540 | 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>.......... |
| b8560 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e | .<li><a.href="#addWithOverflow"> |
| b8580 | 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | @addWithOverflow</a></li>....... |
| b85a0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f | ....<li><a.href="#subWithOverflo |
| b85c0 | 77 22 3e 40 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | w">@subWithOverflow</a></li>.... |
| b85e0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 74 68 4f 76 65 72 | .......<li><a.href="#mulWithOver |
| b8600 | 66 6c 6f 77 22 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a | flow">@mulWithOverflow</a></li>. |
| b8620 | 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 68 6c 57 69 74 68 4f | ..........<li><a.href="#shlWithO |
| b8640 | 76 65 72 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c | verflow">@shlWithOverflow</a></l |
| b8660 | 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 | i>.......</ul>.......<p>.......E |
| b8680 | 78 61 6d 70 6c 65 20 6f 66 20 3c 61 20 68 72 65 66 3d 22 23 61 64 64 57 69 74 68 4f 76 65 72 66 | xample.of.<a.href="#addWithOverf |
| b86a0 | 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 3a 0a 20 20 20 20 20 | low">@addWithOverflow</a>:...... |
| b86c0 | 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. |
| b86e0 | 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 |
| b8700 | 65 22 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 | e">addWithOverflow_builtin.zig</ |
| b8720 | 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 |
| b8740 | 61 6e 20 63 6c 61 73 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 |
| b8760 | 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" |
| b8780 | 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 |
| b87a0 | 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 |
| b87c0 | 62 75 67 2e 70 72 69 6e 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | bug.print;.<span.class="tok-kw"> |
| b87e0 | 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"> |
| b8800 | 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 |
| b8820 | 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 |
| b8840 | 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 |
| b8860 | 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 3a 20 3c 73 | s="tok-kw">const</span>.byte:.<s |
| b8880 | 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>.= |
| b88a0 | 20 3c 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 |
| b88c0 | 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"> |
| b88e0 | 63 6f 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 | const</span>.ov.=.<span.class="t |
| b8900 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 | ok-builtin">@addWithOverflow</sp |
| b8920 | 61 6e 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 | an>(byte,.<span.class="tok-numbe |
| b8940 | 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | r">10</span>);.....<span.class=" |
| b8960 | 74 6f 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 | tok-kw">if</span>.(ov[<span.clas |
| b8980 | 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 21 3d 20 3c 73 70 61 | s="tok-number">1</span>].!=.<spa |
| b89a0 | 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 20 7b | n.class="tok-number">0</span>).{ |
| b89c0 | 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .........print(<span.class="tok- |
| b89e0 | 73 74 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 | str">"overflowed.result:.{} |
| b8a00 | 5c 6e 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 | \n"</span>,..{ov[<span.clas |
| b8a20 | 73 3d 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 | s="tok-number">0</span>]});..... |
| b8a40 | 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 |
| b8a60 | 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 73 3d 22 | n>.{.........print(<span.class=" |
| b8a80 | 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 71 75 6f 74 | tok-str">"result:.{}\n" |
| b8aa0 | 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 22 74 6f 6b 2d | ;</span>,..{ov[<span.class="tok- |
| b8ac0 | 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 0a 7d 3c 2f 63 6f | number">0</span>]});.....}.}</co |
| b8ae0 | 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 |
| b8b00 | 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 |
| b8b20 | 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. |
| b8b40 | 62 75 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 | build-exe.addWithOverflow_builti |
| b8b60 | 6e 2e 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 | n.zig</kbd>.$.<kbd>./addWithOver |
| b8b80 | 66 6c 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 | flow_builtin</kbd>.overflowed.re |
| b8ba0 | 73 75 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 | sult:.9.</samp></pre></figure>.. |
| b8bc0 | 20 20 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 | .............<h4.id="Wrapping-Op |
| b8be0 | 65 72 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 | erations"><a.href="#toc-Wrapping |
| b8c00 | 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 61 74 69 6f 6e 73 | -Operations">Wrapping.Operations |
| b8c20 | 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 72 61 70 70 | </a>.<a.class="hdr".href="#Wrapp |
| b8c40 | 69 6e 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 | ing-Operations">..</a></h4>..... |
| b8c60 | 20 20 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 | ...<p>.......These.operations.ha |
| b8c80 | 76 65 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 | ve.guaranteed.wraparound.semanti |
| b8ca0 | 63 73 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 | cs........</p>.......<ul>....... |
| b8cc0 | 20 20 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 | ....<li><code>+%</code>.(wraparo |
| b8ce0 | 75 6e 64 20 61 64 64 69 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | und.addition)</li>...........<li |
| b8d00 | 3e 3c 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 | ><code>-%</code>.(wraparound.sub |
| b8d20 | 74 72 61 63 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f | traction)</li>...........<li><co |
| b8d40 | 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 6e 65 67 61 74 69 6f | de>-%</code>.(wraparound.negatio |
| b8d60 | 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 3e 2a 25 3c 2f | n)</li>...........<li><code>*%</ |
| b8d80 | 63 6f 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 | code>.(wraparound.multiplication |
| b8da0 | 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 66 69 67 75 72 65 | )</li>.......</ul>.......<figure |
| b8dc0 | 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 |
| b8de0 | 74 65 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 | te.class="file">test_wraparound_ |
| b8e00 | 73 65 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 | semantics.zig</cite></figcaption |
| b8e20 | 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" |
| b8e40 | 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= |
| b8e60 | 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 |
| b8e80 | 61 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 |
| b8ea0 | 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" |
| b8ec0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 | >const</span>.expect.=.std.testi |
| b8ee0 | 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 3e | ng.expect;.<span.class="tok-kw"> |
| b8f00 | 63 6f 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 | const</span>.minInt.=.std.math.m |
| b8f20 | 69 6e 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 | inInt;.<span.class="tok-kw">cons |
| b8f40 | 74 3c 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 | t</span>.maxInt.=.std.math.maxIn |
| b8f60 | 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 |
| b8f80 | 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">" |
| b8fa0 | 3b 77 72 61 70 61 72 6f 75 6e 64 20 61 64 64 69 74 69 6f 6e 20 61 6e 64 20 73 75 62 74 72 61 63 | ;wraparound.addition.and.subtrac |
| b8fc0 | 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 |
| b8fe0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 | ass="tok-kw">const</span>.x:.<sp |
| b9000 | 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>.= |
| b9020 | 20 6d 61 78 49 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | .maxInt(<span.class="tok-type">i |
| b9040 | 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 22 74 6f 6b | 32</span>);.....<span.class="tok |
| b9060 | 2d 6b 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 | -kw">const</span>.min_val.=.x.+% |
| b9080 | 20 3c 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 |
| b90a0 | 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 |
| b90c0 | 3c 2f 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 | </span>.expect(min_val.==.minInt |
| b90e0 | 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 70 61 | (<span.class="tok-type">i32</spa |
| b9100 | 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 22 3e 63 | n>));.....<span.class="tok-kw">c |
| b9120 | 6f 6e 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 | onst</span>.max_val.=.min_val.-% |
| b9140 | 20 3c 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 |
| b9160 | 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 |
| b9180 | 3c 2f 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 | </span>.expect(max_val.==.maxInt |
| b91a0 | 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 70 61 | (<span.class="tok-type">i32</spa |
| b91c0 | 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 69 | n>));.}</code></pre></figure><fi |
| b91e0 | 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 |
| b9200 | 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> |
| b9220 | 24 20 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 | $.<kbd>zig.test.test_wraparound_ |
| b9240 | 73 65 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 | semantics.zig</kbd>.1/1.test_wra |
| b9260 | 70 61 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 | paround_semantics.test.wraparoun |
| b9280 | 64 20 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 | d.addition.and.subtraction...OK. |
| b92a0 | 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 |
| b92c0 | 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 20 20 20 20 | ></figure>...................... |
| b92e0 | 3c 68 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 | <h3.id="Exact-Left-Shift-Overflo |
| b9300 | 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 78 61 63 74 2d 4c 65 66 74 2d 53 68 69 66 | w"><a.href="#toc-Exact-Left-Shif |
| b9320 | 74 2d 4f 76 65 72 66 6c 6f 77 22 3e 45 78 61 63 74 20 4c 65 66 74 20 53 68 69 66 74 20 4f 76 65 | t-Overflow">Exact.Left.Shift.Ove |
| b9340 | 72 66 6c 6f 77 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | rflow</a>.<a.class="hdr".href="# |
| b9360 | 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 c2 a7 3c 2f 61 | Exact-Left-Shift-Overflow">..</a |
| b9380 | 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 |
| b93a0 | 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. |
| b93c0 | 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 |
| b93e0 | 65 22 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 | e">test_comptime_shlExact_overwl |
| b9400 | 6f 77 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 | ow.zig</cite></figcaption><pre>< |
| b9420 | 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 74 69 | code><span.class="tok-kw">compti |
| b9440 | 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | me</span>.{.....<span.class="tok |
| b9460 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | -kw">const</span>.x.=.<span.clas |
| b9480 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 73 70 61 6e 3e | s="tok-builtin">@shlExact</span> |
| b94a0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f | (<span.class="tok-builtin">@as</ |
| b94c0 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c | span>(<span.class="tok-type">u8< |
| b94e0 | 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" |
| b9500 | 3e 30 62 30 31 30 31 30 31 30 31 3c 2f 73 70 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | >0b01010101</span>),.<span.class |
| b9520 | 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 5f 20 3d | ="tok-number">2</span>);....._.= |
| b9540 | 20 78 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 | .x;.}</code></pre></figure><figu |
| b9560 | 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" |
| b9580 | 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>$. |
| b95a0 | 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 73 68 6c 45 | <kbd>zig.test.test_comptime_shlE |
| b95c0 | 78 61 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 | xact_overwlow.zig</kbd>.<span.cl |
| b95e0 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f | ass="sgr-1m">doc/langref/test_co |
| b9600 | 6d 70 74 69 6d 65 5f 73 68 6c 45 78 61 63 74 5f 6f 76 65 72 77 6c 6f 77 2e 7a 69 67 3a 32 3a 31 | mptime_shlExact_overwlow.zig:2:1 |
| b9620 | 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 22 3e | 5:.</span><span.class="sgr-31m"> |
| b9640 | 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 |
| b9660 | 6d 22 3e 6f 70 65 72 61 74 69 6f 6e 20 63 61 75 73 65 64 20 6f 76 65 72 66 6c 6f 77 0a 3c 2f 73 | m">operation.caused.overflow.</s |
| b9680 | 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 78 20 3d 20 40 73 68 6c 45 78 61 63 74 28 40 61 73 28 | pan>....const.x.=.@shlExact(@as( |
| b96a0 | 75 38 2c 20 30 62 30 31 30 31 30 31 30 31 29 2c 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | u8,.0b01010101),.2);............ |
| b96c0 | 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 7e | ...<span.class="sgr-32m">^~~~~~~ |
| b96e0 | 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 61 | ~~~~~~~~~~~~~~~~~~~~~~~~~~.</spa |
| b9700 | 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 20 | n>.</samp></pre></figure>....... |
| b9720 | 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 67 75 72 | .<p>At.runtime:</p>.......<figur |
| b9740 | 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 |
| b9760 | 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 6c 45 78 61 63 | ite.class="file">runtime_shlExac |
| b9780 | 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 74 69 6f | t_overflow.zig</cite></figcaptio |
| b97a0 | 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 |
| b97c0 | 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 |
| b97e0 | 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 |
| b9800 | 70 61 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 |
| b9820 | 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 |
| b9840 | 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 |
| b9860 | 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 |
| b9880 | 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 |
| b98a0 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | -type">void</span>.{.....<span.c |
| b98c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 | lass="tok-kw">var</span>.x:.<spa |
| b98e0 | 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>.=.< |
| b9900 | 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 30 31 30 31 30 31 | span.class="tok-number">0b010101 |
| b9920 | 30 31 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 | 01</span>;.<span.class="tok-comm |
| b9940 | 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 20 20 | ent">//.runtime-known</span>.... |
| b9960 | 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 22 74 6f | ._.=.&x;.....<span.class="to |
| b9980 | 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 61 | k-kw">const</span>.y.=.<span.cla |
| b99a0 | 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 6e | ss="tok-builtin">@shlExact</span |
| b99c0 | 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 3e 32 3c | >(x,.<span.class="tok-number">2< |
| b99e0 | 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 3c 73 70 | /span>);.....std.debug.print(<sp |
| b9a00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 | an.class="tok-str">"value:. |
| b9a20 | 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 63 6f 64 | {}\n"</span>,..{y});.}</cod |
| b9a40 | 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 |
| b9a60 | 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 |
| b9a80 | 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 |
| b9aa0 | 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 73 68 6c 45 78 61 63 74 5f 6f 76 65 72 66 6c | uild-exe.runtime_shlExact_overfl |
| b9ac0 | 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 5f 73 68 | ow.zig</kbd>.$.<kbd>./runtime_sh |
| b9ae0 | 6c 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 33 35 37 | lExact_overflow</kbd>.thread.357 |
| b9b00 | 37 31 35 36 20 70 61 6e 69 63 3a 20 6c 65 66 74 20 73 68 69 66 74 20 6f 76 65 72 66 6c 6f 77 65 | 7156.panic:.left.shift.overflowe |
| b9b20 | 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 68 6f 6d | d.bits.<span.class="sgr-1m">/hom |
| b9b40 | 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 | e/andy/src/zig/doc/langref/runti |
| b9b60 | 6d 65 5f 73 68 6c 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3a 36 3a 35 3c 2f 73 70 | me_shlExact_overflow.zig:6:5</sp |
| b9b80 | 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 33 35 | an>:.<span.class="sgr-2m">0x1035 |
| b9ba0 | 32 62 64 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 73 68 6c 45 78 61 63 74 5f 6f 76 | 2bd.in.main.(runtime_shlExact_ov |
| b9bc0 | 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 40 73 68 | erflow)</span>.....const.y.=.@sh |
| b9be0 | 6c 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 3d 22 73 | lExact(x,.2);.....<span.class="s |
| b9c00 | 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 |
| b9c20 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 | r-1m">/home/andy/src/zig/lib/std |
| b9c40 | 2f 73 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | /start.zig:514:22</span>:.<span. |
| b9c60 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 34 62 31 39 20 69 6e 20 70 6f 73 69 | class="sgr-2m">0x1034b19.in.posi |
| b9c80 | 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 6c 45 78 61 | xCallMainAndExit.(runtime_shlExa |
| b9ca0 | 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 20 20 20 | ct_overflow)</span>............. |
| b9cc0 | 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();.................... |
| b9ce0 | 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> |
| b9d00 | 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 |
| b9d20 | 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 36 36 3a 35 | /src/zig/lib/std/start.zig:266:5 |
| b9d40 | 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 |
| b9d60 | 31 30 33 34 36 38 31 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 73 68 6c 45 78 | 1034681.in._start.(runtime_shlEx |
| b9d80 | 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 76 6f 6c | act_overflow)</span>.....asm.vol |
| b9da0 | 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).{... |
| b9dc0 | 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> |
| b9de0 | 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 |
| b9e00 | 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 |
| b9e20 | 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 |
| b9e40 | 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>< |
| b9e60 | 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 45 | /figure>...............<h3.id="E |
| b9e80 | 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 3c 61 20 68 72 | xact-Right-Shift-Overflow"><a.hr |
| b9ea0 | 65 66 3d 22 23 74 6f 63 2d 45 78 61 63 74 2d 52 69 67 68 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 | ef="#toc-Exact-Right-Shift-Overf |
| b9ec0 | 6c 6f 77 22 3e 45 78 61 63 74 20 52 69 67 68 74 20 53 68 69 66 74 20 4f 76 65 72 66 6c 6f 77 3c | low">Exact.Right.Shift.Overflow< |
| b9ee0 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 78 61 63 74 2d | /a>.<a.class="hdr".href="#Exact- |
| b9f00 | 52 69 67 68 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 2f 68 33 | Right-Shift-Overflow">..</a></h3 |
| b9f20 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e | >........<p>At.compile-time:</p> |
| b9f40 | 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 |
| b9f60 | 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 |
| b9f80 | 73 74 5f 63 6f 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 | st_comptime_shrExact_overflow.zi |
| b9fa0 | 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> |
| b9fc0 | 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 |
| b9fe0 | 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"> |
| ba000 | 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 74 6f | const</span>.x.=.<span.class="to |
| ba020 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | k-builtin">@shrExact</span>(<spa |
| ba040 | 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> |
| ba060 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e | (<span.class="tok-type">u8</span |
| ba080 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 | >,.<span.class="tok-number">0b10 |
| ba0a0 | 31 30 31 30 31 30 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 | 101010</span>),.<span.class="tok |
| ba0c0 | 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 3b 0a 7d | -number">2</span>);....._.=.x;.} |
| ba0e0 | 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 |
| ba100 | 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 |
| ba120 | 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> |
| ba140 | 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 72 45 78 61 63 74 5f | zig.test.test_comptime_shrExact_ |
| ba160 | 6f 76 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 | overflow.zig</kbd>.<span.class=" |
| ba180 | 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d | sgr-1m">doc/langref/test_comptim |
| ba1a0 | 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 20 3c 2f | e_shrExact_overflow.zig:2:15:.</ |
| ba1c0 | 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 |
| ba1e0 | 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 78 | :.</span><span.class="sgr-1m">ex |
| ba200 | 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 3c 2f 73 | act.shift.shifted.out.1.bits.</s |
| ba220 | 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 61 73 28 | pan>....const.x.=.@shrExact(@as( |
| ba240 | 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 20 20 20 | u8,.0b10101010),.2);............ |
| ba260 | 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 7e | ...<span.class="sgr-32m">^~~~~~~ |
| ba280 | 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 61 | ~~~~~~~~~~~~~~~~~~~~~~~~~~.</spa |
| ba2a0 | 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 20 | n>.</samp></pre></figure>....... |
| ba2c0 | 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 67 75 72 | .<p>At.runtime:</p>.......<figur |
| ba2e0 | 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 |
| ba300 | 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 78 61 63 | ite.class="file">runtime_shrExac |
| ba320 | 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 74 69 6f | t_overflow.zig</cite></figcaptio |
| ba340 | 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 |
| ba360 | 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 |
| ba380 | 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 |
| ba3a0 | 70 61 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 |
| ba3c0 | 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 |
| ba3e0 | 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 |
| ba400 | 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 |
| ba420 | 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 |
| ba440 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | -type">void</span>.{.....<span.c |
| ba460 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 | lass="tok-kw">var</span>.x:.<spa |
| ba480 | 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>.=.< |
| ba4a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 31 30 31 30 | span.class="tok-number">0b101010 |
| ba4c0 | 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 6f 6d 6d | 10</span>;.<span.class="tok-comm |
| ba4e0 | 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 20 20 | ent">//.runtime-known</span>.... |
| ba500 | 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 22 74 6f | ._.=.&x;.....<span.class="to |
| ba520 | 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 61 | k-kw">const</span>.y.=.<span.cla |
| ba540 | 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 61 6e | ss="tok-builtin">@shrExact</span |
| ba560 | 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 3e 32 3c | >(x,.<span.class="tok-number">2< |
| ba580 | 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 3c 73 70 | /span>);.....std.debug.print(<sp |
| ba5a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 | an.class="tok-str">"value:. |
| ba5c0 | 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 63 6f 64 | {}\n"</span>,..{y});.}</cod |
| ba5e0 | 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 |
| ba600 | 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 |
| ba620 | 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 |
| ba640 | 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 72 66 6c | uild-exe.runtime_shrExact_overfl |
| ba660 | 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 5f 73 68 | ow.zig</kbd>.$.<kbd>./runtime_sh |
| ba680 | 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 33 35 37 | rExact_overflow</kbd>.thread.357 |
| ba6a0 | 39 30 34 39 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 6f 77 | 9049.panic:.right.shift.overflow |
| ba6c0 | 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 68 6f | ed.bits.<span.class="sgr-1m">/ho |
| ba6e0 | 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 | me/andy/src/zig/doc/langref/runt |
| ba700 | 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 2f 73 | ime_shrExact_overflow.zig:6:5</s |
| ba720 | 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 33 | pan>:.<span.class="sgr-2m">0x103 |
| ba740 | 35 32 62 39 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 5f 6f | 52b9.in.main.(runtime_shrExact_o |
| ba760 | 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 40 73 | verflow)</span>.....const.y.=.@s |
| ba780 | 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 3d 22 | hrExact(x,.2);.....<span.class=" |
| ba7a0 | 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 |
| ba7c0 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 | gr-1m">/home/andy/src/zig/lib/st |
| ba7e0 | 64 2f 73 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | d/start.zig:514:22</span>:.<span |
| ba800 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 34 62 31 39 20 69 6e 20 70 6f 73 | .class="sgr-2m">0x1034b19.in.pos |
| ba820 | 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 45 78 | ixCallMainAndExit.(runtime_shrEx |
| ba840 | 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 20 20 | act_overflow)</span>............ |
| ba860 | 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();................... |
| ba880 | 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 |
| ba8a0 | 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 |
| ba8c0 | 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 36 36 3a | y/src/zig/lib/std/start.zig:266: |
| ba8e0 | 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 |
| ba900 | 78 31 30 33 34 36 38 31 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 73 68 72 45 | x1034681.in._start.(runtime_shrE |
| ba920 | 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 76 6f | xact_overflow)</span>.....asm.vo |
| ba940 | 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).{.. |
| ba960 | 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 |
| ba980 | 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">???:?:?</ |
| ba9a0 | 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. |
| ba9c0 | 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 |
| ba9e0 | 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> |
| baa00 | 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=" |
| baa20 | 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 63 2d | Division-by-Zero"><a.href="#toc- |
| baa40 | 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 5a 65 | Division-by-Zero">Division.by.Ze |
| baa60 | 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 69 76 | ro</a>.<a.class="hdr".href="#Div |
| baa80 | 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 20 20 | ision-by-Zero">..</a></h3>...... |
| baaa0 | 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>....... |
| baac0 | 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 |
| baae0 | 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 |
| bab00 | 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 65 3e | time_division_by_zero.zig</cite> |
| bab20 | 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 |
| bab40 | 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>.{.. |
| bab60 | 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 |
| bab80 | 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 |
| baba0 | 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 |
| babc0 | 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 22 | ber">1</span>;.....<span.class=" |
| babe0 | 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 6c | tok-kw">const</span>.b:.<span.cl |
| bac00 | 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 |
| bac20 | 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>;.. |
| bac40 | 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 |
| bac60 | 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 63 6f | pan>.c.=.a./.b;....._.=.c;.}</co |
| bac80 | 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 |
| baca0 | 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 |
| bacc0 | 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. |
| bace0 | 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 5f 7a | test.test_comptime_division_by_z |
| bad00 | 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 2d 31 | ero.zig</kbd>.<span.class="sgr-1 |
| bad20 | 6d 22 3e 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 64 69 76 | m">doc/langref/test_comptime_div |
| bad40 | 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 2e 7a 69 67 3a 34 3a 31 39 3a 20 3c 2f 73 70 61 6e 3e 3c | ision_by_zero.zig:4:19:.</span>< |
| bad60 | 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 70 | span.class="sgr-31m">error:.</sp |
| bad80 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 69 76 69 73 69 6f 6e | an><span.class="sgr-1m">division |
| bada0 | 20 62 79 20 7a 65 72 6f 20 68 65 72 65 20 63 61 75 73 65 73 20 75 6e 64 65 66 69 6e 65 64 20 62 | .by.zero.here.causes.undefined.b |
| badc0 | 65 68 61 76 69 6f 72 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 63 20 3d 20 61 20 2f | ehavior.</span>....const.c.=.a./ |
| bade0 | 20 62 3b 0a 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 | .b;...................<span.clas |
| bae00 | 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 2f 70 | s="sgr-32m">^.</span>.</samp></p |
| bae20 | 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 |
| bae40 | 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 |
| bae60 | 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 |
| bae80 | 6c 65 22 3e 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 69 67 | le">runtime_division_by_zero.zig |
| baea0 | 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>< |
| baec0 | 73 70 61 6e 20 63 6c 61 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> |
| baee0 | 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" |
| baf00 | 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 |
| baf20 | 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>);.. |
| baf40 | 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>. |
| baf60 | 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>.< |
| baf80 | 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>( |
| bafa0 | 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 |
| bafc0 | 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"> |
| bafe0 | 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | var</span>.a:.<span.class="tok-t |
| bb000 | 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 |
| bb020 | 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 |
| bb040 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 | lass="tok-kw">var</span>.b:.<spa |
| bb060 | 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>.=. |
| bb080 | 3c 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 |
| bb0a0 | 3e 3b 0a 20 20 20 20 5f 20 3d 20 2e 7b 20 26 61 6d 70 3b 61 2c 20 26 61 6d 70 3b 62 20 7d 3b 0a | >;....._.=..{.&a,.&b.};. |
| bb0c0 | 20 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</ |
| bb0e0 | 73 70 61 6e 3e 20 63 20 3d 20 61 20 2f 20 62 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 | span>.c.=.a./.b;.....std.debug.p |
| bb100 | 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">" |
| bb120 | 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 29 | ;value:.{}\n"</span>,..{c}) |
| bb140 | 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 |
| bb160 | 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 |
| bb180 | 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 |
| bb1a0 | 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 69 73 69 6f | bd>zig.build-exe.runtime_divisio |
| bb1c0 | 6e 5f 62 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 | n_by_zero.zig</kbd>.$.<kbd>./run |
| bb1e0 | 74 69 6d 65 5f 64 69 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 3c 2f 6b 62 64 3e 0a 74 68 72 65 | time_division_by_zero</kbd>.thre |
| bb200 | 61 64 20 33 35 37 35 34 37 39 20 70 61 6e 69 63 3a 20 64 69 76 69 73 69 6f 6e 20 62 79 20 7a 65 | ad.3575479.panic:.division.by.ze |
| bb220 | 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 6f 6d 65 2f 61 6e | ro.<span.class="sgr-1m">/home/an |
| bb240 | 64 79 2f 73 72 63 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 64 | dy/src/zig/doc/langref/runtime_d |
| bb260 | 69 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 2e 7a 69 67 3a 37 3a 31 37 3c 2f 73 70 61 6e 3e 3a | ivision_by_zero.zig:7:17</span>: |
| bb280 | 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 35 31 66 36 20 | .<span.class="sgr-2m">0x10351f6. |
| bb2a0 | 69 6e 20 6d 61 69 6e 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 | in.main.(runtime_division_by_zer |
| bb2c0 | 6f 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 63 20 3d 20 61 20 2f 20 62 3b 0a 20 | o)</span>.....const.c.=.a./.b;.. |
| bb2e0 | 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- |
| bb300 | 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 |
| bb320 | 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 | m">/home/andy/src/zig/lib/std/st |
| bb340 | 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | art.zig:514:22</span>:.<span.cla |
| bb360 | 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 34 61 34 39 20 69 6e 20 70 6f 73 69 78 43 61 | ss="sgr-2m">0x1034a49.in.posixCa |
| bb380 | 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 69 73 69 6f 6e 5f | llMainAndExit.(runtime_division_ |
| bb3a0 | 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 72 6f 6f 74 | by_zero)</span>.............root |
| bb3c0 | 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 |
| bb3e0 | 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 |
| bb400 | 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 73 72 63 | an.class="sgr-1m">/home/andy/src |
| bb420 | 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 36 36 3a 35 3c 2f 73 70 | /zig/lib/std/start.zig:266:5</sp |
| bb440 | 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 33 34 | an>:.<span.class="sgr-2m">0x1034 |
| bb460 | 35 62 31 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 64 69 76 69 73 69 6f 6e 5f | 5b1.in._start.(runtime_division_ |
| bb480 | 62 79 5f 7a 65 72 6f 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 | by_zero)</span>.....asm.volatile |
| bb4a0 | 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 73 70 | .(switch.(native_arch).{.....<sp |
| bb4c0 | 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 |
| bb4e0 | 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 3e 3a | n.class="sgr-1m">???:?:?</span>: |
| bb500 | 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 3f 3f | .<span.class="sgr-2m">0x0.in.??? |
| bb520 | 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 74 65 | .(???)</span>.(process.terminate |
| bb540 | 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 67 75 | d.by.signal).</samp></pre></figu |
| bb560 | 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 65 6d 61 69 6e | re>...............<h3.id="Remain |
| bb580 | 64 65 72 2d 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 | der-Division-by-Zero"><a.href="# |
| bb5a0 | 74 6f 63 2d 52 65 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 | toc-Remainder-Division-by-Zero"> |
| bb5c0 | 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 3c 2f 61 3e 20 3c | Remainder.Division.by.Zero</a>.< |
| bb5e0 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 65 6d 61 69 6e 64 65 72 2d 44 | a.class="hdr".href="#Remainder-D |
| bb600 | 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>.... |
| bb620 | 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>..... |
| bb640 | 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 |
| bb660 | 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 |
| bb680 | 6d 70 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 | mptime_remainder_division_by_zer |
| bb6a0 | 6f 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 | o.zig</cite></figcaption><pre><c |
| bb6c0 | 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 |
| bb6e0 | 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- |
| bb700 | 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= |
| bb720 | 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 |
| bb740 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | ass="tok-number">10</span>;..... |
| bb760 | 3c 73 70 61 6e 20 63 6c 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 |
| bb780 | 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 33 32 3c | >.b:.<span.class="tok-type">i32< |
| bb7a0 | 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 |
| bb7c0 | 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 |
| bb7e0 | 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 20 62 3b 0a 20 20 20 | -kw">const</span>.c.=.a.%.b;.... |
| bb800 | 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 3c | ._.=.c;.}</code></pre></figure>< |
| bb820 | 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- |
| bb840 | 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 |
| bb860 | 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_ |
| bb880 | 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 7a 69 67 3c 2f | remainder_division_by_zero.zig</ |
| bb8a0 | 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 64 6f 63 2f 6c 61 | kbd>.<span.class="sgr-1m">doc/la |
| bb8c0 | 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 6e 64 65 72 5f 64 69 | ngref/test_comptime_remainder_di |
| bb8e0 | 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 3c 2f 73 70 61 6e 3e | vision_by_zero.zig:4:19:.</span> |
| bb900 | 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 |
| bb920 | 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 64 69 76 69 73 69 6f | pan><span.class="sgr-1m">divisio |
| bb940 | 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 65 66 69 6e 65 64 20 | n.by.zero.here.causes.undefined. |
| bb960 | 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 20 63 20 3d 20 61 20 | behavior.</span>....const.c.=.a. |
| bb980 | 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 70 61 6e 20 63 6c 61 | %.b;...................<span.cla |
| bb9a0 | 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 2f | ss="sgr-32m">^.</span>.</samp></ |
| bb9c0 | 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 |
| bb9e0 | 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 |
| bba00 | 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 |
| bba20 | 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 76 69 73 69 6f 6e 5f | ile">runtime_remainder_division_ |
| bba40 | 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 70 74 69 6f 6e 3e 3c | by_zero.zig</cite></figcaption>< |
| bba60 | 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 |
| bba80 | 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 |
| bbaa0 | 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 |
| bbac0 | 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" |
| bbae0 | 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | </span>);..<span.class="tok-kw"> |
| bbb00 | 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"> |
| bbb20 | 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 |
| bbb40 | 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 |
| bbb60 | 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 |
| bbb80 | 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 63 | s="tok-kw">var</span>.a:.<span.c |
| bbba0 | 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 |
| bbbc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 3b | an.class="tok-number">10</span>; |
| bbbe0 | 0a 20 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 |
| bbc00 | 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 75 | pan>.b:.<span.class="tok-type">u |
| bbc20 | 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 |
| bbc40 | 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 20 26 61 6d 70 3b 61 | ber">0</span>;....._.=..{.&a |
| bbc60 | 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 73 73 3d 22 74 6f 6b | ,.&b.};.....<span.class="tok |
| bbc80 | 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 20 62 3b 0a 20 20 20 | -kw">const</span>.c.=.a.%.b;.... |
| bbca0 | 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 |
| bbcc0 | 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"</ |
| bbce0 | 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 72 65 3e 3c 2f 66 69 | span>,..{c});.}</code></pre></fi |
| bbd00 | 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=" |
| bbd20 | 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 |
| bbd40 | 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 6e | e><samp>$.<kbd>zig.build-exe.run |
| bbd60 | 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. |
| bbd80 | 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 72 65 6d 61 69 | zig</kbd>.$.<kbd>./runtime_remai |
| bbda0 | 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 64 3e 0a 74 68 72 65 | nder_division_by_zero</kbd>.thre |
| bbdc0 | 61 64 20 33 35 37 30 35 33 35 20 70 61 6e 69 63 3a 20 64 69 76 69 73 69 6f 6e 20 62 79 20 7a 65 | ad.3570535.panic:.division.by.ze |
| bbde0 | 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 6f 6d 65 2f 61 6e | ro.<span.class="sgr-1m">/home/an |
| bbe00 | 64 79 2f 73 72 63 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 72 | dy/src/zig/doc/langref/runtime_r |
| bbe20 | 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 7a 69 67 3a 37 3a | emainder_division_by_zero.zig:7: |
| bbe40 | 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 72 2d 32 6d 22 3e | 17</span>:.<span.class="sgr-2m"> |
| bbe60 | 30 78 31 30 33 35 31 66 36 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 72 65 6d 61 69 | 0x10351f6.in.main.(runtime_remai |
| bbe80 | 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>... |
| bbea0 | 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 20 20 20 20 20 20 | ..const.c.=.a.%.b;.............. |
| bbec0 | 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 |
| bbee0 | 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 |
| bbf00 | 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a | y/src/zig/lib/std/start.zig:514: |
| bbf20 | 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"> |
| bbf40 | 30 78 31 30 33 34 61 34 39 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 | 0x1034a49.in.posixCallMainAndExi |
| bbf60 | 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 69 6f 6e 5f 62 79 | t.(runtime_remainder_division_by |
| bbf80 | 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 72 6f 6f 74 2e 6d | _zero)</span>.............root.m |
| bbfa0 | 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | ain();......................<spa |
| bbfc0 | 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 |
| bbfe0 | 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 73 72 63 2f 7a | .class="sgr-1m">/home/andy/src/z |
| bc000 | 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 36 36 3a 35 3c 2f 73 70 61 6e | ig/lib/std/start.zig:266:5</span |
| bc020 | 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 33 34 35 62 | >:.<span.class="sgr-2m">0x10345b |
| bc040 | 31 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 6e 64 65 72 5f 64 | 1.in._start.(runtime_remainder_d |
| bc060 | 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 20 20 61 73 6d 20 | ivision_by_zero)</span>.....asm. |
| bc080 | 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).{ |
| bc0a0 | 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 |
| bc0c0 | 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">???:?:? |
| bc0e0 | 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 |
| bc100 | 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 |
| bc120 | 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 |
| bc140 | 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 |
| bc160 | 3d 22 45 78 61 63 74 2d 44 69 76 69 73 69 6f 6e 2d 52 65 6d 61 69 6e 64 65 72 22 3e 3c 61 20 68 | ="Exact-Division-Remainder"><a.h |
| bc180 | 72 65 66 3d 22 23 74 6f 63 2d 45 78 61 63 74 2d 44 69 76 69 73 69 6f 6e 2d 52 65 6d 61 69 6e 64 | ref="#toc-Exact-Division-Remaind |
| bc1a0 | 65 72 22 3e 45 78 61 63 74 20 44 69 76 69 73 69 6f 6e 20 52 65 6d 61 69 6e 64 65 72 3c 2f 61 3e | er">Exact.Division.Remainder</a> |
| bc1c0 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 78 61 63 74 2d 44 69 76 | .<a.class="hdr".href="#Exact-Div |
| bc1e0 | 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 33 3e 0a 0a 20 20 | ision-Remainder">..</a></h3>.... |
| bc200 | 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>..... |
| bc220 | 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 |
| bc240 | 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 |
| bc260 | 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 2f 63 | mptime_divExact_remainder.zig</c |
| bc280 | 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 |
| bc2a0 | 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> |
| bc2c0 | 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 |
| bc2e0 | 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 |
| bc300 | 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | e">u32</span>.=.<span.class="tok |
| bc320 | 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 70 61 6e 20 63 6c | -number">10</span>;.....<span.cl |
| bc340 | 61 73 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 3c 73 70 | ass="tok-kw">const</span>.b:.<sp |
| bc360 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d | an.class="tok-type">u32</span>.= |
| bc380 | 20 3c 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 |
| bc3a0 | 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 |
| bc3c0 | 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 22 74 6f 6b 2d 62 | st</span>.c.=.<span.class="tok-b |
| bc3e0 | 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 2c 20 62 29 3b 0a | uiltin">@divExact</span>(a,.b);. |
| bc400 | 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 2f 66 69 67 75 72 | ...._.=.c;.}</code></pre></figur |
| bc420 | 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 |
| bc440 | 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>< |
| bc460 | 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 74 69 | samp>$.<kbd>zig.test.test_compti |
| bc480 | 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 2f 6b 62 64 3e 0a | me_divExact_remainder.zig</kbd>. |
| bc4a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 | <span.class="sgr-1m">doc/langref |
| bc4c0 | 2f 74 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 | /test_comptime_divExact_remainde |
| bc4e0 | 72 2e 7a 69 67 3a 34 3a 31 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | r.zig:4:15:.</span><span.class=" |
| bc500 | 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 |
| bc520 | 73 73 3d 22 73 67 72 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 | ss="sgr-1m">exact.division.produ |
| bc540 | 63 65 64 20 72 65 6d 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 | ced.remainder.</span>....const.c |
| bc560 | 20 3d 20 40 64 69 76 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 | .=.@divExact(a,.b);............. |
| bc580 | 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">^~~~~~~~ |
| bc5a0 | 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 3e 3c 2f 66 | ~~~~~~~.</span>.</samp></pre></f |
| bc5c0 | 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 70 3e | igure>........<p>At.runtime:</p> |
| bc5e0 | 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 |
| bc600 | 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 75 | ="zig-cap"><cite.class="file">ru |
| bc620 | 6e 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 2f 63 69 | ntime_divExact_remainder.zig</ci |
| bc640 | 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 |
| bc660 | 20 63 6c 61 73 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 |
| bc680 | 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 |
| bc6a0 | 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 |
| bc6c0 | 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 | ">"std"</span>);..<spa |
| bc6e0 | 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 |
| bc700 | 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 |
| bc720 | 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 |
| bc740 | 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> |
| bc760 | 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< |
| bc780 | 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" |
| bc7a0 | 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 |
| bc7c0 | 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | umber">10</span>;.....<span.clas |
| bc7e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 | s="tok-kw">var</span>.b:.<span.c |
| bc800 | 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 |
| bc820 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a | an.class="tok-number">3</span>;. |
| bc840 | 20 20 20 20 5f 20 3d 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 | ...._.=..{.&a,.&b.};.... |
| bc860 | 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 |
| bc880 | 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 6e 22 | n>.c.=.<span.class="tok-builtin" |
| bc8a0 | 3e 40 64 69 76 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 3b 0a 20 20 20 20 73 74 64 | >@divExact</span>(a,.b);.....std |
| bc8c0 | 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 |
| bc8e0 | 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 |
| bc900 | 3e 2c 20 2e 7b 63 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | >,..{c});.}</code></pre></figure |
| bc920 | 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 |
| bc940 | 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 |
| bc960 | 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 |
| bc980 | 5f 64 69 76 45 78 61 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 | _divExact_remainder.zig</kbd>.$. |
| bc9a0 | 3c 6b 62 64 3e 2e 2f 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 | <kbd>./runtime_divExact_remainde |
| bc9c0 | 72 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 33 35 37 30 31 30 33 20 70 61 6e 69 63 3a 20 65 78 | r</kbd>.thread.3570103.panic:.ex |
| bc9e0 | 61 63 74 20 64 69 76 69 73 69 6f 6e 20 70 72 6f 64 75 63 65 64 20 72 65 6d 61 69 6e 64 65 72 0a | act.division.produced.remainder. |
| bca00 | 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/ |
| bca20 | 73 72 63 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 64 69 76 45 | src/zig/doc/langref/runtime_divE |
| bca40 | 78 61 63 74 5f 72 65 6d 61 69 6e 64 65 72 2e 7a 69 67 3a 37 3a 31 35 3c 2f 73 70 61 6e 3e 3a 20 | xact_remainder.zig:7:15</span>:. |
| bca60 | 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 35 32 36 62 20 69 | <span.class="sgr-2m">0x103526b.i |
| bca80 | 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 64 69 76 45 78 61 63 74 5f 72 65 6d 61 69 6e 64 | n.main.(runtime_divExact_remaind |
| bcaa0 | 65 72 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 63 20 3d 20 40 64 69 76 45 78 61 | er)</span>.....const.c.=.@divExa |
| bcac0 | 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 20 63 6c | ct(a,.b);...............<span.cl |
| bcae0 | 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 |
| bcb00 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c | ss="sgr-1m">/home/andy/src/zig/l |
| bcb20 | 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 | ib/std/start.zig:514:22</span>:. |
| bcb40 | 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 34 61 38 39 20 69 | <span.class="sgr-2m">0x1034a89.i |
| bcb60 | 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 65 5f | n.posixCallMainAndExit.(runtime_ |
| bcb80 | 64 69 76 45 78 61 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 20 | divExact_remainder)</span>...... |
| bcba0 | 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();............. |
| bcbc0 | 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">^ |
| bcbe0 | 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 |
| bcc00 | 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | me/andy/src/zig/lib/std/start.zi |
| bcc20 | 67 3a 32 36 36 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:266:5</span>:.<span.class="sgr |
| bcc40 | 2d 32 6d 22 3e 30 78 31 30 33 34 35 66 31 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d | -2m">0x10345f1.in._start.(runtim |
| bcc60 | 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 6e 3e 0a 20 20 20 | e_divExact_remainder)</span>.... |
| bcc80 | 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 72 | .asm.volatile.(switch.(native_ar |
| bcca0 | 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 3e | ch).{.....<span.class="sgr-32m"> |
| bccc0 | 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 3f | ^</span>.<span.class="sgr-1m">?? |
| bcce0 | 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 32 | ?:?:?</span>:.<span.class="sgr-2 |
| bcd00 | 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 63 | m">0x0.in.???.(???)</span>.(proc |
| bcd20 | 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 70 | ess.terminated.by.signal).</samp |
| bcd40 | 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>...............< |
| bcd60 | 68 33 20 69 64 3d 22 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 4e 75 6c 6c 22 3e 3c | h3.id="Attempt-to-Unwrap-Null">< |
| bcd80 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 4e | a.href="#toc-Attempt-to-Unwrap-N |
| bcda0 | 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 61 3e 20 | ull">Attempt.to.Unwrap.Null</a>. |
| bcdc0 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 74 74 65 6d 70 74 2d 74 6f | <a.class="hdr".href="#Attempt-to |
| bcde0 | 2d 55 6e 77 72 61 70 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 | -Unwrap-Null">..</a></h3>....... |
| bce00 | 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>.......< |
| bce20 | 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 |
| bce40 | 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 |
| bce60 | 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 63 | ime_unwrap_null.zig</cite></figc |
| bce80 | 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 |
| bcea0 | 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 73 70 | ok-kw">comptime</span>.{.....<sp |
| bcec0 | 61 6e 20 63 6c 61 73 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 |
| bcee0 | 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 |
| bcf00 | 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 |
| bcf20 | 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 3c 73 70 | ="tok-null">null</span>;.....<sp |
| bcf40 | 61 6e 20 63 6c 61 73 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 | an.class="tok-kw">const</span>.n |
| bcf60 | 75 6d 62 65 72 20 3d 20 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 2e 3f 3b 0a 20 20 20 20 5f | umber.=.optional_number.?;....._ |
| bcf80 | 20 3d 20 6e 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 75 72 | .=.number;.}</code></pre></figur |
| bcfa0 | 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 |
| bcfc0 | 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>< |
| bcfe0 | 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 74 69 | samp>$.<kbd>zig.test.test_compti |
| bd000 | 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 3c 73 70 61 6e 20 63 | me_unwrap_null.zig</kbd>.<span.c |
| bd020 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 | lass="sgr-1m">doc/langref/test_c |
| bd040 | 6f 6d 70 74 69 6d 65 5f 75 6e 77 72 61 70 5f 6e 75 6c 6c 2e 7a 69 67 3a 33 3a 33 35 3a 20 3c 2f | omptime_unwrap_null.zig:3:35:.</ |
| bd060 | 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 |
| bd080 | 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 75 6e | :.</span><span.class="sgr-1m">un |
| bd0a0 | 61 62 6c 65 20 74 6f 20 75 6e 77 72 61 70 20 6e 75 6c 6c 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 | able.to.unwrap.null.</span>....c |
| bd0c0 | 6f 6e 73 74 20 6e 75 6d 62 65 72 20 3d 20 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 2e 3f 3b | onst.number.=.optional_number.?; |
| bd0e0 | 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 73 3d | ....................<span.class= |
| bd100 | 22 73 67 72 2d 33 32 6d 22 3e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 5e 7e 0a 3c 2f 73 70 | "sgr-32m">~~~~~~~~~~~~~~~^~.</sp |
| bd120 | 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>...... |
| bd140 | 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 67 75 | ..<p>At.runtime:</p>.......<figu |
| bd160 | 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">< |
| bd180 | 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 75 6e 77 72 61 70 | cite.class="file">runtime_unwrap |
| bd1a0 | 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 70 72 | _null.zig</cite></figcaption><pr |
| bd1c0 | 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 |
| bd1e0 | 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 |
| bd200 | 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 |
| bd220 | 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"</ |
| bd240 | 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 | span>);..<span.class="tok-kw">pu |
| bd260 | 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 |
| bd280 | 3c 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 |
| bd2a0 | 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 |
| bd2c0 | 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= |
| bd2e0 | 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 6c 5f 6e 75 6d | "tok-kw">var</span>.optional_num |
| bd300 | 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 69 33 32 | ber:.?<span.class="tok-type">i32 |
| bd320 | 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 | </span>.=.<span.class="tok-null" |
| bd340 | 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 6f 70 74 69 6f | >null</span>;....._.=.&optio |
| bd360 | 6e 61 6c 5f 6e 75 6d 62 65 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | nal_number;.....<span.class="tok |
| bd380 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 6f 70 74 69 6f | -kw">const</span>.number.=.optio |
| bd3a0 | 6e 61 6c 5f 6e 75 6d 62 65 72 2e 3f 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e | nal_number.?;.....std.debug.prin |
| bd3c0 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 | t(<span.class="tok-str">"va |
| bd3e0 | 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 6e 75 6d 62 65 72 | lue:.{}\n"</span>,..{number |
| bd400 | 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 |
| bd420 | 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" |
| bd440 | 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>$. |
| bd460 | 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 75 6e 77 72 61 | <kbd>zig.build-exe.runtime_unwra |
| bd480 | 70 5f 6e 75 6c 6c 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 | p_null.zig</kbd>.$.<kbd>./runtim |
| bd4a0 | 65 5f 75 6e 77 72 61 70 5f 6e 75 6c 6c 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 33 35 37 30 35 | e_unwrap_null</kbd>.thread.35705 |
| bd4c0 | 31 34 20 70 61 6e 69 63 3a 20 61 74 74 65 6d 70 74 20 74 6f 20 75 73 65 20 6e 75 6c 6c 20 76 61 | 14.panic:.attempt.to.use.null.va |
| bd4e0 | 6c 75 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 | lue.<span.class="sgr-1m">/home/a |
| bd500 | 6e 64 79 2f 73 72 63 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 | ndy/src/zig/doc/langref/runtime_ |
| bd520 | 75 6e 77 72 61 70 5f 6e 75 6c 6c 2e 7a 69 67 3a 36 3a 33 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | unwrap_null.zig:6:35</span>:.<sp |
| bd540 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 35 32 37 32 20 69 6e 20 6d | an.class="sgr-2m">0x1035272.in.m |
| bd560 | 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 6e 75 6c 6c 29 3c 2f 73 70 61 6e 3e | ain.(runtime_unwrap_null)</span> |
| bd580 | 0a 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 6c 5f 6e 75 6d | .....const.number.=.optional_num |
| bd5a0 | 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 20 20 20 20 20 20 | ber.?;.......................... |
| bd5c0 | 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">^ |
| bd5e0 | 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 |
| bd600 | 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | me/andy/src/zig/lib/std/start.zi |
| bd620 | 67 3a 35 31 34 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:514:22</span>:.<span.class="sg |
| bd640 | 72 2d 32 6d 22 3e 30 78 31 30 33 34 61 64 39 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e | r-2m">0x1034ad9.in.posixCallMain |
| bd660 | 41 6e 64 45 78 69 74 20 28 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 6e 75 6c 6c 29 3c 2f 73 | AndExit.(runtime_unwrap_null)</s |
| bd680 | 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 | pan>.............root.main();... |
| bd6a0 | 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=" |
| bd6c0 | 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 |
| bd6e0 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 | gr-1m">/home/andy/src/zig/lib/st |
| bd700 | 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 36 36 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | d/start.zig:266:5</span>:.<span. |
| bd720 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 34 36 34 31 20 69 6e 20 5f 73 74 61 | class="sgr-2m">0x1034641.in._sta |
| bd740 | 72 74 20 28 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 6e 75 6c 6c 29 3c 2f 73 70 61 6e 3e 0a | rt.(runtime_unwrap_null)</span>. |
| bd760 | 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 65 | ....asm.volatile.(switch.(native |
| bd780 | 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 32 | _arch).{.....<span.class="sgr-32 |
| bd7a0 | 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" |
| bd7c0 | 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 67 | >???:?:?</span>:.<span.class="sg |
| bd7e0 | 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 28 70 | r-2m">0x0.in.???.(???)</span>.(p |
| bd800 | 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 0a 3c 2f 73 | rocess.terminated.by.signal).</s |
| bd820 | 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 4f 6e | amp></pre></figure>........<p>On |
| bd840 | 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 73 20 74 6f 20 | e.way.to.avoid.this.crash.is.to. |
| bd860 | 74 65 73 74 20 66 6f 72 20 6e 75 6c 6c 20 69 6e 73 74 65 61 64 20 6f 66 20 61 73 73 75 6d 69 6e | test.for.null.instead.of.assumin |
| bd880 | 67 20 6e 6f 6e 2d 6e 75 6c 6c 2c 20 77 69 74 68 0a 20 20 20 20 20 20 74 68 65 20 3c 63 6f 64 65 | g.non-null,.with.......the.<code |
| bd8a0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c | ><span.class="tok-kw">if</span>< |
| bd8c0 | 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 | /code>.expression:</p>.......<fi |
| bd8e0 | 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" |
| bd900 | 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 6e 75 6c 6c | ><cite.class="file">testing_null |
| bd920 | 5f 77 69 74 68 5f 69 66 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | _with_if.zig</cite></figcaption> |
| bd940 | 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"> |
| bd960 | 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 |
| bd980 | 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 |
| bd9a0 | 70 61 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 |
| bd9c0 | 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 63 | ot;</span>).debug.print;.<span.c |
| bd9e0 | 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 |
| bda00 | 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 |
| bda20 | 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 |
| bda40 | 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>.{. |
| bda60 | 20 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</ |
| bda80 | 73 70 61 6e 3e 20 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 3a 20 3f 3c 73 70 61 6e 20 63 6c | span>.optional_number:.?<span.cl |
| bdaa0 | 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 |
| bdac0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a | n.class="tok-null">null</span>;. |
| bdae0 | 0a 20 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 |
| bdb00 | 61 6e 3e 20 28 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 29 20 7c 6e 75 6d 62 65 72 7c 20 7b | an>.(optional_number).|number|.{ |
| bdb20 | 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .........print(<span.class="tok- |
| bdb40 | 73 74 72 22 3e 26 71 75 6f 74 3b 67 6f 74 20 6e 75 6d 62 65 72 3a 20 7b 7d 5c 6e 26 71 75 6f 74 | str">"got.number:.{}\n" |
| bdb60 | 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d 62 65 72 7d 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 | ;</span>,..{number});.....}.<spa |
| bdb80 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | n.class="tok-kw">else</span>.{.. |
| bdba0 | 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 |
| bdbc0 | 72 22 3e 26 71 75 6f 74 3b 69 74 27 73 20 6e 75 6c 6c 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | r">"it's.null\n"</span |
| bdbe0 | 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 | >,..{});.....}.}</code></pre></f |
| bdc00 | 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= |
| bdc20 | 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 |
| bdc40 | 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 74 65 | re><samp>$.<kbd>zig.build-exe.te |
| bdc60 | 73 74 69 6e 67 5f 6e 75 6c 6c 5f 77 69 74 68 5f 69 66 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c | sting_null_with_if.zig</kbd>.$.< |
| bdc80 | 6b 62 64 3e 2e 2f 74 65 73 74 69 6e 67 5f 6e 75 6c 6c 5f 77 69 74 68 5f 69 66 3c 2f 6b 62 64 3e | kbd>./testing_null_with_if</kbd> |
| bdca0 | 0a 69 74 27 73 20 6e 75 6c 6c 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | .it's.null.</samp></pre></figure |
| bdcc0 | 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 |
| bdce0 | 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 61 6c 73 | i><a.href="#Optionals">Optionals |
| bdd00 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | </a></li>.</ul>...............<h |
| bdd20 | 33 20 69 64 3d 22 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 3c | 3.id="Attempt-to-Unwrap-Error">< |
| bdd40 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 45 | a.href="#toc-Attempt-to-Unwrap-E |
| bdd60 | 72 72 6f 72 22 3e 41 74 74 65 6d 70 74 20 74 6f 20 55 6e 77 72 61 70 20 45 72 72 6f 72 3c 2f 61 | rror">Attempt.to.Unwrap.Error</a |
| bdd80 | 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 74 74 65 6d 70 74 2d | >.<a.class="hdr".href="#Attempt- |
| bdda0 | 74 6f 2d 55 6e 77 72 61 70 2d 45 72 72 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | to-Unwrap-Error">..</a></h3>.... |
| bddc0 | 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>..... |
| bdde0 | 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 |
| bde00 | 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 |
| bde20 | 6d 70 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | mptime_unwrap_error.zig</cite></ |
| bde40 | 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 |
| bde60 | 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>.{.... |
| bde80 | 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 |
| bdea0 | 6e 3e 20 6e 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 3c 73 | n>.number.=.getNumberOrFail().<s |
| bdec0 | 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 20 | pan.class="tok-kw">catch</span>. |
| bdee0 | 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 |
| bdf00 | 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 6e 75 6d 62 65 72 3b 0a 7d 0a 0a 3c 73 70 61 | </span>;....._.=.number;.}..<spa |
| bdf20 | 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 |
| bdf40 | 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< |
| bdf60 | 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" |
| bdf80 | 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 |
| bdfa0 | 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 |
| bdfc0 | 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 |
| bdfe0 | 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 |
| be000 | 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 |
| be020 | 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 |
| be040 | 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 |
| be060 | 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 | time_unwrap_error.zig</kbd>.<spa |
| be080 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 | n.class="sgr-1m">doc/langref/tes |
| be0a0 | 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 3a 32 3a 34 34 | t_comptime_unwrap_error.zig:2:44 |
| be0c0 | 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 |
| be0e0 | 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 |
| be100 | 22 3e 63 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 | ">caught.unexpected.error.'Unabl |
| be120 | 65 54 6f 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 | eToReturnNumber'.</span>....cons |
| be140 | 74 20 6e 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 | t.number.=.getNumberOrFail().cat |
| be160 | 63 68 20 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 | ch.unreachable;................. |
| be180 | 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 |
| be1a0 | 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 0a 3c 2f 73 | .class="sgr-32m">^~~~~~~~~~~.</s |
| be1c0 | 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 64 6f 63 2f 6c 61 6e | pan><span.class="sgr-1m">doc/lan |
| be1e0 | 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 65 72 72 6f 72 2e | gref/test_comptime_unwrap_error. |
| be200 | 7a 69 67 3a 37 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 | zig:7:18:.</span><span.class="sg |
| be220 | 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 3d | r-36m">note:.</span><span.class= |
| be240 | 22 73 67 72 2d 31 6d 22 3e 65 72 72 6f 72 20 72 65 74 75 72 6e 65 64 20 68 65 72 65 0a 3c 2f 73 | "sgr-1m">error.returned.here.</s |
| be260 | 70 61 6e 3e 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 | pan>....return.error.UnableToRet |
| be280 | 75 72 6e 4e 75 6d 62 65 72 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | urnNumber;..................<spa |
| be2a0 | 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 7e | n.class="sgr-32m">^~~~~~~~~~~~~~ |
| be2c0 | 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 3e 3c 2f 66 69 | ~~~~~~.</span>.</samp></pre></fi |
| be2e0 | 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>. |
| be300 | 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= |
| be320 | 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 |
| be340 | 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 | time_unwrap_error.zig</cite></fi |
| be360 | 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= |
| be380 | 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 |
| be3a0 | 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 |
| be3c0 | 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">" |
| be3e0 | 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 |
| be400 | 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 |
| be420 | 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= |
| be440 | 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 |
| be460 | 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>.{..... |
| be480 | 3c 73 70 61 6e 20 63 6c 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 |
| be4a0 | 3e 20 6e 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 3c 73 70 | >.number.=.getNumberOrFail().<sp |
| be4c0 | 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 20 3c | an.class="tok-kw">catch</span>.< |
| be4e0 | 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 3c | span.class="tok-kw">unreachable< |
| be500 | 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 | /span>;.....std.debug.print(<spa |
| be520 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b | n.class="tok-str">"value:.{ |
| be540 | 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d 62 65 72 7d 29 3b 0a 7d 0a | }\n"</span>,..{number});.}. |
| be560 | 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>. |
| be580 | 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 62 65 72 4f 72 | <span.class="tok-fn">getNumberOr |
| be5a0 | 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 22 74 6f 6b 2d | Fail</span>().!<span.class="tok- |
| be5c0 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | type">i32</span>.{.....<span.cla |
| be5e0 | 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. |
| be600 | 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 55 6e 61 62 | class="tok-kw">error</span>.Unab |
| be620 | 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 2f 70 72 65 3e | leToReturnNumber;.}</code></pre> |
| be640 | 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 |
| be660 | 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 |
| be680 | 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 |
| be6a0 | 20 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a | .runtime_unwrap_error.zig</kbd>. |
| be6c0 | 24 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 3c 2f 6b | $.<kbd>./runtime_unwrap_error</k |
| be6e0 | 62 64 3e 0a 74 68 72 65 61 64 20 33 35 37 37 38 37 37 20 70 61 6e 69 63 3a 20 61 74 74 65 6d 70 | bd>.thread.3577877.panic:.attemp |
| be700 | 74 20 74 6f 20 75 6e 77 72 61 70 20 65 72 72 6f 72 3a 20 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 | t.to.unwrap.error:.UnableToRetur |
| be720 | 6e 4e 75 6d 62 65 72 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 | nNumber.<span.class="sgr-1m">/ho |
| be740 | 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 | me/andy/src/zig/doc/langref/runt |
| be760 | 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 2e 7a 69 67 3a 39 3a 35 3c 2f 73 70 61 6e 3e 3a | ime_unwrap_error.zig:9:5</span>: |
| be780 | 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 37 33 38 66 20 | .<span.class="sgr-2m">0x103738f. |
| be7a0 | 69 6e 20 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 20 28 72 75 6e 74 69 6d 65 5f 75 6e 77 72 | in.getNumberOrFail.(runtime_unwr |
| be7c0 | 61 70 5f 65 72 72 6f 72 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 6f | ap_error)</span>.....return.erro |
| be7e0 | 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 3c 73 70 61 | r.UnableToReturnNumber;.....<spa |
| be800 | 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 |
| be820 | 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 73 72 63 2f 7a | .class="sgr-1m">/home/andy/src/z |
| be840 | 69 67 2f 64 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 | ig/doc/langref/runtime_unwrap_er |
| be860 | 72 6f 72 2e 7a 69 67 3a 34 3a 34 34 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ror.zig:4:44</span>:.<span.class |
| be880 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 35 33 30 31 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e | ="sgr-2m">0x1035301.in.main.(run |
| be8a0 | 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 20 20 20 20 63 6f | time_unwrap_error)</span>.....co |
| be8c0 | 6e 73 74 20 6e 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 | nst.number.=.getNumberOrFail().c |
| be8e0 | 61 74 63 68 20 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 | atch.unreachable;............... |
| be900 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | .............................<sp |
| be920 | 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 |
| be940 | 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 73 72 63 2f | n.class="sgr-1m">/home/andy/src/ |
| be960 | 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 3c 2f 73 70 | zig/lib/std/start.zig:514:22</sp |
| be980 | 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 33 34 | an>:.<span.class="sgr-2m">0x1034 |
| be9a0 | 62 34 39 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 | b49.in.posixCallMainAndExit.(run |
| be9c0 | 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 20 20 20 20 20 20 | time_unwrap_error)</span>....... |
| be9e0 | 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();.............. |
| bea00 | 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">^< |
| bea20 | 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 |
| bea40 | 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 | e/andy/src/zig/lib/std/start.zig |
| bea60 | 3a 32 36 36 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 | :266:5</span>:.<span.class="sgr- |
| bea80 | 32 6d 22 3e 30 78 31 30 33 34 36 62 31 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 | 2m">0x10346b1.in._start.(runtime |
| beaa0 | 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f | _unwrap_error)</span>.....asm.vo |
| beac0 | 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).{.. |
| beae0 | 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 |
| beb00 | 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">???:?:?</ |
| beb20 | 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. |
| beb40 | 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 |
| beb60 | 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> |
| beb80 | 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 4f 6e 65 20 77 61 79 20 74 6f 20 61 | </figure>........<p>One.way.to.a |
| beba0 | 76 6f 69 64 20 74 68 69 73 20 63 72 61 73 68 20 69 73 20 74 6f 20 74 65 73 74 20 66 6f 72 20 61 | void.this.crash.is.to.test.for.a |
| bebc0 | 6e 20 65 72 72 6f 72 20 69 6e 73 74 65 61 64 20 6f 66 20 61 73 73 75 6d 69 6e 67 20 61 20 73 75 | n.error.instead.of.assuming.a.su |
| bebe0 | 63 63 65 73 73 66 75 6c 20 72 65 73 75 6c 74 2c 20 77 69 74 68 0a 20 20 20 20 20 20 74 68 65 20 | ccessful.result,.with.......the. |
| bec00 | 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 |
| bec20 | 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 0a 20 20 20 20 | pan></code>.expression:</p>..... |
| bec40 | 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 |
| bec60 | 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 |
| bec80 | 5f 65 72 72 6f 72 5f 77 69 74 68 5f 69 66 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | _error_with_if.zig</cite></figca |
| beca0 | 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 |
| becc0 | 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 |
| bece0 | 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 |
| bed00 | 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">" |
| bed20 | 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;.. |
| bed40 | 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>. |
| bed60 | 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>.< |
| bed80 | 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>( |
| beda0 | 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 |
| bedc0 | 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"> |
| bede0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 67 65 74 4e 75 6d 62 65 72 4f | const</span>.result.=.getNumberO |
| bee00 | 72 46 61 69 6c 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 | rFail();......<span.class="tok-k |
| bee20 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 72 65 73 75 6c 74 29 20 7c 6e 75 6d 62 65 72 7c 20 7b | w">if</span>.(result).|number|.{ |
| bee40 | 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .........print(<span.class="tok- |
| bee60 | 73 74 72 22 3e 26 71 75 6f 74 3b 67 6f 74 20 6e 75 6d 62 65 72 3a 20 7b 7d 5c 6e 26 71 75 6f 74 | str">"got.number:.{}\n" |
| bee80 | 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d 62 65 72 7d 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 | ;</span>,..{number});.....}.<spa |
| beea0 | 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 |
| beec0 | 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 6c 61 73 73 3d 22 | r|.{.........print(<span.class=" |
| beee0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 6f 74 20 65 72 72 6f 72 3a 20 7b 73 7d 5c 6e 26 | tok-str">"got.error:.{s}\n& |
| bef00 | 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 |
| bef20 | 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 65 72 72 29 | -builtin">@errorName</span>(err) |
| bef40 | 7d 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | });.....}.}..<span.class="tok-kw |
| bef60 | 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" |
| bef80 | 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 73 70 61 6e | >getNumberOrFail</span>().!<span |
| befa0 | 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 20 | .class="tok-type">i32</span>.{.. |
| befc0 | 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</ |
| befe0 | 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 72 | span>.<span.class="tok-kw">error |
| bf000 | 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 3b 0a 7d 3c | </span>.UnableToReturnNumber;.}< |
| bf020 | 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 |
| bf040 | 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 |
| bf060 | 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 |
| bf080 | 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 69 6e 67 5f 65 72 72 6f 72 5f 77 69 74 68 5f | ig.build-exe.testing_error_with_ |
| bf0a0 | 69 66 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 74 65 73 74 69 6e 67 5f 65 72 | if.zig</kbd>.$.<kbd>./testing_er |
| bf0c0 | 72 6f 72 5f 77 69 74 68 5f 69 66 3c 2f 6b 62 64 3e 0a 67 6f 74 20 65 72 72 6f 72 3a 20 55 6e 61 | ror_with_if</kbd>.got.error:.Una |
| bf0e0 | 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c | bleToReturnNumber.</samp></pre>< |
| bf100 | 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> |
| bf120 | 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 | <ul>.<li><a.href="#Errors">Error |
| bf140 | 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c | s</a></li>.</ul>...............< |
| bf160 | 68 33 20 69 64 3d 22 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 43 6f 64 65 22 3e 3c 61 20 68 72 | h3.id="Invalid-Error-Code"><a.hr |
| bf180 | 65 66 3d 22 23 74 6f 63 2d 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 43 6f 64 65 22 3e 49 6e 76 | ef="#toc-Invalid-Error-Code">Inv |
| bf1a0 | 61 6c 69 64 20 45 72 72 6f 72 20 43 6f 64 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | alid.Error.Code</a>.<a.class="hd |
| bf1c0 | 72 22 20 68 72 65 66 3d 22 23 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 43 6f 64 65 22 3e c2 a7 | r".href="#Invalid-Error-Code">.. |
| bf1e0 | 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 65 2d 74 | </a></h3>........<p>At.compile-t |
| bf200 | 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 |
| bf220 | 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=" |
| bf240 | 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 64 5f 65 72 72 6f | file">test_comptime_invalid_erro |
| bf260 | 72 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 | r_code.zig</cite></figcaption><p |
| bf280 | 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 |
| bf2a0 | 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | mptime</span>.{.....<span.class= |
| bf2c0 | 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 3c 73 70 61 | "tok-kw">const</span>.err.=.<spa |
| bf2e0 | 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 41 6e | n.class="tok-kw">error</span>.An |
| bf300 | 45 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 | Error;.....<span.class="tok-kw"> |
| bf320 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | const</span>.number.=.<span.clas |
| bf340 | 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 72 72 6f 72 3c 2f 73 | s="tok-builtin">@intFromError</s |
| bf360 | 70 61 6e 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 | pan>(err).+.<span.class="tok-num |
| bf380 | 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= |
| bf3a0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 69 6e 76 61 6c 69 64 5f 65 72 | "tok-kw">const</span>.invalid_er |
| bf3c0 | 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 65 | r.=.<span.class="tok-builtin">@e |
| bf3e0 | 72 72 6f 72 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 6e 3e 28 6e 75 6d 62 65 72 29 3b 0a 20 20 20 20 | rrorFromInt</span>(number);..... |
| bf400 | 5f 20 3d 20 69 6e 76 61 6c 69 64 5f 65 72 72 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | _.=.invalid_err;.}</code></pre>< |
| bf420 | 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 |
| bf440 | 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> |
| bf460 | 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_ |
| bf480 | 63 6f 6d 70 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 69 67 3c | comptime_invalid_error_code.zig< |
| bf4a0 | 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 64 6f 63 2f 6c | /kbd>.<span.class="sgr-1m">doc/l |
| bf4c0 | 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 72 72 | angref/test_comptime_invalid_err |
| bf4e0 | 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 20 63 | or_code.zig:4:39:.</span><span.c |
| bf500 | 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 |
| bf520 | 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 65 20 | an.class="sgr-1m">integer.value. |
| bf540 | 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 6e 3e | '11'.represents.no.error.</span> |
| bf560 | 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 46 72 | ....const.invalid_err.=.@errorFr |
| bf580 | 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 20 20 | omInt(number);.................. |
| bf5a0 | 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 |
| bf5c0 | 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 6d 70 | ="sgr-32m">^~~~~~.</span>.</samp |
| bf5e0 | 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 |
| bf600 | 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 |
| bf620 | 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 |
| bf640 | 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 63 6f | ="file">runtime_invalid_error_co |
| bf660 | 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 3e 3c | de.zig</cite></figcaption><pre>< |
| bf680 | 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< |
| bf6a0 | 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 |
| bf6c0 | 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 |
| bf6e0 | 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 |
| bf700 | 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 3c 2f | n>);..<span.class="tok-kw">pub</ |
| bf720 | 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 |
| bf740 | 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</ |
| bf760 | 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 |
| bf780 | 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 |
| bf7a0 | 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 20 63 | k-kw">const</span>.err.=.<span.c |
| bf7c0 | 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 72 72 | lass="tok-kw">error</span>.AnErr |
| bf7e0 | 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 61 72 | or;.....<span.class="tok-kw">var |
| bf800 | 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 74 6f | </span>.number.=.<span.class="to |
| bf820 | 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>( |
| bf840 | 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 22 3e | err).+.<span.class="tok-number"> |
| bf860 | 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 72 3b | 500</span>;....._.=.&number; |
| bf880 | 0a 20 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< |
| bf8a0 | 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 73 73 | /span>.invalid_err.=.<span.class |
| bf8c0 | 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 73 70 | ="tok-builtin">@errorFromInt</sp |
| bf8e0 | 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 6e 74 | an>(number);.....std.debug.print |
| bf900 | 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 |
| bf920 | 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 69 64 | ue:.{}\n"</span>,..{invalid |
| bf940 | 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 3e 3c | _err});.}</code></pre></figure>< |
| bf960 | 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- |
| bf980 | 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 |
| bf9a0 | 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 5f 69 | p>$.<kbd>zig.build-exe.runtime_i |
| bf9c0 | 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 3c 6b | nvalid_error_code.zig</kbd>.$.<k |
| bf9e0 | 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 65 3c | bd>./runtime_invalid_error_code< |
| bfa00 | 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 33 35 37 30 34 34 31 20 70 61 6e 69 63 3a 20 69 6e 76 61 | /kbd>.thread.3570441.panic:.inva |
| bfa20 | 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 2d | lid.error.code.<span.class="sgr- |
| bfa40 | 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 | 1m">/home/andy/src/zig/doc/langr |
| bfa60 | 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 69 | ef/runtime_invalid_error_code.zi |
| bfa80 | 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 32 | g:7:5</span>:.<span.class="sgr-2 |
| bfaa0 | 6d 22 3e 30 78 31 30 33 35 32 61 30 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 69 6e | m">0x10352a0.in.main.(runtime_in |
| bfac0 | 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 6e | valid_error_code)</span>.....con |
| bfae0 | 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 6e | st.invalid_err.=.@errorFromInt(n |
| bfb00 | 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 6d | umber);.....<span.class="sgr-32m |
| bfb20 | 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"> |
| bfb40 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 | /home/andy/src/zig/lib/std/start |
| bfb60 | 2e 7a 69 67 3a 35 31 34 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:514:22</span>:.<span.class= |
| bfb80 | 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 34 61 65 39 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d | "sgr-2m">0x1034ae9.in.posixCallM |
| bfba0 | 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 6f | ainAndExit.(runtime_invalid_erro |
| bfbc0 | 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 2e | r_code)</span>.............root. |
| bfbe0 | 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 |
| bfc00 | 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 |
| bfc20 | 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 73 72 63 2f | n.class="sgr-1m">/home/andy/src/ |
| bfc40 | 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 36 36 3a 35 3c 2f 73 70 61 | zig/lib/std/start.zig:266:5</spa |
| bfc60 | 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 33 34 36 | n>:.<span.class="sgr-2m">0x10346 |
| bfc80 | 35 31 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 72 | 51.in._start.(runtime_invalid_er |
| bfca0 | 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 6c | ror_code)</span>.....asm.volatil |
| bfcc0 | 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 73 | e.(switch.(native_arch).{.....<s |
| bfce0 | 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 |
| bfd00 | 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 3e | an.class="sgr-1m">???:?:?</span> |
| bfd20 | 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 3f | :.<span.class="sgr-2m">0x0.in.?? |
| bfd40 | 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 74 | ?.(???)</span>.(process.terminat |
| bfd60 | 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 67 | ed.by.signal).</samp></pre></fig |
| bfd80 | 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 6c | ure>...............<h3.id="Inval |
| bfda0 | 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 61 | id-Enum-Cast"><a.href="#toc-Inva |
| bfdc0 | 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 74 | lid-Enum-Cast">Invalid.Enum.Cast |
| bfde0 | 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 6c | </a>.<a.class="hdr".href="#Inval |
| bfe00 | 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 20 | id-Enum-Cast">..</a></h3>....... |
| bfe20 | 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>.......< |
| bfe40 | 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 |
| bfe60 | 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 |
| bfe80 | 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 3e | ime_invalid_enum_cast.zig</cite> |
| bfea0 | 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 |
| bfec0 | 61 73 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.=. |
| bfee0 | 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> |
| bff00 | 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 6e | .{.....a,.....b,.....c,.};.<span |
| bff20 | 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>. |
| bff40 | 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 |
| bff60 | 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>.a:.<span.class="tok-type |
| bff80 | 22 3e 75 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ">u2</span>.=.<span.class="tok-n |
| bffa0 | 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | umber">3</span>;.....<span.class |
| bffc0 | 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 20 | ="tok-kw">const</span>.b:.Foo.=. |
| bffe0 | 3c 73 70 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 46 | <span.class="tok-builtin">@enumF |
| c0000 | 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 2f | romInt</span>(a);....._.=.b;.}</ |
| c0020 | 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 |
| c0040 | 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< |
| c0060 | 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 |
| c0080 | 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 75 | g.test.test_comptime_invalid_enu |
| c00a0 | 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 67 | m_cast.zig</kbd>.<span.class="sg |
| c00c0 | 72 2d 31 6d 22 3e 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 | r-1m">doc/langref/test_comptime_ |
| c00e0 | 69 6e 76 61 6c 69 64 5f 65 6e 75 6d 5f 63 61 73 74 2e 7a 69 67 3a 38 3a 32 30 3a 20 3c 2f 73 70 | invalid_enum_cast.zig:8:20:.</sp |
| c0100 | 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:. |
| c0120 | 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 6d | </span><span.class="sgr-1m">enum |
| c0140 | 20 27 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 5f 63 61 73 | .'test_comptime_invalid_enum_cas |
| c0160 | 74 2e 46 6f 6f 27 20 68 61 73 20 6e 6f 20 74 61 67 20 77 69 74 68 20 76 61 6c 75 65 20 27 33 27 | t.Foo'.has.no.tag.with.value.'3' |
| c0180 | 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 62 3a 20 46 6f 6f 20 3d 20 40 65 6e 75 6d | .</span>....const.b:.Foo.=.@enum |
| c01a0 | 46 72 6f 6d 49 6e 74 28 61 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | FromInt(a);....................< |
| c01c0 | 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 7e 7e | span.class="sgr-32m">^~~~~~~~~~~ |
| c01e0 | 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 22 | ~~~~.</span><span.class="sgr-1m" |
| c0200 | 3e 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 | >doc/langref/test_comptime_inval |
| c0220 | 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 73 70 61 6e 3e 3c 73 | id_enum_cast.zig:1:13:.</span><s |
| c0240 | 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 |
| c0260 | 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 64 65 63 6c 61 | ><span.class="sgr-1m">enum.decla |
| c0280 | 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 20 3d 20 65 6e 75 6d | red.here.</span>const.Foo.=.enum |
| c02a0 | 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 73 67 72 2d | .{.............<span.class="sgr- |
| c02c0 | 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 3c 2f 70 72 65 3e 3c | 32m">^~~~.</span>.</samp></pre>< |
| c02e0 | 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:</ |
| c0300 | 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 |
| c0320 | 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"> |
| c0340 | 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 3c 2f 63 | runtime_invalid_enum_cast.zig</c |
| c0360 | 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 |
| c0380 | 6e 20 63 6c 61 73 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 |
| c03a0 | 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 |
| c03c0 | 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 |
| c03e0 | 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 | r">"std"</span>);..<sp |
| c0400 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 | an.class="tok-kw">const</span>.F |
| c0420 | 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 2f | oo.=.<span.class="tok-kw">enum</ |
| c0440 | 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 20 63 2c 0a 7d 3b 0a | span>.{.....a,.....b,.....c,.};. |
| c0460 | 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> |
| c0480 | 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>. |
| c04a0 | 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> |
| c04c0 | 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</ |
| c04e0 | 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" |
| c0500 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >var</span>.a:.<span.class="tok- |
| c0520 | 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 6c 61 73 73 3d 22 74 | type">u2</span>.=.<span.class="t |
| c0540 | 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 20 26 61 6d | ok-number">3</span>;....._.=.&am |
| c0560 | 70 3b 61 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | p;a;.....<span.class="tok-kw">co |
| c0580 | 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 20 63 6c 61 73 73 3d | nst</span>.b:.Foo.=.<span.class= |
| c05a0 | 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 74 3c 2f 73 70 61 6e | "tok-builtin">@enumFromInt</span |
| c05c0 | 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 28 3c 73 70 61 6e 20 | >(a);.....std.debug.print(<span. |
| c05e0 | 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 73 7d | class="tok-str">"value:.{s} |
| c0600 | 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 22 | \n"</span>,..{<span.class=" |
| c0620 | 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 6e 3e 28 62 29 7d | tok-builtin">@tagName</span>(b)} |
| c0640 | 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 |
| c0660 | 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"> |
| c0680 | 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>$.< |
| c06a0 | 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 69 | kbd>zig.build-exe.runtime_invali |
| c06c0 | 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 6b 62 64 3e 2e 2f 72 | d_enum_cast.zig</kbd>.$.<kbd>./r |
| c06e0 | 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 2f 6b 62 64 3e 0a 74 | untime_invalid_enum_cast</kbd>.t |
| c0700 | 68 72 65 61 64 20 33 35 36 38 30 32 37 20 70 61 6e 69 63 3a 20 69 6e 76 61 6c 69 64 20 65 6e 75 | hread.3568027.panic:.invalid.enu |
| c0720 | 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 6d 22 3e 2f 68 6f | m.value.<span.class="sgr-1m">/ho |
| c0740 | 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 | me/andy/src/zig/doc/langref/runt |
| c0760 | 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 31 32 3a 32 30 3c | ime_invalid_enum_cast.zig:12:20< |
| c0780 | 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 |
| c07a0 | 30 33 35 32 39 37 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 | 035297.in.main.(runtime_invalid_ |
| c07c0 | 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 74 20 62 3a 20 46 | enum_cast)</span>.....const.b:.F |
| c07e0 | 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 20 20 20 20 20 20 | oo.=.@enumFromInt(a);........... |
| c0800 | 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">^ |
| c0820 | 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 |
| c0840 | 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | me/andy/src/zig/lib/std/start.zi |
| c0860 | 67 3a 35 31 34 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:514:22</span>:.<span.class="sg |
| c0880 | 72 2d 32 6d 22 3e 30 78 31 30 33 34 61 66 39 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e | r-2m">0x1034af9.in.posixCallMain |
| c08a0 | 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 6e 75 6d 5f 63 61 | AndExit.(runtime_invalid_enum_ca |
| c08c0 | 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 6e | st)</span>.............root.main |
| c08e0 | 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 63 | ();......................<span.c |
| c0900 | 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 |
| c0920 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f | ass="sgr-1m">/home/andy/src/zig/ |
| c0940 | 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 36 36 3a 35 3c 2f 73 70 61 6e 3e 3a 20 | lib/std/start.zig:266:5</span>:. |
| c0960 | 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 34 36 36 31 20 69 | <span.class="sgr-2m">0x1034661.i |
| c0980 | 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 6e 75 6d 5f 63 | n._start.(runtime_invalid_enum_c |
| c09a0 | 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 28 73 77 | ast)</span>.....asm.volatile.(sw |
| c09c0 | 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 |
| c09e0 | 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 |
| c0a00 | 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 |
| c0a20 | 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.???.(?? |
| c0a40 | 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 |
| c0a60 | 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>. |
| c0a80 | 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 61 6c 69 64 2d 45 | ...............<h3.id="Invalid-E |
| c0aa0 | 72 72 6f 72 2d 53 65 74 2d 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 76 | rror-Set-Cast"><a.href="#toc-Inv |
| c0ac0 | 61 6c 69 64 2d 45 72 72 6f 72 2d 53 65 74 2d 43 61 73 74 22 3e 49 6e 76 61 6c 69 64 20 45 72 72 | alid-Error-Set-Cast">Invalid.Err |
| c0ae0 | 6f 72 20 53 65 74 20 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | or.Set.Cast</a>.<a.class="hdr".h |
| c0b00 | 72 65 66 3d 22 23 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 53 65 74 2d 43 61 73 74 22 3e c2 a7 | ref="#Invalid-Error-Set-Cast">.. |
| c0b20 | 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 65 2d 74 | </a></h3>........<p>At.compile-t |
| c0b40 | 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 |
| c0b60 | 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=" |
| c0b80 | 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 64 5f 65 72 72 6f | file">test_comptime_invalid_erro |
| c0ba0 | 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 63 61 70 74 69 6f | r_set_cast.zig</cite></figcaptio |
| c0bc0 | 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 |
| c0be0 | 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 6e 20 63 6c 61 73 | ">const</span>.Set1.=.<span.clas |
| c0c00 | 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 41 2c 0a | s="tok-kw">error</span>{.....A,. |
| c0c20 | 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 2d 6b 77 22 3e 63 | ....B,.};.<span.class="tok-kw">c |
| c0c40 | 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 6c 61 73 73 3d 22 | onst</span>.Set2.=.<span.class=" |
| c0c60 | 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 20 20 | tok-kw">error</span>{.....A,.... |
| c0c80 | 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 22 3e 63 6f 6d 70 | .C,.};.<span.class="tok-kw">comp |
| c0ca0 | 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 6e 20 63 6c 61 73 | time</span>.{....._.=.<span.clas |
| c0cc0 | 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 53 65 74 32 2c | s="tok-builtin">@as</span>(Set2, |
| c0ce0 | 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 72 72 6f | .<span.class="tok-builtin">@erro |
| c0d00 | 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 63 6f 64 65 3e 3c | rCast</span>(Set1.B));.}</code>< |
| c0d20 | 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 |
| c0d40 | 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 |
| c0d60 | 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 |
| c0d80 | 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 6f 72 5f 73 65 74 | .test_comptime_invalid_error_set |
| c0da0 | 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 67 72 | _cast.zig</kbd>.<span.class="sgr |
| c0dc0 | 2d 31 6d 22 3e 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 | -1m">doc/langref/test_comptime_i |
| c0de0 | 6e 76 61 6c 69 64 5f 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 | nvalid_error_set_cast.zig:10:19: |
| c0e00 | 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 |
| c0e20 | 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" |
| c0e40 | 3e 27 65 72 72 6f 72 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 | >'error.B'.not.a.member.of.error |
| c0e60 | 20 73 65 74 20 27 65 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 | .set.'error{A,C}'.</span>...._.= |
| c0e80 | 20 40 61 73 28 53 65 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 | .@as(Set2,.@errorCast(Set1.B));. |
| c0ea0 | 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 |
| c0ec0 | 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 0a 3c 2f 73 70 61 | gr-32m">^~~~~~~~~~~~~~~~~~.</spa |
| c0ee0 | 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 20 | n>.</samp></pre></figure>....... |
| c0f00 | 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 67 75 72 | .<p>At.runtime:</p>.......<figur |
| c0f20 | 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 |
| c0f40 | 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 69 6e 76 61 6c 69 64 | ite.class="file">runtime_invalid |
| c0f60 | 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 63 | _error_set_cast.zig</cite></figc |
| c0f80 | 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 |
| c0fa0 | 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. |
| c0fc0 | 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 |
| c0fe0 | 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 |
| c1000 | 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=" |
| c1020 | 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 |
| c1040 | 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>{.. |
| c1060 | 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 |
| c1080 | 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 |
| c10a0 | 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>{..... |
| c10c0 | 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 |
| c10e0 | 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 |
| c1100 | 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" |
| c1120 | 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 2d | >main</span>().<span.class="tok- |
| c1140 | 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 6f 6f 28 53 65 74 31 | type">void</span>.{.....foo(Set1 |
| c1160 | 2e 42 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 2f | .B);.}.<span.class="tok-kw">fn</ |
| c1180 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f | span>.<span.class="tok-fn">foo</ |
| c11a0 | 73 70 61 6e 3e 28 73 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 | span>(set1:.Set1).<span.class="t |
| c11c0 | 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 |
| c11e0 | 20 63 6c 61 73 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:. |
| c1200 | 53 65 74 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | Set2.=.<span.class="tok-builtin" |
| c1220 | 3e 40 65 72 72 6f 72 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 | >@errorCast</span>(set1);.....st |
| c1240 | 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 |
| c1260 | 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 |
| c1280 | 6e 3e 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 | n>,..{x});.}</code></pre></figur |
| c12a0 | 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 |
| c12c0 | 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>< |
| c12e0 | 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 |
| c1300 | 65 5f 69 6e 76 61 6c 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 | e_invalid_error_set_cast.zig</kb |
| c1320 | 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 5f 65 72 72 6f | d>.$.<kbd>./runtime_invalid_erro |
| c1340 | 72 5f 73 65 74 5f 63 61 73 74 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 33 35 36 38 30 32 36 20 | r_set_cast</kbd>.thread.3568026. |
| c1360 | 70 61 6e 69 63 3a 20 69 6e 76 61 6c 69 64 20 65 72 72 6f 72 20 63 6f 64 65 0a 3c 73 70 61 6e 20 | panic:.invalid.error.code.<span. |
| c1380 | 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 73 72 63 2f 7a 69 | class="sgr-1m">/home/andy/src/zi |
| c13a0 | 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 64 5f 65 72 | g/doc/langref/runtime_invalid_er |
| c13c0 | 72 6f 72 5f 73 65 74 5f 63 61 73 74 2e 7a 69 67 3a 31 35 3a 32 31 3c 2f 73 70 61 6e 3e 3a 20 3c | ror_set_cast.zig:15:21</span>:.< |
| c13e0 | 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 37 33 31 37 20 69 6e | span.class="sgr-2m">0x1037317.in |
| c1400 | 20 66 6f 6f 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 65 74 5f | .foo.(runtime_invalid_error_set_ |
| c1420 | 63 61 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 78 3a 20 53 65 74 32 20 3d | cast)</span>.....const.x:.Set2.= |
| c1440 | 20 40 65 72 72 6f 72 43 61 73 74 28 73 65 74 31 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | .@errorCast(set1);.............. |
| c1460 | 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">^</ |
| c1480 | 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 |
| c14a0 | 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d | /andy/src/zig/doc/langref/runtim |
| c14c0 | 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f 73 65 74 5f 63 61 73 74 2e 7a 69 67 3a 31 32 3a | e_invalid_error_set_cast.zig:12: |
| c14e0 | 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 3e 30 | 8</span>:.<span.class="sgr-2m">0 |
| c1500 | 78 31 30 33 35 32 33 64 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 | x103523d.in.main.(runtime_invali |
| c1520 | 64 5f 65 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 66 6f 6f | d_error_set_cast)</span>.....foo |
| c1540 | 28 53 65 74 31 2e 42 29 3b 0a 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | (Set1.B);........<span.class="sg |
| c1560 | 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 |
| c1580 | 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f | -1m">/home/andy/src/zig/lib/std/ |
| c15a0 | 73 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | start.zig:514:22</span>:.<span.c |
| c15c0 | 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 34 61 65 39 20 69 6e 20 70 6f 73 69 78 | lass="sgr-2m">0x1034ae9.in.posix |
| c15e0 | 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 76 61 6c 69 64 | CallMainAndExit.(runtime_invalid |
| c1600 | 5f 65 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 20 20 20 20 | _error_set_cast)</span>......... |
| c1620 | 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ....root.main();................ |
| c1640 | 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 73 | ......<span.class="sgr-32m">^</s |
| c1660 | 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 2f | pan>.<span.class="sgr-1m">/home/ |
| c1680 | 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 | andy/src/zig/lib/std/start.zig:2 |
| c16a0 | 36 36 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 | 66:5</span>:.<span.class="sgr-2m |
| c16c0 | 22 3e 30 78 31 30 33 34 36 35 31 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d 65 5f 69 | ">0x1034651.in._start.(runtime_i |
| c16e0 | 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 70 61 6e 3e 0a 20 20 | nvalid_error_set_cast)</span>... |
| c1700 | 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 |
| c1720 | 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" |
| c1740 | 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">? |
| c1760 | 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- |
| c1780 | 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 |
| c17a0 | 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 |
| c17c0 | 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>............... |
| c17e0 | 20 3c 68 33 20 69 64 3d 22 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e 74 65 72 2d 41 6c 69 67 6e | .<h3.id="Incorrect-Pointer-Align |
| c1800 | 6d 65 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 63 6f 72 72 65 63 74 2d 50 6f | ment"><a.href="#toc-Incorrect-Po |
| c1820 | 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 69 6e 74 | inter-Alignment">Incorrect.Point |
| c1840 | 65 72 20 41 6c 69 67 6e 6d 65 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | er.Alignment</a>.<a.class="hdr". |
| c1860 | 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 67 6e 6d 65 | href="#Incorrect-Pointer-Alignme |
| c1880 | 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 3e 41 74 20 63 6f 6d | nt">..</a></h3>........<p>At.com |
| c18a0 | 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 |
| c18c0 | 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 |
| c18e0 | 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 63 6f 72 72 | lass="file">test_comptime_incorr |
| c1900 | 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 63 69 74 65 3e | ect_pointer_alignment.zig</cite> |
| c1920 | 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 |
| c1940 | 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>.{.. |
| c1960 | 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 |
| c1980 | 70 61 6e 3e 20 70 74 72 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.ptr:.*<span.class="tok-kw"> |
| c19a0 | 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 |
| c19c0 | 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 6b | mber">1</span>).<span.class="tok |
| c19e0 | 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= |
| c1a00 | 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 61 6e 3e | "tok-builtin">@ptrFromInt</span> |
| c1a20 | 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 3c 2f 73 | (<span.class="tok-number">0x1</s |
| c1a40 | 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"> |
| c1a60 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 69 67 6e 65 64 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 | const</span>.aligned:.*<span.cla |
| c1a80 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | ss="tok-kw">align</span>(<span.c |
| c1aa0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 | lass="tok-number">4</span>).<spa |
| c1ac0 | 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>.=. |
| c1ae0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e | <span.class="tok-builtin">@align |
| c1b00 | 43 61 73 74 3c 2f 73 70 61 6e 3e 28 70 74 72 29 3b 0a 20 20 20 20 5f 20 3d 20 61 6c 69 67 6e 65 | Cast</span>(ptr);....._.=.aligne |
| c1b20 | 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 66 69 67 75 72 | d;.}</code></pre></figure><figur |
| c1b40 | 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"> |
| c1b60 | 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>$.< |
| c1b80 | 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 69 6e 63 6f 72 | kbd>zig.test.test_comptime_incor |
| c1ba0 | 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 6b 62 64 3e | rect_pointer_alignment.zig</kbd> |
| c1bc0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 | .<span.class="sgr-1m">doc/langre |
| c1be0 | 66 2f 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 74 65 | f/test_comptime_incorrect_pointe |
| c1c00 | 72 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a 69 67 3a 33 3a 34 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | r_alignment.zig:3:47:.</span><sp |
| c1c20 | 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 6e | an.class="sgr-31m">error:.</span |
| c1c40 | 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 61 64 | ><span.class="sgr-1m">pointer.ad |
| c1c60 | 64 72 65 73 73 20 30 78 31 20 69 73 20 6e 6f 74 20 61 6c 69 67 6e 65 64 20 74 6f 20 34 20 62 79 | dress.0x1.is.not.aligned.to.4.by |
| c1c80 | 74 65 73 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 61 6c 69 67 6e 65 64 3a 20 2a 61 | tes.</span>....const.aligned:.*a |
| c1ca0 | 6c 69 67 6e 28 34 29 20 69 33 32 20 3d 20 40 61 6c 69 67 6e 43 61 73 74 28 70 74 72 29 3b 0a 20 | lign(4).i32.=.@alignCast(ptr);.. |
| c1cc0 | 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 | ................................ |
| c1ce0 | 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 |
| c1d00 | 6d 22 3e 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 69 | m">^~~.</span>.</samp></pre></fi |
| c1d20 | 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>. |
| c1d40 | 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= |
| c1d60 | 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 |
| c1d80 | 74 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 | time_incorrect_pointer_alignment |
| c1da0 | 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 |
| c1dc0 | 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 |
| c1de0 | 70 61 6e 3e 20 6d 65 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | pan>.mem.=.<span.class="tok-buil |
| c1e00 | 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= |
| c1e20 | 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> |
| c1e40 | 29 2e 6d 65 6d 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 | ).mem;.<span.class="tok-kw">pub< |
| c1e60 | 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</ |
| c1e80 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c | span>.<span.class="tok-fn">main< |
| c1ea0 | 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" |
| c1ec0 | 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=" |
| c1ee0 | 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 3c 73 70 61 6e 20 63 | tok-kw">var</span>.array.<span.c |
| c1f00 | 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 6e | lass="tok-kw">align</span>(<span |
| c1f20 | 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 20 | .class="tok-number">4</span>).=. |
| c1f40 | 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 73 | [_]<span.class="tok-type">u32</s |
| c1f60 | 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 30 | pan>{.<span.class="tok-number">0 |
| c1f80 | 78 31 31 31 31 31 31 31 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | x11111111</span>,.<span.class="t |
| c1fa0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 31 31 31 31 31 31 31 3c 2f 73 70 61 6e 3e 20 7d 3b 0a | ok-number">0x11111111</span>.};. |
| c1fc0 | 20 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</ |
| c1fe0 | 73 70 61 6e 3e 20 62 79 74 65 73 20 3d 20 6d 65 6d 2e 73 6c 69 63 65 41 73 42 79 74 65 73 28 61 | span>.bytes.=.mem.sliceAsBytes(a |
| c2000 | 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< |
| c2020 | 2f 73 70 61 6e 3e 2e 2e 5d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>..]);.....<span.class="tok |
| c2040 | 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 66 6f 6f 28 62 79 74 65 73 29 20 21 3d 20 3c 73 | -kw">if</span>.(foo(bytes).!=.<s |
| c2060 | 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 31 31 31 31 31 31 | pan.class="tok-number">0x1111111 |
| c2080 | 31 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 | 1</span>).<span.class="tok-kw">r |
| c20a0 | 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 |
| c20c0 | 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 57 72 6f 6e 67 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c | ">error</span>.Wrong;.}.<span.cl |
| c20e0 | 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 |
| c2100 | 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:.[] |
| c2120 | 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> |
| c2140 | 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 |
| c2160 | 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 |
| c2180 | 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 |
| c21a0 | 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 |
| c21c0 | 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>] |
| c21e0 | 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 |
| c2200 | 3c 2f 73 70 61 6e 3e 20 69 6e 74 5f 73 6c 69 63 65 20 3d 20 6d 65 6d 2e 62 79 74 65 73 41 73 53 | </span>.int_slice.=.mem.bytesAsS |
| c2220 | 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 75 33 32 3c | lice(<span.class="tok-type">u32< |
| c2240 | 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 69 6e | /span>,.<span.class="tok-builtin |
| c2260 | 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- |
| c2280 | 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 |
| c22a0 | 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= |
| c22c0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | "tok-type">u8</span>,.<span.clas |
| c22e0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 73 70 61 6e | s="tok-builtin">@alignCast</span |
| c2300 | 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 3d 22 74 6f | >(slice4)));.....<span.class="to |
| c2320 | 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 65 5b 3c 73 | k-kw">return</span>.int_slice[<s |
| c2340 | 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>] |
| c2360 | 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 |
| c2380 | 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 |
| c23a0 | 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 |
| c23c0 | 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 63 6f 72 72 65 | bd>zig.build-exe.runtime_incorre |
| c23e0 | 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 6b 62 64 3e 0a 24 | ct_pointer_alignment.zig</kbd>.$ |
| c2400 | 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f 69 6e 74 65 | .<kbd>./runtime_incorrect_pointe |
| c2420 | 72 5f 61 6c 69 67 6e 6d 65 6e 74 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 33 35 37 30 31 32 32 | r_alignment</kbd>.thread.3570122 |
| c2440 | 20 70 61 6e 69 63 3a 20 69 6e 63 6f 72 72 65 63 74 20 61 6c 69 67 6e 6d 65 6e 74 0a 3c 73 70 61 | .panic:.incorrect.alignment.<spa |
| c2460 | 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 73 72 63 2f | n.class="sgr-1m">/home/andy/src/ |
| c2480 | 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 63 6f 72 72 65 63 | zig/doc/langref/runtime_incorrec |
| c24a0 | 74 5f 70 6f 69 6e 74 65 72 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a 69 67 3a 39 3a 36 34 3c 2f 73 70 | t_pointer_alignment.zig:9:64</sp |
| c24c0 | 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 33 34 | an>:.<span.class="sgr-2m">0x1034 |
| c24e0 | 66 30 61 20 69 6e 20 66 6f 6f 20 28 72 75 6e 74 69 6d 65 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f | f0a.in.foo.(runtime_incorrect_po |
| c2500 | 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 20 20 20 63 6f 6e 73 | inter_alignment)</span>.....cons |
| c2520 | 74 20 69 6e 74 5f 73 6c 69 63 65 20 3d 20 6d 65 6d 2e 62 79 74 65 73 41 73 53 6c 69 63 65 28 75 | t.int_slice.=.mem.bytesAsSlice(u |
| c2540 | 33 32 2c 20 40 61 73 28 5b 5d 61 6c 69 67 6e 28 34 29 20 75 38 2c 20 40 61 6c 69 67 6e 43 61 73 | 32,.@as([]align(4).u8,.@alignCas |
| c2560 | 74 28 73 6c 69 63 65 34 29 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | t(slice4)));.................... |
| c2580 | 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 | ................................ |
| c25a0 | 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 |
| c25c0 | 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"> |
| c25e0 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 | /home/andy/src/zig/doc/langref/r |
| c2600 | 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 61 6c 69 67 6e 6d 65 | untime_incorrect_pointer_alignme |
| c2620 | 6e 74 2e 7a 69 67 3a 35 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | nt.zig:5:12</span>:.<span.class= |
| c2640 | 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 34 64 63 37 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 | "sgr-2m">0x1034dc7.in.main.(runt |
| c2660 | 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 29 | ime_incorrect_pointer_alignment) |
| c2680 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 66 20 28 66 6f 6f 28 62 79 74 65 73 29 20 21 3d 20 30 78 | </span>.....if.(foo(bytes).!=.0x |
| c26a0 | 31 31 31 31 31 31 31 31 29 20 72 65 74 75 72 6e 20 65 72 72 6f 72 2e 57 72 6f 6e 67 3b 0a 20 20 | 11111111).return.error.Wrong;... |
| c26c0 | 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">^ |
| c26e0 | 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 |
| c2700 | 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | me/andy/src/zig/lib/std/start.zi |
| c2720 | 67 3a 35 32 34 3a 33 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | g:524:37</span>:.<span.class="sg |
| c2740 | 72 2d 32 6d 22 3e 30 78 31 30 33 34 63 63 35 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e | r-2m">0x1034cc5.in.posixCallMain |
| c2760 | 41 6e 64 45 78 69 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 | AndExit.(runtime_incorrect_point |
| c2780 | 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 20 20 20 20 20 20 20 | er_alignment)</span>............ |
| c27a0 | 20 63 6f 6e 73 74 20 72 65 73 75 6c 74 20 3d 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 20 63 61 74 63 | .const.result.=.root.main().catc |
| c27c0 | 68 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | h.|err|.{....................... |
| c27e0 | 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 |
| c2800 | 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 |
| c2820 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 | ">/home/andy/src/zig/lib/std/sta |
| c2840 | 72 74 2e 7a 69 67 3a 32 36 36 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | rt.zig:266:5</span>:.<span.class |
| c2860 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 34 37 65 31 20 69 6e 20 5f 73 74 61 72 74 20 28 72 | ="sgr-2m">0x10347e1.in._start.(r |
| c2880 | 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 61 6c 69 67 6e 6d 65 | untime_incorrect_pointer_alignme |
| c28a0 | 6e 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 | nt)</span>.....asm.volatile.(swi |
| c28c0 | 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 |
| c28e0 | 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 |
| c2900 | 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 |
| c2920 | 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.???.(??? |
| c2940 | 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 20 | )</span>.(process.terminated.by. |
| c2960 | 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 0a | signal).</samp></pre></figure>.. |
| c2980 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 57 72 6f 6e 67 2d 55 6e 69 6f 6e | .............<h3.id="Wrong-Union |
| c29a0 | 2d 46 69 65 6c 64 2d 41 63 63 65 73 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 57 72 6f | -Field-Access"><a.href="#toc-Wro |
| c29c0 | 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 6c 64 2d 41 63 63 65 73 73 22 3e 57 72 6f 6e 67 20 55 6e 69 | ng-Union-Field-Access">Wrong.Uni |
| c29e0 | 6f 6e 20 46 69 65 6c 64 20 41 63 63 65 73 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | on.Field.Access</a>.<a.class="hd |
| c2a00 | 72 22 20 68 72 65 66 3d 22 23 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 6c 64 2d 41 63 63 65 | r".href="#Wrong-Union-Field-Acce |
| c2a20 | 73 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 41 74 20 63 6f 6d | ss">..</a></h3>........<p>At.com |
| c2a40 | 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 |
| c2a60 | 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 |
| c2a80 | 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 77 72 6f 6e 67 5f | lass="file">test_comptime_wrong_ |
| c2aa0 | 75 6e 69 6f 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 | union_field_access.zig</cite></f |
| c2ac0 | 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 |
| c2ae0 | 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>.{..... |
| c2b00 | 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>. |
| c2b20 | 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 74 6f 6b | f.=.Foo{..int.=.<span.class="tok |
| c2b40 | 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 66 2e 66 6c 6f 61 | -number">42</span>.};.....f.floa |
| c2b60 | 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e | t.=.<span.class="tok-number">12. |
| c2b80 | 33 34 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 | 34</span>;.}..<span.class="tok-k |
| c2ba0 | 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 |
| c2bc0 | 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 |
| c2be0 | 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< |
| c2c00 | 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 |
| c2c20 | 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 | k-type">u32</span>,.};</code></p |
| c2c40 | 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. |
| c2c60 | 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 |
| c2c80 | 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 |
| c2ca0 | 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 66 69 65 6c 64 5f 61 | est_comptime_wrong_union_field_a |
| c2cc0 | 63 63 65 73 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 | ccess.zig</kbd>.<span.class="sgr |
| c2ce0 | 2d 31 6d 22 3e 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 | -1m">doc/langref/test_comptime_w |
| c2d00 | 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 33 3a 36 3a | rong_union_field_access.zig:3:6: |
| c2d20 | 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 |
| c2d40 | 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" |
| c2d60 | 3e 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 20 77 | >access.of.union.field.'float'.w |
| c2d80 | 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 2f 73 70 61 | hile.field.'int'.is.active.</spa |
| c2da0 | 6e 3e 20 20 20 20 66 2e 66 6c 6f 61 74 20 3d 20 31 32 2e 33 34 3b 0a 20 20 20 20 3c 73 70 61 6e | n>....f.float.=.12.34;.....<span |
| c2dc0 | 20 63 6c 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 | .class="sgr-32m">~^~~~~~.</span> |
| c2de0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 | <span.class="sgr-1m">doc/langref |
| c2e00 | 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 66 69 65 6c 64 | /test_comptime_wrong_union_field |
| c2e20 | 5f 61 63 63 65 73 73 2e 7a 69 67 3a 36 3a 31 33 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | _access.zig:6:13:.</span><span.c |
| c2e40 | 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 |
| c2e60 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 75 6e 69 6f 6e 20 64 65 63 6c 61 72 65 64 20 | n.class="sgr-1m">union.declared. |
| c2e80 | 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 63 6f 6e 73 74 20 46 6f 6f 20 3d 20 75 6e 69 6f 6e 20 7b 0a | here.</span>const.Foo.=.union.{. |
| c2ea0 | 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 |
| c2ec0 | 22 3e 5e 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 3e 3c 2f 66 | ">^~~~~.</span>.</samp></pre></f |
| c2ee0 | 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 70 3e | igure>........<p>At.runtime:</p> |
| c2f00 | 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 |
| c2f20 | 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 75 | ="zig-cap"><cite.class="file">ru |
| c2f40 | 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 2e 7a | ntime_wrong_union_field_access.z |
| c2f60 | 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 |
| c2f80 | 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 |
| c2fa0 | 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 |
| c2fc0 | 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 |
| c2fe0 | 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>); |
| c3000 | 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 |
| c3020 | 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 | an>.Foo.=.<span.class="tok-kw">u |
| c3040 | 6e 69 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 | nion</span>.{.....float:.<span.c |
| c3060 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 | lass="tok-type">f32</span>,..... |
| c3080 | 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 75 33 32 3c | int:.<span.class="tok-type">u32< |
| c30a0 | 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" |
| c30c0 | 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" |
| c30e0 | 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"> |
| c3100 | 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 |
| c3120 | 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 |
| c3140 | 73 73 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 | ss="tok-kw">var</span>.f.=.Foo{. |
| c3160 | 2e 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | .int.=.<span.class="tok-number"> |
| c3180 | 34 32 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 7d 0a | 42</span>.};.....bar(&f);.}. |
| c31a0 | 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>. |
| c31c0 | 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 3e 28 | <span.class="tok-fn">bar</span>( |
| c31e0 | 66 3a 20 2a 46 6f 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | f:.*Foo).<span.class="tok-type"> |
| c3200 | 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 2e 66 6c 6f 61 74 20 3d 20 3c 73 70 61 | void</span>.{.....f.float.=.<spa |
| c3220 | 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 61 6e | n.class="tok-number">12.34</span |
| c3240 | 3e 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 | >;.....std.debug.print(<span.cla |
| c3260 | 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 71 | ss="tok-str">"value:.{}\n&q |
| c3280 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 66 2e 66 6c 6f 61 74 7d 29 3b 0a 7d 3c 2f 63 6f 64 | uot;</span>,..{f.float});.}</cod |
| c32a0 | 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 |
| c32c0 | 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 |
| c32e0 | 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 |
| c3300 | 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 66 69 65 | uild-exe.runtime_wrong_union_fie |
| c3320 | 6c 64 5f 61 63 63 65 73 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 75 6e | ld_access.zig</kbd>.$.<kbd>./run |
| c3340 | 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 3c 2f 6b | time_wrong_union_field_access</k |
| c3360 | 62 64 3e 0a 74 68 72 65 61 64 20 33 35 37 38 37 38 37 20 70 61 6e 69 63 3a 20 61 63 63 65 73 73 | bd>.thread.3578787.panic:.access |
| c3380 | 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 65 20 66 69 | .of.union.field.'float'.while.fi |
| c33a0 | 65 6c 64 20 27 69 6e 74 27 20 69 73 20 61 63 74 69 76 65 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | eld.'int'.is.active.<span.class= |
| c33c0 | 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 64 6f 63 2f | "sgr-1m">/home/andy/src/zig/doc/ |
| c33e0 | 6c 61 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 | langref/runtime_wrong_union_fiel |
| c3400 | 64 5f 61 63 63 65 73 73 2e 7a 69 67 3a 31 34 3a 36 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | d_access.zig:14:6</span>:.<span. |
| c3420 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 63 64 32 30 20 69 6e 20 62 61 72 20 | class="sgr-2m">0x103cd20.in.bar. |
| c3440 | 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 |
| c3460 | 73 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 2e 66 6c 6f 61 74 20 3d 20 31 32 2e 33 34 3b 0a 20 | s)</span>.....f.float.=.12.34;.. |
| c3480 | 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 |
| c34a0 | 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 |
| c34c0 | 64 79 2f 73 72 63 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/src/zig/doc/langref/runtime_w |
| c34e0 | 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 30 3a 38 | rong_union_field_access.zig:10:8 |
| c3500 | 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 |
| c3520 | 31 30 33 61 63 35 63 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 | 103ac5c.in.main.(runtime_wrong_u |
| c3540 | 6e 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 62 61 | nion_field_access)</span>.....ba |
| c3560 | 72 28 26 61 6d 70 3b 66 29 3b 0a 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | r(&f);........<span.class="s |
| c3580 | 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 |
| c35a0 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 | r-1m">/home/andy/src/zig/lib/std |
| c35c0 | 2f 73 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | /start.zig:514:22</span>:.<span. |
| c35e0 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 61 34 66 39 20 69 6e 20 70 6f 73 69 | class="sgr-2m">0x103a4f9.in.posi |
| c3600 | 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 77 72 6f 6e 67 5f | xCallMainAndExit.(runtime_wrong_ |
| c3620 | 75 6e 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 20 | union_field_access)</span>...... |
| c3640 | 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();............. |
| c3660 | 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">^ |
| c3680 | 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 |
| c36a0 | 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | me/andy/src/zig/lib/std/start.zi |
| c36c0 | 67 3a 32 36 36 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:266:5</span>:.<span.class="sgr |
| c36e0 | 2d 32 6d 22 3e 30 78 31 30 33 61 30 36 31 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d | -2m">0x103a061.in._start.(runtim |
| c3700 | 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 29 3c 2f 73 70 61 | e_wrong_union_field_access)</spa |
| c3720 | 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 74 | n>.....asm.volatile.(switch.(nat |
| c3740 | 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 72 | ive_arch).{.....<span.class="sgr |
| c3760 | 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- |
| c3780 | 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 3d | 1m">???:?:?</span>:.<span.class= |
| c37a0 | 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 3e | "sgr-2m">0x0.in.???.(???)</span> |
| c37c0 | 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 0a | .(process.terminated.by.signal). |
| c37e0 | 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 |
| c3800 | 3e 0a 20 20 20 20 20 20 54 68 69 73 20 73 61 66 65 74 79 20 69 73 20 6e 6f 74 20 61 76 61 69 6c | >.......This.safety.is.not.avail |
| c3820 | 61 62 6c 65 20 66 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 | able.for.<code><span.class="tok- |
| c3840 | 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 6f 72 20 3c 63 6f 64 | kw">extern</span></code>.or.<cod |
| c3860 | 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 |
| c3880 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 75 6e 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | pan></code>.unions........</p>.. |
| c38a0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 63 68 61 6e 67 65 20 74 68 65 20 61 63 74 | .....<p>.......To.change.the.act |
| c38c0 | 69 76 65 20 66 69 65 6c 64 20 6f 66 20 61 20 75 6e 69 6f 6e 2c 20 61 73 73 69 67 6e 20 74 68 65 | ive.field.of.a.union,.assign.the |
| c38e0 | 20 65 6e 74 69 72 65 20 75 6e 69 6f 6e 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 | .entire.union,.like.this:....... |
| c3900 | 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 |
| c3920 | 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 |
| c3940 | 22 3e 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 | ">change_active_union_field.zig< |
| c3960 | 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 |
| c3980 | 70 61 6e 20 63 6c 61 73 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>. |
| c39a0 | 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"> |
| c39c0 | 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- |
| c39e0 | 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>);..< |
| c3a00 | 73 70 61 6e 20 63 6c 61 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> |
| c3a20 | 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 6f | .Foo.=.<span.class="tok-kw">unio |
| c3a40 | 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 73 | n</span>.{.....float:.<span.clas |
| c3a60 | 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 74 | s="tok-type">f32</span>,.....int |
| c3a80 | 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 |
| c3aa0 | 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 75 | an>,.};..<span.class="tok-kw">pu |
| c3ac0 | 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 |
| c3ae0 | 3c 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 |
| c3b00 | 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 |
| c3b20 | 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= |
| c3b40 | 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 6e | "tok-kw">var</span>.f.=.Foo{..in |
| c3b60 | 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 3c | t.=.<span.class="tok-number">42< |
| c3b80 | 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 7d 0a 0a 3c 73 | /span>.};.....bar(&f);.}..<s |
| c3ba0 | 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 |
| c3bc0 | 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 3e 28 66 3a 20 | an.class="tok-fn">bar</span>(f:. |
| c3be0 | 2a 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 69 | *Foo).<span.class="tok-type">voi |
| c3c00 | 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 2e 2a 20 3d 20 46 6f 6f 7b 20 2e 66 6c 6f 61 74 | d</span>.{.....f.*.=.Foo{..float |
| c3c20 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 | .=.<span.class="tok-number">12.3 |
| c3c40 | 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 | 4</span>.};.....std.debug.print( |
| c3c60 | 3c 73 70 61 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 |
| c3c80 | 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 66 2e 66 6c 6f 61 74 7d | e:.{}\n"</span>,..{f.float} |
| c3ca0 | 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 |
| c3cc0 | 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"> |
| c3ce0 | 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>$.< |
| c3d00 | 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 63 68 61 6e 67 65 5f 61 63 74 69 76 65 5f | kbd>zig.build-exe.change_active_ |
| c3d20 | 75 6e 69 6f 6e 5f 66 69 65 6c 64 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 63 | union_field.zig</kbd>.$.<kbd>./c |
| c3d40 | 68 61 6e 67 65 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 | hange_active_union_field</kbd>.v |
| c3d60 | 61 6c 75 65 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 | alue:.1.234e1.</samp></pre></fig |
| c3d80 | 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 63 68 61 6e 67 65 20 | ure>........<p>.......To.change. |
| c3da0 | 74 68 65 20 61 63 74 69 76 65 20 66 69 65 6c 64 20 6f 66 20 61 20 75 6e 69 6f 6e 20 77 68 65 6e | the.active.field.of.a.union.when |
| c3dc0 | 20 61 20 6d 65 61 6e 69 6e 67 66 75 6c 20 76 61 6c 75 65 20 66 6f 72 20 74 68 65 20 66 69 65 6c | .a.meaningful.value.for.the.fiel |
| c3de0 | 64 20 69 73 20 6e 6f 74 20 6b 6e 6f 77 6e 2c 0a 20 20 20 20 20 20 75 73 65 20 3c 61 20 68 72 65 | d.is.not.known,.......use.<a.hre |
| c3e00 | 66 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 2c 20 6c 69 | f="#undefined">undefined</a>,.li |
| c3e20 | 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 |
| c3e40 | 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 |
| c3e60 | 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 75 6e 64 65 66 69 6e 65 64 5f 61 63 74 69 76 | ite.class="file">undefined_activ |
| c3e80 | 65 5f 75 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 | e_union_field.zig</cite></figcap |
| c3ea0 | 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 |
| c3ec0 | 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 |
| c3ee0 | 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> |
| c3f00 | 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 |
| c3f20 | 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 |
| c3f40 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 | k-kw">const</span>.Foo.=.<span.c |
| c3f60 | 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 20 | lass="tok-kw">union</span>.{.... |
| c3f80 | 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 66 | .float:.<span.class="tok-type">f |
| c3fa0 | 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 3d | 32</span>,.....int:.<span.class= |
| c3fc0 | 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 6e | "tok-type">u32</span>,.};..<span |
| c3fe0 | 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 |
| c4000 | 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. |
| c4020 | 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 70 | class="tok-fn">main</span>().<sp |
| c4040 | 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>. |
| c4060 | 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</ |
| c4080 | 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 73 | span>.f.=.Foo{..int.=.<span.clas |
| c40a0 | 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 20 | s="tok-number">42</span>.};..... |
| c40c0 | 66 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 | f.=.Foo{..float.=.<span.class="t |
| c40e0 | 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 20 7d 3b 0a 20 20 20 | ok-null">undefined</span>.};.... |
| c4100 | 20 62 61 72 28 26 61 6d 70 3b 66 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e | .bar(&f);.....std.debug.prin |
| c4120 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 | t(<span.class="tok-str">"va |
| c4140 | 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 2e 66 6c 6f 61 | lue:.{}\n"</span>,..{f.floa |
| c4160 | 74 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c | t});.}..<span.class="tok-kw">fn< |
| c4180 | 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 72 3c | /span>.<span.class="tok-fn">bar< |
| c41a0 | 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 3d 22 74 6f 6b | /span>(f:.*Foo).<span.class="tok |
| c41c0 | 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 66 6c 6f 61 74 | -type">void</span>.{.....f.float |
| c41e0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 | .=.<span.class="tok-number">12.3 |
| c4200 | 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 65 | 4</span>;.}</code></pre></figure |
| c4220 | 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 |
| c4240 | 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 |
| c4260 | 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 75 6e 64 65 66 69 6e | amp>$.<kbd>zig.build-exe.undefin |
| c4280 | 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 3c 2f 6b 62 64 3e 0a | ed_active_union_field.zig</kbd>. |
| c42a0 | 24 20 3c 6b 62 64 3e 2e 2f 75 6e 64 65 66 69 6e 65 64 5f 61 63 74 69 76 65 5f 75 6e 69 6f 6e 5f | $.<kbd>./undefined_active_union_ |
| c42c0 | 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 61 6d | field</kbd>.value:.1.234e1.</sam |
| c42e0 | 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. |
| c4300 | 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f | also:</p><ul>.<li><a.href="#unio |
| c4320 | 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | n">union</a></li>.<li><a.href="# |
| c4340 | 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></ |
| c4360 | 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 3d | li>.</ul>................<h3.id= |
| c4380 | 22 4f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 65 67 65 72 2d | "Out-of-Bounds-Float-to-Integer- |
| c43a0 | 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4f 75 74 2d 6f 66 2d 42 6f 75 6e 64 | Cast"><a.href="#toc-Out-of-Bound |
| c43c0 | 73 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 65 67 65 72 2d 43 61 73 74 22 3e 4f 75 74 20 6f 66 20 | s-Float-to-Integer-Cast">Out.of. |
| c43e0 | 42 6f 75 6e 64 73 20 46 6c 6f 61 74 20 74 6f 20 49 6e 74 65 67 65 72 20 43 61 73 74 3c 2f 61 3e | Bounds.Float.to.Integer.Cast</a> |
| c4400 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4f 75 74 2d 6f 66 2d 42 6f | .<a.class="hdr".href="#Out-of-Bo |
| c4420 | 75 6e 64 73 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 65 67 65 72 2d 43 61 73 74 22 3e c2 a7 3c 2f | unds-Float-to-Integer-Cast">..</ |
| c4440 | 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 69 73 20 68 61 | a></h3>........<p>.......This.ha |
| c4460 | 70 70 65 6e 73 20 77 68 65 6e 20 63 61 73 74 69 6e 67 20 61 20 66 6c 6f 61 74 20 74 6f 20 61 6e | ppens.when.casting.a.float.to.an |
| c4480 | 20 69 6e 74 65 67 65 72 20 77 68 65 72 65 20 74 68 65 20 66 6c 6f 61 74 20 68 61 73 20 61 20 76 | .integer.where.the.float.has.a.v |
| c44a0 | 61 6c 75 65 20 6f 75 74 73 69 64 65 20 74 68 65 0a 20 20 20 20 20 20 69 6e 74 65 67 65 72 20 74 | alue.outside.the.......integer.t |
| c44c0 | 79 70 65 27 73 20 72 61 6e 67 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | ype's.range........</p>.......<p |
| c44e0 | 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 69 67 | >At.compile-time:</p>.......<fig |
| c4500 | 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"> |
| c4520 | 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 6d 65 | <cite.class="file">test_comptime |
| c4540 | 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 72 5f | _out_of_bounds_float_to_integer_ |
| c4560 | 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 65 | cast.zig</cite></figcaption><pre |
| c4580 | 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 6d 70 | ><code><span.class="tok-kw">comp |
| c45a0 | 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | time</span>.{.....<span.class="t |
| c45c0 | 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 3a 20 3c 73 70 61 6e | ok-kw">const</span>.float:.<span |
| c45e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c | .class="tok-type">f32</span>.=.< |
| c4600 | 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 39 34 39 36 37 32 | span.class="tok-number">42949672 |
| c4620 | 39 36 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 | 96</span>;.....<span.class="tok- |
| c4640 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | kw">const</span>.int:.<span.clas |
| c4660 | 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. |
| c4680 | 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 46 6c 6f 61 | class="tok-builtin">@intFromFloa |
| c46a0 | 74 3c 2f 73 70 61 6e 3e 28 66 6c 6f 61 74 29 3b 0a 20 20 20 20 5f 20 3d 20 69 6e 74 3b 0a 7d 3c | t</span>(float);....._.=.int;.}< |
| c46c0 | 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 |
| c46e0 | 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 |
| c4700 | 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 |
| c4720 | 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 6f 75 74 5f 6f 66 5f 62 6f 75 | ig.test.test_comptime_out_of_bou |
| c4740 | 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 3c 2f 6b | nds_float_to_integer_cast.zig</k |
| c4760 | 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 64 6f 63 2f 6c 61 6e | bd>.<span.class="sgr-1m">doc/lan |
| c4780 | 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 64 73 | gref/test_comptime_out_of_bounds |
| c47a0 | 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 36 3a | _float_to_integer_cast.zig:3:36: |
| c47c0 | 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 |
| c47e0 | 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" |
| c4800 | 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 6f 74 | >float.value.'4294967296'.cannot |
| c4820 | 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 32 27 | .be.stored.in.integer.type.'i32' |
| c4840 | 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 69 6e | .</span>....const.int:.i32.=.@in |
| c4860 | 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);.............. |
| c4880 | 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 |
| c48a0 | 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 6d 70 | s="sgr-32m">^~~~~.</span>.</samp |
| c48c0 | 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 |
| c48e0 | 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 |
| c4900 | 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 |
| c4920 | 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 66 6c | ="file">runtime_out_of_bounds_fl |
| c4940 | 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></ |
| c4960 | 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 |
| c4980 | 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 |
| c49a0 | 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 |
| c49c0 | 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 |
| c49e0 | 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>.{.... |
| c4a00 | 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> |
| c4a20 | 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 66 | .float:.<span.class="tok-type">f |
| c4a40 | 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 |
| c4a60 | 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 63 6c | ber">4294967296</span>;.<span.cl |
| c4a80 | 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 |
| c4aa0 | 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 20 20 | wn</span>....._.=.&float;... |
| c4ac0 | 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 |
| c4ae0 | 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 22 3e | an>.int:.<span.class="tok-type"> |
| c4b00 | 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 62 75 | i32</span>.=.<span.class="tok-bu |
| c4b20 | 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 6f 61 | iltin">@intFromFloat</span>(floa |
| c4b40 | 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 3e 3c | t);....._.=.int;.}</code></pre>< |
| c4b60 | 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 |
| c4b80 | 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> |
| c4ba0 | 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 20 | <pre><samp>$.<kbd>zig.build-exe. |
| c4bc0 | 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 69 | runtime_out_of_bounds_float_to_i |
| c4be0 | 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 2f 72 | nteger_cast.zig</kbd>.$.<kbd>./r |
| c4c00 | 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 69 6e | untime_out_of_bounds_float_to_in |
| c4c20 | 74 65 67 65 72 5f 63 61 73 74 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 33 35 37 30 33 32 30 20 | teger_cast</kbd>.thread.3570320. |
| c4c40 | 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 20 | panic:.integer.part.of.floating. |
| c4c60 | 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 20 | point.value.out.of.bounds.<span. |
| c4c80 | 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 73 72 63 2f 7a 69 | class="sgr-1m">/home/andy/src/zi |
| c4ca0 | 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 75 | g/doc/langref/runtime_out_of_bou |
| c4cc0 | 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 3a | nds_float_to_integer_cast.zig:4: |
| c4ce0 | 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"> |
| c4d00 | 30 78 31 30 33 35 31 36 39 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 6f 75 74 5f 6f | 0x1035169.in.main.(runtime_out_o |
| c4d20 | 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 3c | f_bounds_float_to_integer_cast)< |
| c4d40 | 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 74 | /span>.....const.int:.i32.=.@int |
| c4d60 | 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 20 | FromFloat(float);............... |
| c4d80 | 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">^</ |
| c4da0 | 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 |
| c4dc0 | 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a | /andy/src/zig/lib/std/start.zig: |
| c4de0 | 35 31 34 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 | 514:22</span>:.<span.class="sgr- |
| c4e00 | 32 6d 22 3e 30 78 31 30 33 34 39 61 39 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e | 2m">0x10349a9.in.posixCallMainAn |
| c4e20 | 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 6f | dExit.(runtime_out_of_bounds_flo |
| c4e40 | 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 20 | at_to_integer_cast)</span>...... |
| c4e60 | 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();............. |
| c4e80 | 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">^ |
| c4ea0 | 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 |
| c4ec0 | 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | me/andy/src/zig/lib/std/start.zi |
| c4ee0 | 67 3a 32 36 36 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:266:5</span>:.<span.class="sgr |
| c4f00 | 2d 32 6d 22 3e 30 78 31 30 33 34 35 31 31 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 6d | -2m">0x1034511.in._start.(runtim |
| c4f20 | 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 72 | e_out_of_bounds_float_to_integer |
| c4f40 | 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 28 | _cast)</span>.....asm.volatile.( |
| c4f60 | 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 6e | switch.(native_arch).{.....<span |
| c4f80 | 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. |
| c4fa0 | 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 3c | class="sgr-1m">???:?:?</span>:.< |
| c4fc0 | 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 28 | span.class="sgr-2m">0x0.in.???.( |
| c4fe0 | 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 20 | ???)</span>.(process.terminated. |
| c5000 | 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 65 | by.signal).</samp></pre></figure |
| c5020 | 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 72 | >................<h3.id="Pointer |
| c5040 | 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 6f | -Cast-Invalid-Null"><a.href="#to |
| c5060 | 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 69 | c-Pointer-Cast-Invalid-Null">Poi |
| c5080 | 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 6c | nter.Cast.Invalid.Null</a>.<a.cl |
| c50a0 | 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 6e | ass="hdr".href="#Pointer-Cast-In |
| c50c0 | 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 3c | valid-Null">..</a></h3>........< |
| c50e0 | 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 69 | p>.......This.happens.when.casti |
| c5100 | 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 20 | ng.a.pointer.with.the.address.0. |
| c5120 | 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 20 | to.a.pointer.which.may.not.have. |
| c5140 | 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 65 | the.address.0........For.example |
| c5160 | 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 65 | ,.<a.href="#C-Pointers">C.Pointe |
| c5180 | 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 74 | rs</a>,.<a.href="#Optional-Point |
| c51a0 | 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 20 | ers">Optional.Pointers</a>,.and. |
| c51c0 | 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 2f | <a.href="#allowzero">allowzero</ |
| c51e0 | 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 20 | a>.pointers.......allow.address. |
| c5200 | 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 74 | zero,.but.normal.<a.href="#Point |
| c5220 | 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 20 | ers">Pointers</a>.do.not........ |
| c5240 | 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 2f | </p>.......<p>At.compile-time:</ |
| c5260 | 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 |
| c5280 | 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"> |
| c52a0 | 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 74 | test_comptime_invalid_null_point |
| c52c0 | 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 3c | er_cast.zig</cite></figcaption>< |
| c52e0 | 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 |
| c5300 | 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 |
| c5320 | 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 20 | ="tok-kw">const</span>.opt_ptr:. |
| c5340 | 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 70 | ?*<span.class="tok-type">i32</sp |
| c5360 | 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 |
| c5380 | 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | l</span>;.....<span.class="tok-k |
| c53a0 | 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 73 | w">const</span>.ptr:.*<span.clas |
| c53c0 | 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. |
| c53e0 | 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 70 | class="tok-builtin">@ptrCast</sp |
| c5400 | 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 6f | an>(opt_ptr);....._.=.ptr;.}</co |
| c5420 | 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 |
| c5440 | 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 |
| c5460 | 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. |
| c5480 | 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 5f | test.test_comptime_invalid_null_ |
| c54a0 | 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 61 | pointer_cast.zig</kbd>.<span.cla |
| c54c0 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d | ss="sgr-1m">doc/langref/test_com |
| c54e0 | 70 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 73 74 2e | ptime_invalid_null_pointer_cast. |
| c5500 | 7a 69 67 3a 33 3a 33 32 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | zig:3:32:.</span><span.class="sg |
| c5520 | 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 |
| c5540 | 3d 22 73 67 72 2d 31 6d 22 3e 6e 75 6c 6c 20 70 6f 69 6e 74 65 72 20 63 61 73 74 65 64 20 74 6f | ="sgr-1m">null.pointer.casted.to |
| c5560 | 20 74 79 70 65 20 27 2a 69 33 32 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 70 74 | .type.'*i32'.</span>....const.pt |
| c5580 | 72 3a 20 2a 69 33 32 20 3d 20 40 70 74 72 43 61 73 74 28 6f 70 74 5f 70 74 72 29 3b 0a 20 20 20 | r:.*i32.=.@ptrCast(opt_ptr);.... |
| c55a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | ............................<spa |
| c55c0 | 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 0a 3c 2f 73 70 61 6e | n.class="sgr-32m">^~~~~~~.</span |
| c55e0 | 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 20 | >.</samp></pre></figure>........ |
| c5600 | 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 67 75 72 65 | <p>At.runtime:</p>.......<figure |
| c5620 | 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 |
| c5640 | 74 65 20 63 6c 61 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 | te.class="file">runtime_invalid_ |
| c5660 | 6e 75 6c 6c 5f 70 6f 69 6e 74 65 72 5f 63 61 73 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 | null_pointer_cast.zig</cite></fi |
| c5680 | 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= |
| c56a0 | 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= |
| c56c0 | 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=" |
| c56e0 | 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 |
| c5700 | 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>.{.....< |
| c5720 | 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 |
| c5740 | 70 74 5f 70 74 72 3a 20 3f 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | pt_ptr:.?*<span.class="tok-type" |
| c5760 | 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 |
| c5780 | 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 26 61 6d 70 3b 6f | ull">null</span>;....._.=.&o |
| c57a0 | 70 74 5f 70 74 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 | pt_ptr;.....<span.class="tok-kw" |
| c57c0 | 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 3d | >const</span>.ptr:.*<span.class= |
| c57e0 | 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 |
| c5800 | 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 70 61 6e | ass="tok-builtin">@ptrCast</span |
| c5820 | 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 6f 64 65 | >(opt_ptr);....._.=.ptr;.}</code |
| c5840 | 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 |
| c5860 | 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 |
| c5880 | 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 |
| c58a0 | 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 6e 75 6c 6c 5f 70 6f 69 | ild-exe.runtime_invalid_null_poi |
| c58c0 | 6e 74 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 2f 72 75 6e | nter_cast.zig</kbd>.$.<kbd>./run |
| c58e0 | 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 73 74 3c 2f | time_invalid_null_pointer_cast</ |
| c5900 | 6b 62 64 3e 0a 74 68 72 65 61 64 20 33 35 37 32 37 39 31 20 70 61 6e 69 63 3a 20 63 61 73 74 20 | kbd>.thread.3572791.panic:.cast. |
| c5920 | 63 61 75 73 65 73 20 70 6f 69 6e 74 65 72 20 74 6f 20 62 65 20 6e 75 6c 6c 0a 3c 73 70 61 6e 20 | causes.pointer.to.be.null.<span. |
| c5940 | 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 73 72 63 2f 7a 69 | class="sgr-1m">/home/andy/src/zi |
| c5960 | 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 64 5f 6e 75 | g/doc/langref/runtime_invalid_nu |
| c5980 | 6c 6c 5f 70 6f 69 6e 74 65 72 5f 63 61 73 74 2e 7a 69 67 3a 34 3a 32 33 3c 2f 73 70 61 6e 3e 3a | ll_pointer_cast.zig:4:23</span>: |
| c59a0 | 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 35 30 62 63 20 | .<span.class="sgr-2m">0x10350bc. |
| c59c0 | 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 6e 75 6c 6c 5f 70 6f | in.main.(runtime_invalid_null_po |
| c59e0 | 69 6e 74 65 72 5f 63 61 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 70 74 72 | inter_cast)</span>.....const.ptr |
| c5a00 | 3a 20 2a 69 33 32 20 3d 20 40 70 74 72 43 61 73 74 28 6f 70 74 5f 70 74 72 29 3b 0a 20 20 20 20 | :.*i32.=.@ptrCast(opt_ptr);..... |
| c5a20 | 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 |
| c5a40 | 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 |
| c5a60 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 | r-1m">/home/andy/src/zig/lib/std |
| c5a80 | 2f 73 74 61 72 74 2e 7a 69 67 3a 35 31 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | /start.zig:514:22</span>:.<span. |
| c5aa0 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 34 39 32 39 20 69 6e 20 70 6f 73 69 | class="sgr-2m">0x1034929.in.posi |
| c5ac0 | 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 76 61 6c 69 | xCallMainAndExit.(runtime_invali |
| c5ae0 | 64 5f 6e 75 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 | d_null_pointer_cast)</span>..... |
| c5b00 | 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();............ |
| c5b20 | 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"> |
| c5b40 | 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 |
| c5b60 | 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a | ome/andy/src/zig/lib/std/start.z |
| c5b80 | 69 67 3a 32 36 36 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:266:5</span>:.<span.class="sg |
| c5ba0 | 72 2d 32 6d 22 3e 30 78 31 30 33 34 34 39 31 20 69 6e 20 5f 73 74 61 72 74 20 28 72 75 6e 74 69 | r-2m">0x1034491.in._start.(runti |
| c5bc0 | 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 73 | me_invalid_null_pointer_cast)</s |
| c5be0 | 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 |
| c5c00 | 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 |
| c5c20 | 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 |
| c5c40 | 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 |
| c5c60 | 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 |
| c5c80 | 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 |
| c5ca0 | 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>........ |
| c5cc0 | 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 4d 65 6d 6f 72 79 22 3e 3c | ...............<h2.id="Memory">< |
| c5ce0 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4d 65 6d 6f 72 79 22 3e 4d 65 6d 6f 72 79 3c 2f 61 3e 20 | a.href="#toc-Memory">Memory</a>. |
| c5d00 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4d 65 6d 6f 72 79 22 3e c2 a7 | <a.class="hdr".href="#Memory">.. |
| c5d20 | 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 5a | </a></h2>........<p>.......The.Z |
| c5d40 | 69 67 20 6c 61 6e 67 75 61 67 65 20 70 65 72 66 6f 72 6d 73 20 6e 6f 20 6d 65 6d 6f 72 79 20 6d | ig.language.performs.no.memory.m |
| c5d60 | 61 6e 61 67 65 6d 65 6e 74 20 6f 6e 20 62 65 68 61 6c 66 20 6f 66 20 74 68 65 20 70 72 6f 67 72 | anagement.on.behalf.of.the.progr |
| c5d80 | 61 6d 6d 65 72 2e 20 54 68 69 73 20 69 73 0a 20 20 20 20 20 20 77 68 79 20 5a 69 67 20 68 61 73 | ammer..This.is.......why.Zig.has |
| c5da0 | 20 6e 6f 20 72 75 6e 74 69 6d 65 2c 20 61 6e 64 20 77 68 79 20 5a 69 67 20 63 6f 64 65 20 77 6f | .no.runtime,.and.why.Zig.code.wo |
| c5dc0 | 72 6b 73 20 73 65 61 6d 6c 65 73 73 6c 79 20 69 6e 20 73 6f 20 6d 61 6e 79 20 65 6e 76 69 72 6f | rks.seamlessly.in.so.many.enviro |
| c5de0 | 6e 6d 65 6e 74 73 2c 0a 20 20 20 20 20 20 69 6e 63 6c 75 64 69 6e 67 20 72 65 61 6c 2d 74 69 6d | nments,.......including.real-tim |
| c5e00 | 65 20 73 6f 66 74 77 61 72 65 2c 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 20 6b 65 72 | e.software,.operating.system.ker |
| c5e20 | 6e 65 6c 73 2c 20 65 6d 62 65 64 64 65 64 20 64 65 76 69 63 65 73 2c 20 61 6e 64 0a 20 20 20 20 | nels,.embedded.devices,.and..... |
| c5e40 | 20 20 6c 6f 77 20 6c 61 74 65 6e 63 79 20 73 65 72 76 65 72 73 2e 20 41 73 20 61 20 63 6f 6e 73 | ..low.latency.servers..As.a.cons |
| c5e60 | 65 71 75 65 6e 63 65 2c 20 5a 69 67 20 70 72 6f 67 72 61 6d 6d 65 72 73 20 6d 75 73 74 20 61 6c | equence,.Zig.programmers.must.al |
| c5e80 | 77 61 79 73 20 62 65 20 61 62 6c 65 20 74 6f 20 61 6e 73 77 65 72 0a 20 20 20 20 20 20 74 68 65 | ways.be.able.to.answer.......the |
| c5ea0 | 20 71 75 65 73 74 69 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c | .question:.......</p>.......<p>< |
| c5ec0 | 61 20 68 72 65 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 | a.href="#Where-are-the-bytes">Wh |
| c5ee0 | 65 72 65 20 61 72 65 20 74 68 65 20 62 79 74 65 73 3f 3c 2f 61 3e 3c 2f 70 3e 0a 20 20 20 20 20 | ere.are.the.bytes?</a></p>...... |
| c5f00 | 20 3c 70 3e 0a 20 20 20 20 20 20 4c 69 6b 65 20 5a 69 67 2c 20 74 68 65 20 43 20 70 72 6f 67 72 | .<p>.......Like.Zig,.the.C.progr |
| c5f20 | 61 6d 6d 69 6e 67 20 6c 61 6e 67 75 61 67 65 20 68 61 73 20 6d 61 6e 75 61 6c 20 6d 65 6d 6f 72 | amming.language.has.manual.memor |
| c5f40 | 79 20 6d 61 6e 61 67 65 6d 65 6e 74 2e 20 48 6f 77 65 76 65 72 2c 20 75 6e 6c 69 6b 65 20 5a 69 | y.management..However,.unlike.Zi |
| c5f60 | 67 2c 0a 20 20 20 20 20 20 43 20 68 61 73 20 61 20 64 65 66 61 75 6c 74 20 61 6c 6c 6f 63 61 74 | g,.......C.has.a.default.allocat |
| c5f80 | 6f 72 20 2d 20 3c 63 6f 64 65 3e 6d 61 6c 6c 6f 63 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e | or.-.<code>malloc</code>,.<code> |
| c5fa0 | 72 65 61 6c 6c 6f 63 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 3c 63 6f 64 65 3e 66 72 65 65 3c 2f | realloc</code>,.and.<code>free</ |
| c5fc0 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 57 68 65 6e 20 6c 69 6e 6b 69 6e 67 20 61 67 61 69 6e 73 | code>........When.linking.agains |
| c5fe0 | 74 20 6c 69 62 63 2c 20 5a 69 67 20 65 78 70 6f 73 65 73 20 74 68 69 73 20 61 6c 6c 6f 63 61 74 | t.libc,.Zig.exposes.this.allocat |
| c6000 | 6f 72 20 77 69 74 68 20 3c 63 6f 64 65 3e 73 74 64 2e 68 65 61 70 2e 63 5f 61 6c 6c 6f 63 61 74 | or.with.<code>std.heap.c_allocat |
| c6020 | 6f 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 62 79 20 63 6f 6e | or</code>........However,.by.con |
| c6040 | 76 65 6e 74 69 6f 6e 2c 20 74 68 65 72 65 20 69 73 20 6e 6f 20 64 65 66 61 75 6c 74 20 61 6c 6c | vention,.there.is.no.default.all |
| c6060 | 6f 63 61 74 6f 72 20 69 6e 20 5a 69 67 2e 20 49 6e 73 74 65 61 64 2c 20 66 75 6e 63 74 69 6f 6e | ocator.in.Zig..Instead,.function |
| c6080 | 73 20 77 68 69 63 68 20 6e 65 65 64 20 74 6f 0a 20 20 20 20 20 20 61 6c 6c 6f 63 61 74 65 20 61 | s.which.need.to.......allocate.a |
| c60a0 | 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 3e 20 | ccept.an.<code>Allocator</code>. |
| c60c0 | 70 61 72 61 6d 65 74 65 72 2e 20 4c 69 6b 65 77 69 73 65 2c 20 64 61 74 61 20 73 74 72 75 63 74 | parameter..Likewise,.data.struct |
| c60e0 | 75 72 65 73 20 73 75 63 68 20 61 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 2e 41 72 72 | ures.such.as.......<code>std.Arr |
| c6100 | 61 79 4c 69 73 74 3c 2f 63 6f 64 65 3e 20 61 63 63 65 70 74 20 61 6e 20 3c 63 6f 64 65 3e 41 6c | ayList</code>.accept.an.<code>Al |
| c6120 | 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 20 70 61 72 61 6d 65 74 65 72 20 69 6e 0a 20 20 20 20 | locator</code>.parameter.in..... |
| c6140 | 20 20 74 68 65 69 72 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 66 75 6e 63 74 69 6f 6e 73 | ..their.initialization.functions |
| c6160 | 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 |
| c6180 | 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 |
| c61a0 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 61 6c 6c 6f 63 61 74 6f 72 2e 7a 69 67 3c 2f 63 69 | ss="file">test_allocator.zig</ci |
| c61c0 | 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 |
| c61e0 | 20 63 6c 61 73 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 |
| c6200 | 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 |
| c6220 | 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 |
| c6240 | 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 |
| c6260 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 6c 6c | .class="tok-kw">const</span>.All |
| c6280 | 6f 63 61 74 6f 72 20 3d 20 73 74 64 2e 6d 65 6d 2e 41 6c 6c 6f 63 61 74 6f 72 3b 0a 3c 73 70 61 | ocator.=.std.mem.Allocator;.<spa |
| c62a0 | 6e 20 63 6c 61 73 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 |
| c62c0 | 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 |
| c62e0 | 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 |
| c6300 | 61 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 73 69 6e 67 20 61 | an.class="tok-str">"using.a |
| c6320 | 6e 20 61 6c 6c 6f 63 61 74 6f 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | n.allocator"</span>.{.....< |
| c6340 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 | span.class="tok-kw">var</span>.b |
| c6360 | 75 66 66 65 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 | uffer:.[<span.class="tok-number" |
| c6380 | 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 74 6f 6b 2d 74 79 70 | >100</span>]<span.class="tok-typ |
| c63a0 | 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- |
| c63c0 | 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 | null">undefined</span>;.....<spa |
| c63e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 62 61 20 | n.class="tok-kw">var</span>.fba. |
| c6400 | 3d 20 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 2e | =.std.heap.FixedBufferAllocator. |
| c6420 | 69 6e 69 74 28 26 61 6d 70 3b 62 75 66 66 65 72 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | init(&buffer);.....<span.cla |
| c6440 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 | ss="tok-kw">const</span>.allocat |
| c6460 | 6f 72 20 3d 20 66 62 61 2e 61 6c 6c 6f 63 61 74 6f 72 28 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | or.=.fba.allocator();.....<span. |
| c6480 | 63 6c 61 73 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 |
| c64a0 | 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 | lt.=.<span.class="tok-kw">try</s |
| c64c0 | 70 61 6e 3e 20 63 6f 6e 63 61 74 28 61 6c 6c 6f 63 61 74 6f 72 2c 20 3c 73 70 61 6e 20 63 6c 61 | pan>.concat(allocator,.<span.cla |
| c64e0 | 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 74 3b 3c 2f 73 70 | ss="tok-str">"foo"</sp |
| c6500 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | an>,.<span.class="tok-str">" |
| c6520 | 3b 62 61 72 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 | ;bar"</span>);.....<span.cl |
| c6540 | 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 |
| c6560 | 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 65 | td.mem.eql(<span.class="tok-type |
| c6580 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | ">u8</span>,.<span.class="tok-st |
| c65a0 | 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 2c 20 72 65 | r">"foobar"</span>,.re |
| c65c0 | 73 75 6c 74 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 | sult));.}..<span.class="tok-kw"> |
| c65e0 | 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 63 | fn</span>.<span.class="tok-fn">c |
| c6600 | 6f 6e 63 61 74 3c 2f 73 70 61 6e 3e 28 61 6c 6c 6f 63 61 74 6f 72 3a 20 41 6c 6c 6f 63 61 74 6f | oncat</span>(allocator:.Allocato |
| c6620 | 72 2c 20 61 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 | r,.a:.[]<span.class="tok-kw">con |
| c6640 | 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" |
| c6660 | 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >u8</span>,.b:.[]<span.class="to |
| c6680 | 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=" |
| c66a0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 5b 5d 3c 73 70 61 6e 20 63 6c | tok-type">u8</span>).![]<span.cl |
| c66c0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | ass="tok-type">u8</span>.{.....< |
| c66e0 | 73 70 61 6e 20 63 6c 61 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> |
| c6700 | 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | .result.=.<span.class="tok-kw">t |
| c6720 | 72 79 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 61 6c 6c 6f 63 28 3c 73 70 61 6e 20 | ry</span>.allocator.alloc(<span. |
| c6740 | 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 2e 6c 65 | class="tok-type">u8</span>,.a.le |
| c6760 | 6e 20 2b 20 62 2e 6c 65 6e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n.+.b.len);.....<span.class="tok |
| c6780 | 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 65 6d 63 70 79 3c 2f 73 70 61 6e 3e 28 72 65 73 75 6c 74 5b | -builtin">@memcpy</span>(result[ |
| c67a0 | 3c 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 |
| c67c0 | 3e 2e 2e 61 2e 6c 65 6e 5d 2c 20 61 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >..a.len],.a);.....<span.class=" |
| c67e0 | 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 3e 28 72 65 73 75 | tok-builtin">@memcpy</span>(resu |
| c6800 | 6c 74 5b 61 2e 6c 65 6e 2e 2e 5d 2c 20 62 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | lt[a.len..],.b);.....<span.class |
| c6820 | 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;. |
| c6840 | 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>< |
| c6860 | 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 |
| c6880 | 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 |
| c68a0 | 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 61 6c 6c 6f 63 61 74 6f 72 2e 7a 69 67 3c 2f 6b 62 | >zig.test.test_allocator.zig</kb |
| c68c0 | 64 3e 0a 31 2f 31 20 74 65 73 74 5f 61 6c 6c 6f 63 61 74 6f 72 2e 74 65 73 74 2e 75 73 69 6e 67 | d>.1/1.test_allocator.test.using |
| c68e0 | 20 61 6e 20 61 6c 6c 6f 63 61 74 6f 72 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 | .an.allocator...OK.All.1.tests.p |
| c6900 | 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>... |
| c6920 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 65 20 61 62 6f 76 65 20 65 78 61 6d | .....<p>.......In.the.above.exam |
| c6940 | 70 6c 65 2c 20 31 30 30 20 62 79 74 65 73 20 6f 66 20 73 74 61 63 6b 20 6d 65 6d 6f 72 79 20 61 | ple,.100.bytes.of.stack.memory.a |
| c6960 | 72 65 20 75 73 65 64 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 61 0a 20 20 20 20 20 20 3c 63 | re.used.to.initialize.a.......<c |
| c6980 | 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 65 3e 2c | ode>FixedBufferAllocator</code>, |
| c69a0 | 20 77 68 69 63 68 20 69 73 20 74 68 65 6e 20 70 61 73 73 65 64 20 74 6f 20 61 20 66 75 6e 63 74 | .which.is.then.passed.to.a.funct |
| c69c0 | 69 6f 6e 2e 0a 20 20 20 20 20 20 41 73 20 61 20 63 6f 6e 76 65 6e 69 65 6e 63 65 20 74 68 65 72 | ion........As.a.convenience.ther |
| c69e0 | 65 20 69 73 20 61 20 67 6c 6f 62 61 6c 20 3c 63 6f 64 65 3e 46 69 78 65 64 42 75 66 66 65 72 41 | e.is.a.global.<code>FixedBufferA |
| c6a00 | 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 61 76 61 69 6c 61 62 6c 65 20 | llocator</code>.......available. |
| c6a20 | 66 6f 72 20 71 75 69 63 6b 20 74 65 73 74 73 20 61 74 20 3c 63 6f 64 65 3e 73 74 64 2e 74 65 73 | for.quick.tests.at.<code>std.tes |
| c6a40 | 74 69 6e 67 2e 61 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 77 68 69 | ting.allocator</code>,.......whi |
| c6a60 | 63 68 20 77 69 6c 6c 20 61 6c 73 6f 20 70 65 72 66 6f 72 6d 20 62 61 73 69 63 20 6c 65 61 6b 20 | ch.will.also.perform.basic.leak. |
| c6a80 | 64 65 74 65 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | detection........</p>.......<p>. |
| c6aa0 | 20 20 20 20 20 20 5a 69 67 20 68 61 73 20 61 20 67 65 6e 65 72 61 6c 20 70 75 72 70 6f 73 65 20 | ......Zig.has.a.general.purpose. |
| c6ac0 | 61 6c 6c 6f 63 61 74 6f 72 20 61 76 61 69 6c 61 62 6c 65 20 74 6f 20 62 65 20 69 6d 70 6f 72 74 | allocator.available.to.be.import |
| c6ae0 | 65 64 0a 20 20 20 20 20 20 77 69 74 68 20 3c 63 6f 64 65 3e 73 74 64 2e 68 65 61 70 2e 47 65 6e | ed.......with.<code>std.heap.Gen |
| c6b00 | 65 72 61 6c 50 75 72 70 6f 73 65 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 20 48 6f 77 | eralPurposeAllocator</code>..How |
| c6b20 | 65 76 65 72 2c 20 69 74 20 69 73 20 73 74 69 6c 6c 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f | ever,.it.is.still.recommended.to |
| c6b40 | 0a 20 20 20 20 20 20 66 6f 6c 6c 6f 77 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 43 68 6f 6f | .......follow.the.<a.href="#Choo |
| c6b60 | 73 69 6e 67 2d 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 | sing-an-Allocator">Choosing.an.A |
| c6b80 | 6c 6c 6f 63 61 74 6f 72 3c 2f 61 3e 20 67 75 69 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a | llocator</a>.guide........</p>.. |
| c6ba0 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 68 6f 6f 73 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 | ......<h3.id="Choosing-an-Alloca |
| c6bc0 | 74 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 68 6f 6f 73 69 6e 67 2d 61 6e 2d 41 | tor"><a.href="#toc-Choosing-an-A |
| c6be0 | 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 74 6f 72 3c | llocator">Choosing.an.Allocator< |
| c6c00 | 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 68 6f 6f 73 69 | /a>.<a.class="hdr".href="#Choosi |
| c6c20 | 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | ng-an-Allocator">..</a></h3>.... |
| c6c40 | 20 20 20 20 3c 70 3e 57 68 61 74 20 61 6c 6c 6f 63 61 74 6f 72 20 74 6f 20 75 73 65 20 64 65 70 | ....<p>What.allocator.to.use.dep |
| c6c60 | 65 6e 64 73 20 6f 6e 20 61 20 6e 75 6d 62 65 72 20 6f 66 20 66 61 63 74 6f 72 73 2e 20 48 65 72 | ends.on.a.number.of.factors..Her |
| c6c80 | 65 20 69 73 20 61 20 66 6c 6f 77 20 63 68 61 72 74 20 74 6f 20 68 65 6c 70 20 79 6f 75 20 64 65 | e.is.a.flow.chart.to.help.you.de |
| c6ca0 | 63 69 64 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 6f 6c 3e 0a 20 20 20 20 | cide:.......</p>.......<ol>..... |
| c6cc0 | 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 72 65 20 79 6f 75 | ......<li>...............Are.you |
| c6ce0 | 20 6d 61 6b 69 6e 67 20 61 20 6c 69 62 72 61 72 79 3f 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c | .making.a.library?.In.this.case, |
| c6d00 | 20 62 65 73 74 20 74 6f 20 61 63 63 65 70 74 20 61 6e 20 3c 63 6f 64 65 3e 41 6c 6c 6f 63 61 74 | .best.to.accept.an.<code>Allocat |
| c6d20 | 6f 72 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 73 20 61 20 70 61 72 | or</code>...............as.a.par |
| c6d40 | 61 6d 65 74 65 72 20 61 6e 64 20 61 6c 6c 6f 77 20 79 6f 75 72 20 6c 69 62 72 61 72 79 27 73 20 | ameter.and.allow.your.library's. |
| c6d60 | 75 73 65 72 73 20 74 6f 20 64 65 63 69 64 65 20 77 68 61 74 20 61 6c 6c 6f 63 61 74 6f 72 20 74 | users.to.decide.what.allocator.t |
| c6d80 | 6f 20 75 73 65 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | o.use............</li>.......... |
| c6da0 | 20 3c 6c 69 3e 41 72 65 20 79 6f 75 20 6c 69 6e 6b 69 6e 67 20 6c 69 62 63 3f 20 49 6e 20 74 68 | .<li>Are.you.linking.libc?.In.th |
| c6dc0 | 69 73 20 63 61 73 65 2c 20 3c 63 6f 64 65 3e 73 74 64 2e 68 65 61 70 2e 63 5f 61 6c 6c 6f 63 61 | is.case,.<code>std.heap.c_alloca |
| c6de0 | 74 6f 72 3c 2f 63 6f 64 65 3e 20 69 73 20 6c 69 6b 65 6c 79 0a 20 20 20 20 20 20 20 20 20 20 20 | tor</code>.is.likely............ |
| c6e00 | 20 20 20 74 68 65 20 72 69 67 68 74 20 63 68 6f 69 63 65 2c 20 61 74 20 6c 65 61 73 74 20 66 6f | ...the.right.choice,.at.least.fo |
| c6e20 | 72 20 79 6f 75 72 20 6d 61 69 6e 20 61 6c 6c 6f 63 61 74 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 | r.your.main.allocator.</li>..... |
| c6e40 | 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 49 73 20 74 68 65 20 | ......<li>...............Is.the. |
| c6e60 | 6d 61 78 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 74 68 61 74 20 79 6f 75 | maximum.number.of.bytes.that.you |
| c6e80 | 20 77 69 6c 6c 20 6e 65 65 64 20 62 6f 75 6e 64 65 64 20 62 79 20 61 20 6e 75 6d 62 65 72 20 6b | .will.need.bounded.by.a.number.k |
| c6ea0 | 6e 6f 77 6e 20 61 74 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 | nown.at...............<a.href="# |
| c6ec0 | 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 3f 20 49 6e 20 74 68 69 73 20 | comptime">comptime</a>?.In.this. |
| c6ee0 | 63 61 73 65 2c 20 75 73 65 20 3c 63 6f 64 65 3e 73 74 64 2e 68 65 61 70 2e 46 69 78 65 64 42 75 | case,.use.<code>std.heap.FixedBu |
| c6f00 | 66 66 65 72 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 20 6f 72 0a 20 20 20 20 20 20 20 20 | fferAllocator</code>.or......... |
| c6f20 | 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 2e 68 65 61 70 2e 54 68 72 65 61 64 53 61 66 65 46 | ......<code>std.heap.ThreadSafeF |
| c6f40 | 69 78 65 64 42 75 66 66 65 72 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 20 64 65 70 65 6e | ixedBufferAllocator</code>.depen |
| c6f60 | 64 69 6e 67 20 6f 6e 20 77 68 65 74 68 65 72 20 79 6f 75 20 6e 65 65 64 0a 20 20 20 20 20 20 20 | ding.on.whether.you.need........ |
| c6f80 | 20 20 20 20 20 20 20 74 68 72 65 61 64 2d 73 61 66 65 74 79 20 6f 72 20 6e 6f 74 2e 0a 20 20 20 | .......thread-safety.or.not..... |
| c6fa0 | 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 20 | .......</li>...........<li>..... |
| c6fc0 | 20 20 20 20 20 20 20 20 20 20 49 73 20 79 6f 75 72 20 70 72 6f 67 72 61 6d 20 61 20 63 6f 6d 6d | ..........Is.your.program.a.comm |
| c6fe0 | 61 6e 64 20 6c 69 6e 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 77 68 69 63 68 20 72 75 6e 73 20 | and.line.application.which.runs. |
| c7000 | 66 72 6f 6d 20 73 74 61 72 74 20 74 6f 20 65 6e 64 20 77 69 74 68 6f 75 74 20 61 6e 79 20 66 75 | from.start.to.end.without.any.fu |
| c7020 | 6e 64 61 6d 65 6e 74 61 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 79 63 6c 69 63 61 6c | ndamental...............cyclical |
| c7040 | 20 70 61 74 74 65 72 6e 20 28 73 75 63 68 20 61 73 20 61 20 76 69 64 65 6f 20 67 61 6d 65 20 6d | .pattern.(such.as.a.video.game.m |
| c7060 | 61 69 6e 20 6c 6f 6f 70 2c 20 6f 72 20 61 20 77 65 62 20 73 65 72 76 65 72 20 72 65 71 75 65 73 | ain.loop,.or.a.web.server.reques |
| c7080 | 74 20 68 61 6e 64 6c 65 72 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 75 63 68 20 74 | t.handler),...............such.t |
| c70a0 | 68 61 74 20 69 74 20 77 6f 75 6c 64 20 6d 61 6b 65 20 73 65 6e 73 65 20 74 6f 20 66 72 65 65 20 | hat.it.would.make.sense.to.free. |
| c70c0 | 65 76 65 72 79 74 68 69 6e 67 20 61 74 20 6f 6e 63 65 20 61 74 20 74 68 65 20 65 6e 64 3f 0a 20 | everything.at.once.at.the.end?.. |
| c70e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 69 74 20 69 73 | .............In.this.case,.it.is |
| c7100 | 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 66 6f 6c 6c 6f 77 20 74 68 69 73 20 70 61 74 74 | .recommended.to.follow.this.patt |
| c7120 | 65 72 6e 3a 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 | ern:.......<figure><figcaption.c |
| c7140 | 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 |
| c7160 | 22 3e 63 6c 69 5f 61 6c 6c 6f 63 61 74 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | ">cli_allocation.zig</cite></fig |
| c7180 | 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=" |
| c71a0 | 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 |
| c71c0 | 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 |
| c71e0 | 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">" |
| c7200 | 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= |
| c7220 | 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= |
| c7240 | 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=" |
| c7260 | 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 | tok-fn">main</span>().!<span.cla |
| c7280 | 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>.{..... |
| c72a0 | 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>. |
| c72c0 | 61 72 65 6e 61 20 3d 20 73 74 64 2e 68 65 61 70 2e 41 72 65 6e 61 41 6c 6c 6f 63 61 74 6f 72 2e | arena.=.std.heap.ArenaAllocator. |
| c72e0 | 69 6e 69 74 28 73 74 64 2e 68 65 61 70 2e 70 61 67 65 5f 61 6c 6c 6f 63 61 74 6f 72 29 3b 0a 20 | init(std.heap.page_allocator);.. |
| c7300 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 | ...<span.class="tok-kw">defer</s |
| c7320 | 70 61 6e 3e 20 61 72 65 6e 61 2e 64 65 69 6e 69 74 28 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | pan>.arena.deinit();......<span. |
| c7340 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f | class="tok-kw">const</span>.allo |
| c7360 | 63 61 74 6f 72 20 3d 20 61 72 65 6e 61 2e 61 6c 6c 6f 63 61 74 6f 72 28 29 3b 0a 0a 20 20 20 20 | cator.=.arena.allocator();...... |
| c7380 | 3c 73 70 61 6e 20 63 6c 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 |
| c73a0 | 3e 20 70 74 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 | >.ptr.=.<span.class="tok-kw">try |
| c73c0 | 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 63 72 65 61 74 65 28 3c 73 70 61 6e 20 63 | </span>.allocator.create(<span.c |
| c73e0 | 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 20 | lass="tok-type">i32</span>);.... |
| c7400 | 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 |
| c7420 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 74 72 3d 7b 2a 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 | k-str">"ptr={*}\n"</sp |
| c7440 | 61 6e 3e 2c 20 2e 7b 70 74 72 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | an>,..{ptr});.}</code></pre></fi |
| c7460 | 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=" |
| c7480 | 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 |
| c74a0 | 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 63 6c 69 | e><samp>$.<kbd>zig.build-exe.cli |
| c74c0 | 5f 61 6c 6c 6f 63 61 74 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 63 | _allocation.zig</kbd>.$.<kbd>./c |
| c74e0 | 6c 69 5f 61 6c 6c 6f 63 61 74 69 6f 6e 3c 2f 6b 62 64 3e 0a 70 74 72 3d 69 33 32 40 37 66 39 38 | li_allocation</kbd>.ptr=i32@7f98 |
| c7500 | 39 65 65 38 65 30 31 30 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a | 9ee8e010.</samp></pre></figure>. |
| c7520 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 57 68 65 6e 20 75 73 69 6e 67 20 74 68 69 73 20 6b | ...............When.using.this.k |
| c7540 | 69 6e 64 20 6f 66 20 61 6c 6c 6f 63 61 74 6f 72 2c 20 74 68 65 72 65 20 69 73 20 6e 6f 20 6e 65 | ind.of.allocator,.there.is.no.ne |
| c7560 | 65 64 20 74 6f 20 66 72 65 65 20 61 6e 79 74 68 69 6e 67 20 6d 61 6e 75 61 6c 6c 79 2e 20 45 76 | ed.to.free.anything.manually..Ev |
| c7580 | 65 72 79 74 68 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 67 65 74 73 20 66 72 65 65 | erything...............gets.free |
| c75a0 | 64 20 61 74 20 6f 6e 63 65 20 77 69 74 68 20 74 68 65 20 63 61 6c 6c 20 74 6f 20 3c 63 6f 64 65 | d.at.once.with.the.call.to.<code |
| c75c0 | 3e 61 72 65 6e 61 2e 64 65 69 6e 69 74 28 29 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 | >arena.deinit()</code>.......... |
| c75e0 | 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ..</li>...........<li>.......... |
| c7600 | 20 20 20 20 20 41 72 65 20 74 68 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 73 20 70 61 72 74 20 6f 66 | .....Are.the.allocations.part.of |
| c7620 | 20 61 20 63 79 63 6c 69 63 61 6c 20 70 61 74 74 65 72 6e 20 73 75 63 68 20 61 73 20 61 20 76 69 | .a.cyclical.pattern.such.as.a.vi |
| c7640 | 64 65 6f 20 67 61 6d 65 20 6d 61 69 6e 20 6c 6f 6f 70 2c 20 6f 72 20 61 20 77 65 62 0a 20 20 20 | deo.game.main.loop,.or.a.web.... |
| c7660 | 20 20 20 20 20 20 20 20 20 20 20 73 65 72 76 65 72 20 72 65 71 75 65 73 74 20 68 61 6e 64 6c 65 | ...........server.request.handle |
| c7680 | 72 3f 20 49 66 20 74 68 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 73 20 63 61 6e 20 61 6c 6c 20 62 65 | r?.If.the.allocations.can.all.be |
| c76a0 | 20 66 72 65 65 64 20 61 74 20 6f 6e 63 65 2c 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 | .freed.at.once,.at.the.end.of.th |
| c76c0 | 65 20 63 79 63 6c 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 65 78 61 6d 70 | e.cycle,...............for.examp |
| c76e0 | 6c 65 20 6f 6e 63 65 20 74 68 65 20 76 69 64 65 6f 20 67 61 6d 65 20 66 72 61 6d 65 20 68 61 73 | le.once.the.video.game.frame.has |
| c7700 | 20 62 65 65 6e 20 66 75 6c 6c 79 20 72 65 6e 64 65 72 65 64 2c 20 6f 72 20 74 68 65 20 77 65 62 | .been.fully.rendered,.or.the.web |
| c7720 | 20 73 65 72 76 65 72 20 72 65 71 75 65 73 74 20 68 61 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .server.request.has............. |
| c7740 | 20 20 62 65 65 6e 20 73 65 72 76 65 64 2c 20 74 68 65 6e 20 3c 63 6f 64 65 3e 73 74 64 2e 68 65 | ..been.served,.then.<code>std.he |
| c7760 | 61 70 2e 41 72 65 6e 61 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 67 72 | ap.ArenaAllocator</code>.is.a.gr |
| c7780 | 65 61 74 20 63 61 6e 64 69 64 61 74 65 2e 20 41 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | eat.candidate..As............... |
| c77a0 | 64 65 6d 6f 6e 73 74 72 61 74 65 64 20 69 6e 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 62 75 6c | demonstrated.in.the.previous.bul |
| c77c0 | 6c 65 74 20 70 6f 69 6e 74 2c 20 74 68 69 73 20 61 6c 6c 6f 77 73 20 79 6f 75 20 74 6f 20 66 72 | let.point,.this.allows.you.to.fr |
| c77e0 | 65 65 20 65 6e 74 69 72 65 20 61 72 65 6e 61 73 20 61 74 20 6f 6e 63 65 2e 0a 20 20 20 20 20 20 | ee.entire.arenas.at.once........ |
| c7800 | 20 20 20 20 20 20 20 20 4e 6f 74 65 20 61 6c 73 6f 20 74 68 61 74 20 69 66 20 61 6e 20 75 70 70 | ........Note.also.that.if.an.upp |
| c7820 | 65 72 20 62 6f 75 6e 64 20 6f 66 20 6d 65 6d 6f 72 79 20 63 61 6e 20 62 65 20 65 73 74 61 62 6c | er.bound.of.memory.can.be.establ |
| c7840 | 69 73 68 65 64 2c 20 74 68 65 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e | ished,.then...............<code> |
| c7860 | 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 2f 63 | std.heap.FixedBufferAllocator</c |
| c7880 | 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 61 73 20 61 20 66 75 72 74 68 65 72 20 6f 70 | ode>.can.be.used.as.a.further.op |
| c78a0 | 74 69 6d 69 7a 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 | timization............</li>..... |
| c78c0 | 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 72 65 20 79 6f 75 | ......<li>...............Are.you |
| c78e0 | 20 77 72 69 74 69 6e 67 20 61 20 74 65 73 74 2c 20 61 6e 64 20 79 6f 75 20 77 61 6e 74 20 74 6f | .writing.a.test,.and.you.want.to |
| c7900 | 20 6d 61 6b 65 20 73 75 72 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .make.sure.<code><span.class="to |
| c7920 | 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 3c 2f | k-kw">error</span>.OutOfMemory</ |
| c7940 | 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 73 20 68 61 6e 64 6c 65 64 20 63 | code>...............is.handled.c |
| c7960 | 6f 72 72 65 63 74 6c 79 3f 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 75 73 65 20 3c 63 6f 64 | orrectly?.In.this.case,.use.<cod |
| c7980 | 65 3e 73 74 64 2e 74 65 73 74 69 6e 67 2e 46 61 69 6c 69 6e 67 41 6c 6c 6f 63 61 74 6f 72 3c 2f | e>std.testing.FailingAllocator</ |
| c79a0 | 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 20 | code>............</li>.......... |
| c79c0 | 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 65 20 79 6f 75 20 77 72 69 74 | .<li>...............Are.you.writ |
| c79e0 | 69 6e 67 20 61 20 74 65 73 74 3f 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 75 73 65 20 3c 63 | ing.a.test?.In.this.case,.use.<c |
| c7a00 | 6f 64 65 3e 73 74 64 2e 74 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e | ode>std.testing.allocator</code> |
| c7a20 | 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 3e | ............</li>...........<li> |
| c7a40 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46 69 6e 61 6c 6c 79 2c 20 69 66 20 6e 6f 6e 65 20 | ...............Finally,.if.none. |
| c7a60 | 6f 66 20 74 68 65 20 61 62 6f 76 65 20 61 70 70 6c 79 2c 20 79 6f 75 20 6e 65 65 64 20 61 20 67 | of.the.above.apply,.you.need.a.g |
| c7a80 | 65 6e 65 72 61 6c 20 70 75 72 70 6f 73 65 20 61 6c 6c 6f 63 61 74 6f 72 2e 0a 20 20 20 20 20 20 | eneral.purpose.allocator........ |
| c7aa0 | 20 20 20 20 20 20 20 20 5a 69 67 27 73 20 67 65 6e 65 72 61 6c 20 70 75 72 70 6f 73 65 20 61 6c | ........Zig's.general.purpose.al |
| c7ac0 | 6c 6f 63 61 74 6f 72 20 69 73 20 61 76 61 69 6c 61 62 6c 65 20 61 73 20 61 20 66 75 6e 63 74 69 | locator.is.available.as.a.functi |
| c7ae0 | 6f 6e 20 74 68 61 74 20 74 61 6b 65 73 20 61 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 | on.that.takes.a.<a.href="#compti |
| c7b00 | 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | me">comptime</a>...............< |
| c7b20 | 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 6f 66 20 63 | a.href="#struct">struct</a>.of.c |
| c7b40 | 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 61 6e 64 20 72 65 74 75 72 6e 73 | onfiguration.options.and.returns |
| c7b60 | 20 61 20 74 79 70 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 65 6e 65 72 61 6c 6c 79 | .a.type................Generally |
| c7b80 | 2c 20 79 6f 75 20 77 69 6c 6c 20 73 65 74 20 75 70 20 6f 6e 65 20 3c 63 6f 64 65 3e 73 74 64 2e | ,.you.will.set.up.one.<code>std. |
| c7ba0 | 68 65 61 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 3c 2f 63 6f | heap.GeneralPurposeAllocator</co |
| c7bc0 | 64 65 3e 20 69 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 79 6f 75 72 20 6d 61 69 6e 20 66 | de>.in...............your.main.f |
| c7be0 | 75 6e 63 74 69 6f 6e 2c 20 61 6e 64 20 74 68 65 6e 20 70 61 73 73 20 69 74 20 6f 72 20 73 75 62 | unction,.and.then.pass.it.or.sub |
| c7c00 | 2d 61 6c 6c 6f 63 61 74 6f 72 73 20 61 72 6f 75 6e 64 20 74 6f 20 76 61 72 69 6f 75 73 20 70 61 | -allocators.around.to.various.pa |
| c7c20 | 72 74 73 20 6f 66 20 79 6f 75 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 70 70 6c 69 63 | rts.of.your...............applic |
| c7c40 | 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ation............</li>.......... |
| c7c60 | 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 61 6c 73 6f | .<li>...............You.can.also |
| c7c80 | 20 63 6f 6e 73 69 64 65 72 20 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 | .consider.<a.href="#Implementing |
| c7ca0 | 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 |
| c7cc0 | 6c 6c 6f 63 61 74 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 | llocator</a>............</li>... |
| c7ce0 | 20 20 20 20 3c 2f 6f 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 | ....</ol>...............<h3.id=" |
| c7d00 | 57 68 65 72 65 2d 61 72 65 2d 74 68 65 2d 62 79 74 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | Where-are-the-bytes"><a.href="#t |
| c7d20 | 6f 63 2d 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 72 | oc-Where-are-the-bytes">Where.ar |
| c7d40 | 65 20 74 68 65 20 62 79 74 65 73 3f 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | e.the.bytes?</a>.<a.class="hdr". |
| c7d60 | 68 72 65 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 c2 a7 3c 2f | href="#Where-are-the-bytes">..</ |
| c7d80 | 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 74 72 69 6e 67 20 6c 69 74 65 72 61 6c | a></h3>........<p>String.literal |
| c7da0 | 73 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | s.such.as.<code><span.class="tok |
| c7dc0 | 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 3c 2f | -str">"hello"</span></ |
| c7de0 | 63 6f 64 65 3e 20 61 72 65 20 69 6e 20 74 68 65 20 67 6c 6f 62 61 6c 20 63 6f 6e 73 74 61 6e 74 | code>.are.in.the.global.constant |
| c7e00 | 20 64 61 74 61 20 73 65 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 77 68 79 | .data.section........This.is.why |
| c7e20 | 20 69 74 20 69 73 20 61 6e 20 65 72 72 6f 72 20 74 6f 20 70 61 73 73 20 61 20 73 74 72 69 6e 67 | .it.is.an.error.to.pass.a.string |
| c7e40 | 20 6c 69 74 65 72 61 6c 20 74 6f 20 61 20 6d 75 74 61 62 6c 65 20 73 6c 69 63 65 2c 20 6c 69 6b | .literal.to.a.mutable.slice,.lik |
| c7e60 | 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 65 | e.this:.......</p>.......<figure |
| c7e80 | 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 |
| c7ea0 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 74 72 69 6e 67 5f 6c 69 74 65 | te.class="file">test_string_lite |
| c7ec0 | 72 61 6c 5f 74 6f 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 74 | ral_to_slice.zig</cite></figcapt |
| c7ee0 | 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- |
| c7f00 | 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 |
| c7f20 | 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 73 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n">foo</span>(s:.[]<span.class=" |
| c7f40 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-type">u8</span>).<span.class |
| c7f60 | 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>.{....._. |
| c7f80 | 3d 20 73 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 | =.s;.}..<span.class="tok-kw">tes |
| c7fa0 | 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">& |
| c7fc0 | 71 75 6f 74 3b 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 74 6f 20 6d 75 74 61 62 6c 65 20 73 | quot;string.literal.to.mutable.s |
| c7fe0 | 6c 69 63 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 3c 73 70 61 | lice"</span>.{.....foo(<spa |
| c8000 | 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 |
| c8020 | 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | ot;</span>);.}</code></pre></fig |
| c8040 | 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 |
| c8060 | 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 |
| c8080 | 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 73 74 72 69 | ><samp>$.<kbd>zig.test.test_stri |
| c80a0 | 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 6b 62 64 3e 0a 3c 73 | ng_literal_to_slice.zig</kbd>.<s |
| c80c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 | pan.class="sgr-1m">doc/langref/t |
| c80e0 | 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 69 67 3a | est_string_literal_to_slice.zig: |
| c8100 | 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 67 72 2d 33 31 6d | 6:9:.</span><span.class="sgr-31m |
| c8120 | 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 |
| c8140 | 2d 31 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 | -1m">expected.type.'[]u8',.found |
| c8160 | 20 27 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 | .'*const.[5:0]u8'.</span>....foo |
| c8180 | 28 26 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 | ("hello");.........<sp |
| c81a0 | 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 0a 3c 2f 73 70 61 | an.class="sgr-32m">^~~~~~~.</spa |
| c81c0 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 6f 63 2f 6c 61 6e 67 72 | n><span.class="sgr-1m">doc/langr |
| c81e0 | 65 66 2f 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 | ef/test_string_literal_to_slice. |
| c8200 | 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 67 72 | zig:6:9:.</span><span.class="sgr |
| c8220 | 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 3d 22 | -36m">note:.</span><span.class=" |
| c8240 | 73 67 72 2d 31 6d 22 3e 63 61 73 74 20 64 69 73 63 61 72 64 73 20 63 6f 6e 73 74 20 71 75 61 6c | sgr-1m">cast.discards.const.qual |
| c8260 | 69 66 69 65 72 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 | ifier.</span><span.class="sgr-1m |
| c8280 | 22 3e 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 74 65 72 61 | ">doc/langref/test_string_litera |
| c82a0 | 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 3c 73 70 61 | l_to_slice.zig:1:11:.</span><spa |
| c82c0 | 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>< |
| c82e0 | 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 74 79 | span.class="sgr-1m">parameter.ty |
| c8300 | 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 6f 6f 28 73 | pe.declared.here.</span>fn.foo(s |
| c8320 | 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 61 6e 20 63 | :.[]u8).void.{...........<span.c |
| c8340 | 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 2f 73 61 | lass="sgr-32m">^~~~.</span>.</sa |
| c8360 | 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 6f 77 | mp></pre></figure>........<p>How |
| c8380 | 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 6f 6e 73 74 | ever.if.you.make.the.slice.const |
| c83a0 | 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 20 20 3c 66 | ant,.then.it.works:</p>.......<f |
| c83c0 | 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 |
| c83e0 | 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 69 6e 67 | "><cite.class="file">test_string |
| c8400 | 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 2f 63 69 74 | _literal_to_const_slice.zig</cit |
| c8420 | 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. |
| c8440 | 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 |
| c8460 | 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 |
| c8480 | 70 61 6e 20 63 6c 61 73 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>. |
| c84a0 | 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> |
| c84c0 | 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 |
| c84e0 | 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 6c 61 73 73 | pan>.{....._.=.s;.}..<span.class |
| c8500 | 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 |
| c8520 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c | s="tok-str">"string.literal |
| c8540 | 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 61 6e 3e 20 | .to.constant.slice"</span>. |
| c8560 | 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 74 72 22 3e | {.....foo(<span.class="tok-str"> |
| c8580 | 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 3c 2f 63 6f | "hello"</span>);.}</co |
| c85a0 | 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 |
| c85c0 | 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 |
| c85e0 | 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. |
| c8600 | 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 63 6f 6e 73 | test.test_string_literal_to_cons |
| c8620 | 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 74 72 69 6e | t_slice.zig</kbd>.1/1.test_strin |
| c8640 | 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 74 2e 73 74 | g_literal_to_const_slice.test.st |
| c8660 | 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 74 6f 20 63 6f 6e 73 74 61 6e 74 20 73 6c 69 63 65 2e 2e | ring.literal.to.constant.slice.. |
| c8680 | 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>< |
| c86a0 | 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>....... |
| c86c0 | 4a 75 73 74 20 6c 69 6b 65 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 2c 20 3c 63 6f 64 65 | Just.like.string.literals,.<code |
| c86e0 | 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 |
| c8700 | 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 20 74 68 65 | n></code>.declarations,.when.the |
| c8720 | 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 23 63 6f 6d | .value.is.known.at.<a.href="#com |
| c8740 | 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 72 65 20 73 | ptime">comptime</a>,.......are.s |
| c8760 | 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 20 64 61 74 | tored.in.the.global.constant.dat |
| c8780 | 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 6d 70 69 6c | a.section..Also.<a.href="#Compil |
| c87a0 | 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 6d 65 20 56 | e-Time-Variables">Compile.Time.V |
| c87c0 | 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 20 20 69 6e | ariables</a>.are.stored.......in |
| c87e0 | 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 63 74 69 6f | .the.global.constant.data.sectio |
| c8800 | 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 | n........</p>.......<p>.......<c |
| c8820 | 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 70 | ode><span.class="tok-kw">var</sp |
| c8840 | 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 64 65 20 66 | an></code>.declarations.inside.f |
| c8860 | 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 75 6e 63 74 | unctions.are.stored.in.the.funct |
| c8880 | 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 6e 63 74 69 | ion's.stack.frame..Once.a.functi |
| c88a0 | 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 66 3d 22 23 | on.returns,.......any.<a.href="# |
| c88c0 | 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 72 69 61 62 | Pointers">Pointers</a>.to.variab |
| c88e0 | 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 66 72 61 6d | les.in.the.function's.stack.fram |
| c8900 | 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 20 61 6e 64 | e.become.invalid.references,.and |
| c8920 | 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 63 6f 6d 65 | .......dereferencing.them.become |
| c8940 | 73 20 75 6e 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d | s.unchecked.<a.href="#Undefined- |
| c8960 | 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e | Behavior">Undefined.Behavior</a> |
| c8980 | 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 |
| c89a0 | 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 |
| c89c0 | 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 |
| c89e0 | 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"> |
| c8a00 | 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 |
| c8a20 | 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 |
| c8a40 | 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>....... |
| c8a60 | 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 |
| c8a80 | 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 |
| c8aa0 | 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 |
| c8ac0 | 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 |
| c8ae0 | 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....... |
| c8b00 | 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 |
| c8b20 | 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 |
| c8b40 | 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" |
| c8b60 | 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 |
| c8b80 | 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 |
| c8ba0 | 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 |
| c8bc0 | 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>< |
| c8be0 | 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 |
| c8c00 | 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 |
| c8c20 | 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 |
| c8c40 | 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 |
| c8c60 | 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 |
| c8c80 | 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 |
| c8ca0 | 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 |
| c8cc0 | 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 |
| c8ce0 | 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>....... |
| c8d00 | 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 |
| c8d20 | 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 |
| c8d40 | 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 |
| c8d60 | 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 |
| c8d80 | 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> |
| c8da0 | 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 |
| c8dc0 | 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 |
| c8de0 | 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 |
| c8e00 | 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 |
| c8e20 | 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 |
| c8e40 | 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 |
| c8e60 | 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 |
| c8e80 | 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 |
| c8ea0 | 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 |
| c8ec0 | 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 |
| c8ee0 | 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 |
| c8f00 | 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 |
| c8f20 | 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 |
| c8f40 | 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 |
| c8f60 | 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 |
| c8f80 | 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,. |
| c8fa0 | 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 |
| c8fc0 | 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 |
| c8fe0 | 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 |
| c9000 | 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 |
| c9020 | 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>....... |
| c9040 | 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 |
| c9060 | 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 |
| c9080 | 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 |
| c90a0 | 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 |
| c90c0 | 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 |
| c90e0 | 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 |
| c9100 | 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>.. |
| c9120 | 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 |
| c9140 | 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 |
| c9160 | 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 |
| c9180 | 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 |
| c91a0 | 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 |
| c91c0 | 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>.......... |
| c91e0 | 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 |
| c9200 | 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>.................. |
| c9220 | 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 |
| c9240 | 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>.............. |
| c9260 | 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 |
| c9280 | 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. |
| c92a0 | 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>....... |
| c92c0 | 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>........ |
| c92e0 | 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 |
| c9300 | 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 |
| c9320 | 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. |
| c9340 | 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 |
| c9360 | 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 |
| c9380 | 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>...........< |
| c93a0 | 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 |
| c93c0 | 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. |
| c93e0 | 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 |
| c9400 | 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 |
| c9420 | 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 |
| c9440 | 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..... |
| c9460 | 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......... |
| c9480 | 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>......... |
| c94a0 | 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 |
| c94c0 | 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 |
| c94e0 | 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..... |
| c9500 | 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 |
| c9520 | 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.. |
| c9540 | 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 |
| c9560 | 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 |
| c9580 | 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 |
| c95a0 | 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 |
| c95c0 | 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. |
| c95e0 | 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, |
| c9600 | 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 |
| c9620 | 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 |
| c9640 | 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 |
| c9660 | 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. |
| c9680 | 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......... |
| c96a0 | 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 |
| c96c0 | 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 |
| c96e0 | 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>. |
| c9700 | 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 |
| c9720 | 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 |
| c9740 | 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 |
| c9760 | 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> |
| c9780 | 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 |
| c97a0 | 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 |
| c97c0 | 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- |
| c97e0 | 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 |
| c9800 | 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 |
| c9820 | 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 |
| c9840 | 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 |
| c9860 | 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 |
| c9880 | 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 |
| c98a0 | 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:// |
| c98c0 | 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 |
| c98e0 | 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 |
| c9900 | 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. |
| c9920 | 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>. |
| c9940 | 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 |
| c9960 | 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 |
| c9980 | 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 |
| c99a0 | 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 |
| c99c0 | 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 |
| c99e0 | 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. |
| c9a00 | 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..... |
| c9a20 | 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 |
| c9a40 | 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 |
| c9a60 | 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>........... |
| c9a80 | 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 |
| c9aa0 | 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 |
| c9ac0 | 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 |
| c9ae0 | 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 |
| c9b00 | 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>.. |
| c9b20 | 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 |
| c9b40 | 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 |
| c9b60 | 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 |
| c9b80 | 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 |
| c9ba0 | 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 |
| c9bc0 | 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. |
| c9be0 | 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>..... |
| c9c00 | 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. |
| c9c20 | 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...... |
| c9c40 | 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. |
| c9c60 | 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. |
| c9c80 | 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 |
| c9ca0 | 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........ |
| c9cc0 | 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 |
| c9ce0 | 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 |
| c9d00 | 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 |
| c9d20 | 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 |
| c9d40 | 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 |
| c9d60 | 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,. |
| c9d80 | 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 |
| c9da0 | 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 |
| c9dc0 | 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 |
| c9de0 | 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 |
| c9e00 | 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 |
| c9e20 | 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. |
| c9e40 | 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 |
| c9e60 | 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 |
| c9e80 | 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 |
| c9ea0 | 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 |
| c9ec0 | 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........</ |
| c9ee0 | 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 |
| c9f00 | 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 |
| c9f20 | 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 |
| c9f40 | 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 |
| c9f60 | 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. |
| c9f80 | 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 |
| c9fa0 | 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 |
| c9fc0 | 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 |
| c9fe0 | 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>....... |
| ca000 | 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 |
| ca020 | 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 |
| ca040 | 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....... |
| ca060 | 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 |
| ca080 | 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 |
| ca0a0 | 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.. |
| ca0c0 | 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 |
| ca0e0 | 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 |
| ca100 | 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 |
| ca120 | 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 |
| ca140 | 73 73 69 62 6c 65 20 28 6c 65 73 74 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 | ssible.(lest.<a.href="#Undefined |
| ca160 | 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 | -Behavior">Undefined.Behavior</a |
| ca180 | 3e 20 6f 63 63 75 72 29 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 | >.occur)........</p>............ |
| ca1a0 | 20 20 20 0a 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 | ..........<h2.id="Compile-Variab |
| ca1c0 | 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6f 6d 70 69 6c 65 2d 56 61 72 69 61 | les"><a.href="#toc-Compile-Varia |
| ca1e0 | 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 20 3c 61 20 63 | bles">Compile.Variables</a>.<a.c |
| ca200 | 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 56 61 72 69 61 62 | lass="hdr".href="#Compile-Variab |
| ca220 | 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | les">..</a></h2>........<p>..... |
| ca240 | 20 20 43 6f 6d 70 69 6c 65 20 76 61 72 69 61 62 6c 65 73 20 61 72 65 20 61 63 63 65 73 73 69 62 | ..Compile.variables.are.accessib |
| ca260 | 6c 65 20 62 79 20 69 6d 70 6f 72 74 69 6e 67 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | le.by.importing.the.<code><span. |
| ca280 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 | class="tok-str">"builtin&qu |
| ca2a0 | 6f 74 3b 3c 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 | ot;</span></code>.package,...... |
| ca2c0 | 20 77 68 69 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 | .which.the.compiler.makes.availa |
| ca2e0 | 62 6c 65 20 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 | ble.to.every.Zig.source.file..It |
| ca300 | 20 63 6f 6e 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 | .contains.......compile-time.con |
| ca320 | 73 74 61 6e 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 | stants.such.as.the.current.targe |
| ca340 | 74 2c 20 65 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 | t,.endianness,.and.release.mode. |
| ca360 | 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 |
| ca380 | 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 |
| ca3a0 | 73 3d 22 66 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 | s="file">compile_variables.zig</ |
| ca3c0 | 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 |
| ca3e0 | 61 6e 20 63 6c 61 73 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 |
| ca400 | 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 |
| ca420 | 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 |
| ca440 | 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 |
| ca460 | 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< |
| ca480 | 2f 73 70 61 6e 3e 20 73 65 70 61 72 61 74 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>.separator.=.<span.class=" |
| ca4a0 | 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 6f 73 2e 74 61 | tok-kw">if</span>.(builtin.os.ta |
| ca4c0 | 67 20 3d 3d 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 | g.==..windows).<span.class="tok- |
| ca4e0 | 73 74 72 22 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 | str">'\\'</span>.<span.class="to |
| ca500 | 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 22 74 | k-kw">else</span>.<span.class="t |
| ca520 | 6f 6b 2d 73 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 | ok-str">'/'</span>;</code></pre> |
| ca540 | 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 78 61 6d 70 | </figure>........<p>.......Examp |
| ca560 | 6c 65 20 6f 66 20 77 68 61 74 20 69 73 20 69 6d 70 6f 72 74 65 64 20 77 69 74 68 20 3c 63 6f 64 | le.of.what.is.imported.with.<cod |
| ca580 | 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 70 | e><span.class="tok-builtin">@imp |
| ca5a0 | 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" |
| ca5c0 | 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 3c 2f 63 6f | >"builtin"</span>)</co |
| ca5e0 | 64 65 3e 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 | de>:.......</p>.......<figure><f |
| ca600 | 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 3e | igcaption.class="zig-cap"><cite> |
| ca620 | 40 69 6d 70 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 | @import("builtin")</cite></figca |
| ca640 | 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 |
| ca660 | 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 |
| ca680 | 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 |
| ca6a0 | 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 |
| ca6c0 | 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 |
| ca6e0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 5a 69 67 20 76 65 72 73 69 6f 6e 2e 20 57 68 65 6e | k-comment">///.Zig.version..When |
| ca700 | 20 77 72 69 74 69 6e 67 20 63 6f 64 65 20 74 68 61 74 20 73 75 70 70 6f 72 74 73 20 6d 75 6c 74 | .writing.code.that.supports.mult |
| ca720 | 69 70 6c 65 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 5a 69 67 2c 20 70 72 65 66 65 72 3c 2f 73 70 | iple.versions.of.Zig,.prefer</sp |
| ca740 | 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">// |
| ca760 | 2f 20 66 65 61 74 75 72 65 20 64 65 74 65 63 74 69 6f 6e 20 28 69 2e 65 2e 20 77 69 74 68 20 60 | /.feature.detection.(i.e..with.` |
| ca780 | 40 68 61 73 44 65 63 6c 60 20 6f 72 20 60 40 68 61 73 46 69 65 6c 64 60 29 20 6f 76 65 72 20 76 | @hasDecl`.or.`@hasField`).over.v |
| ca7a0 | 65 72 73 69 6f 6e 20 63 68 65 63 6b 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | ersion.checks.</span>.<span.clas |
| ca7c0 | 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 |
| ca7e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 7a 69 67 5f 76 65 72 73 | s="tok-kw">const</span>.zig_vers |
| ca800 | 69 6f 6e 20 3d 20 73 74 64 2e 53 65 6d 61 6e 74 69 63 56 65 72 73 69 6f 6e 2e 70 61 72 73 65 28 | ion.=.std.SemanticVersion.parse( |
| ca820 | 7a 69 67 5f 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 | zig_version_string).<span.class= |
| ca840 | 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 |
| ca860 | 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 3c | s="tok-kw">unreachable</span>;.< |
| ca880 | 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>.< |
| ca8a0 | 73 70 61 6e 20 63 6c 61 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> |
| ca8c0 | 20 7a 69 67 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 | .zig_version_string.=.<span.clas |
| ca8e0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 30 2e 31 33 2e 30 26 71 75 6f 74 3b 3c 2f | s="tok-str">"0.13.0"</ |
| ca900 | 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 3c | span>;.<span.class="tok-kw">pub< |
| ca920 | 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 |
| ca940 | 74 3c 2f 73 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 | t</span>.zig_backend.=.std.built |
| ca960 | 69 6e 2e 43 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 | in.CompilerBackend.stage2_llvm;. |
| ca980 | 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> |
| ca9a0 | 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 |
| ca9c0 | 6e 3e 20 6f 75 74 70 75 74 5f 6d 6f 64 65 20 3d 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 4f 75 74 | n>.output_mode.=.std.builtin.Out |
| ca9e0 | 70 75 74 4d 6f 64 65 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 | putMode.Exe;.<span.class="tok-kw |
| caa00 | 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 |
| caa20 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 6e 6b 5f 6d 6f 64 65 20 3d 20 73 74 64 2e 62 | ">const</span>.link_mode.=.std.b |
| caa40 | 75 69 6c 74 69 6e 2e 4c 69 6e 6b 4d 6f 64 65 2e 73 74 61 74 69 63 3b 0a 3c 73 70 61 6e 20 63 6c | uiltin.LinkMode.static;.<span.cl |
| caa60 | 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 |
| caa80 | 61 73 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 73 | ass="tok-kw">const</span>.is_tes |
| caaa0 | 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 65 | t.=.<span.class="tok-null">false |
| caac0 | 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 |
| caae0 | 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 |
| cab00 | 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 70 | nst</span>.single_threaded.=.<sp |
| cab20 | 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> |
| cab40 | 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 6e | ;.<span.class="tok-kw">pub</span |
| cab60 | 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 70 | >.<span.class="tok-kw">const</sp |
| cab80 | 61 6e 3e 20 61 62 69 20 3d 20 73 74 64 2e 54 61 72 67 65 74 2e 41 62 69 2e 67 6e 75 3b 0a 3c 73 | an>.abi.=.std.Target.Abi.gnu;.<s |
| caba0 | 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 |
| cabc0 | 70 61 6e 20 63 6c 61 73 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>. |
| cabe0 | 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 2e 61 72 | cpu:.std.Target.Cpu.=..{......ar |
| cac00 | 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 6d 70 3b | ch.=..x86_64,......model.=.& |
| cac20 | 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 20 20 2e | std.Target.x86.cpu.znver4,...... |
| cac40 | 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 74 75 72 | features.=.std.Target.x86.featur |
| cac60 | 65 53 65 74 28 26 61 6d 70 3b 5b 5f 5d 73 74 64 2e 54 61 72 67 65 74 2e 78 38 36 2e 46 65 61 74 | eSet(&[_]std.Target.x86.Feat |
| cac80 | 75 72 65 7b 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 36 34 62 69 74 26 71 75 6f 74 3b | ure{..........@"64bit" |
| caca0 | 2c 0a 20 20 20 20 20 20 20 20 2e 61 64 78 2c 0a 20 20 20 20 20 20 20 20 2e 61 65 73 2c 0a 20 20 | ,..........adx,..........aes,... |
| cacc0 | 20 20 20 20 20 20 2e 61 6c 6c 6f 77 5f 6c 69 67 68 74 5f 32 35 36 5f 62 69 74 2c 0a 20 20 20 20 | .......allow_light_256_bit,..... |
| cace0 | 20 20 20 20 2e 61 76 78 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 32 2c 0a 20 20 20 20 20 20 20 | .....avx,..........avx2,........ |
| cad00 | 20 2e 61 76 78 35 31 32 62 66 31 36 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 62 69 74 | ..avx512bf16,..........avx512bit |
| cad20 | 61 6c 67 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 62 77 2c 0a 20 20 20 20 20 20 20 20 | alg,..........avx512bw,......... |
| cad40 | 2e 61 76 78 35 31 32 63 64 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 64 71 2c 0a 20 20 | .avx512cd,..........avx512dq,... |
| cad60 | 20 20 20 20 20 20 2e 61 76 78 35 31 32 66 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 69 | .......avx512f,..........avx512i |
| cad80 | 66 6d 61 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 76 62 6d 69 2c 0a 20 20 20 20 20 20 | fma,..........avx512vbmi,....... |
| cada0 | 20 20 2e 61 76 78 35 31 32 76 62 6d 69 32 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 76 | ...avx512vbmi2,..........avx512v |
| cadc0 | 6c 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 76 6e 6e 69 2c 0a 20 20 20 20 20 20 20 20 | l,..........avx512vnni,......... |
| cade0 | 2e 61 76 78 35 31 32 76 70 6f 70 63 6e 74 64 71 2c 0a 20 20 20 20 20 20 20 20 2e 62 6d 69 2c 0a | .avx512vpopcntdq,..........bmi,. |
| cae00 | 20 20 20 20 20 20 20 20 2e 62 6d 69 32 2c 0a 20 20 20 20 20 20 20 20 2e 62 72 61 6e 63 68 66 75 | .........bmi2,..........branchfu |
| cae20 | 73 69 6f 6e 2c 0a 20 20 20 20 20 20 20 20 2e 63 6c 66 6c 75 73 68 6f 70 74 2c 0a 20 20 20 20 20 | sion,..........clflushopt,...... |
| cae40 | 20 20 20 2e 63 6c 77 62 2c 0a 20 20 20 20 20 20 20 20 2e 63 6c 7a 65 72 6f 2c 0a 20 20 20 20 20 | ....clwb,..........clzero,...... |
| cae60 | 20 20 20 2e 63 6d 6f 76 2c 0a 20 20 20 20 20 20 20 20 2e 63 72 63 33 32 2c 0a 20 20 20 20 20 20 | ....cmov,..........crc32,....... |
| cae80 | 20 20 2e 63 78 31 36 2c 0a 20 20 20 20 20 20 20 20 2e 63 78 38 2c 0a 20 20 20 20 20 20 20 20 2e | ...cx16,..........cx8,.......... |
| caea0 | 65 76 65 78 35 31 32 2c 0a 20 20 20 20 20 20 20 20 2e 66 31 36 63 2c 0a 20 20 20 20 20 20 20 20 | evex512,..........f16c,......... |
| caec0 | 2e 66 61 73 74 5f 31 35 62 79 74 65 6e 6f 70 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 62 | .fast_15bytenop,..........fast_b |
| caee0 | 65 78 74 72 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 6c 7a 63 6e 74 2c 0a 20 20 20 20 20 | extr,..........fast_lzcnt,...... |
| caf00 | 20 20 20 2e 66 61 73 74 5f 6d 6f 76 62 65 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 73 63 | ....fast_movbe,..........fast_sc |
| caf20 | 61 6c 61 72 5f 66 73 71 72 74 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 73 63 61 6c 61 72 | alar_fsqrt,..........fast_scalar |
| caf40 | 5f 73 68 69 66 74 5f 6d 61 73 6b 73 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 76 61 72 69 | _shift_masks,..........fast_vari |
| caf60 | 61 62 6c 65 5f 70 65 72 6c 61 6e 65 5f 73 68 75 66 66 6c 65 2c 0a 20 20 20 20 20 20 20 20 2e 66 | able_perlane_shuffle,..........f |
| caf80 | 61 73 74 5f 76 65 63 74 6f 72 5f 66 73 71 72 74 2c 0a 20 20 20 20 20 20 20 20 2e 66 6d 61 2c 0a | ast_vector_fsqrt,..........fma,. |
| cafa0 | 20 20 20 20 20 20 20 20 2e 66 73 67 73 62 61 73 65 2c 0a 20 20 20 20 20 20 20 20 2e 66 73 72 6d | .........fsgsbase,..........fsrm |
| cafc0 | 2c 0a 20 20 20 20 20 20 20 20 2e 66 78 73 72 2c 0a 20 20 20 20 20 20 20 20 2e 67 66 6e 69 2c 0a | ,..........fxsr,..........gfni,. |
| cafe0 | 20 20 20 20 20 20 20 20 2e 69 6e 76 70 63 69 64 2c 0a 20 20 20 20 20 20 20 20 2e 6c 7a 63 6e 74 | .........invpcid,..........lzcnt |
| cb000 | 2c 0a 20 20 20 20 20 20 20 20 2e 6d 61 63 72 6f 66 75 73 69 6f 6e 2c 0a 20 20 20 20 20 20 20 20 | ,..........macrofusion,......... |
| cb020 | 2e 6d 6d 78 2c 0a 20 20 20 20 20 20 20 20 2e 6d 6f 76 62 65 2c 0a 20 20 20 20 20 20 20 20 2e 6d | .mmx,..........movbe,..........m |
| cb040 | 77 61 69 74 78 2c 0a 20 20 20 20 20 20 20 20 2e 6e 6f 70 6c 2c 0a 20 20 20 20 20 20 20 20 2e 70 | waitx,..........nopl,..........p |
| cb060 | 63 6c 6d 75 6c 2c 0a 20 20 20 20 20 20 20 20 2e 70 6b 75 2c 0a 20 20 20 20 20 20 20 20 2e 70 6f | clmul,..........pku,..........po |
| cb080 | 70 63 6e 74 2c 0a 20 20 20 20 20 20 20 20 2e 70 72 66 63 68 77 2c 0a 20 20 20 20 20 20 20 20 2e | pcnt,..........prfchw,.......... |
| cb0a0 | 72 64 70 69 64 2c 0a 20 20 20 20 20 20 20 20 2e 72 64 70 72 75 2c 0a 20 20 20 20 20 20 20 20 2e | rdpid,..........rdpru,.......... |
| cb0c0 | 72 64 72 6e 64 2c 0a 20 20 20 20 20 20 20 20 2e 72 64 73 65 65 64 2c 0a 20 20 20 20 20 20 20 20 | rdrnd,..........rdseed,......... |
| cb0e0 | 2e 73 61 68 66 2c 0a 20 20 20 20 20 20 20 20 2e 73 62 62 5f 64 65 70 5f 62 72 65 61 6b 69 6e 67 | .sahf,..........sbb_dep_breaking |
| cb100 | 2c 0a 20 20 20 20 20 20 20 20 2e 73 68 61 2c 0a 20 20 20 20 20 20 20 20 2e 73 68 73 74 6b 2c 0a | ,..........sha,..........shstk,. |
| cb120 | 20 20 20 20 20 20 20 20 2e 73 6c 6f 77 5f 73 68 6c 64 2c 0a 20 20 20 20 20 20 20 20 2e 73 73 65 | .........slow_shld,..........sse |
| cb140 | 2c 0a 20 20 20 20 20 20 20 20 2e 73 73 65 32 2c 0a 20 20 20 20 20 20 20 20 2e 73 73 65 33 2c 0a | ,..........sse2,..........sse3,. |
| cb160 | 20 20 20 20 20 20 20 20 2e 73 73 65 34 5f 31 2c 0a 20 20 20 20 20 20 20 20 2e 73 73 65 34 5f 32 | .........sse4_1,..........sse4_2 |
| cb180 | 2c 0a 20 20 20 20 20 20 20 20 2e 73 73 65 34 61 2c 0a 20 20 20 20 20 20 20 20 2e 73 73 73 65 33 | ,..........sse4a,..........ssse3 |
| cb1a0 | 2c 0a 20 20 20 20 20 20 20 20 2e 76 61 65 73 2c 0a 20 20 20 20 20 20 20 20 2e 76 70 63 6c 6d 75 | ,..........vaes,..........vpclmu |
| cb1c0 | 6c 71 64 71 2c 0a 20 20 20 20 20 20 20 20 2e 76 7a 65 72 6f 75 70 70 65 72 2c 0a 20 20 20 20 20 | lqdq,..........vzeroupper,...... |
| cb1e0 | 20 20 20 2e 77 62 6e 6f 69 6e 76 64 2c 0a 20 20 20 20 20 20 20 20 2e 78 38 37 2c 0a 20 20 20 20 | ....wbnoinvd,..........x87,..... |
| cb200 | 20 20 20 20 2e 78 73 61 76 65 2c 0a 20 20 20 20 20 20 20 20 2e 78 73 61 76 65 63 2c 0a 20 20 20 | .....xsave,..........xsavec,.... |
| cb220 | 20 20 20 20 20 2e 78 73 61 76 65 6f 70 74 2c 0a 20 20 20 20 20 20 20 20 2e 78 73 61 76 65 73 2c | ......xsaveopt,..........xsaves, |
| cb240 | 0a 20 20 20 20 7d 29 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.class="tok-kw" |
| cb260 | 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" |
| cb280 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 73 20 3d 20 73 74 64 2e 54 61 72 67 65 74 2e 4f 73 | >const</span>.os.=.std.Target.Os |
| cb2a0 | 7b 0a 20 20 20 20 2e 74 61 67 20 3d 20 2e 6c 69 6e 75 78 2c 0a 20 20 20 20 2e 76 65 72 73 69 6f | {......tag.=..linux,......versio |
| cb2c0 | 6e 5f 72 61 6e 67 65 20 3d 20 2e 7b 20 2e 6c 69 6e 75 78 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 | n_range.=..{..linux.=..{........ |
| cb2e0 | 20 2e 72 61 6e 67 65 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 6d 69 6e 20 3d 20 | ..range.=..{..............min.=. |
| cb300 | 2e 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 6d 61 6a 6f 72 20 3d 20 3c 73 70 61 | .{..................major.=.<spa |
| cb320 | 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 0a 20 | n.class="tok-number">6</span>,.. |
| cb340 | 20 20 20 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 6e 20 63 6c | ................minor.=.<span.cl |
| cb360 | 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 2c 0a 20 20 20 20 20 | ass="tok-number">9</span>,...... |
| cb380 | 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 3d | ............patch.=.<span.class= |
| cb3a0 | 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 20 20 20 20 20 | "tok-number">2</span>,.......... |
| cb3c0 | 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 6d 61 78 20 3d 20 2e 7b 0a 20 20 20 20 | ...},..............max.=..{..... |
| cb3e0 | 20 20 20 20 20 20 20 20 20 20 20 20 2e 6d 61 6a 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .............major.=.<span.class |
| cb400 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 | ="tok-number">6</span>,......... |
| cb420 | 20 20 20 20 20 20 20 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 | .........minor.=.<span.class="to |
| cb440 | 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 | k-number">9</span>,............. |
| cb460 | 20 20 20 20 2e 70 61 74 63 68 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | .....patch.=.<span.class="tok-nu |
| cb480 | 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 | mber">2</span>,.............},.. |
| cb4a0 | 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 2e 67 6c 69 62 63 20 3d 20 2e 7b 0a 20 20 | .......},..........glibc.=..{... |
| cb4c0 | 20 20 20 20 20 20 20 20 20 20 2e 6d 61 6a 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ...........major.=.<span.class=" |
| cb4e0 | 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 20 20 20 20 20 20 | tok-number">2</span>,........... |
| cb500 | 20 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 6e 75 6d 62 | ...minor.=.<span.class="tok-numb |
| cb520 | 65 72 22 3e 33 39 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 70 61 74 63 | er">39</span>,..............patc |
| cb540 | 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 30 3c 2f | h.=.<span.class="tok-number">0</ |
| cb560 | 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 7d 7d 2c 0a 7d 3b 0a 3c 73 70 | span>,.........},.....}},.};.<sp |
| cb580 | 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 |
| cb5a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 | an.class="tok-kw">const</span>.t |
| cb5c0 | 61 72 67 65 74 3a 20 73 74 64 2e 54 61 72 67 65 74 20 3d 20 2e 7b 0a 20 20 20 20 2e 63 70 75 20 | arget:.std.Target.=..{......cpu. |
| cb5e0 | 3d 20 63 70 75 2c 0a 20 20 20 20 2e 6f 73 20 3d 20 6f 73 2c 0a 20 20 20 20 2e 61 62 69 20 3d 20 | =.cpu,......os.=.os,......abi.=. |
| cb600 | 61 62 69 2c 0a 20 20 20 20 2e 6f 66 6d 74 20 3d 20 6f 62 6a 65 63 74 5f 66 6f 72 6d 61 74 2c 0a | abi,......ofmt.=.object_format,. |
| cb620 | 20 20 20 20 2e 64 79 6e 61 6d 69 63 5f 6c 69 6e 6b 65 72 20 3d 20 73 74 64 2e 54 61 72 67 65 74 | .....dynamic_linker.=.std.Target |
| cb640 | 2e 44 79 6e 61 6d 69 63 4c 69 6e 6b 65 72 2e 69 6e 69 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .DynamicLinker.init(<span.class= |
| cb660 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2f 6e 69 78 2f 73 74 6f 72 65 2f 6b 37 7a 67 76 | "tok-str">"/nix/store/k7zgv |
| cb680 | 7a 70 32 72 33 31 7a 6b 67 39 78 71 67 6a 69 6d 37 6d 62 6b 6e 72 79 76 36 62 73 2d 67 6c 69 62 | zp2r31zkg9xqgjim7mbknryv6bs-glib |
| cb6a0 | 63 2d 32 2e 33 39 2d 35 32 2f 6c 69 62 2f 6c 64 2d 6c 69 6e 75 78 2d 78 38 36 2d 36 34 2e 73 6f | c-2.39-52/lib/ld-linux-x86-64.so |
| cb6c0 | 2e 32 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | .2"</span>),.};.<span.class |
| cb6e0 | 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 |
| cb700 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 62 6a 65 63 74 5f 66 6f | ="tok-kw">const</span>.object_fo |
| cb720 | 72 6d 61 74 20 3d 20 73 74 64 2e 54 61 72 67 65 74 2e 4f 62 6a 65 63 74 46 6f 72 6d 61 74 2e 65 | rmat.=.std.Target.ObjectFormat.e |
| cb740 | 6c 66 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 | lf;.<span.class="tok-kw">pub</sp |
| cb760 | 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</ |
| cb780 | 73 70 61 6e 3e 20 6d 6f 64 65 20 3d 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 4f 70 74 69 6d 69 7a | span>.mode.=.std.builtin.Optimiz |
| cb7a0 | 65 4d 6f 64 65 2e 44 65 62 75 67 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | eMode.Debug;.<span.class="tok-kw |
| cb7c0 | 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 |
| cb7e0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 6e 6b 5f 6c 69 62 63 20 3d 20 3c 73 70 61 6e | ">const</span>.link_libc.=.<span |
| cb800 | 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 3b 0a | .class="tok-null">false</span>;. |
| cb820 | 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>. |
| cb840 | 3c 73 70 61 6e 20 63 6c 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 |
| cb860 | 3e 20 6c 69 6e 6b 5f 6c 69 62 63 70 70 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >.link_libcpp.=.<span.class="tok |
| cb880 | 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | -null">false</span>;.<span.class |
| cb8a0 | 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 |
| cb8c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 61 76 65 5f 65 72 72 6f | ="tok-kw">const</span>.have_erro |
| cb8e0 | 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 69 6e 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | r_return_tracing.=.<span.class=" |
| cb900 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 | tok-null">true</span>;.<span.cla |
| cb920 | 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 |
| cb940 | 73 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 67 72 69 6e | ss="tok-kw">const</span>.valgrin |
| cb960 | 64 5f 73 75 70 70 6f 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | d_support.=.<span.class="tok-nul |
| cb980 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | l">true</span>;.<span.class="tok |
| cb9a0 | 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 |
| cb9c0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 61 6e 69 74 69 7a 65 5f 74 68 72 65 61 | -kw">const</span>.sanitize_threa |
| cb9e0 | 64 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 | d.=.<span.class="tok-null">false |
| cba00 | 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 |
| cba20 | 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 |
| cba40 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 6f 73 69 74 69 6f 6e 5f 69 6e 64 65 70 65 6e 64 65 6e 74 5f | nst</span>.position_independent_ |
| cba60 | 63 6f 64 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 | code.=.<span.class="tok-null">fa |
| cba80 | 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | lse</span>;.<span.class="tok-kw" |
| cbaa0 | 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" |
| cbac0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 6f 73 69 74 69 6f 6e 5f 69 6e 64 65 70 65 6e 64 65 | >const</span>.position_independe |
| cbae0 | 6e 74 5f 65 78 65 63 75 74 61 62 6c 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | nt_executable.=.<span.class="tok |
| cbb00 | 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | -null">false</span>;.<span.class |
| cbb20 | 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 |
| cbb40 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 72 69 70 5f 64 65 62 | ="tok-kw">const</span>.strip_deb |
| cbb60 | 75 67 5f 69 6e 66 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 | ug_info.=.<span.class="tok-null" |
| cbb80 | 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >false</span>;.<span.class="tok- |
| cbba0 | 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- |
| cbbc0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 64 65 5f 6d 6f 64 65 6c 20 3d 20 73 74 | kw">const</span>.code_model.=.st |
| cbbe0 | 64 2e 62 75 69 6c 74 69 6e 2e 43 6f 64 65 4d 6f 64 65 6c 2e 64 65 66 61 75 6c 74 3b 0a 3c 73 70 | d.builtin.CodeModel.default;.<sp |
| cbc00 | 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 |
| cbc20 | 61 6e 20 63 6c 61 73 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 |
| cbc40 | 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 61 73 73 3d | mit_frame_pointer.=.<span.class= |
| cbc60 | 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 64 65 3e 3c | "tok-null">false</span>;</code>< |
| cbc80 | 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 6f | /pre></figure>.......<p>See.also |
| cbca0 | 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 64 2d 4d 6f | :</p><ul>.<li><a.href="#Build-Mo |
| cbcc0 | 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 3e 0a 0a 20 | de">Build.Mode</a></li>.</ul>... |
| cbce0 | 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 52 6f 6f 74 2d 53 6f 75 72 63 65 2d | ............<h2.id="Root-Source- |
| cbd00 | 46 69 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 6f 6f 74 2d 53 6f 75 72 63 65 2d | File"><a.href="#toc-Root-Source- |
| cbd20 | 46 69 6c 65 22 3e 52 6f 6f 74 20 53 6f 75 72 63 65 20 46 69 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c | File">Root.Source.File</a>.<a.cl |
| cbd40 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 6f 6f 74 2d 53 6f 75 72 63 65 2d 46 69 6c | ass="hdr".href="#Root-Source-Fil |
| cbd60 | 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 54 4f 44 4f 3a 20 65 | e">..</a></h2>........<p>TODO:.e |
| cbd80 | 78 70 6c 61 69 6e 20 68 6f 77 20 72 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 20 66 69 6e 64 | xplain.how.root.source.file.find |
| cbda0 | 73 20 6f 74 68 65 72 20 66 69 6c 65 73 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a | s.other.files</p>.......<p>TODO: |
| cbdc0 | 20 70 75 62 20 66 6e 20 6d 61 69 6e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 | .pub.fn.main</p>.......<p>TODO:. |
| cbde0 | 70 75 62 20 66 6e 20 70 61 6e 69 63 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 | pub.fn.panic</p>.......<p>TODO:. |
| cbe00 | 69 66 20 6c 69 6e 6b 69 6e 67 20 77 69 74 68 20 6c 69 62 63 20 79 6f 75 20 63 61 6e 20 75 73 65 | if.linking.with.libc.you.can.use |
| cbe20 | 20 65 78 70 6f 72 74 20 66 6e 20 6d 61 69 6e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 | .export.fn.main</p>.......<p>TOD |
| cbe40 | 4f 3a 20 6f 72 64 65 72 20 69 6e 64 65 70 65 6e 64 65 6e 74 20 74 6f 70 20 6c 65 76 65 6c 20 64 | O:.order.independent.top.level.d |
| cbe60 | 65 63 6c 61 72 61 74 69 6f 6e 73 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 6c | eclarations</p>.......<p>TODO:.l |
| cbe80 | 61 7a 79 20 61 6e 61 6c 79 73 69 73 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 | azy.analysis</p>.......<p>TODO:. |
| cbea0 | 75 73 69 6e 67 20 63 6f 6d 70 74 69 6d 65 20 7b 20 5f 20 3d 20 40 69 6d 70 6f 72 74 28 29 20 7d | using.comptime.{._.=.@import().} |
| cbec0 | 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 5a 69 67 2d 42 75 | </p>..............<h2.id="Zig-Bu |
| cbee0 | 69 6c 64 2d 53 79 73 74 65 6d 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 5a 69 67 2d 42 75 | ild-System"><a.href="#toc-Zig-Bu |
| cbf00 | 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> |
| cbf20 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 5a 69 67 2d 42 75 69 6c 64 | .<a.class="hdr".href="#Zig-Build |
| cbf40 | 2d 53 79 73 74 65 6d 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | -System">..</a></h2>........<p>. |
| cbf60 | 20 20 20 20 20 20 54 68 65 20 5a 69 67 20 42 75 69 6c 64 20 53 79 73 74 65 6d 20 70 72 6f 76 69 | ......The.Zig.Build.System.provi |
| cbf80 | 64 65 73 20 61 20 63 72 6f 73 73 2d 70 6c 61 74 66 6f 72 6d 2c 20 64 65 70 65 6e 64 65 6e 63 79 | des.a.cross-platform,.dependency |
| cbfa0 | 2d 66 72 65 65 20 77 61 79 20 74 6f 20 64 65 63 6c 61 72 65 0a 20 20 20 20 20 20 74 68 65 20 6c | -free.way.to.declare.......the.l |
| cbfc0 | 6f 67 69 63 20 72 65 71 75 69 72 65 64 20 74 6f 20 62 75 69 6c 64 20 61 20 70 72 6f 6a 65 63 74 | ogic.required.to.build.a.project |
| cbfe0 | 2e 20 57 69 74 68 20 74 68 69 73 20 73 79 73 74 65 6d 2c 20 74 68 65 20 6c 6f 67 69 63 20 74 6f | ..With.this.system,.the.logic.to |
| cc000 | 20 62 75 69 6c 64 0a 20 20 20 20 20 20 61 20 70 72 6f 6a 65 63 74 20 69 73 20 77 72 69 74 74 65 | .build.......a.project.is.writte |
| cc020 | 6e 20 69 6e 20 61 20 62 75 69 6c 64 2e 7a 69 67 20 66 69 6c 65 2c 20 75 73 69 6e 67 20 74 68 65 | n.in.a.build.zig.file,.using.the |
| cc040 | 20 5a 69 67 20 42 75 69 6c 64 20 53 79 73 74 65 6d 20 41 50 49 20 74 6f 0a 20 20 20 20 20 20 64 | .Zig.Build.System.API.to.......d |
| cc060 | 65 63 6c 61 72 65 20 61 6e 64 20 63 6f 6e 66 69 67 75 72 65 20 62 75 69 6c 64 20 61 72 74 69 66 | eclare.and.configure.build.artif |
| cc080 | 61 63 74 73 20 61 6e 64 20 6f 74 68 65 72 20 74 61 73 6b 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | acts.and.other.tasks........</p> |
| cc0a0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 6f 6d 65 20 65 78 61 6d 70 6c 65 73 20 6f | .......<p>.......Some.examples.o |
| cc0c0 | 66 20 74 61 73 6b 73 20 74 68 65 20 62 75 69 6c 64 20 73 79 73 74 65 6d 20 63 61 6e 20 68 65 6c | f.tasks.the.build.system.can.hel |
| cc0e0 | 70 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 75 6c 3e 0a 20 20 | p.with:.......</p>.......<ul>... |
| cc100 | 20 20 20 20 20 20 3c 6c 69 3e 50 65 72 66 6f 72 6d 69 6e 67 20 74 61 73 6b 73 20 69 6e 20 70 61 | ......<li>Performing.tasks.in.pa |
| cc120 | 72 61 6c 6c 65 6c 20 61 6e 64 20 63 61 63 68 69 6e 67 20 74 68 65 20 72 65 73 75 6c 74 73 2e 3c | rallel.and.caching.the.results.< |
| cc140 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 44 65 70 65 6e 64 69 6e 67 20 6f 6e 20 6f 74 | /li>.........<li>Depending.on.ot |
| cc160 | 68 65 72 20 70 72 6f 6a 65 63 74 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 50 | her.projects.</li>.........<li>P |
| cc180 | 72 6f 76 69 64 69 6e 67 20 61 20 70 61 63 6b 61 67 65 20 66 6f 72 20 6f 74 68 65 72 20 70 72 6f | roviding.a.package.for.other.pro |
| cc1a0 | 6a 65 63 74 73 20 74 6f 20 64 65 70 65 6e 64 20 6f 6e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | jects.to.depend.on.</li>........ |
| cc1c0 | 20 3c 6c 69 3e 43 72 65 61 74 69 6e 67 20 62 75 69 6c 64 20 61 72 74 69 66 61 63 74 73 20 62 79 | .<li>Creating.build.artifacts.by |
| cc1e0 | 20 65 78 65 63 75 74 69 6e 67 20 74 68 65 20 5a 69 67 20 63 6f 6d 70 69 6c 65 72 2e 20 54 68 69 | .executing.the.Zig.compiler..Thi |
| cc200 | 73 20 69 6e 63 6c 75 64 65 73 0a 20 20 20 20 20 20 20 20 20 20 62 75 69 6c 64 69 6e 67 20 5a 69 | s.includes...........building.Zi |
| cc220 | 67 20 73 6f 75 72 63 65 20 63 6f 64 65 20 61 73 20 77 65 6c 6c 20 61 73 20 43 20 61 6e 64 20 43 | g.source.code.as.well.as.C.and.C |
| cc240 | 2b 2b 20 73 6f 75 72 63 65 20 63 6f 64 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | ++.source.code.</li>.........<li |
| cc260 | 3e 43 61 70 74 75 72 69 6e 67 20 75 73 65 72 2d 63 6f 6e 66 69 67 75 72 65 64 20 6f 70 74 69 6f | >Capturing.user-configured.optio |
| cc280 | 6e 73 20 61 6e 64 20 75 73 69 6e 67 20 74 68 6f 73 65 20 6f 70 74 69 6f 6e 73 20 74 6f 20 63 6f | ns.and.using.those.options.to.co |
| cc2a0 | 6e 66 69 67 75 72 65 0a 20 20 20 20 20 20 20 20 20 20 74 68 65 20 62 75 69 6c 64 2e 3c 2f 6c 69 | nfigure...........the.build.</li |
| cc2c0 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 72 66 61 63 69 6e 67 20 62 75 69 6c 64 20 63 6f | >.........<li>Surfacing.build.co |
| cc2e0 | 6e 66 69 67 75 72 61 74 69 6f 6e 20 61 73 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d | nfiguration.as.<a.href="#comptim |
| cc300 | 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 20 76 61 6c 75 65 73 20 62 79 20 70 72 6f 76 69 64 | e">comptime</a>.values.by.provid |
| cc320 | 69 6e 67 20 61 0a 20 20 20 20 20 20 20 20 20 20 66 69 6c 65 20 74 68 61 74 20 63 61 6e 20 62 65 | ing.a...........file.that.can.be |
| cc340 | 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 65 64 3c 2f 61 3e 20 | .<a.href="#import">imported</a>. |
| cc360 | 62 79 20 5a 69 67 20 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 | by.Zig.code.</li>.........<li>Ca |
| cc380 | 63 68 69 6e 67 20 62 75 69 6c 64 20 61 72 74 69 66 61 63 74 73 20 74 6f 20 61 76 6f 69 64 20 75 | ching.build.artifacts.to.avoid.u |
| cc3a0 | 6e 6e 65 63 65 73 73 61 72 69 6c 79 20 72 65 70 65 61 74 69 6e 67 20 73 74 65 70 73 2e 3c 2f 6c | nnecessarily.repeating.steps.</l |
| cc3c0 | 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 45 78 65 63 75 74 69 6e 67 20 62 75 69 6c 64 20 61 | i>.........<li>Executing.build.a |
| cc3e0 | 72 74 69 66 61 63 74 73 20 6f 72 20 73 79 73 74 65 6d 2d 69 6e 73 74 61 6c 6c 65 64 20 74 6f 6f | rtifacts.or.system-installed.too |
| cc400 | 6c 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 75 6e 6e 69 6e 67 20 74 65 73 | ls.</li>.........<li>Running.tes |
| cc420 | 74 73 20 61 6e 64 20 76 65 72 69 66 79 69 6e 67 20 74 68 65 20 6f 75 74 70 75 74 20 6f 66 20 65 | ts.and.verifying.the.output.of.e |
| cc440 | 78 65 63 75 74 69 6e 67 20 61 20 62 75 69 6c 64 20 61 72 74 69 66 61 63 74 20 6d 61 74 63 68 65 | xecuting.a.build.artifact.matche |
| cc460 | 73 0a 20 20 20 20 20 20 20 20 74 68 65 20 65 78 70 65 63 74 65 64 20 76 61 6c 75 65 2e 3c 2f 6c | s.........the.expected.value.</l |
| cc480 | 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 75 6e 6e 69 6e 67 20 3c 63 6f 64 65 3e 7a 69 67 | i>.........<li>Running.<code>zig |
| cc4a0 | 20 66 6d 74 3c 2f 63 6f 64 65 3e 20 6f 6e 20 61 20 63 6f 64 65 62 61 73 65 20 6f 72 20 61 20 73 | .fmt</code>.on.a.codebase.or.a.s |
| cc4c0 | 75 62 73 65 74 20 6f 66 20 69 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 75 | ubset.of.it.</li>.........<li>Cu |
| cc4e0 | 73 74 6f 6d 20 74 61 73 6b 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 | stom.tasks.</li>.......</ul>.... |
| cc500 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 75 73 65 20 74 68 65 20 62 75 69 6c 64 20 73 79 | ...<p>.......To.use.the.build.sy |
| cc520 | 73 74 65 6d 2c 20 72 75 6e 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 20 2d 2d 68 65 6c 70 3c | stem,.run.<kbd>zig.build.--help< |
| cc540 | 2f 6b 62 64 3e 0a 20 20 20 20 20 20 74 6f 20 73 65 65 20 61 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e | /kbd>.......to.see.a.command-lin |
| cc560 | 65 20 75 73 61 67 65 20 68 65 6c 70 20 6d 65 6e 75 2e 20 54 68 69 73 20 77 69 6c 6c 20 69 6e 63 | e.usage.help.menu..This.will.inc |
| cc580 | 6c 75 64 65 20 70 72 6f 6a 65 63 74 2d 73 70 65 63 69 66 69 63 0a 20 20 20 20 20 20 6f 70 74 69 | lude.project-specific.......opti |
| cc5a0 | 6f 6e 73 20 74 68 61 74 20 77 65 72 65 20 64 65 63 6c 61 72 65 64 20 69 6e 20 74 68 65 20 62 75 | ons.that.were.declared.in.the.bu |
| cc5c0 | 69 6c 64 2e 7a 69 67 20 73 63 72 69 70 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | ild.zig.script........</p>...... |
| cc5e0 | 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 74 68 65 20 74 69 6d 65 20 62 65 69 6e 67 2c 20 74 | .<p>.......For.the.time.being,.t |
| cc600 | 68 65 20 62 75 69 6c 64 20 73 79 73 74 65 6d 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 69 73 | he.build.system.documentation.is |
| cc620 | 20 68 6f 73 74 65 64 20 65 78 74 65 72 6e 61 6c 6c 79 3a 0a 20 20 20 20 20 20 3c 61 20 68 72 65 | .hosted.externally:.......<a.hre |
| cc640 | 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 6c 65 61 72 6e 2f 62 75 69 | f="https://ziglang.org/learn/bui |
| cc660 | 6c 64 2d 73 79 73 74 65 6d 2f 22 3e 42 75 69 6c 64 20 53 79 73 74 65 6d 20 44 6f 63 75 6d 65 6e | ld-system/">Build.System.Documen |
| cc680 | 74 61 74 69 6f 6e 3c 2f 61 3e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 | tation</a>.......</p>........... |
| cc6a0 | 20 20 20 3c 68 32 20 69 64 3d 22 43 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 22 3e 43 | ...<h2.id="C"><a.href="#toc-C">C |
| cc6c0 | 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 22 3e c2 a7 | </a>.<a.class="hdr".href="#C">.. |
| cc6e0 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6c 74 68 6f | </a></h2>........<p>.......Altho |
| cc700 | 75 67 68 20 5a 69 67 20 69 73 20 69 6e 64 65 70 65 6e 64 65 6e 74 20 6f 66 20 43 2c 20 61 6e 64 | ugh.Zig.is.independent.of.C,.and |
| cc720 | 2c 20 75 6e 6c 69 6b 65 20 6d 6f 73 74 20 6f 74 68 65 72 20 6c 61 6e 67 75 61 67 65 73 2c 20 64 | ,.unlike.most.other.languages,.d |
| cc740 | 6f 65 73 20 6e 6f 74 20 64 65 70 65 6e 64 20 6f 6e 20 6c 69 62 63 2c 0a 20 20 20 20 20 20 5a 69 | oes.not.depend.on.libc,.......Zi |
| cc760 | 67 20 61 63 6b 6e 6f 77 6c 65 64 67 65 73 20 74 68 65 20 69 6d 70 6f 72 74 61 6e 63 65 20 6f 66 | g.acknowledges.the.importance.of |
| cc780 | 20 69 6e 74 65 72 61 63 74 69 6e 67 20 77 69 74 68 20 65 78 69 73 74 69 6e 67 20 43 20 63 6f 64 | .interacting.with.existing.C.cod |
| cc7a0 | 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 |
| cc7c0 | 65 72 65 20 61 72 65 20 61 20 66 65 77 20 77 61 79 73 20 74 68 61 74 20 5a 69 67 20 66 61 63 69 | ere.are.a.few.ways.that.Zig.faci |
| cc7e0 | 6c 69 74 61 74 65 73 20 43 20 69 6e 74 65 72 6f 70 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | litates.C.interop........</p>... |
| cc800 | 20 20 20 20 3c 68 33 20 69 64 3d 22 43 2d 54 79 70 65 2d 50 72 69 6d 69 74 69 76 65 73 22 3e 3c | ....<h3.id="C-Type-Primitives">< |
| cc820 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 2d 54 79 70 65 2d 50 72 69 6d 69 74 69 76 65 73 22 3e | a.href="#toc-C-Type-Primitives"> |
| cc840 | 43 20 54 79 70 65 20 50 72 69 6d 69 74 69 76 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | C.Type.Primitives</a>.<a.class=" |
| cc860 | 68 64 72 22 20 68 72 65 66 3d 22 23 43 2d 54 79 70 65 2d 50 72 69 6d 69 74 69 76 65 73 22 3e c2 | hdr".href="#C-Type-Primitives">. |
| cc880 | 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 73 | .</a></h3>........<p>.......Thes |
| cc8a0 | 65 20 68 61 76 65 20 67 75 61 72 61 6e 74 65 65 64 20 43 20 41 42 49 20 63 6f 6d 70 61 74 69 62 | e.have.guaranteed.C.ABI.compatib |
| cc8c0 | 69 6c 69 74 79 20 61 6e 64 20 63 61 6e 20 62 65 20 75 73 65 64 20 6c 69 6b 65 20 61 6e 79 20 6f | ility.and.can.be.used.like.any.o |
| cc8e0 | 74 68 65 72 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e | ther.type........</p>.......<ul> |
| cc900 | 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 |
| cc920 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 63 68 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ="tok-type">c_char</span></code> |
| cc940 | 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. |
| cc960 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 73 68 6f 72 74 3c 2f 73 70 61 6e 3e 3c | class="tok-type">c_short</span>< |
| cc980 | 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 3e | /code></li>...........<li><code> |
| cc9a0 | 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 68 6f 72 74 3c | <span.class="tok-type">c_ushort< |
| cc9c0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | /span></code></li>...........<li |
| cc9e0 | 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 63 5f | ><code><span.class="tok-type">c_ |
| cca00 | 69 6e 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 | int</span></code></li>.......... |
| cca20 | 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 |
| cca40 | 22 3e 63 5f 75 69 6e 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 | ">c_uint</span></code></li>..... |
| cca60 | 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 |
| cca80 | 2d 74 79 70 65 22 3e 63 5f 6c 6f 6e 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e | -type">c_long</span></code></li> |
| ccaa0 | 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 |
| ccac0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 75 6c 6f 6e 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ="tok-type">c_ulong</span></code |
| ccae0 | 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 6e | ></li>...........<li><code><span |
| ccb00 | 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 6f 6e 67 3c 2f 73 70 | .class="tok-type">c_longlong</sp |
| ccb20 | 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 |
| ccb40 | 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 6c 6f | ode><span.class="tok-type">c_ulo |
| ccb60 | 6e 67 6c 6f 6e 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | nglong</span></code></li>....... |
| ccb80 | 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 74 | ....<li><code><span.class="tok-t |
| ccba0 | 79 70 65 22 3e 63 5f 6c 6f 6e 67 64 6f 75 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | ype">c_longdouble</span></code>< |
| ccbc0 | 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>...... |
| ccbe0 | 20 54 6f 20 69 6e 74 65 72 6f 70 20 77 69 74 68 20 74 68 65 20 43 20 3c 63 6f 64 65 3e 3c 73 70 | .To.interop.with.the.C.<code><sp |
| ccc00 | 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>< |
| ccc20 | 2f 63 6f 64 65 3e 20 74 79 70 65 2c 20 75 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | /code>.type,.use.<code><span.cla |
| ccc40 | 73 73 3d 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 | ss="tok-type">anyopaque</span></ |
| ccc60 | 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 65 20 61 | code>........</p>.......<p>See.a |
| ccc80 | 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 72 69 6d 69 | lso:</p><ul>.<li><a.href="#Primi |
| ccca0 | 74 69 76 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 | tive-Types">Primitive.Types</a>< |
| cccc0 | 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= |
| ccce0 | 22 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 3c 61 20 68 | "Import-from-C-Header-File"><a.h |
| ccd00 | 72 65 66 3d 22 23 74 6f 63 2d 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 | ref="#toc-Import-from-C-Header-F |
| ccd20 | 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</ |
| ccd40 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 74 2d | a>.<a.class="hdr".href="#Import- |
| ccd60 | 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | from-C-Header-File">..</a></h3>. |
| ccd80 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | .......<p>.......The.<code><span |
| ccda0 | 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 |
| ccdc0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e | pan></code>.builtin.function.can |
| ccde0 | 20 62 65 20 75 73 65 64 0a 20 20 20 20 20 20 74 6f 20 64 69 72 65 63 74 6c 79 20 69 6d 70 6f 72 | .be.used.......to.directly.impor |
| cce00 | 74 20 73 79 6d 62 6f 6c 73 20 66 72 6f 6d 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 | t.symbols.from.<code.class="file |
| cce20 | 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 2f 70 3e 0a 20 20 | ">.h</code>.files:.......</p>... |
| cce40 | 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 |
| cce60 | 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 49 6d 70 6f | ig-cap"><cite.class="file">cImpo |
| cce80 | 72 74 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 | rt_builtin.zig</cite></figcaptio |
| ccea0 | 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 |
| ccec0 | 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 22 | ">const</span>.c.=.<span.class=" |
| ccee0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 7b 0a 20 | tok-builtin">@cImport</span>({.. |
| ccf00 | 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">//. |
| ccf20 | 53 65 65 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a | See.https://github.com/ziglang/z |
| ccf40 | 69 67 2f 69 73 73 75 65 73 2f 35 31 35 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ig/issues/515</span>.....<span.c |
| ccf60 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 | lass="tok-builtin">@cDefine</spa |
| ccf80 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5f | n>(<span.class="tok-str">"_ |
| ccfa0 | 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 6e 3e | NO_CRT_STDIO_INLINE"</span> |
| ccfc0 | 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 31 26 | ,.<span.class="tok-str">"1& |
| ccfe0 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | quot;</span>);.....<span.class=" |
| cd000 | 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 |
| cd020 | 70 61 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 6f 2e | pan.class="tok-str">"stdio. |
| cd040 | 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 73 73 | h"</span>);.});.<span.class |
| cd060 | 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 |
| cd080 | 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= |
| cd0a0 | 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 |
| cd0c0 | 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>.{..... |
| cd0e0 | 5f 20 3d 20 63 2e 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 | _.=.c.printf(<span.class="tok-st |
| cd100 | 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a | r">"hello\n"</span>);. |
| cd120 | 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>< |
| cd140 | 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 |
| cd160 | 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 |
| cd180 | 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 63 49 6d 70 6f 72 74 5f 62 75 69 6c 74 69 6e 2e 7a | >zig.build-exe.cImport_builtin.z |
| cd1a0 | 69 67 20 2d 6c 63 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 63 49 6d 70 6f 72 74 5f 62 75 | ig.-lc</kbd>.$.<kbd>./cImport_bu |
| cd1c0 | 69 6c 74 69 6e 3c 2f 6b 62 64 3e 0a 68 65 6c 6c 6f 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c | iltin</kbd>.hello.</samp></pre>< |
| cd1e0 | 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 3c 63 | /figure>........<p>.......The.<c |
| cd200 | 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 |
| cd220 | 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 74 61 | Import</span></code>.function.ta |
| cd240 | 6b 65 73 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 61 73 20 61 20 70 61 72 61 6d 65 74 65 72 | kes.an.expression.as.a.parameter |
| cd260 | 2e 0a 20 20 20 20 20 20 54 68 69 73 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 65 76 61 6c 75 | ........This.expression.is.evalu |
| cd280 | 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 69 73 20 75 73 65 64 | ated.at.compile-time.and.is.used |
| cd2a0 | 20 74 6f 20 63 6f 6e 74 72 6f 6c 0a 20 20 20 20 20 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 64 | .to.control.......preprocessor.d |
| cd2c0 | 69 72 65 63 74 69 76 65 73 20 61 6e 64 20 69 6e 63 6c 75 64 65 20 6d 75 6c 74 69 70 6c 65 20 3c | irectives.and.include.multiple.< |
| cd2e0 | 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 3e 20 66 69 6c 65 | code.class="file">.h</code>.file |
| cd300 | 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 |
| cd320 | 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 |
| cd340 | 61 73 73 3d 22 66 69 6c 65 22 3e 40 63 49 6d 70 6f 72 74 20 45 78 70 72 65 73 73 69 6f 6e 3c 2f | ass="file">@cImport.Expression</ |
| cd360 | 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 |
| cd380 | 61 6e 20 63 6c 61 73 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 |
| cd3a0 | 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 |
| cd3c0 | 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 |
| cd3e0 | 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 |
| cd400 | 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | n>);..<span.class="tok-kw">const |
| cd420 | 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 |
| cd440 | 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 7b 0a 20 20 20 20 3c 73 70 61 | ltin">@cImport</span>({.....<spa |
| cd460 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f | n.class="tok-builtin">@cDefine</ |
| cd480 | 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 |
| cd4a0 | 74 3b 4e 44 45 42 55 47 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 62 75 69 6c 74 69 6e 2e 6d | t;NDEBUG"</span>,.builtin.m |
| cd4c0 | 6f 64 65 20 3d 3d 20 2e 52 65 6c 65 61 73 65 46 61 73 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | ode.==..ReleaseFast);.....<span. |
| cd4e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 6f 6d 65 74 68 | class="tok-kw">if</span>.(someth |
| cd500 | 69 6e 67 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 | ing).{.........<span.class="tok- |
| cd520 | 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 |
| cd540 | 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 45 | lass="tok-str">"_GNU_SOURCE |
| cd560 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 7b 7d 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 | "</span>,.{});.....}.....<s |
| cd580 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 | pan.class="tok-builtin">@cInclud |
| cd5a0 | 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">& |
| cd5c0 | 71 75 6f 74 3b 73 74 64 6c 69 62 2e 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | quot;stdlib.h"</span>);.... |
| cd5e0 | 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>. |
| cd600 | 28 73 6f 6d 65 74 68 69 6e 67 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | (something).{.........<span.clas |
| cd620 | 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 73 70 61 6e 3e 28 3c | s="tok-builtin">@cUndef</span>(< |
| cd640 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5f 47 4e 55 5f | span.class="tok-str">"_GNU_ |
| cd660 | 53 4f 55 52 43 45 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 | SOURCE"</span>);.....}..... |
| cd680 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c | <span.class="tok-builtin">@cIncl |
| cd6a0 | 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 74 72 22 | ude</span>(<span.class="tok-str" |
| cd6c0 | 3e 26 71 75 6f 74 3b 73 6f 75 6e 64 69 6f 2e 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a | >"soundio.h"</span>);. |
| cd6e0 | 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 20 20 20 20 20 | });</code></pre></figure>....... |
| cd700 | 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 |
| cd720 | 3d 22 23 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c | ="#cImport">@cImport</a></li>.<l |
| cd740 | 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 3c | i><a.href="#cInclude">@cInclude< |
| cd760 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 3e | /a></li>.<li><a.href="#cDefine"> |
| cd780 | 40 63 44 65 66 69 6e 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | @cDefine</a></li>.<li><a.href="# |
| cd7a0 | 63 55 6e 64 65 66 22 3e 40 63 55 6e 64 65 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | cUndef">@cUndef</a></li>.<li><a. |
| cd7c0 | 68 72 65 66 3d 22 23 69 6d 70 6f 72 74 22 3e 40 69 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a | href="#import">@import</a></li>. |
| cd7e0 | 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 43 2d 54 | </ul>................<h3.id="C-T |
| cd800 | 72 61 6e 73 6c 61 74 69 6f 6e 2d 43 4c 49 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 2d | ranslation-CLI"><a.href="#toc-C- |
| cd820 | 54 72 61 6e 73 6c 61 74 69 6f 6e 2d 43 4c 49 22 3e 43 20 54 72 61 6e 73 6c 61 74 69 6f 6e 20 43 | Translation-CLI">C.Translation.C |
| cd840 | 4c 49 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 2d 54 | LI</a>.<a.class="hdr".href="#C-T |
| cd860 | 72 61 6e 73 6c 61 74 69 6f 6e 2d 43 4c 49 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 | ranslation-CLI">..</a></h3>..... |
| cd880 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 27 73 20 43 20 74 72 61 6e 73 6c 61 74 69 6f 6e | ...<p>.......Zig's.C.translation |
| cd8a0 | 20 63 61 70 61 62 69 6c 69 74 79 20 69 73 20 61 76 61 69 6c 61 62 6c 65 20 61 73 20 61 20 43 4c | .capability.is.available.as.a.CL |
| cd8c0 | 49 20 74 6f 6f 6c 20 76 69 61 20 3c 6b 62 64 3e 7a 69 67 20 74 72 61 6e 73 6c 61 74 65 2d 63 3c | I.tool.via.<kbd>zig.translate-c< |
| cd8e0 | 2f 6b 62 64 3e 2e 0a 20 20 20 20 20 20 49 74 20 72 65 71 75 69 72 65 73 20 61 20 73 69 6e 67 6c | /kbd>........It.requires.a.singl |
| cd900 | 65 20 66 69 6c 65 6e 61 6d 65 20 61 73 20 61 6e 20 61 72 67 75 6d 65 6e 74 2e 20 49 74 20 6d 61 | e.filename.as.an.argument..It.ma |
| cd920 | 79 20 61 6c 73 6f 20 74 61 6b 65 20 61 20 73 65 74 20 6f 66 20 6f 70 74 69 6f 6e 61 6c 20 66 6c | y.also.take.a.set.of.optional.fl |
| cd940 | 61 67 73 20 74 68 61 74 20 61 72 65 0a 20 20 20 20 20 20 66 6f 72 77 61 72 64 65 64 20 74 6f 20 | ags.that.are.......forwarded.to. |
| cd960 | 63 6c 61 6e 67 2e 20 49 74 20 77 72 69 74 65 73 20 74 68 65 20 74 72 61 6e 73 6c 61 74 65 64 20 | clang..It.writes.the.translated. |
| cd980 | 66 69 6c 65 20 74 6f 20 73 74 64 6f 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | file.to.stdout........</p>...... |
| cd9a0 | 20 3c 68 34 20 69 64 3d 22 43 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 2d 66 6c 61 67 73 22 3e 3c 61 20 | .<h4.id="Command-line-flags"><a. |
| cd9c0 | 68 72 65 66 3d 22 23 74 6f 63 2d 43 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 2d 66 6c 61 67 73 22 3e 43 | href="#toc-Command-line-flags">C |
| cd9e0 | 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 66 6c 61 67 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | ommand.line.flags</a>.<a.class=" |
| cda00 | 68 64 72 22 20 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 | hdr".href="#Command-line-flags"> |
| cda20 | c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | ..</a></h4>........<ul>......... |
| cda40 | 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6b 62 64 3e 2d 49 3c 2f 6b 62 64 3e 3a 0a 20 20 | <li>...........<kbd>-I</kbd>:... |
| cda60 | 20 20 20 20 20 20 20 20 53 70 65 63 69 66 79 20 61 20 73 65 61 72 63 68 20 64 69 72 65 63 74 6f | ........Specify.a.search.directo |
| cda80 | 72 79 20 66 6f 72 20 69 6e 63 6c 75 64 65 20 66 69 6c 65 73 2e 20 4d 61 79 20 62 65 20 75 73 65 | ry.for.include.files..May.be.use |
| cdaa0 | 64 20 6d 75 6c 74 69 70 6c 65 20 74 69 6d 65 73 2e 20 45 71 75 69 76 61 6c 65 6e 74 20 74 6f 0a | d.multiple.times..Equivalent.to. |
| cdac0 | 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 65 61 | ..........<a.href="https://relea |
| cdae0 | 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 67 2f | ses.llvm.org/12.0.0/tools/clang/ |
| cdb00 | 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 2e 68 | docs/ClangCommandLineReference.h |
| cdb20 | 74 6d 6c 23 63 6d 64 6f 70 74 69 6f 6e 2d 63 6c 61 6e 67 2d 69 2d 64 69 72 22 3e 0a 20 20 20 20 | tml#cmdoption-clang-i-dir">..... |
| cdb40 | 20 20 20 20 20 20 63 6c 61 6e 67 27 73 20 3c 6b 62 64 3e 2d 49 3c 2f 6b 62 64 3e 20 66 6c 61 67 | ......clang's.<kbd>-I</kbd>.flag |
| cdb60 | 3c 2f 61 3e 2e 20 54 68 65 20 63 75 72 72 65 6e 74 20 64 69 72 65 63 74 6f 72 79 20 69 73 20 3c | </a>..The.current.directory.is.< |
| cdb80 | 65 6d 3e 6e 6f 74 3c 2f 65 6d 3e 20 69 6e 63 6c 75 64 65 64 20 62 79 20 64 65 66 61 75 6c 74 3b | em>not</em>.included.by.default; |
| cdba0 | 0a 20 20 20 20 20 20 20 20 20 20 75 73 65 20 3c 6b 62 64 3e 2d 49 2e 3c 2f 6b 62 64 3e 20 74 6f | ...........use.<kbd>-I.</kbd>.to |
| cdbc0 | 20 69 6e 63 6c 75 64 65 20 69 74 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 | .include.it..........</li>...... |
| cdbe0 | 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6b 62 64 3e 2d 44 3c 2f 6b 62 64 3e 3a | ...<li>...........<kbd>-D</kbd>: |
| cdc00 | 20 44 65 66 69 6e 65 20 61 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 6d 61 63 72 6f 2e 20 45 71 | .Define.a.preprocessor.macro..Eq |
| cdc20 | 75 69 76 61 6c 65 6e 74 20 74 6f 0a 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 | uivalent.to...........<a.href="h |
| cdc40 | 74 74 70 73 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 | ttps://releases.llvm.org/12.0.0/ |
| cdc60 | 74 6f 6f 6c 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 | tools/clang/docs/ClangCommandLin |
| cdc80 | 65 52 65 66 65 72 65 6e 63 65 2e 68 74 6d 6c 23 63 6d 64 6f 70 74 69 6f 6e 2d 63 6c 61 6e 67 2d | eReference.html#cmdoption-clang- |
| cdca0 | 64 2d 6d 61 63 72 6f 22 3e 0a 20 20 20 20 20 20 20 20 20 20 63 6c 61 6e 67 27 73 20 3c 6b 62 64 | d-macro">...........clang's.<kbd |
| cdcc0 | 3e 2d 44 3c 2f 6b 62 64 3e 20 66 6c 61 67 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 | >-D</kbd>.flag</a>..........</li |
| cdce0 | 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 3c 6b 62 64 3e 2d 63 | >.........<li>...........<kbd>-c |
| cdd00 | 66 6c 61 67 73 20 5b 66 6c 61 67 73 5d 20 2d 2d 3c 2f 6b 62 64 3e 3a 20 50 61 73 73 20 61 72 62 | flags.[flags].--</kbd>:.Pass.arb |
| cdd20 | 69 74 72 61 72 79 20 61 64 64 69 74 69 6f 6e 61 6c 0a 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 | itrary.additional...........<a.h |
| cdd40 | 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 72 67 2f 31 | ref="https://releases.llvm.org/1 |
| cdd60 | 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 43 6f 6d 6d | 2.0.0/tools/clang/docs/ClangComm |
| cdd80 | 61 6e 64 4c 69 6e 65 52 65 66 65 72 65 6e 63 65 2e 68 74 6d 6c 22 3e 63 6f 6d 6d 61 6e 64 20 6c | andLineReference.html">command.l |
| cdda0 | 69 6e 65 0a 20 20 20 20 20 20 20 20 20 20 66 6c 61 67 73 3c 2f 61 3e 20 74 6f 20 63 6c 61 6e 67 | ine...........flags</a>.to.clang |
| cddc0 | 2e 20 4e 6f 74 65 3a 20 74 68 65 20 6c 69 73 74 20 6f 66 20 66 6c 61 67 73 20 6d 75 73 74 20 65 | ..Note:.the.list.of.flags.must.e |
| cdde0 | 6e 64 20 77 69 74 68 20 3c 6b 62 64 3e 2d 2d 3c 2f 6b 62 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f | nd.with.<kbd>--</kbd>.........</ |
| cde00 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6b 62 64 3e | li>.........<li>...........<kbd> |
| cde20 | 2d 74 61 72 67 65 74 3c 2f 6b 62 64 3e 3a 20 54 68 65 20 3c 61 20 68 72 65 66 3d 22 23 54 61 72 | -target</kbd>:.The.<a.href="#Tar |
| cde40 | 67 65 74 73 22 3e 74 61 72 67 65 74 20 74 72 69 70 6c 65 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 | gets">target.triple</a>.for.the. |
| cde60 | 74 72 61 6e 73 6c 61 74 65 64 20 5a 69 67 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 20 20 20 20 49 | translated.Zig.code............I |
| cde80 | 66 20 6e 6f 20 74 61 72 67 65 74 20 69 73 20 73 70 65 63 69 66 69 65 64 2c 20 74 68 65 20 63 75 | f.no.target.is.specified,.the.cu |
| cdea0 | 72 72 65 6e 74 20 68 6f 73 74 20 74 61 72 67 65 74 20 77 69 6c 6c 20 62 65 20 75 73 65 64 2e 0a | rrent.host.target.will.be.used.. |
| cdec0 | 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 | ........</li>.......</ul>....... |
| cdee0 | 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 55 73 69 6e 67 2d 2d 74 61 72 67 65 74 2d 61 6e 64 | .......<h4.id="Using--target-and |
| cdf00 | 2d 2d 63 66 6c 61 67 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 55 73 69 6e 67 2d 2d 74 | --cflags"><a.href="#toc-Using--t |
| cdf20 | 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 |
| cdf40 | 20 61 6e 64 20 2d 63 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 | .and.-cflags</a>.<a.class="hdr". |
| cdf60 | 68 72 65 66 3d 22 23 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 | href="#Using--target-and--cflags |
| cdf80 | 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 20 20 20 | ">..</a></h4>........<p>........ |
| cdfa0 | 20 3c 73 74 72 6f 6e 67 3e 49 6d 70 6f 72 74 61 6e 74 21 3c 2f 73 74 72 6f 6e 67 3e 20 57 68 65 | .<strong>Important!</strong>.Whe |
| cdfc0 | 6e 20 74 72 61 6e 73 6c 61 74 69 6e 67 20 43 20 63 6f 64 65 20 77 69 74 68 20 3c 6b 62 64 3e 7a | n.translating.C.code.with.<kbd>z |
| cdfe0 | 69 67 20 74 72 61 6e 73 6c 61 74 65 2d 63 3c 2f 6b 62 64 3e 2c 0a 20 20 20 20 20 20 20 20 79 6f | ig.translate-c</kbd>,.........yo |
| ce000 | 75 20 3c 73 74 72 6f 6e 67 3e 6d 75 73 74 3c 2f 73 74 72 6f 6e 67 3e 20 75 73 65 20 74 68 65 20 | u.<strong>must</strong>.use.the. |
| ce020 | 73 61 6d 65 20 3c 6b 62 64 3e 2d 74 61 72 67 65 74 3c 2f 6b 62 64 3e 20 74 72 69 70 6c 65 20 74 | same.<kbd>-target</kbd>.triple.t |
| ce040 | 68 61 74 20 79 6f 75 20 77 69 6c 6c 20 75 73 65 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 0a | hat.you.will.use.when.compiling. |
| ce060 | 20 20 20 20 20 20 20 20 74 68 65 20 74 72 61 6e 73 6c 61 74 65 64 20 63 6f 64 65 2e 20 49 6e 20 | ........the.translated.code..In. |
| ce080 | 61 64 64 69 74 69 6f 6e 2c 20 79 6f 75 20 3c 73 74 72 6f 6e 67 3e 6d 75 73 74 3c 2f 73 74 72 6f | addition,.you.<strong>must</stro |
| ce0a0 | 6e 67 3e 20 65 6e 73 75 72 65 20 74 68 61 74 20 74 68 65 20 3c 6b 62 64 3e 2d 63 66 6c 61 67 73 | ng>.ensure.that.the.<kbd>-cflags |
| ce0c0 | 3c 2f 6b 62 64 3e 20 75 73 65 64 2c 0a 20 20 20 20 20 20 20 20 69 66 20 61 6e 79 2c 20 6d 61 74 | </kbd>.used,.........if.any,.mat |
| ce0e0 | 63 68 20 74 68 65 20 63 66 6c 61 67 73 20 75 73 65 64 20 62 79 20 63 6f 64 65 20 6f 6e 20 74 68 | ch.the.cflags.used.by.code.on.th |
| ce100 | 65 20 74 61 72 67 65 74 20 73 79 73 74 65 6d 2e 20 55 73 69 6e 67 20 74 68 65 20 69 6e 63 6f 72 | e.target.system..Using.the.incor |
| ce120 | 72 65 63 74 20 3c 6b 62 64 3e 2d 74 61 72 67 65 74 3c 2f 6b 62 64 3e 0a 20 20 20 20 20 20 20 20 | rect.<kbd>-target</kbd>......... |
| ce140 | 6f 72 20 3c 6b 62 64 3e 2d 63 66 6c 61 67 73 3c 2f 6b 62 64 3e 20 63 6f 75 6c 64 20 72 65 73 75 | or.<kbd>-cflags</kbd>.could.resu |
| ce160 | 6c 74 20 69 6e 20 63 6c 61 6e 67 20 6f 72 20 5a 69 67 20 70 61 72 73 65 20 66 61 69 6c 75 72 65 | lt.in.clang.or.Zig.parse.failure |
| ce180 | 73 2c 20 6f 72 20 73 75 62 74 6c 65 20 41 42 49 20 69 6e 63 6f 6d 70 61 74 69 62 69 6c 69 74 69 | s,.or.subtle.ABI.incompatibiliti |
| ce1a0 | 65 73 0a 20 20 20 20 20 20 20 20 77 68 65 6e 20 6c 69 6e 6b 69 6e 67 20 77 69 74 68 20 43 20 63 | es.........when.linking.with.C.c |
| ce1c0 | 6f 64 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 | ode........</p>.......<figure><f |
| ce1e0 | 69 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 | igcaption.class="c-cap"><cite.cl |
| ce200 | 61 73 73 3d 22 66 69 6c 65 22 3e 76 61 72 79 74 61 72 67 65 74 2e 68 3c 2f 63 69 74 65 3e 3c 2f | ass="file">varytarget.h</cite></ |
| ce220 | 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 6c 6f 6e 67 20 46 4f 4f 20 3d | figcaption><pre><code>long.FOO.= |
| ce240 | 20 5f 5f 4c 4f 4e 47 5f 4d 41 58 5f 5f 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | .__LONG_MAX__;</code></pre></fig |
| ce260 | 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 20 63 | ure>.......<figure><figcaption.c |
| ce280 | 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 |
| ce2a0 | 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 73 6c 61 | on><pre><samp>$.<kbd>zig.transla |
| ce2c0 | 74 65 2d 63 20 2d 74 61 72 67 65 74 20 74 68 75 6d 62 2d 66 72 65 65 73 74 61 6e 64 69 6e 67 2d | te-c.-target.thumb-freestanding- |
| ce2e0 | 67 6e 75 65 61 62 69 68 66 20 76 61 72 79 74 61 72 67 65 74 2e 68 7c 67 72 65 70 20 46 4f 4f 3c | gnueabihf.varytarget.h|grep.FOO< |
| ce300 | 2f 6b 62 64 3e 0a 70 75 62 20 65 78 70 6f 72 74 20 76 61 72 20 46 4f 4f 3a 20 63 5f 6c 6f 6e 67 | /kbd>.pub.export.var.FOO:.c_long |
| ce320 | 20 3d 20 32 31 34 37 34 38 33 36 34 37 3b 0a 24 20 3c 6b 62 64 3e 7a 69 67 20 74 72 61 6e 73 6c | .=.2147483647;.$.<kbd>zig.transl |
| ce340 | 61 74 65 2d 63 20 2d 74 61 72 67 65 74 20 78 38 36 5f 36 34 2d 6d 61 63 6f 73 2d 67 6e 75 20 76 | ate-c.-target.x86_64-macos-gnu.v |
| ce360 | 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 65 | arytarget.h|grep.FOO</kbd>.pub.e |
| ce380 | 78 70 6f 72 74 20 76 61 72 20 46 4f 4f 3a 20 63 5f 6c 6f 6e 67 20 3d 20 39 32 32 33 33 37 32 30 | xport.var.FOO:.c_long.=.92233720 |
| ce3a0 | 33 36 38 35 34 37 37 35 38 30 37 3b 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | 36854775807;.</samp></pre></figu |
| ce3c0 | 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 20 63 6c | re>.......<figure><figcaption.cl |
| ce3e0 | 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 76 | ass="c-cap"><cite.class="file">v |
| ce400 | 61 72 79 63 66 6c 61 67 73 2e 68 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | arycflags.h</cite></figcaption>< |
| ce420 | 70 72 65 3e 3c 63 6f 64 65 3e 65 6e 75 6d 20 46 4f 4f 20 7b 20 42 41 52 20 7d 3b 0a 69 6e 74 20 | pre><code>enum.FOO.{.BAR.};.int. |
| ce440 | 64 6f 5f 73 6f 6d 65 74 68 69 6e 67 28 65 6e 75 6d 20 46 4f 4f 20 66 6f 6f 29 3b 3c 2f 63 6f 64 | do_something(enum.FOO.foo);</cod |
| ce460 | 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 69 67 75 72 65 3e | e></pre></figure>.......<figure> |
| ce480 | 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 |
| ce4a0 | 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 |
| ce4c0 | 64 3e 7a 69 67 20 74 72 61 6e 73 6c 61 74 65 2d 63 20 76 61 72 79 63 66 6c 61 67 73 2e 68 7c 67 | d>zig.translate-c.varycflags.h|g |
| ce4e0 | 72 65 70 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 | rep.-B1.do_something</kbd>.pub.c |
| ce500 | 6f 6e 73 74 20 65 6e 75 6d 5f 46 4f 4f 20 3d 20 63 5f 75 69 6e 74 3b 0a 70 75 62 20 65 78 74 65 | onst.enum_FOO.=.c_uint;.pub.exte |
| ce520 | 72 6e 20 66 6e 20 64 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 | rn.fn.do_something(foo:.enum_FOO |
| ce540 | 29 20 63 5f 69 6e 74 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 | ).c_int;.$.<kbd>zig.translate-c. |
| ce560 | 2d 63 66 6c 61 67 73 20 2d 66 73 68 6f 72 74 2d 65 6e 75 6d 73 20 2d 2d 20 76 61 72 79 63 66 6c | -cflags.-fshort-enums.--.varycfl |
| ce580 | 61 67 73 2e 68 7c 67 72 65 70 20 2d 42 31 20 64 6f 5f 73 6f 6d 65 74 68 69 6e 67 3c 2f 6b 62 64 | ags.h|grep.-B1.do_something</kbd |
| ce5a0 | 3e 0a 70 75 62 20 63 6f 6e 73 74 20 65 6e 75 6d 5f 46 4f 4f 20 3d 20 75 38 3b 0a 70 75 62 20 65 | >.pub.const.enum_FOO.=.u8;.pub.e |
| ce5c0 | 78 74 65 72 6e 20 66 6e 20 64 6f 5f 73 6f 6d 65 74 68 69 6e 67 28 66 6f 6f 3a 20 65 6e 75 6d 5f | xtern.fn.do_something(foo:.enum_ |
| ce5e0 | 46 4f 4f 29 20 63 5f 69 6e 74 3b 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | FOO).c_int;.</samp></pre></figur |
| ce600 | 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 63 49 6d 70 6f 72 74 2d | e>..............<h4.id="cImport- |
| ce620 | 76 73 2d 74 72 61 6e 73 6c 61 74 65 2d 63 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 49 | vs-translate-c"><a.href="#toc-cI |
| ce640 | 6d 70 6f 72 74 2d 76 73 2d 74 72 61 6e 73 6c 61 74 65 2d 63 22 3e 40 63 49 6d 70 6f 72 74 20 76 | mport-vs-translate-c">@cImport.v |
| ce660 | 73 20 74 72 61 6e 73 6c 61 74 65 2d 63 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | s.translate-c</a>.<a.class="hdr" |
| ce680 | 20 68 72 65 66 3d 22 23 63 49 6d 70 6f 72 74 2d 76 73 2d 74 72 61 6e 73 6c 61 74 65 2d 63 22 3e | .href="#cImport-vs-translate-c"> |
| ce6a0 | c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 3c 73 70 61 | ..</a></h4>........<p><code><spa |
| ce6c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f | n.class="tok-builtin">@cImport</ |
| ce6e0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 6b 62 64 3e 7a 69 67 20 74 72 61 6e 73 6c | span></code>.and.<kbd>zig.transl |
| ce700 | 61 74 65 2d 63 3c 2f 6b 62 64 3e 20 75 73 65 20 74 68 65 20 73 61 6d 65 20 75 6e 64 65 72 6c 79 | ate-c</kbd>.use.the.same.underly |
| ce720 | 69 6e 67 0a 20 20 20 20 20 20 43 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20 66 75 6e 63 74 69 6f 6e | ing.......C.translation.function |
| ce740 | 61 6c 69 74 79 2c 20 73 6f 20 6f 6e 20 61 20 74 65 63 68 6e 69 63 61 6c 20 6c 65 76 65 6c 20 74 | ality,.so.on.a.technical.level.t |
| ce760 | 68 65 79 20 61 72 65 20 65 71 75 69 76 61 6c 65 6e 74 2e 20 49 6e 20 70 72 61 63 74 69 63 65 2c | hey.are.equivalent..In.practice, |
| ce780 | 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 75 | .......<code><span.class="tok-bu |
| ce7a0 | 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 | iltin">@cImport</span></code>.is |
| ce7c0 | 20 75 73 65 66 75 6c 20 61 73 20 61 20 77 61 79 20 74 6f 20 71 75 69 63 6b 6c 79 20 61 6e 64 20 | .useful.as.a.way.to.quickly.and. |
| ce7e0 | 65 61 73 69 6c 79 20 61 63 63 65 73 73 20 6e 75 6d 65 72 69 63 20 63 6f 6e 73 74 61 6e 74 73 2c | easily.access.numeric.constants, |
| ce800 | 20 74 79 70 65 64 65 66 73 2c 0a 20 20 20 20 20 20 61 6e 64 20 72 65 63 6f 72 64 20 74 79 70 65 | .typedefs,.......and.record.type |
| ce820 | 73 20 77 69 74 68 6f 75 74 20 6e 65 65 64 69 6e 67 20 61 6e 79 20 65 78 74 72 61 20 73 65 74 75 | s.without.needing.any.extra.setu |
| ce840 | 70 2e 20 49 66 20 79 6f 75 20 6e 65 65 64 20 74 6f 20 70 61 73 73 20 3c 61 20 68 72 65 66 3d 22 | p..If.you.need.to.pass.<a.href=" |
| ce860 | 23 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 63 66 6c 61 | #Using--target-and--cflags">cfla |
| ce880 | 67 73 3c 2f 61 3e 0a 20 20 20 20 20 20 74 6f 20 63 6c 61 6e 67 2c 20 6f 72 20 69 66 20 79 6f 75 | gs</a>.......to.clang,.or.if.you |
| ce8a0 | 20 77 6f 75 6c 64 20 6c 69 6b 65 20 74 6f 20 65 64 69 74 20 74 68 65 20 74 72 61 6e 73 6c 61 74 | .would.like.to.edit.the.translat |
| ce8c0 | 65 64 20 63 6f 64 65 2c 20 69 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 75 73 | ed.code,.it.is.recommended.to.us |
| ce8e0 | 65 0a 20 20 20 20 20 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 | e.......<kbd>zig.translate-c</kb |
| ce900 | 64 3e 20 61 6e 64 20 73 61 76 65 20 74 68 65 20 72 65 73 75 6c 74 73 20 74 6f 20 61 20 66 69 6c | d>.and.save.the.results.to.a.fil |
| ce920 | 65 2e 20 43 6f 6d 6d 6f 6e 20 72 65 61 73 6f 6e 73 20 66 6f 72 20 65 64 69 74 69 6e 67 0a 20 20 | e..Common.reasons.for.editing... |
| ce940 | 20 20 20 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 20 69 6e 63 6c 75 64 65 3a 20 | ....the.generated.code.include:. |
| ce960 | 63 68 61 6e 67 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 | changing.<code><span.class="tok- |
| ce980 | 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 20 70 61 72 61 6d 65 | kw">anytype</span></code>.parame |
| ce9a0 | 74 65 72 73 20 69 6e 20 66 75 6e 63 74 69 6f 6e 2d 6c 69 6b 65 20 6d 61 63 72 6f 73 20 74 6f 20 | ters.in.function-like.macros.to. |
| ce9c0 | 6d 6f 72 65 0a 20 20 20 20 20 20 73 70 65 63 69 66 69 63 20 74 79 70 65 73 3b 20 63 68 61 6e 67 | more.......specific.types;.chang |
| ce9e0 | 69 6e 67 20 3c 63 6f 64 65 3e 5b 2a 63 5d 54 3c 2f 63 6f 64 65 3e 20 70 6f 69 6e 74 65 72 73 20 | ing.<code>[*c]T</code>.pointers. |
| cea00 | 74 6f 20 3c 63 6f 64 65 3e 5b 2a 5d 54 3c 2f 63 6f 64 65 3e 20 6f 72 0a 20 20 20 20 20 20 3c 63 | to.<code>[*]T</code>.or.......<c |
| cea20 | 6f 64 65 3e 2a 54 3c 2f 63 6f 64 65 3e 20 70 6f 69 6e 74 65 72 73 20 66 6f 72 20 69 6d 70 72 6f | ode>*T</code>.pointers.for.impro |
| cea40 | 76 65 64 20 74 79 70 65 20 73 61 66 65 74 79 3b 20 61 6e 64 0a 20 20 20 20 20 20 3c 61 20 68 72 | ved.type.safety;.and.......<a.hr |
| cea60 | 65 66 3d 22 23 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 22 3e 65 6e 61 62 6c 69 6e 67 20 | ef="#setRuntimeSafety">enabling. |
| cea80 | 6f 72 20 64 69 73 61 62 6c 69 6e 67 20 72 75 6e 74 69 6d 65 20 73 61 66 65 74 79 3c 2f 61 3e 20 | or.disabling.runtime.safety</a>. |
| ceaa0 | 77 69 74 68 69 6e 20 73 70 65 63 69 66 69 63 20 66 75 6e 63 74 69 6f 6e 73 2e 0a 20 20 20 20 20 | within.specific.functions....... |
| ceac0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c | .</p>..............<p>See.also:< |
| ceae0 | 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 73 22 3e 54 | /p><ul>.<li><a.href="#Targets">T |
| ceb00 | 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 22 23 43 2d | argets</a></li>.<li><a.href="#C- |
| ceb20 | 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 6d 69 74 69 76 | Type-Primitives">C.Type.Primitiv |
| ceb40 | 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 50 6f 69 6e 74 65 | es</a></li>.<li><a.href="#Pointe |
| ceb60 | 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 72 65 | rs">Pointers</a></li>.<li><a.hre |
| ceb80 | 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 3c 2f | f="#C-Pointers">C.Pointers</a></ |
| ceba0 | 6c 69 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 | li>.<li><a.href="#Import-from-C- |
| cebc0 | 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 |
| cebe0 | 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 |
| cec00 | 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>< |
| cec20 | 61 20 68 72 65 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 3c 2f | a.href="#cImport">@cImport</a></ |
| cec40 | 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 | li>.<li><a.href="#setRuntimeSafe |
| cec60 | 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 3c 2f 6c 69 3e 0a 3c | ty">@setRuntimeSafety</a></li>.< |
| cec80 | 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 43 2d 54 72 61 | /ul>...............<h3.id="C-Tra |
| ceca0 | 6e 73 6c 61 74 69 6f 6e 2d 43 61 63 68 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | nslation-Caching"><a.href="#toc- |
| cecc0 | 43 2d 54 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 | C-Translation-Caching">C.Transla |
| cece0 | 74 69 6f 6e 20 43 61 63 68 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | tion.Caching</a>.<a.class="hdr". |
| ced00 | 68 72 65 66 3d 22 23 43 2d 54 72 61 6e 73 6c 61 74 69 6f 6e 2d 43 61 63 68 69 6e 67 22 3e c2 a7 | href="#C-Translation-Caching">.. |
| ced20 | 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 54 68 65 | </a></h3>........<p>.........The |
| ced40 | 20 43 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20 66 65 61 74 75 72 65 20 28 77 68 65 74 68 65 72 20 | .C.translation.feature.(whether. |
| ced60 | 75 73 65 64 20 76 69 61 20 3c 6b 62 64 3e 7a 69 67 20 74 72 61 6e 73 6c 61 74 65 2d 63 3c 2f 6b | used.via.<kbd>zig.translate-c</k |
| ced80 | 62 64 3e 20 6f 72 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 | bd>.or.........<code><span.class |
| ceda0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f | ="tok-builtin">@cImport</span></ |
| cedc0 | 63 6f 64 65 3e 29 20 69 6e 74 65 67 72 61 74 65 73 20 77 69 74 68 20 74 68 65 20 5a 69 67 20 63 | code>).integrates.with.the.Zig.c |
| cede0 | 61 63 68 69 6e 67 20 73 79 73 74 65 6d 2e 20 53 75 62 73 65 71 75 65 6e 74 20 72 75 6e 73 20 77 | aching.system..Subsequent.runs.w |
| cee00 | 69 74 68 0a 20 20 20 20 20 20 20 20 74 68 65 20 73 61 6d 65 20 73 6f 75 72 63 65 20 66 69 6c 65 | ith.........the.same.source.file |
| cee20 | 2c 20 74 61 72 67 65 74 2c 20 61 6e 64 20 63 66 6c 61 67 73 20 77 69 6c 6c 20 75 73 65 20 74 68 | ,.target,.and.cflags.will.use.th |
| cee40 | 65 20 63 61 63 68 65 20 69 6e 73 74 65 61 64 20 6f 66 20 72 65 70 65 61 74 65 64 6c 79 20 74 72 | e.cache.instead.of.repeatedly.tr |
| cee60 | 61 6e 73 6c 61 74 69 6e 67 0a 20 20 20 20 20 20 20 20 74 68 65 20 73 61 6d 65 20 63 6f 64 65 2e | anslating.........the.same.code. |
| cee80 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 6f | .......</p>.......<p>.........To |
| ceea0 | 20 73 65 65 20 77 68 65 72 65 20 74 68 65 20 63 61 63 68 65 64 20 66 69 6c 65 73 20 61 72 65 20 | .see.where.the.cached.files.are. |
| ceec0 | 73 74 6f 72 65 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 63 6f 64 65 20 74 68 61 74 20 | stored.when.compiling.code.that. |
| ceee0 | 75 73 65 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 62 75 69 6c | uses.<code><span.class="tok-buil |
| cef00 | 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 2c 0a 20 20 20 | tin">@cImport</span></code>,.... |
| cef20 | 20 20 20 20 20 75 73 65 20 74 68 65 20 3c 6b 62 64 3e 2d 2d 76 65 72 62 6f 73 65 2d 63 69 6d 70 | .....use.the.<kbd>--verbose-cimp |
| cef40 | 6f 72 74 3c 2f 6b 62 64 3e 20 66 6c 61 67 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | ort</kbd>.flag:.......</p>...... |
| cef60 | 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- |
| cef80 | 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 65 72 62 6f 73 65 5f | cap"><cite.class="file">verbose_ |
| cefa0 | 63 69 6d 70 6f 72 74 5f 66 6c 61 67 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 | cimport_flag.zig</cite></figcapt |
| cefc0 | 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- |
| cefe0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | kw">const</span>.c.=.<span.class |
| cf000 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 7b | ="tok-builtin">@cImport</span>({ |
| cf020 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | .....<span.class="tok-builtin">@ |
| cf040 | 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- |
| cf060 | 73 74 72 22 3e 26 71 75 6f 74 3b 5f 4e 4f 5f 43 52 54 5f 53 54 44 49 4f 5f 49 4e 4c 49 4e 45 26 | str">"_NO_CRT_STDIO_INLINE& |
| cf080 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | quot;</span>,.<span.class="tok-s |
| cf0a0 | 74 72 22 3e 26 71 75 6f 74 3b 31 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c | tr">"1"</span>);.....< |
| cf0c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 | span.class="tok-builtin">@cInclu |
| cf0e0 | 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 74 72 22 3e | de</span>(<span.class="tok-str"> |
| cf100 | 26 71 75 6f 74 3b 73 74 64 69 6f 2e 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 29 3b | "stdio.h"</span>);.}); |
| cf120 | 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> |
| cf140 | 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>. |
| cf160 | 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> |
| cf180 | 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</ |
| cf1a0 | 73 70 61 6e 3e 20 7b 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 | span>.{....._.=.c;.}</code></pre |
| cf1c0 | 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 |
| cf1e0 | 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 |
| cf200 | 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 |
| cf220 | 65 20 76 65 72 62 6f 73 65 5f 63 69 6d 70 6f 72 74 5f 66 6c 61 67 2e 7a 69 67 20 2d 6c 63 20 2d | e.verbose_cimport_flag.zig.-lc.- |
| cf240 | 2d 76 65 72 62 6f 73 65 2d 63 69 6d 70 6f 72 74 3c 2f 6b 62 64 3e 0a 69 6e 66 6f 28 63 6f 6d 70 | -verbose-cimport</kbd>.info(comp |
| cf260 | 69 6c 61 74 69 6f 6e 29 3a 20 43 20 69 6d 70 6f 72 74 20 73 6f 75 72 63 65 3a 20 2f 68 6f 6d 65 | ilation):.C.import.source:./home |
| cf280 | 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 66 34 65 39 63 | /andy/src/zig/.zig-cache/o/f4e9c |
| cf2a0 | 36 38 63 62 61 34 30 63 39 37 38 38 38 66 30 36 34 64 36 37 62 30 33 31 30 32 31 2f 63 69 6d 70 | 68cba40c97888f064d67b031021/cimp |
| cf2c0 | 6f 72 74 2e 68 0a 69 6e 66 6f 28 63 6f 6d 70 69 6c 61 74 69 6f 6e 29 3a 20 43 20 69 6d 70 6f 72 | ort.h.info(compilation):.C.impor |
| cf2e0 | 74 20 2e 64 20 66 69 6c 65 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 2e 7a | t..d.file:./home/andy/src/zig/.z |
| cf300 | 69 67 2d 63 61 63 68 65 2f 6f 2f 66 34 65 39 63 36 38 63 62 61 34 30 63 39 37 38 38 38 66 30 36 | ig-cache/o/f4e9c68cba40c97888f06 |
| cf320 | 34 64 36 37 62 30 33 31 30 32 31 2f 63 69 6d 70 6f 72 74 2e 68 2e 64 0a 69 6e 66 6f 28 63 6f 6d | 4d67b031021/cimport.h.d.info(com |
| cf340 | 70 69 6c 61 74 69 6f 6e 29 3a 20 43 20 69 6d 70 6f 72 74 20 6f 75 74 70 75 74 3a 20 2f 68 6f 6d | pilation):.C.import.output:./hom |
| cf360 | 65 2f 61 6e 64 79 2f 73 72 63 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 31 62 36 33 | e/andy/src/zig/.zig-cache/o/1b63 |
| cf380 | 34 35 35 65 31 64 30 64 33 32 33 66 35 31 62 64 63 34 39 30 39 37 31 37 65 32 38 62 2f 63 69 6d | 455e1d0d323f51bdc4909717e28b/cim |
| cf3a0 | 70 6f 72 74 2e 7a 69 67 0a 24 20 3c 6b 62 64 3e 2e 2f 76 65 72 62 6f 73 65 5f 63 69 6d 70 6f 72 | port.zig.$.<kbd>./verbose_cimpor |
| cf3c0 | 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 2f 66 69 67 75 | t_flag</kbd>.</samp></pre></figu |
| cf3e0 | 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 65 20 63 6c 61 | re>........<p>.........<code.cla |
| cf400 | 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 63 6f 6e 74 61 | ss="file">cimport.h</code>.conta |
| cf420 | 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 63 6f 6e 73 74 | ins.the.file.to.translate.(const |
| cf440 | 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 20 20 3c 63 6f | ructed.from.calls.to.........<co |
| cf460 | 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 |
| cf480 | 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 3e 3c 73 70 61 | nclude</span></code>,.<code><spa |
| cf4a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f | n.class="tok-builtin">@cDefine</ |
| cf4c0 | 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 61 6e 20 63 6c | span></code>,.and.<code><span.cl |
| cf4e0 | 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 73 70 61 6e 3e | ass="tok-builtin">@cUndef</span> |
| cf500 | 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 73 73 3d 22 66 | </code>),.........<code.class="f |
| cf520 | 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 74 68 65 20 6c | ile">cimport.h.d</code>.is.the.l |
| cf540 | 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 6e 64 0a 20 20 | ist.of.file.dependencies,.and... |
| cf560 | 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 6d 70 6f 72 74 | ......<code.class="file">cimport |
| cf580 | 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 61 6e 73 6c 61 | .zig</code>.contains.the.transla |
| cf5a0 | 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 20 20 3c 70 3e | ted.output........</p>.......<p> |
| cf5c0 | 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="# |
| cf5e0 | 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 |
| cf600 | 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 3c 6c | t.from.C.Header.File</a></li>.<l |
| cf620 | 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 4c 49 22 3e 43 | i><a.href="#C-Translation-CLI">C |
| cf640 | 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 6c 69 3e 3c 61 | .Translation.CLI</a></li>.<li><a |
| cf660 | 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 3c 2f 61 3e 3c | .href="#cInclude">@cInclude</a>< |
| cf680 | 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 3e 40 63 49 6d | /li>.<li><a.href="#cImport">@cIm |
| cf6a0 | 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 0a 20 20 20 20 | port</a></li>.</ul>............. |
| cf6c0 | 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 72 65 73 22 3e | ..<h3.id="Translation-failures"> |
| cf6e0 | 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 61 69 6c 75 72 | <a.href="#toc-Translation-failur |
| cf700 | 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 3e 20 3c 61 20 | es">Translation.failures</a>.<a. |
| cf720 | 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 69 6f 6e 2d 66 | class="hdr".href="#Translation-f |
| cf740 | 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 20 3c 70 3e 0a | ailures">..</a></h3>........<p>. |
| cf760 | 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 61 6e 6e 6f 74 | ........Some.C.constructs.cannot |
| cf780 | 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 20 65 78 61 6d | .be.translated.to.Zig.-.for.exam |
| cf7a0 | 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 20 73 74 72 75 | ple,.<em>goto</em>,.........stru |
| cf7c0 | 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 65 6e 2d 70 61 | cts.with.bitfields,.and.token-pa |
| cf7e0 | 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 65 6d 3e 64 65 | sting.macros..Zig.employs.<em>de |
| cf800 | 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 61 74 69 6f 6e | motion</em>.to.allow.translation |
| cf820 | 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 20 66 61 63 65 | .........to.continue.in.the.face |
| cf840 | 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 65 73 2e 0a 20 | .of.non-translatable.entities... |
| cf860 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 44 65 6d 6f | .....</p>.......<p>.........Demo |
| cf880 | 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 65 73 20 2d 20 | tion.comes.in.three.varieties.-. |
| cf8a0 | 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 2c 20 3c 65 | <a.href="#opaque">opaque</a>,.<e |
| cf8c0 | 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 3c 63 6f 64 65 | m>extern</em>,.and.........<code |
| cf8e0 | 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 6d 70 | ><span.class="tok-builtin">@comp |
| cf900 | 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 20 20 20 20 20 | ileError</span></code>.......... |
| cf920 | 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 63 61 6e 6e 6f | .C.structs.and.unions.that.canno |
| cf940 | 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 69 6c 6c 20 62 | t.be.translated.correctly.will.b |
| cf960 | 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 20 63 6c 61 73 | e.translated.as.<code><span.clas |
| cf980 | 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 2f 63 6f 64 65 | s="tok-kw">opaque</span>{}</code |
| cf9a0 | 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 6f 6e 74 61 69 | >..........Functions.that.contai |
| cf9c0 | 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 74 72 75 63 74 | n.opaque.types.or.code.construct |
| cf9e0 | 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 20 77 69 6c 6c | s.that.cannot.be.translated.will |
| cfa00 | 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 65 3e 3c 73 70 | .be.demoted.........to.<code><sp |
| cfa20 | 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 3c | an.class="tok-kw">extern</span>< |
| cfa40 | 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 20 20 20 54 68 | /code>.declarations...........Th |
| cfa60 | 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 63 61 6e 20 73 | us,.non-translatable.types.can.s |
| cfa80 | 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 6e 64 20 6e 6f | till.be.used.as.pointers,.and.no |
| cfaa0 | 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 20 20 20 20 20 | n-translatable.functions........ |
| cfac0 | 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 68 65 20 6c 69 | .can.be.called.so.long.as.the.li |
| cfae0 | 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 65 64 20 66 75 | nker.is.aware.of.the.compiled.fu |
| cfb00 | 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 3e 0a 20 20 20 | nction........</p>.......<p>.... |
| cfb20 | 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 |
| cfb40 | 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 64 65 3e | tin">@compileError</span></code> |
| cfb60 | 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 69 6e 69 74 69 | .is.used.when.top-level.definiti |
| cfb80 | 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 20 20 20 20 66 | ons.(global.variables,.........f |
| cfba0 | 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 20 63 61 6e 6e | unction.prototypes,.macros).cann |
| cfbc0 | 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 2e 20 53 69 6e | ot.be.translated.or.demoted..Sin |
| cfbe0 | 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 6f 72 0a 20 20 | ce.Zig.uses.lazy.analysis.for... |
| cfc00 | 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 73 2c 20 75 6e | ......top-level.declarations,.un |
| cfc20 | 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 6e 6f 74 20 63 | translatable.entities.will.not.c |
| cfc40 | 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 72 20 63 6f 64 | ause.a.compile.error.in.your.cod |
| cfc60 | 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 6c 79 20 75 73 | e.unless.........you.actually.us |
| cfc80 | 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 3e 53 65 65 20 | e.them........</p>.......<p>See. |
| cfca0 | 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 6f 70 61 71 | also:</p><ul>.<li><a.href="#opaq |
| cfcc0 | 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 68 72 65 66 3d | ue">opaque</a></li>.<li><a.href= |
| cfce0 | 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 6c 69 3e 3c 61 | "#extern">extern</a></li>.<li><a |
| cfd00 | 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 |
| cfd20 | 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 20 20 20 20 20 | ror</a></li>.</ul>.............. |
| cfd40 | 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 22 23 74 6f 63 | .<h3.id="C-Macros"><a.href="#toc |
| cfd60 | 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 63 6c 61 73 73 | -C-Macros">C.Macros</a>.<a.class |
| cfd80 | 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 2f 61 3e 3c 2f | ="hdr".href="#C-Macros">..</a></ |
| cfda0 | 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 61 6e 73 6c 61 | h3>........<p>.........C.Transla |
| cfdc0 | 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 74 65 6d 70 74 | tion.makes.a.best-effort.attempt |
| cfde0 | 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 20 6d 61 63 72 | .to.translate.function-like.macr |
| cfe00 | 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 5a 69 67 20 66 | os.into.equivalent.........Zig.f |
| cfe20 | 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 65 72 61 74 65 | unctions..Since.C.macros.operate |
| cfe40 | 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 6b 65 6e 73 2c | .at.the.level.of.lexical.tokens, |
| cfe60 | 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 61 6e 20 62 65 | .not.all.C.macros.........can.be |
| cfe80 | 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 74 68 61 74 20 | .translated.to.Zig..Macros.that. |
| cfea0 | 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 65 20 64 65 6d | cannot.be.translated.will.be.dem |
| cfec0 | 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 20 63 6c 61 73 | oted.to.........<code><span.clas |
| cfee0 | 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 6f 72 3c 2f 73 | s="tok-builtin">@compileError</s |
| cff00 | 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 64 65 20 77 68 | pan></code>..Note.that.C.code.wh |
| cff20 | 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 6c 6c 20 62 65 | ich.<em>uses</em>.macros.will.be |
| cff40 | 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 20 61 6e 79 20 | .........translated.without.any. |
| cff60 | 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 67 20 6f 70 65 | additional.issues.(since.Zig.ope |
| cff80 | 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 73 6f 75 72 63 | rates.on.the.pre-processed.sourc |
| cffa0 | 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 64 65 64 29 2e | e.........with.macros.expanded). |
| cffc0 | 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 65 6d 73 65 6c | .It.is.merely.the.macros.themsel |
| cffe0 | 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 61 74 61 62 6c | ves.which.may.not.be.translatabl |
| d0000 | 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 3e 0a 20 20 20 | e.to.........Zig........</p>.... |
| d0020 | 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 67 20 65 78 61 | ...<p>Consider.the.following.exa |
| d0040 | 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 67 63 61 70 74 | mple:</p>.......<figure><figcapt |
| d0060 | 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 73 73 3d 22 66 | ion.class="c-cap"><cite.class="f |
| d0080 | 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 74 69 6f 6e 3e | ile">macro.c</cite></figcaption> |
| d00a0 | 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 4c 28 4e 41 4d | <pre><code>#define.MAKELOCAL(NAM |
| d00c0 | 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 74 20 66 6f 6f | E,.INIT).int.NAME.=.INIT.int.foo |
| d00e0 | 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 3b 0a 20 20 20 | (void).{....MAKELOCAL(a,.1);.... |
| d0100 | 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 61 20 2b 20 62 | MAKELOCAL(b,.2);....return.a.+.b |
| d0120 | 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 20 20 20 | ;.}</code></pre></figure>....... |
| d0140 | 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 |
| d0160 | 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 |
| d0180 | 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 61 63 72 6f 2e | mp>$.<kbd>zig.translate-c.macro. |
| d01a0 | 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 6d 70 3e 3c 2f | c.>.macro.zig</kbd>.</samp></ |
| d01c0 | 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 3e 3c 66 69 67 | pre></figure>.......<figure><fig |
| d01e0 | 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 |
| d0200 | 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 3c 2f 66 69 67 | ass="file">macro.zig</cite></fig |
| d0220 | 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=" |
| d0240 | 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=" |
| d0260 | 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">export</span>.<span.clas |
| d0280 | 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 |
| d02a0 | 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-fn">foo</span>().<span.cla |
| d02c0 | 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 20 | ss="tok-type">c_int</span>.{.... |
| d02e0 | 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> |
| d0300 | 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 63 5f 69 6e 74 | .a:.<span.class="tok-type">c_int |
| d0320 | 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 |
| d0340 | 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 3b 0a 20 20 20 | r">1</span>;....._.=.&a;.... |
| d0360 | 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> |
| d0380 | 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 63 5f 69 6e 74 | .b:.<span.class="tok-type">c_int |
| d03a0 | 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 |
| d03c0 | 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 3b 0a 20 20 20 | r">2</span>;....._.=.&b;.... |
| d03e0 | 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 |
| d0400 | 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 6f 6b 2d 6b 77 | an>.a.+.b;.}.<span.class="tok-kw |
| d0420 | 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 |
| d0440 | 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 3c 73 70 61 6e | ">const</span>.MAKELOCAL.=.<span |
| d0460 | 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 |
| d0480 | 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 3e | or</span>(<span.class="tok-str"> |
| d04a0 | 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 20 65 78 70 72 | "unable.to.translate.C.expr |
| d04c0 | 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 75 6f 74 3b 3c | :.unexpected.token..Equal"< |
| d04e0 | 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 6f 6d 6d 65 6e | /span>);.<span.class="tok-commen |
| d0500 | 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 6f 64 65 3e 3c | t">//.macro.c:1:9</span></code>< |
| d0520 | 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 |
| d0540 | 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 6e 73 6c 61 74 | at.<code>foo</code>.was.translat |
| d0560 | 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 61 20 6e 6f 6e | ed.correctly.despite.using.a.non |
| d0580 | 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 2e 20 3c 63 6f | -translatable.........macro..<co |
| d05a0 | 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 6f 74 65 64 20 | de>MAKELOCAL</code>.was.demoted. |
| d05c0 | 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 74 69 | to.<code><span.class="tok-builti |
| d05e0 | 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 64 65 3e 20 73 | n">@compileError</span></code>.s |
| d0600 | 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 78 70 72 65 73 | ince.........it.cannot.be.expres |
| d0620 | 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 20 73 69 6d 70 | sed.as.a.Zig.function;.this.simp |
| d0640 | 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 72 65 63 74 6c | ly.means.that.you.cannot.directl |
| d0660 | 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 41 4c 3c 2f 63 | y.use.........<code>MAKELOCAL</c |
| d0680 | 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 20 20 20 20 20 | ode>.from.Zig........</p>....... |
| d06a0 | 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 |
| d06c0 | 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 72 6f 72 3c 2f | ="#compileError">@compileError</ |
| d06e0 | 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 |
| d0700 | 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 74 6f 63 2d 43 | .id="C-Pointers"><a.href="#toc-C |
| d0720 | 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 61 20 63 6c 61 | -Pointers">C.Pointers</a>.<a.cla |
| d0740 | 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 3e c2 a7 3c 2f | ss="hdr".href="#C-Pointers">..</ |
| d0760 | 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 69 73 20 74 79 | a></h3>........<p>.......This.ty |
| d0780 | 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 72 20 70 6f 73 | pe.is.to.be.avoided.whenever.pos |
| d07a0 | 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 6e 20 66 6f 72 | sible..The.only.valid.reason.for |
| d07c0 | 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 20 20 20 20 61 | .using.a.C.pointer.is.in.......a |
| d07e0 | 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 6e 73 6c 61 74 | uto-generated.code.from.translat |
| d0800 | 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 20 20 3c 70 3e | ing.C.code........</p>.......<p> |
| d0820 | 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 64 65 72 20 66 | .......When.importing.C.header.f |
| d0840 | 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 65 72 20 70 6f | iles,.it.is.ambiguous.whether.po |
| d0860 | 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 20 61 73 0a 20 | inters.should.be.translated.as.. |
| d0880 | 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 3c 63 6f 64 65 | .....single-item.pointers.(<code |
| d08a0 | 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 69 6e 74 65 72 | >*T</code>).or.many-item.pointer |
| d08c0 | 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 20 20 43 20 70 | s.(<code>[*]T</code>)........C.p |
| d08e0 | 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 20 74 68 61 74 | ointers.are.a.compromise.so.that |
| d0900 | 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 6c 61 74 65 64 | .Zig.code.can.utilize.translated |
| d0920 | 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 20 20 20 3c 2f | .header.files.directly........</ |
| d0940 | 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 64 65 3e 20 2d | p>.......<p><code>[*c]T</code>.- |
| d0960 | 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 20 20 20 20 20 | .C.pointer.</p>.......<ul>...... |
| d0980 | 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 74 61 78 20 6f | ...<li>Supports.all.the.syntax.o |
| d09a0 | 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 65 73 20 28 3c | f.the.other.two.pointer.types.(< |
| d09c0 | 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 5b 2a 5d 54 3c | code>*T</code>).and.(<code>[*]T< |
| d09e0 | 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 6f 65 72 63 65 | /code>).</li>.........<li>Coerce |
| d0a00 | 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 73 20 77 65 6c | s.to.other.pointer.types,.as.wel |
| d0a20 | 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 6e 74 65 72 73 | l.as.<a.href="#Optional-Pointers |
| d0a40 | 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 20 20 20 20 20 | ">Optional.Pointers</a>......... |
| d0a60 | 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 65 72 63 65 64 | .....When.a.C.pointer.is.coerced |
| d0a80 | 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 20 73 61 66 65 | .to.a.non-optional.pointer,.safe |
| d0aa0 | 74 79 2d 63 68 65 63 6b 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 | ty-checked.............<a.href=" |
| d0ac0 | 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 | #Undefined-Behavior">Undefined.B |
| d0ae0 | 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 73 | ehavior</a>.occurs.if.the.addres |
| d0b00 | 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 6c | s.is.0..........</li>.........<l |
| d0b20 | 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 73 | i>Allows.address.0..On.non-frees |
| d0b40 | 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 61 | tanding.targets,.dereferencing.a |
| d0b60 | 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 20 | ddress.0.is.safety-checked...... |
| d0b80 | 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 | .......<a.href="#Undefined-Behav |
| d0ba0 | 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 20 4f 70 74 | ior">Undefined.Behavior</a>..Opt |
| d0bc0 | 69 6f 6e 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 | ional.C.pointers.introduce.anoth |
| d0be0 | 65 72 20 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 | er.bit.to.keep.track.of......... |
| d0c00 | 20 20 20 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 | ....null,.just.like.<code>?<span |
| d0c20 | 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 3c 2f | .class="tok-type">usize</span></ |
| d0c40 | 63 6f 64 65 3e 2e 20 4e 6f 74 65 20 74 68 61 74 20 63 72 65 61 74 69 6e 67 20 61 6e 20 6f 70 74 | code>..Note.that.creating.an.opt |
| d0c60 | 69 6f 6e 61 6c 20 43 20 70 6f 69 6e 74 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 73 20 75 | ional.C.pointer.............is.u |
| d0c80 | 6e 6e 65 63 65 73 73 61 72 79 20 61 73 20 6f 6e 65 20 63 61 6e 20 75 73 65 20 6e 6f 72 6d 61 6c | nnecessary.as.one.can.use.normal |
| d0ca0 | 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e 4f 70 | .<a.href="#Optional-Pointers">Op |
| d0cc0 | 74 69 6f 6e 61 6c 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c | tional.Pointers</a>..........</l |
| d0ce0 | 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d | i>.........<li>Supports.<a.href= |
| d0d00 | 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3c 2f | "#Type-Coercion">Type.Coercion</ |
| d0d20 | 61 3e 20 74 6f 20 61 6e 64 20 66 72 6f 6d 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 | a>.to.and.from.integers.</li>... |
| d0d40 | 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 63 6f 6d 70 61 72 69 73 6f 6e 20 77 69 | ......<li>Supports.comparison.wi |
| d0d60 | 74 68 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 44 6f | th.integers.</li>.........<li>Do |
| d0d80 | 65 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 20 5a 69 67 2d 6f 6e 6c 79 20 70 6f 69 6e 74 65 72 20 | es.not.support.Zig-only.pointer. |
| d0da0 | 61 74 74 72 69 62 75 74 65 73 20 73 75 63 68 20 61 73 20 61 6c 69 67 6e 6d 65 6e 74 2e 20 55 73 | attributes.such.as.alignment..Us |
| d0dc0 | 65 20 6e 6f 72 6d 61 6c 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 | e.normal.<a.href="#Pointers">Poi |
| d0de0 | 6e 74 65 72 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 70 6c 65 61 73 65 21 3c 2f 6c 69 3e 0a 20 | nters</a>.........please!</li>.. |
| d0e00 | 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 57 68 65 6e 20 61 20 43 20 70 6f 69 | .....</ul>.......<p>When.a.C.poi |
| d0e20 | 6e 74 65 72 20 69 73 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20 61 20 73 69 6e 67 6c 65 20 73 74 72 | nter.is.pointing.to.a.single.str |
| d0e40 | 75 63 74 20 28 6e 6f 74 20 61 6e 20 61 72 72 61 79 29 2c 20 64 65 72 65 66 65 72 65 6e 63 65 20 | uct.(not.an.array),.dereference. |
| d0e60 | 74 68 65 20 43 20 70 6f 69 6e 74 65 72 20 74 6f 0a 20 20 20 20 20 20 20 20 61 63 63 65 73 73 20 | the.C.pointer.to.........access. |
| d0e80 | 74 68 65 20 73 74 72 75 63 74 27 73 20 66 69 65 6c 64 73 20 6f 72 20 6d 65 6d 62 65 72 20 64 61 | the.struct's.fields.or.member.da |
| d0ea0 | 74 61 2e 20 54 68 61 74 20 73 79 6e 74 61 78 20 6c 6f 6f 6b 73 20 6c 69 6b 65 0a 20 20 20 20 20 | ta..That.syntax.looks.like...... |
| d0ec0 | 20 20 20 74 68 69 73 3a 20 3c 2f 70 3e 0a 20 20 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 70 | ...this:.</p>.........<p><code>p |
| d0ee0 | 74 72 5f 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 | tr_to_struct.*.struct_member</co |
| d0f00 | 64 65 3e 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 | de></p>.........<p>This.is.compa |
| d0f20 | 72 61 62 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 | rable.to.doing.<code>-></code |
| d0f40 | 3e 20 69 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 | >.in.C.</p>.........<p>.When.a.C |
| d0f60 | 20 70 6f 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 | .pointer.is.pointing.to.an.array |
| d0f80 | 20 6f 66 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 | .of.structs,.the.syntax.reverts. |
| d0fa0 | 74 6f 20 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 | to.this:</p>.........<p><code>pt |
| d0fc0 | 72 5f 74 6f 5f 73 74 72 75 63 74 5f 61 72 72 61 79 5b 69 6e 64 65 78 5d 2e 73 74 72 75 63 74 5f | r_to_struct_array[index].struct_ |
| d0fe0 | 6d 65 6d 62 65 72 3c 2f 63 6f 64 65 3e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 | member</code></p>............... |
| d1000 | 3c 68 33 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 | <h3.id="C-Variadic-Functions"><a |
| d1020 | 20 68 72 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 | .href="#toc-C-Variadic-Functions |
| d1040 | 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 20 3c 61 20 63 6c | ">C.Variadic.Functions</a>.<a.cl |
| d1060 | 61 73 73 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 | ass="hdr".href="#C-Variadic-Func |
| d1080 | 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 5a 69 67 | tions">..</a></h3>........<p>Zig |
| d10a0 | 20 73 75 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 | .supports.extern.variadic.functi |
| d10c0 | 6f 6e 73 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 | ons.</p>.......<figure><figcapti |
| d10e0 | 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=" |
| d1100 | 66 69 6c 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 | file">test_variadic_function.zig |
| d1120 | 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>< |
| d1140 | 73 70 61 6e 20 63 6c 61 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> |
| d1160 | 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" |
| d1180 | 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 |
| d11a0 | 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>);.< |
| d11c0 | 73 70 61 6e 20 63 6c 61 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> |
| d11e0 | 20 74 65 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 | .testing.=.std.testing;..<span.c |
| d1200 | 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 |
| d1220 | 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 61 | lass="tok-kw">extern</span>.<spa |
| d1240 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 26 71 75 6f 74 3b 3c | n.class="tok-str">"c"< |
| d1260 | 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</ |
| d1280 | 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 |
| d12a0 | 66 3c 2f 73 70 61 6e 3e 28 66 6f 72 6d 61 74 3a 20 5b 2a 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | f</span>(format:.[*:<span.class= |
| d12c0 | 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 |
| d12e0 | 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 |
| d1300 | 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 2e 2e 2e 29 20 3c | ass="tok-type">u8</span>,....).< |
| d1320 | 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 |
| d1340 | 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f | n>;..<span.class="tok-kw">test</ |
| d1360 | 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 |
| d1380 | 74 3b 76 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 | t;variadic.function"</span> |
| d13a0 | 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< |
| d13c0 | 2f 73 70 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 | /span>.testing.expect(printf(<sp |
| d13e0 | 61 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 | an.class="tok-str">"Hello,. |
| d1400 | 77 6f 72 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 | world!\n"</span>).==.<span. |
| d1420 | 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 61 6e 3e 29 3b 0a 20 | class="tok-number">14</span>);.. |
| d1440 | 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 |
| d1460 | 6e 3e 20 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 | n>.testing.expect(<span.class="t |
| d1480 | 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 |
| d14a0 | 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</ |
| d14c0 | 73 70 61 6e 3e 28 70 72 69 6e 74 66 29 29 2e 46 6e 2e 69 73 5f 76 61 72 5f 61 72 67 73 29 3b 0a | span>(printf)).Fn.is_var_args);. |
| d14e0 | 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>< |
| d1500 | 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 |
| d1520 | 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 |
| d1540 | 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 76 61 72 69 61 64 69 63 5f 66 75 6e 63 74 69 6f 6e | >zig.test.test_variadic_function |
| d1560 | 2e 7a 69 67 20 2d 6c 63 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 76 61 72 69 61 64 69 63 | .zig.-lc</kbd>.1/1.test_variadic |
| d1580 | 5f 66 75 6e 63 74 69 6f 6e 2e 74 65 73 74 2e 76 61 72 69 61 64 69 63 20 66 75 6e 63 74 69 6f 6e | _function.test.variadic.function |
| d15a0 | 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 48 65 6c 6c 6f 2c | ...OK.All.1.tests.passed..Hello, |
| d15c0 | 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 0a 0a | .world!.</samp></pre></figure>.. |
| d15e0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 56 61 72 69 61 64 69 63 20 66 75 6e 63 74 | ......<p>.........Variadic.funct |
| d1600 | 69 6f 6e 73 20 63 61 6e 20 62 65 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 75 73 69 6e 67 20 3c 61 | ions.can.be.implemented.using.<a |
| d1620 | 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 2f 61 3e 2c | .href="#cVaStart">@cVaStart</a>, |
| d1640 | 20 3c 61 20 68 72 65 66 3d 22 23 63 56 61 45 6e 64 22 3e 40 63 56 61 45 6e 64 3c 2f 61 3e 2c 20 | .<a.href="#cVaEnd">@cVaEnd</a>,. |
| d1660 | 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 20 61 6e | <a.href="#cVaArg">@cVaArg</a>.an |
| d1680 | 64 20 3c 61 20 68 72 65 66 3d 22 23 63 56 61 43 6f 70 79 22 3e 40 63 56 61 43 6f 70 79 3c 2f 61 | d.<a.href="#cVaCopy">@cVaCopy</a |
| d16a0 | 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 69 67 | >........</p>.......<figure><fig |
| d16c0 | 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 |
| d16e0 | 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 64 65 66 69 6e 69 6e 67 5f 76 61 72 69 61 64 69 | ass="file">test_defining_variadi |
| d1700 | 63 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 | c_function.zig</cite></figcaptio |
| d1720 | 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 |
| d1740 | 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 |
| d1760 | 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 |
| d1780 | 70 61 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 |
| d17a0 | 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 |
| d17c0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 65 73 74 69 6e 67 20 3d 20 73 74 64 2e 74 65 73 | ">const</span>.testing.=.std.tes |
| d17e0 | 74 69 6e 67 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 | ting;.<span.class="tok-kw">const |
| d1800 | 3c 2f 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>.builtin.=.<span.class="t |
| d1820 | 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 |
| d1840 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 | .class="tok-str">"builtin&q |
| d1860 | 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- |
| d1880 | 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 |
| d18a0 | 6e 22 3e 61 64 64 3c 2f 73 70 61 6e 3e 28 63 6f 75 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | n">add</span>(count:.<span.class |
| d18c0 | 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 2e 2e 2e 29 20 3c | ="tok-type">c_int</span>,....).< |
| d18e0 | 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 |
| d1900 | 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 63 | an>(.C).<span.class="tok-type">c |
| d1920 | 5f 69 6e 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 | _int</span>.{.....<span.class="t |
| d1940 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 70 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | ok-kw">var</span>.ap.=.<span.cla |
| d1960 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 56 61 53 74 61 72 74 3c 2f 73 70 61 6e | ss="tok-builtin">@cVaStart</span |
| d1980 | 3e 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 64 65 | >();.....<span.class="tok-kw">de |
| d19a0 | 66 65 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 62 75 69 6c | fer</span>.<span.class="tok-buil |
| d19c0 | 74 69 6e 22 3e 40 63 56 61 45 6e 64 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 61 70 29 3b 0a 20 20 | tin">@cVaEnd</span>(&ap);... |
| d19e0 | 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 |
| d1a00 | 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 22 3e 75 73 69 7a | >.i:.<span.class="tok-type">usiz |
| d1a20 | 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | e</span>.=.<span.class="tok-numb |
| d1a40 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | er">0</span>;.....<span.class="t |
| d1a60 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 | ok-kw">var</span>.sum:.<span.cla |
| d1a80 | 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 3d 20 3c 73 70 | ss="tok-type">c_int</span>.=.<sp |
| d1aa0 | 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>;. |
| d1ac0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f | ....<span.class="tok-kw">while</ |
| d1ae0 | 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 63 6f 75 6e 74 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 | span>.(i.<.count).:.(i.+=.<sp |
| d1b00 | 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 20 | an.class="tok-number">1</span>). |
| d1b20 | 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | {.........sum.+=.<span.class="to |
| d1b40 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 56 61 41 72 67 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 61 | k-builtin">@cVaArg</span>(&a |
| d1b60 | 70 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 63 5f 69 6e 74 3c | p,.<span.class="tok-type">c_int< |
| d1b80 | 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 73 3d 22 | /span>);.....}.....<span.class=" |
| d1ba0 | 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 73 75 6d 3b 0a 7d 0a 0a 3c 73 | tok-kw">return</span>.sum;.}..<s |
| d1bc0 | 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>.< |
| d1be0 | 73 70 61 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 66 69 6e | span.class="tok-str">"defin |
| d1c00 | 69 6e 67 20 61 20 76 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 | ing.a.variadic.function"</s |
| d1c20 | 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"> |
| d1c40 | 69 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 | if</span>.(builtin.cpu.arch.==.. |
| d1c60 | 61 61 72 63 68 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 | aarch64.<span.class="tok-kw">and |
| d1c80 | 3c 2f 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 2e 6f 73 2e 74 61 67 20 21 3d 20 2e 6d 61 63 6f 73 | </span>.builtin.os.tag.!=..macos |
| d1ca0 | 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 |
| d1cc0 | 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 |
| d1ce0 | 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 31 34 30 39 36 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | ang/zig/issues/14096</span>..... |
| d1d00 | 20 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< |
| d1d20 | 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 |
| d1d40 | 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 20 20 20 20 | r</span>.SkipZigTest;.....}..... |
| d1d60 | 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>.( |
| d1d80 | 62 75 69 6c 74 69 6e 2e 63 70 75 2e 61 72 63 68 20 3d 3d 20 2e 78 38 36 5f 36 34 20 3c 73 70 61 | builtin.cpu.arch.==..x86_64.<spa |
| d1da0 | 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 75 69 6c | n.class="tok-kw">and</span>.buil |
| d1dc0 | 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 20 | tin.os.tag.==..windows).{....... |
| d1de0 | 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 68 | ..<span.class="tok-comment">//.h |
| d1e00 | 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 |
| d1e20 | 73 75 65 73 2f 31 36 39 36 31 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | sues/16961</span>.........<span. |
| d1e40 | 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 70 | class="tok-kw">return</span>.<sp |
| d1e60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 53 | an.class="tok-kw">error</span>.S |
| d1e80 | 6b 69 70 5a 69 67 54 65 73 74 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | kipZigTest;.....}......<span.cla |
| d1ea0 | 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 69 | ss="tok-kw">try</span>.std.testi |
| d1ec0 | 6e 67 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 | ng.expectEqual(<span.class="tok- |
| d1ee0 | 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | builtin">@as</span>(<span.class= |
| d1f00 | 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 63 | "tok-type">c_int</span>,.<span.c |
| d1f20 | 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 2c 20 61 64 64 | lass="tok-number">0</span>),.add |
| d1f40 | 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 61 | (<span.class="tok-number">0</spa |
| d1f60 | 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 22 3e 74 | n>));.....<span.class="tok-kw">t |
| d1f80 | 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 |
| d1fa0 | 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 22 3e 40 61 73 3c | l(<span.class="tok-builtin">@as< |
| d1fc0 | 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_ |
| d1fe0 | 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 |
| d2000 | 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 2c 20 61 64 64 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ber">1</span>),.add(<span.class= |
| d2020 | 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 |
| d2040 | 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 |
| d2060 | 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 2c | n.class="tok-type">c_int</span>, |
| d2080 | 20 3c 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 |
| d20a0 | 6e 3e 29 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 | n>)));.....<span.class="tok-kw"> |
| d20c0 | 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 |
| d20e0 | 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 22 3e 40 61 73 | al(<span.class="tok-builtin">@as |
| d2100 | 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 63 | </span>(<span.class="tok-type">c |
| d2120 | 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 6f 6b 2d 6e 75 | _int</span>,.<span.class="tok-nu |
| d2140 | 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 2c 20 61 64 64 28 3c 73 70 61 6e 20 63 6c 61 73 73 | mber">3</span>),.add(<span.class |
| d2160 | 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 |
| d2180 | 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 |
| d21a0 | 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> |
| d21c0 | 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 |
| d21e0 | 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | an>),.<span.class="tok-builtin"> |
| d2200 | 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | @as</span>(<span.class="tok-type |
| d2220 | 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 73 3d 22 74 6f 6b | ">c_int</span>,.<span.class="tok |
| d2240 | 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | -number">2</span>)));.}</code></ |
| d2260 | 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 |
| d2280 | 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 |
| d22a0 | 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. |
| d22c0 | 74 65 73 74 5f 64 65 66 69 6e 69 6e 67 5f 76 61 72 69 61 64 69 63 5f 66 75 6e 63 74 69 6f 6e 2e | test_defining_variadic_function. |
| d22e0 | 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 64 65 66 69 6e 69 6e 67 5f 76 61 72 69 | zig</kbd>.1/1.test_defining_vari |
| d2300 | 61 64 69 63 5f 66 75 6e 63 74 69 6f 6e 2e 74 65 73 74 2e 64 65 66 69 6e 69 6e 67 20 61 20 76 61 | adic_function.test.defining.a.va |
| d2320 | 72 69 61 64 69 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 | riadic.function...OK.All.1.tests |
| d2340 | 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>. |
| d2360 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 45 78 70 6f 72 74 69 6e 67 2d | ..............<h3.id="Exporting- |
| d2380 | 61 2d 43 2d 4c 69 62 72 61 72 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 78 70 6f 72 | a-C-Library"><a.href="#toc-Expor |
| d23a0 | 74 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 | ting-a-C-Library">Exporting.a.C. |
| d23c0 | 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 66 3d | Library</a>.<a.class="hdr".href= |
| d23e0 | 22 23 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 61 72 79 22 3e c2 a7 3c 2f 61 3e 3c | "#Exporting-a-C-Library">..</a>< |
| d2400 | 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 6e 65 20 6f 66 20 74 68 65 | /h3>........<p>.......One.of.the |
| d2420 | 20 70 72 69 6d 61 72 79 20 75 73 65 20 63 61 73 65 73 20 66 6f 72 20 5a 69 67 20 69 73 20 65 78 | .primary.use.cases.for.Zig.is.ex |
| d2440 | 70 6f 72 74 69 6e 67 20 61 20 6c 69 62 72 61 72 79 20 77 69 74 68 20 74 68 65 20 43 20 41 42 49 | porting.a.library.with.the.C.ABI |
| d2460 | 20 66 6f 72 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 65 73 | .for.other.programming.languages |
| d2480 | 0a 20 20 20 20 20 20 74 6f 20 63 61 6c 6c 20 69 6e 74 6f 2e 20 54 68 65 20 3c 63 6f 64 65 3e 3c | .......to.call.into..The.<code>< |
| d24a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e | span.class="tok-kw">export</span |
| d24c0 | 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 69 6e 20 66 72 6f 6e 74 20 6f 66 20 66 75 6e | ></code>.keyword.in.front.of.fun |
| d24e0 | 63 74 69 6f 6e 73 2c 20 76 61 72 69 61 62 6c 65 73 2c 20 61 6e 64 20 74 79 70 65 73 20 63 61 75 | ctions,.variables,.and.types.cau |
| d2500 | 73 65 73 20 74 68 65 6d 20 74 6f 0a 20 20 20 20 20 20 62 65 20 70 61 72 74 20 6f 66 20 74 68 65 | ses.them.to.......be.part.of.the |
| d2520 | 20 6c 69 62 72 61 72 79 20 41 50 49 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | .library.API:.......</p>.......< |
| d2540 | 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 |
| d2560 | 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 74 65 73 74 2e 7a | p"><cite.class="file">mathtest.z |
| d2580 | 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 |
| d25a0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 | ><span.class="tok-kw">export</sp |
| d25c0 | 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 |
| d25e0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 3c 2f 73 70 61 | n>.<span.class="tok-fn">add</spa |
| d2600 | 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | n>(a:.<span.class="tok-type">i32 |
| d2620 | 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | </span>,.b:.<span.class="tok-typ |
| d2640 | 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- |
| d2660 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | type">i32</span>.{.....<span.cla |
| d2680 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2b 20 62 3b | ss="tok-kw">return</span>.a.+.b; |
| d26a0 | 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 20 | .}</code></pre></figure>........ |
| d26c0 | 3c 70 3e 54 6f 20 6d 61 6b 65 20 61 20 73 74 61 74 69 63 20 6c 69 62 72 61 72 79 3a 3c 2f 70 3e | <p>To.make.a.static.library:</p> |
| d26e0 | 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 |
| d2700 | 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>< |
| d2720 | 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 6c 69 62 20 6d | pre><samp>$.<kbd>zig.build-lib.m |
| d2740 | 61 74 68 74 65 73 74 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 | athtest.zig</kbd>.</samp></pre>< |
| d2760 | 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 54 6f 20 6d 61 6b 65 20 61 20 73 68 61 72 | /figure>.......<p>To.make.a.shar |
| d2780 | 65 64 20 6c 69 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 | ed.library:</p>.......<figure><f |
| d27a0 | 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 |
| d27c0 | 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> |
| d27e0 | 7a 69 67 20 62 75 69 6c 64 2d 6c 69 62 20 6d 61 74 68 74 65 73 74 2e 7a 69 67 20 2d 64 79 6e 61 | zig.build-lib.mathtest.zig.-dyna |
| d2800 | 6d 69 63 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 | mic</kbd>.</samp></pre></figure> |
| d2820 | 0a 20 20 20 20 20 20 3c 70 3e 48 65 72 65 20 69 73 20 61 6e 20 65 78 61 6d 70 6c 65 20 77 69 74 | .......<p>Here.is.an.example.wit |
| d2840 | 68 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 42 75 69 6c 64 2d 53 79 73 74 65 6d | h.the.<a.href="#Zig-Build-System |
| d2860 | 22 3e 5a 69 67 20 42 75 69 6c 64 20 53 79 73 74 65 6d 3c 2f 61 3e 3a 3c 2f 70 3e 0a 20 20 20 20 | ">Zig.Build.System</a>:</p>..... |
| d2880 | 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 63 2d 63 | ..<figure><figcaption.class="c-c |
| d28a0 | 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 2e 63 3c 2f 63 | ap"><cite.class="file">test.c</c |
| d28c0 | 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 2f 2f 20 54 | ite></figcaption><pre><code>//.T |
| d28e0 | 68 69 73 20 68 65 61 64 65 72 20 69 73 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 7a 69 67 20 66 | his.header.is.generated.by.zig.f |
| d2900 | 72 6f 6d 20 6d 61 74 68 74 65 73 74 2e 7a 69 67 0a 23 69 6e 63 6c 75 64 65 20 26 71 75 6f 74 3b | rom.mathtest.zig.#include." |
| d2920 | 6d 61 74 68 74 65 73 74 2e 68 26 71 75 6f 74 3b 0a 23 69 6e 63 6c 75 64 65 20 26 6c 74 3b 73 74 | mathtest.h".#include.<st |
| d2940 | 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 68 | dio.h>..int.main(int.argc,.ch |
| d2960 | 61 72 20 2a 2a 61 72 67 76 29 20 7b 0a 20 20 20 20 69 6e 74 33 32 5f 74 20 72 65 73 75 6c 74 20 | ar.**argv).{.....int32_t.result. |
| d2980 | 3d 20 61 64 64 28 34 32 2c 20 31 33 33 37 29 3b 0a 20 20 20 20 70 72 69 6e 74 66 28 26 71 75 6f | =.add(42,.1337);.....printf(&quo |
| d29a0 | 74 3b 25 64 5c 6e 26 71 75 6f 74 3b 2c 20 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 72 65 74 75 72 | t;%d\n",.result);.....retur |
| d29c0 | 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 20 20 | n.0;.}</code></pre></figure>.... |
| d29e0 | 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 |
| d2a00 | 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 64 5f | g-cap"><cite.class="file">build_ |
| d2a20 | 63 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 | c.zig</cite></figcaption><pre><c |
| d2a40 | 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</ |
| d2a60 | 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 |
| d2a80 | 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 |
| d2aa0 | 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 |
| d2ac0 | 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 |
| d2ae0 | 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 |
| d2b00 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 75 69 6c 64 3c 2f | an>.<span.class="tok-fn">build</ |
| d2b20 | 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 6e 20 63 6c 61 73 73 | span>(b:.*std.Build).<span.class |
| d2b40 | 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 |
| d2b60 | 70 61 6e 20 63 6c 61 73 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>. |
| d2b80 | 6c 69 62 20 3d 20 62 2e 61 64 64 53 68 61 72 65 64 4c 69 62 72 61 72 79 28 2e 7b 0a 20 20 20 20 | lib.=.b.addSharedLibrary(.{..... |
| d2ba0 | 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 |
| d2bc0 | 22 3e 26 71 75 6f 74 3b 6d 61 74 68 74 65 73 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 | ">"mathtest"</span>,.. |
| d2be0 | 20 20 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 | ........root_source_file.=.b.pat |
| d2c00 | 68 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 6d 61 | h(<span.class="tok-str">"ma |
| d2c20 | 74 68 74 65 73 74 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 | thtest.zig"</span>),....... |
| d2c40 | 20 20 2e 76 65 72 73 69 6f 6e 20 3d 20 2e 7b 20 2e 6d 61 6a 6f 72 20 3d 20 3c 73 70 61 6e 20 63 | ...version.=..{..major.=.<span.c |
| d2c60 | 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 6d 69 6e | lass="tok-number">1</span>,..min |
| d2c80 | 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 30 3c | or.=.<span.class="tok-number">0< |
| d2ca0 | 2f 73 70 61 6e 3e 2c 20 2e 70 61 74 63 68 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | /span>,..patch.=.<span.class="to |
| d2cc0 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 20 7d 2c 0a 20 20 20 20 7d 29 3b 0a 20 20 | k-number">0</span>.},.....});... |
| d2ce0 | 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 |
| d2d00 | 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 20 | an>.exe.=.b.addExecutable(.{.... |
| d2d20 | 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 74 | ......name.=.<span.class="tok-st |
| d2d40 | 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 20 | r">"test"</span>,..... |
| d2d60 | 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 66 | });.....exe.addCSourceFile(.{..f |
| d2d80 | 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 74 | ile.=.b.path(<span.class="tok-st |
| d2da0 | 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 2e | r">"test.c"</span>),.. |
| d2dc0 | 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 2d | flags.=.&.{<span.class="tok- |
| d2de0 | 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 3e | str">"-std=c99"</span> |
| d2e00 | 7d 20 7d 29 3b 0a 20 20 20 20 65 78 65 2e 6c 69 6e 6b 4c 69 62 72 61 72 79 28 6c 69 62 29 3b 0a | }.});.....exe.linkLibrary(lib);. |
| d2e20 | 20 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 | ....exe.linkSystemLibrary(<span. |
| d2e40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 26 71 75 6f 74 3b 3c 2f 73 | class="tok-str">"c"</s |
| d2e60 | 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 62 2e 64 65 66 61 75 6c 74 5f 73 74 65 70 2e 64 65 70 65 6e | pan>);......b.default_step.depen |
| d2e80 | 64 4f 6e 28 26 61 6d 70 3b 65 78 65 2e 73 74 65 70 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | dOn(&exe.step);......<span.c |
| d2ea0 | 6c 61 73 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 75 6e 5f 63 | lass="tok-kw">const</span>.run_c |
| d2ec0 | 6d 64 20 3d 20 65 78 65 2e 72 75 6e 28 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | md.=.exe.run();......<span.class |
| d2ee0 | 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 5f 73 74 65 70 | ="tok-kw">const</span>.test_step |
| d2f00 | 20 3d 20 62 2e 73 74 65 70 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | .=.b.step(<span.class="tok-str"> |
| d2f20 | 26 71 75 6f 74 3b 74 65 73 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | "test"</span>,.<span.c |
| d2f40 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 54 65 73 74 20 74 68 65 20 70 72 | lass="tok-str">"Test.the.pr |
| d2f60 | 6f 67 72 61 6d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 74 65 73 74 5f 73 74 | ogram"</span>);.....test_st |
| d2f80 | 65 70 2e 64 65 70 65 6e 64 4f 6e 28 26 61 6d 70 3b 72 75 6e 5f 63 6d 64 2e 73 74 65 70 29 3b 0a | ep.dependOn(&run_cmd.step);. |
| d2fa0 | 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>........< |
| d2fc0 | 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- |
| d2fe0 | 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 |
| d3000 | 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 20 74 65 73 74 3c 2f 6b 62 64 3e 0a 31 33 | p>$.<kbd>zig.build.test</kbd>.13 |
| d3020 | 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 0a 20 20 20 20 20 20 | 79.</samp></pre></figure>....... |
| d3040 | 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 |
| d3060 | 3d 22 23 65 78 70 6f 72 74 22 3e 65 78 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e | ="#export">export</a></li>.</ul> |
| d3080 | 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 4d 69 78 69 6e 67 2d 4f 62 | ...............<h3.id="Mixing-Ob |
| d30a0 | 6a 65 63 74 2d 46 69 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4d 69 78 69 6e 67 | ject-Files"><a.href="#toc-Mixing |
| d30c0 | 2d 4f 62 6a 65 63 74 2d 46 69 6c 65 73 22 3e 4d 69 78 69 6e 67 20 4f 62 6a 65 63 74 20 46 69 6c | -Object-Files">Mixing.Object.Fil |
| d30e0 | 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 4d 69 78 | es</a>.<a.class="hdr".href="#Mix |
| d3100 | 69 6e 67 2d 4f 62 6a 65 63 74 2d 46 69 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 | ing-Object-Files">..</a></h3>... |
| d3120 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 6d 69 78 20 5a 69 67 20 6f | .....<p>.......You.can.mix.Zig.o |
| d3140 | 62 6a 65 63 74 20 66 69 6c 65 73 20 77 69 74 68 20 61 6e 79 20 6f 74 68 65 72 20 6f 62 6a 65 63 | bject.files.with.any.other.objec |
| d3160 | 74 20 66 69 6c 65 73 20 74 68 61 74 20 72 65 73 70 65 63 74 20 74 68 65 20 43 20 41 42 49 2e 20 | t.files.that.respect.the.C.ABI.. |
| d3180 | 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 72 | Example:.......</p>.......<figur |
| d31a0 | 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 |
| d31c0 | 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 62 61 73 65 36 34 2e 7a 69 67 3c 2f 63 69 74 | ite.class="file">base64.zig</cit |
| d31e0 | 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. |
| d3200 | 63 6c 61 73 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 61 73 65 | class="tok-kw">const</span>.base |
| d3220 | 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 3e 40 | 64.=.<span.class="tok-builtin">@ |
| d3240 | 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 |
| d3260 | 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 61 73 65 | tr">"std"</span>).base |
| d3280 | 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 3e 65 78 70 6f 72 74 | 64;..<span.class="tok-kw">export |
| d32a0 | 3c 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< |
| d32c0 | 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 63 6f | /span>.<span.class="tok-fn">deco |
| d32e0 | 64 65 5f 62 61 73 65 5f 36 34 3c 2f 73 70 61 6e 3e 28 0a 20 20 20 20 64 65 73 74 5f 70 74 72 3a | de_base_64</span>(.....dest_ptr: |
| d3300 | 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 75 38 3c 2f 73 | .[*]<span.class="tok-type">u8</s |
| d3320 | 70 61 6e 3e 2c 0a 20 20 20 20 64 65 73 74 5f 6c 65 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pan>,.....dest_len:.<span.class= |
| d3340 | 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 73 6f 75 | "tok-type">usize</span>,.....sou |
| d3360 | 72 63 65 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 6b 77 22 | rce_ptr:.[*]<span.class="tok-kw" |
| d3380 | 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 |
| d33a0 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 73 6f 75 72 63 65 5f 6c 65 6e 3a 20 | ype">u8</span>,.....source_len:. |
| d33c0 | 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 |
| d33e0 | 61 6e 3e 2c 0a 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 | an>,.).<span.class="tok-type">us |
| d3400 | 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ize</span>.{.....<span.class="to |
| d3420 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 72 63 20 3d 20 73 6f 75 72 63 65 5f | k-kw">const</span>.src.=.source_ |
| d3440 | 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 3e 30 3c 2f | ptr[<span.class="tok-number">0</ |
| d3460 | 73 70 61 6e 3e 2e 2e 73 6f 75 72 63 65 5f 6c 65 6e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | span>..source_len];.....<span.cl |
| d3480 | 61 73 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 73 74 20 3d | ass="tok-kw">const</span>.dest.= |
| d34a0 | 20 64 65 73 74 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 62 65 | .dest_ptr[<span.class="tok-numbe |
| d34c0 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 64 65 73 74 5f 6c 65 6e 5d 3b 0a 20 20 20 20 3c 73 70 61 | r">0</span>..dest_len];.....<spa |
| d34e0 | 6e 20 63 6c 61 73 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 61 | n.class="tok-kw">const</span>.ba |
| d3500 | 73 65 36 34 5f 64 65 63 6f 64 65 72 20 3d 20 62 61 73 65 36 34 2e 73 74 61 6e 64 61 72 64 2e 44 | se64_decoder.=.base64.standard.D |
| d3520 | 65 63 6f 64 65 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ecoder;.....<span.class="tok-kw" |
| d3540 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 65 63 6f 64 65 64 5f 73 69 7a 65 20 3d 20 62 61 73 | >const</span>.decoded_size.=.bas |
| d3560 | 65 36 34 5f 64 65 63 6f 64 65 72 2e 63 61 6c 63 53 69 7a 65 46 6f 72 53 6c 69 63 65 28 73 72 63 | e64_decoder.calcSizeForSlice(src |
| d3580 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 | ).<span.class="tok-kw">catch</sp |
| d35a0 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 | an>.<span.class="tok-kw">unreach |
| d35c0 | 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 62 61 73 65 36 34 5f 64 65 63 6f 64 65 72 2e | able</span>;.....base64_decoder. |
| d35e0 | 64 65 63 6f 64 65 28 64 65 73 74 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | decode(dest[<span.class="tok-num |
| d3600 | 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 64 65 63 6f 64 65 64 5f 73 69 7a 65 5d 2c 20 73 72 | ber">0</span>..decoded_size],.sr |
| d3620 | 63 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 | c).<span.class="tok-kw">catch</s |
| d3640 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 | pan>.<span.class="tok-kw">unreac |
| d3660 | 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | hable</span>;.....<span.class="t |
| d3680 | 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 64 65 63 6f 64 65 64 5f 73 69 7a | ok-kw">return</span>.decoded_siz |
| d36a0 | 65 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 | e;.}</code></pre></figure>...... |
| d36c0 | 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 63 2d 63 | ..<figure><figcaption.class="c-c |
| d36e0 | 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 2e 63 3c 2f 63 | ap"><cite.class="file">test.c</c |
| d3700 | 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 2f 2f 20 54 | ite></figcaption><pre><code>//.T |
| d3720 | 68 69 73 20 68 65 61 64 65 72 20 69 73 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 7a 69 67 20 66 | his.header.is.generated.by.zig.f |
| d3740 | 72 6f 6d 20 62 61 73 65 36 34 2e 7a 69 67 0a 23 69 6e 63 6c 75 64 65 20 26 71 75 6f 74 3b 62 61 | rom.base64.zig.#include."ba |
| d3760 | 73 65 36 34 2e 68 26 71 75 6f 74 3b 0a 0a 23 69 6e 63 6c 75 64 65 20 26 6c 74 3b 73 74 72 69 6e | se64.h"..#include.<strin |
| d3780 | 67 2e 68 26 67 74 3b 0a 23 69 6e 63 6c 75 64 65 20 26 6c 74 3b 73 74 64 69 6f 2e 68 26 67 74 3b | g.h>.#include.<stdio.h> |
| d37a0 | 0a 0a 69 6e 74 20 6d 61 69 6e 28 69 6e 74 20 61 72 67 63 2c 20 63 68 61 72 20 2a 2a 61 72 67 76 | ..int.main(int.argc,.char.**argv |
| d37c0 | 29 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 65 6e 63 6f 64 65 64 20 3d 20 26 71 | ).{.....const.char.*encoded.=.&q |
| d37e0 | 75 6f 74 3b 59 57 78 73 49 48 6c 76 64 58 49 67 59 6d 46 7a 5a 53 42 68 63 6d 55 67 59 6d 56 73 | uot;YWxsIHlvdXIgYmFzZSBhcmUgYmVs |
| d3800 | 62 32 35 6e 49 48 52 76 49 48 56 7a 26 71 75 6f 74 3b 3b 0a 20 20 20 20 63 68 61 72 20 62 75 66 | b25nIHRvIHVz";.....char.buf |
| d3820 | 5b 32 30 30 5d 3b 0a 0a 20 20 20 20 73 69 7a 65 5f 74 20 6c 65 6e 20 3d 20 64 65 63 6f 64 65 5f | [200];......size_t.len.=.decode_ |
| d3840 | 62 61 73 65 5f 36 34 28 62 75 66 2c 20 32 30 30 2c 20 65 6e 63 6f 64 65 64 2c 20 73 74 72 6c 65 | base_64(buf,.200,.encoded,.strle |
| d3860 | 6e 28 65 6e 63 6f 64 65 64 29 29 3b 0a 20 20 20 20 62 75 66 5b 6c 65 6e 5d 20 3d 20 30 3b 0a 20 | n(encoded));.....buf[len].=.0;.. |
| d3880 | 20 20 20 70 75 74 73 28 62 75 66 29 3b 0a 0a 20 20 20 20 72 65 74 75 72 6e 20 30 3b 0a 7d 3c 2f | ...puts(buf);......return.0;.}</ |
| d38a0 | 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 69 67 75 | code></pre></figure>.......<figu |
| d38c0 | 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">< |
| d38e0 | 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 62 75 69 6c 64 5f 6f 62 6a 65 63 74 2e 7a | cite.class="file">build_object.z |
| d3900 | 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 |
| d3920 | 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 |
| d3940 | 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 |
| d3960 | 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 |
| d3980 | 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>); |
| d39a0 | 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 |
| d39c0 | 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> |
| d39e0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 75 69 6c 64 3c 2f 73 70 61 | .<span.class="tok-fn">build</spa |
| d3a00 | 6e 3e 28 62 3a 20 2a 73 74 64 2e 42 75 69 6c 64 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n>(b:.*std.Build).<span.class="t |
| d3a20 | 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 |
| d3a40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 62 6a | .class="tok-kw">const</span>.obj |
| d3a60 | 20 3d 20 62 2e 61 64 64 4f 62 6a 65 63 74 28 2e 7b 0a 20 20 20 20 20 20 20 20 2e 6e 61 6d 65 20 | .=.b.addObject(.{..........name. |
| d3a80 | 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 62 61 | =.<span.class="tok-str">"ba |
| d3aa0 | 73 65 36 34 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 72 6f 6f 74 | se64"</span>,..........root |
| d3ac0 | 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 61 6e 20 63 6c 61 73 | _source_file.=.b.path(<span.clas |
| d3ae0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 61 73 65 36 34 2e 7a 69 67 26 71 75 6f | s="tok-str">"base64.zig&quo |
| d3b00 | 74 3b 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | t;</span>),.....});......<span.c |
| d3b20 | 6c 61 73 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 65 20 3d | lass="tok-kw">const</span>.exe.= |
| d3b40 | 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 2e 6e 61 6d | .b.addExecutable(.{..........nam |
| d3b60 | 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 3b | e.=.<span.class="tok-str">" |
| d3b80 | 74 65 73 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 29 3b 0a 20 20 20 20 65 | test"</span>,.....});.....e |
| d3ba0 | 78 65 2e 61 64 64 43 53 6f 75 72 63 65 46 69 6c 65 28 2e 7b 20 2e 66 69 6c 65 20 3d 20 62 2e 70 | xe.addCSourceFile(.{..file.=.b.p |
| d3bc0 | 61 74 68 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 | ath(<span.class="tok-str">" |
| d3be0 | 74 65 73 74 2e 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2c 20 2e 66 6c 61 67 73 20 3d 20 26 | test.c"</span>),..flags.=.& |
| d3c00 | 61 6d 70 3b 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | amp;.{<span.class="tok-str">&quo |
| d3c20 | 74 3b 2d 73 74 64 3d 63 39 39 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 7d 20 7d 29 3b 0a 20 20 20 | t;-std=c99"</span>}.});.... |
| d3c40 | 20 65 78 65 2e 61 64 64 4f 62 6a 65 63 74 28 6f 62 6a 29 3b 0a 20 20 20 20 65 78 65 2e 6c 69 6e | .exe.addObject(obj);.....exe.lin |
| d3c60 | 6b 53 79 73 74 65 6d 4c 69 62 72 61 72 79 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | kSystemLibrary(<span.class="tok- |
| d3c80 | 73 74 72 22 3e 26 71 75 6f 74 3b 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | str">"c"</span>);..... |
| d3ca0 | 62 2e 69 6e 73 74 61 6c 6c 41 72 74 69 66 61 63 74 28 65 78 65 29 3b 0a 7d 3c 2f 63 6f 64 65 3e | b.installArtifact(exe);.}</code> |
| d3cc0 | 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 75 72 65 3e 3c | </pre></figure>........<figure>< |
| d3ce0 | 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 |
| d3d00 | 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 |
| d3d20 | 3e 7a 69 67 20 62 75 69 6c 64 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 7a 69 67 2d 6f 75 | >zig.build</kbd>.$.<kbd>./zig-ou |
| d3d40 | 74 2f 62 69 6e 2f 74 65 73 74 3c 2f 6b 62 64 3e 0a 61 6c 6c 20 79 6f 75 72 20 62 61 73 65 20 61 | t/bin/test</kbd>.all.your.base.a |
| d3d60 | 72 65 20 62 65 6c 6f 6e 67 20 74 6f 20 75 73 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 | re.belong.to.us.</samp></pre></f |
| d3d80 | 69 67 75 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 | igure>.......<p>See.also:</p><ul |
| d3da0 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 54 61 72 67 65 74 73 22 3e 54 61 72 67 65 74 73 | >.<li><a.href="#Targets">Targets |
| d3dc0 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 42 75 69 6c | </a></li>.<li><a.href="#Zig-Buil |
| d3de0 | 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 3c 2f | d-System">Zig.Build.System</a></ |
| d3e00 | 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c | li>.</ul>......................< |
| d3e20 | 68 32 20 69 64 3d 22 57 65 62 41 73 73 65 6d 62 6c 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | h2.id="WebAssembly"><a.href="#to |
| d3e40 | 63 2d 57 65 62 41 73 73 65 6d 62 6c 79 22 3e 57 65 62 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 20 3c | c-WebAssembly">WebAssembly</a>.< |
| d3e60 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 57 65 62 41 73 73 65 6d 62 6c 79 | a.class="hdr".href="#WebAssembly |
| d3e80 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 5a 69 67 20 73 75 70 70 | ">..</a></h2>........<p>Zig.supp |
| d3ea0 | 6f 72 74 73 20 62 75 69 6c 64 69 6e 67 20 66 6f 72 20 57 65 62 41 73 73 65 6d 62 6c 79 20 6f 75 | orts.building.for.WebAssembly.ou |
| d3ec0 | 74 20 6f 66 20 74 68 65 20 62 6f 78 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 | t.of.the.box.</p>.......<h3.id=" |
| d3ee0 | 46 72 65 65 73 74 61 6e 64 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 72 65 65 | Freestanding"><a.href="#toc-Free |
| d3f00 | 73 74 61 6e 64 69 6e 67 22 3e 46 72 65 65 73 74 61 6e 64 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c | standing">Freestanding</a>.<a.cl |
| d3f20 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 46 72 65 65 73 74 61 6e 64 69 6e 67 22 3e c2 | ass="hdr".href="#Freestanding">. |
| d3f40 | a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 68 6f 73 74 20 65 6e | .</a></h3>........<p>For.host.en |
| d3f60 | 76 69 72 6f 6e 6d 65 6e 74 73 20 6c 69 6b 65 20 74 68 65 20 77 65 62 20 62 72 6f 77 73 65 72 20 | vironments.like.the.web.browser. |
| d3f80 | 61 6e 64 20 6e 6f 64 65 6a 73 2c 20 62 75 69 6c 64 20 61 73 20 61 6e 20 65 78 65 63 75 74 61 62 | and.nodejs,.build.as.an.executab |
| d3fa0 | 6c 65 20 75 73 69 6e 67 20 74 68 65 20 66 72 65 65 73 74 61 6e 64 69 6e 67 0a 20 20 20 20 20 20 | le.using.the.freestanding....... |
| d3fc0 | 4f 53 20 74 61 72 67 65 74 2e 20 48 65 72 65 27 73 20 61 6e 20 65 78 61 6d 70 6c 65 20 6f 66 20 | OS.target..Here's.an.example.of. |
| d3fe0 | 72 75 6e 6e 69 6e 67 20 5a 69 67 20 63 6f 64 65 20 63 6f 6d 70 69 6c 65 64 20 74 6f 20 57 65 62 | running.Zig.code.compiled.to.Web |
| d4000 | 41 73 73 65 6d 62 6c 79 20 77 69 74 68 20 6e 6f 64 65 6a 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 | Assembly.with.nodejs.</p>....... |
| d4020 | 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 |
| d4040 | 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 2e 7a 69 67 3c | ap"><cite.class="file">math.zig< |
| d4060 | 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 |
| d4080 | 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> |
| d40a0 | 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>. |
| d40c0 | 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 3c 2f 73 70 61 6e | <span.class="tok-fn">print</span |
| d40e0 | 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 32 3c 2f 73 70 | >(<span.class="tok-type">i32</sp |
| d4100 | 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 | an>).<span.class="tok-type">void |
| d4120 | 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 65 | </span>;..<span.class="tok-kw">e |
| d4140 | 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 |
| d4160 | 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" |
| d4180 | 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 2d | >add</span>(a:.<span.class="tok- |
| d41a0 | 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 73 | type">i32</span>,.b:.<span.class |
| d41c0 | 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 6c | ="tok-type">i32</span>).<span.cl |
| d41e0 | 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>.{.... |
| d4200 | 20 70 72 69 6e 74 28 61 20 2b 20 62 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 | .print(a.+.b);.}</code></pre></f |
| d4220 | 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= |
| d4240 | 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 |
| d4260 | 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 6d 61 | re><samp>$.<kbd>zig.build-exe.ma |
| d4280 | 74 68 2e 7a 69 67 20 2d 74 61 72 67 65 74 20 77 61 73 6d 33 32 2d 66 72 65 65 73 74 61 6e 64 69 | th.zig.-target.wasm32-freestandi |
| d42a0 | 6e 67 20 2d 66 6e 6f 2d 65 6e 74 72 79 20 2d 2d 65 78 70 6f 72 74 3d 61 64 64 3c 2f 6b 62 64 3e | ng.-fno-entry.--export=add</kbd> |
| d42c0 | 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>........< |
| d42e0 | 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 6a 61 76 61 73 63 | figure><figcaption.class="javasc |
| d4300 | 72 69 70 74 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 | ript-cap"><cite.class="file">tes |
| d4320 | 74 2e 6a 73 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 | t.js</cite></figcaption><pre><co |
| d4340 | 64 65 3e 63 6f 6e 73 74 20 66 73 20 3d 20 72 65 71 75 69 72 65 28 27 66 73 27 29 3b 0a 63 6f 6e | de>const.fs.=.require('fs');.con |
| d4360 | 73 74 20 73 6f 75 72 63 65 20 3d 20 66 73 2e 72 65 61 64 46 69 6c 65 53 79 6e 63 28 26 71 75 6f | st.source.=.fs.readFileSync(&quo |
| d4380 | 74 3b 2e 2f 6d 61 74 68 2e 77 61 73 6d 26 71 75 6f 74 3b 29 3b 0a 63 6f 6e 73 74 20 74 79 70 65 | t;./math.wasm");.const.type |
| d43a0 | 64 41 72 72 61 79 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 73 6f 75 72 63 65 29 3b | dArray.=.new.Uint8Array(source); |
| d43c0 | 0a 0a 57 65 62 41 73 73 65 6d 62 6c 79 2e 69 6e 73 74 61 6e 74 69 61 74 65 28 74 79 70 65 64 41 | ..WebAssembly.instantiate(typedA |
| d43e0 | 72 72 61 79 2c 20 7b 0a 20 20 65 6e 76 3a 20 7b 0a 20 20 20 20 70 72 69 6e 74 3a 20 28 72 65 73 | rray,.{...env:.{.....print:.(res |
| d4400 | 75 6c 74 29 20 3d 26 67 74 3b 20 7b 20 63 6f 6e 73 6f 6c 65 2e 6c 6f 67 28 60 54 68 65 20 72 65 | ult).=>.{.console.log(`The.re |
| d4420 | 73 75 6c 74 20 69 73 20 24 7b 72 65 73 75 6c 74 7d 60 29 3b 20 7d 0a 20 20 7d 7d 29 2e 74 68 65 | sult.is.${result}`);.}...}}).the |
| d4440 | 6e 28 72 65 73 75 6c 74 20 3d 26 67 74 3b 20 7b 0a 20 20 63 6f 6e 73 74 20 61 64 64 20 3d 20 72 | n(result.=>.{...const.add.=.r |
| d4460 | 65 73 75 6c 74 2e 69 6e 73 74 61 6e 63 65 2e 65 78 70 6f 72 74 73 2e 61 64 64 3b 0a 20 20 61 64 | esult.instance.exports.add;...ad |
| d4480 | 64 28 31 2c 20 32 29 3b 0a 7d 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | d(1,.2);.});</code></pre></figur |
| d44a0 | 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 |
| d44c0 | 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 |
| d44e0 | 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 6e 6f 64 65 20 74 65 73 74 2e 6a 73 3c | ><pre><samp>$.<kbd>node.test.js< |
| d4500 | 2f 6b 62 64 3e 0a 54 68 65 20 72 65 73 75 6c 74 20 69 73 20 33 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 | /kbd>.The.result.is.3.</samp></p |
| d4520 | 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 3c 68 33 20 69 64 | re></figure>..............<h3.id |
| d4540 | 3d 22 57 41 53 49 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 57 41 53 49 22 3e 57 41 53 49 | ="WASI"><a.href="#toc-WASI">WASI |
| d4560 | 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 41 53 49 22 | </a>.<a.class="hdr".href="#WASI" |
| d4580 | 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 27 73 20 73 75 70 | >..</a></h3>........<p>Zig's.sup |
| d45a0 | 70 6f 72 74 20 66 6f 72 20 57 65 62 41 73 73 65 6d 62 6c 79 20 53 79 73 74 65 6d 20 49 6e 74 65 | port.for.WebAssembly.System.Inte |
| d45c0 | 72 66 61 63 65 20 28 57 41 53 49 29 20 69 73 20 75 6e 64 65 72 20 61 63 74 69 76 65 20 64 65 76 | rface.(WASI).is.under.active.dev |
| d45e0 | 65 6c 6f 70 6d 65 6e 74 2e 0a 20 20 20 20 20 20 45 78 61 6d 70 6c 65 20 6f 66 20 75 73 69 6e 67 | elopment........Example.of.using |
| d4600 | 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 61 6e 64 20 72 65 61 64 69 6e | .the.standard.library.and.readin |
| d4620 | 67 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 61 72 67 75 6d 65 6e 74 73 3a 3c 2f 70 3e 0a 20 20 | g.command.line.arguments:</p>... |
| d4640 | 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 |
| d4660 | 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 77 61 73 69 5f | ig-cap"><cite.class="file">wasi_ |
| d4680 | 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 6f 6e 3e 3c 70 72 65 | args.zig</cite></figcaption><pre |
| d46a0 | 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 |
| d46c0 | 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- |
| d46e0 | 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 |
| d4700 | 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 |
| d4720 | 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 |
| d4740 | 3c 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< |
| d4760 | 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 |
| d4780 | 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>().!<span.class="tok-type |
| d47a0 | 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= |
| d47c0 | 22 74 6f 6b 2d 6b 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 | "tok-kw">var</span>.general_purp |
| d47e0 | 6f 73 65 5f 61 6c 6c 6f 63 61 74 6f 72 20 3d 20 73 74 64 2e 68 65 61 70 2e 47 65 6e 65 72 61 6c | ose_allocator.=.std.heap.General |
| d4800 | 50 75 72 70 6f 73 65 41 6c 6c 6f 63 61 74 6f 72 28 2e 7b 7d 29 7b 7d 3b 0a 20 20 20 20 3c 73 70 | PurposeAllocator(.{}){};.....<sp |
| d4820 | 61 6e 20 63 6c 61 73 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 | an.class="tok-kw">const</span>.g |
| d4840 | 70 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 | pa.=.general_purpose_allocator.a |
| d4860 | 6c 6c 6f 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 | llocator();.....<span.class="tok |
| d4880 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 72 67 73 20 3d 20 3c 73 70 61 6e 20 63 | -kw">const</span>.args.=.<span.c |
| d48a0 | 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 70 72 6f | lass="tok-kw">try</span>.std.pro |
| d48c0 | 63 65 73 73 2e 61 72 67 73 41 6c 6c 6f 63 28 67 70 61 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | cess.argsAlloc(gpa);.....<span.c |
| d48e0 | 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 73 74 64 2e 70 | lass="tok-kw">defer</span>.std.p |
| d4900 | 72 6f 63 65 73 73 2e 61 72 67 73 46 72 65 65 28 67 70 61 2c 20 61 72 67 73 29 3b 0a 0a 20 20 20 | rocess.argsFree(gpa,.args);..... |
| d4920 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">for</span> |
| d4940 | 20 28 61 72 67 73 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 | .(args,.<span.class="tok-number" |
| d4960 | 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 29 20 7c 61 72 67 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 | >0</span>..).|arg,.i|.{......... |
| d4980 | 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | std.debug.print(<span.class="tok |
| d49a0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 7d 3a 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 | -str">"{}:.{s}\n"</spa |
| d49c0 | 6e 3e 2c 20 2e 7b 20 69 2c 20 61 72 67 20 7d 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e | n>,..{.i,.arg.});.....}.}</code> |
| d49e0 | 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 |
| d4a00 | 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 |
| d4a20 | 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 |
| d4a40 | 6c 64 2d 65 78 65 20 77 61 73 69 5f 61 72 67 73 2e 7a 69 67 20 2d 74 61 72 67 65 74 20 77 61 73 | ld-exe.wasi_args.zig.-target.was |
| d4a60 | 6d 33 32 2d 77 61 73 69 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | m32-wasi</kbd>.</samp></pre></fi |
| d4a80 | 67 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 | gure>........<figure><figcaption |
| d4aa0 | 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 |
| d4ac0 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 77 61 73 6d 74 69 6d 65 20 | tion><pre><samp>$.<kbd>wasmtime. |
| d4ae0 | 77 61 73 69 5f 61 72 67 73 2e 77 61 73 6d 20 31 32 33 20 68 65 6c 6c 6f 3c 2f 6b 62 64 3e 0a 30 | wasi_args.wasm.123.hello</kbd>.0 |
| d4b00 | 3a 20 77 61 73 69 5f 61 72 67 73 2e 77 61 73 6d 0a 31 3a 20 31 32 33 0a 32 3a 20 68 65 6c 6c 6f | :.wasi_args.wasm.1:.123.2:.hello |
| d4b20 | 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 3c 70 | .</samp></pre></figure>.......<p |
| d4b40 | 3e 41 20 6d 6f 72 65 20 69 6e 74 65 72 65 73 74 69 6e 67 20 65 78 61 6d 70 6c 65 20 77 6f 75 6c | >A.more.interesting.example.woul |
| d4b60 | 64 20 62 65 20 65 78 74 72 61 63 74 69 6e 67 20 74 68 65 20 6c 69 73 74 20 6f 66 20 70 72 65 6f | d.be.extracting.the.list.of.preo |
| d4b80 | 70 65 6e 73 20 66 72 6f 6d 20 74 68 65 20 72 75 6e 74 69 6d 65 2e 0a 20 20 20 20 20 20 54 68 69 | pens.from.the.runtime........Thi |
| d4ba0 | 73 20 69 73 20 6e 6f 77 20 73 75 70 70 6f 72 74 65 64 20 69 6e 20 74 68 65 20 73 74 61 6e 64 61 | s.is.now.supported.in.the.standa |
| d4bc0 | 72 64 20 6c 69 62 72 61 72 79 20 76 69 61 20 3c 63 6f 64 65 3e 73 74 64 2e 66 73 2e 77 61 73 69 | rd.library.via.<code>std.fs.wasi |
| d4be0 | 2e 50 72 65 6f 70 65 6e 73 3c 2f 63 6f 64 65 3e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 | .Preopens</code>:</p>.......<fig |
| d4c00 | 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"> |
| d4c20 | 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 77 61 73 69 5f 70 72 65 6f 70 65 6e 73 | <cite.class="file">wasi_preopens |
| d4c40 | 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 |
| d4c60 | 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 |
| d4c80 | 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 |
| d4ca0 | 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= |
| d4cc0 | 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> |
| d4ce0 | 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 |
| d4d00 | 70 61 6e 3e 20 66 73 20 3d 20 73 74 64 2e 66 73 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>.fs.=.std.fs;..<span.class=" |
| d4d20 | 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=" |
| d4d40 | 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 |
| d4d60 | 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 | ok-fn">main</span>().!<span.clas |
| d4d80 | 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>.{.....< |
| d4da0 | 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 67 | span.class="tok-kw">var</span>.g |
| d4dc0 | 65 6e 65 72 61 6c 5f 70 75 72 70 6f 73 65 5f 61 6c 6c 6f 63 61 74 6f 72 20 3d 20 73 74 64 2e 68 | eneral_purpose_allocator.=.std.h |
| d4de0 | 65 61 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 | eap.GeneralPurposeAllocator(.{}) |
| d4e00 | 7b 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | {};.....<span.class="tok-kw">con |
| d4e20 | 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 6f 73 65 5f | st</span>.gpa.=.general_purpose_ |
| d4e40 | 61 6c 6c 6f 63 61 74 6f 72 2e 61 6c 6c 6f 63 61 74 6f 72 28 29 3b 0a 0a 20 20 20 20 3c 73 70 61 | allocator.allocator();......<spa |
| d4e60 | 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 65 6e | n.class="tok-kw">var</span>.aren |
| d4e80 | 61 5f 69 6e 73 74 61 6e 63 65 20 3d 20 73 74 64 2e 68 65 61 70 2e 41 72 65 6e 61 41 6c 6c 6f 63 | a_instance.=.std.heap.ArenaAlloc |
| d4ea0 | 61 74 6f 72 2e 69 6e 69 74 28 67 70 61 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ator.init(gpa);.....<span.class= |
| d4ec0 | 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 61 72 65 6e 61 5f 69 6e 73 74 | "tok-kw">defer</span>.arena_inst |
| d4ee0 | 61 6e 63 65 2e 64 65 69 6e 69 74 28 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ance.deinit();.....<span.class=" |
| d4f00 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 72 65 6e 61 20 3d 20 61 72 65 | tok-kw">const</span>.arena.=.are |
| d4f20 | 6e 61 5f 69 6e 73 74 61 6e 63 65 2e 61 6c 6c 6f 63 61 74 6f 72 28 29 3b 0a 0a 20 20 20 20 3c 73 | na_instance.allocator();......<s |
| d4f40 | 70 61 6e 20 63 6c 61 73 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>. |
| d4f60 | 70 72 65 6f 70 65 6e 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 | preopens.=.<span.class="tok-kw"> |
| d4f80 | 74 72 79 3c 2f 73 70 61 6e 3e 20 66 73 2e 77 61 73 69 2e 70 72 65 6f 70 65 6e 73 41 6c 6c 6f 63 | try</span>.fs.wasi.preopensAlloc |
| d4fa0 | 28 61 72 65 6e 61 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 | (arena);......<span.class="tok-k |
| d4fc0 | 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 70 72 65 6f 70 65 6e 73 2e 6e 61 6d 65 73 2c 20 3c | w">for</span>.(preopens.names,.< |
| d4fe0 | 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> |
| d5000 | 2e 2e 29 20 7c 70 72 65 6f 70 65 6e 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 74 64 2e 64 | ..).|preopen,.i|.{.........std.d |
| d5020 | 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" |
| d5040 | 3e 26 71 75 6f 74 3b 7b 7d 3a 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e | >"{}:.{s}\n"</span>,.. |
| d5060 | 7b 20 69 2c 20 70 72 65 6f 70 65 6e 20 7d 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c | {.i,.preopen.});.....}.}</code>< |
| d5080 | 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 |
| d50a0 | 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 |
| d50c0 | 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 |
| d50e0 | 64 2d 65 78 65 20 77 61 73 69 5f 70 72 65 6f 70 65 6e 73 2e 7a 69 67 20 2d 74 61 72 67 65 74 20 | d-exe.wasi_preopens.zig.-target. |
| d5100 | 77 61 73 6d 33 32 2d 77 61 73 69 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c | wasm32-wasi</kbd>.</samp></pre>< |
| d5120 | 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 69 67 63 61 70 74 | /figure>........<figure><figcapt |
| d5140 | 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 |
| d5160 | 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 77 61 73 6d 74 69 | caption><pre><samp>$.<kbd>wasmti |
| d5180 | 6d 65 20 2d 2d 64 69 72 3d 2e 20 77 61 73 69 5f 70 72 65 6f 70 65 6e 73 2e 77 61 73 6d 3c 2f 6b | me.--dir=..wasi_preopens.wasm</k |
| d51a0 | 62 64 3e 0a 30 3a 20 73 74 64 69 6e 0a 31 3a 20 73 74 64 6f 75 74 0a 32 3a 20 73 74 64 65 72 72 | bd>.0:.stdin.1:.stdout.2:.stderr |
| d51c0 | 0a 33 3a 20 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 20 20 20 | .3:...</samp></pre></figure>.... |
| d51e0 | 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 54 61 72 67 65 74 73 | .................<h2.id="Targets |
| d5200 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 61 72 67 65 74 73 22 3e 54 61 72 67 65 74 73 | "><a.href="#toc-Targets">Targets |
| d5220 | 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 61 72 67 65 | </a>.<a.class="hdr".href="#Targe |
| d5240 | 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | ts">..</a></h2>........<p>...... |
| d5260 | 20 3c 73 74 72 6f 6e 67 3e 54 61 72 67 65 74 3c 2f 73 74 72 6f 6e 67 3e 20 72 65 66 65 72 73 20 | .<strong>Target</strong>.refers. |
| d5280 | 74 6f 20 74 68 65 20 63 6f 6d 70 75 74 65 72 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 75 73 65 | to.the.computer.that.will.be.use |
| d52a0 | 64 20 74 6f 20 72 75 6e 20 61 6e 20 65 78 65 63 75 74 61 62 6c 65 2e 0a 20 20 20 20 20 20 49 74 | d.to.run.an.executable........It |
| d52c0 | 20 69 73 20 63 6f 6d 70 6f 73 65 64 20 6f 66 20 74 68 65 20 43 50 55 20 61 72 63 68 69 74 65 63 | .is.composed.of.the.CPU.architec |
| d52e0 | 74 75 72 65 2c 20 74 68 65 20 73 65 74 20 6f 66 20 65 6e 61 62 6c 65 64 20 43 50 55 20 66 65 61 | ture,.the.set.of.enabled.CPU.fea |
| d5300 | 74 75 72 65 73 2c 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 2c 0a 20 20 20 20 20 20 6d | tures,.operating.system,.......m |
| d5320 | 69 6e 69 6d 75 6d 20 61 6e 64 20 6d 61 78 69 6d 75 6d 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 | inimum.and.maximum.operating.sys |
| d5340 | 74 65 6d 20 76 65 72 73 69 6f 6e 2c 20 41 42 49 2c 20 61 6e 64 20 41 42 49 20 76 65 72 73 69 6f | tem.version,.ABI,.and.ABI.versio |
| d5360 | 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 5a 69 | n........</p>.......<p>.......Zi |
| d5380 | 67 20 69 73 20 61 20 67 65 6e 65 72 61 6c 2d 70 75 72 70 6f 73 65 20 70 72 6f 67 72 61 6d 6d 69 | g.is.a.general-purpose.programmi |
| d53a0 | 6e 67 20 6c 61 6e 67 75 61 67 65 20 77 68 69 63 68 20 6d 65 61 6e 73 20 74 68 61 74 20 69 74 20 | ng.language.which.means.that.it. |
| d53c0 | 69 73 20 64 65 73 69 67 6e 65 64 20 74 6f 0a 20 20 20 20 20 20 67 65 6e 65 72 61 74 65 20 6f 70 | is.designed.to.......generate.op |
| d53e0 | 74 69 6d 61 6c 20 63 6f 64 65 20 66 6f 72 20 61 20 6c 61 72 67 65 20 73 65 74 20 6f 66 20 74 61 | timal.code.for.a.large.set.of.ta |
| d5400 | 72 67 65 74 73 2e 20 54 68 65 20 63 6f 6d 6d 61 6e 64 20 3c 63 6f 64 65 3e 7a 69 67 20 74 61 72 | rgets..The.command.<code>zig.tar |
| d5420 | 67 65 74 73 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 70 72 6f 76 69 64 65 73 20 69 6e 66 6f 72 | gets</code>.......provides.infor |
| d5440 | 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 61 6c 6c 20 6f 66 20 74 68 65 20 74 61 72 67 65 74 73 20 | mation.about.all.of.the.targets. |
| d5460 | 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 69 73 20 61 77 61 72 65 20 6f 66 2e 3c 2f 70 3e 0a 20 20 | the.compiler.is.aware.of.</p>... |
| d5480 | 20 20 20 20 3c 70 3e 57 68 65 6e 20 6e 6f 20 74 61 72 67 65 74 20 6f 70 74 69 6f 6e 20 69 73 20 | ....<p>When.no.target.option.is. |
| d54a0 | 70 72 6f 76 69 64 65 64 20 74 6f 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 2c 20 74 68 65 20 64 65 | provided.to.the.compiler,.the.de |
| d54c0 | 66 61 75 6c 74 20 63 68 6f 69 63 65 0a 20 20 20 20 20 20 69 73 20 74 6f 20 74 61 72 67 65 74 20 | fault.choice.......is.to.target. |
| d54e0 | 74 68 65 20 3c 73 74 72 6f 6e 67 3e 68 6f 73 74 20 63 6f 6d 70 75 74 65 72 3c 2f 73 74 72 6f 6e | the.<strong>host.computer</stron |
| d5500 | 67 3e 2c 20 6d 65 61 6e 69 6e 67 20 74 68 61 74 20 74 68 65 0a 20 20 20 20 20 20 72 65 73 75 6c | g>,.meaning.that.the.......resul |
| d5520 | 74 69 6e 67 20 65 78 65 63 75 74 61 62 6c 65 20 77 69 6c 6c 20 62 65 20 3c 65 6d 3e 75 6e 73 75 | ting.executable.will.be.<em>unsu |
| d5540 | 69 74 61 62 6c 65 20 66 6f 72 20 63 6f 70 79 69 6e 67 20 74 6f 20 61 20 64 69 66 66 65 72 65 6e | itable.for.copying.to.a.differen |
| d5560 | 74 0a 20 20 20 20 20 20 63 6f 6d 70 75 74 65 72 3c 2f 65 6d 3e 2e 20 49 6e 20 6f 72 64 65 72 20 | t.......computer</em>..In.order. |
| d5580 | 74 6f 20 63 6f 70 79 20 61 6e 20 65 78 65 63 75 74 61 62 6c 65 20 74 6f 20 61 6e 6f 74 68 65 72 | to.copy.an.executable.to.another |
| d55a0 | 20 63 6f 6d 70 75 74 65 72 2c 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a 20 20 20 20 20 20 6e 65 | .computer,.the.compiler.......ne |
| d55c0 | 65 64 73 20 74 6f 20 6b 6e 6f 77 20 61 62 6f 75 74 20 74 68 65 20 74 61 72 67 65 74 20 72 65 71 | eds.to.know.about.the.target.req |
| d55e0 | 75 69 72 65 6d 65 6e 74 73 20 76 69 61 20 74 68 65 20 3c 63 6f 64 65 3e 2d 74 61 72 67 65 74 3c | uirements.via.the.<code>-target< |
| d5600 | 2f 63 6f 64 65 3e 20 6f 70 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | /code>.option........</p>....... |
| d5620 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 | <p>.......The.Zig.Standard.Libra |
| d5640 | 72 79 20 28 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 | ry.(<code><span.class="tok-built |
| d5660 | 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=" |
| d5680 | 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>) |
| d56a0 | 3c 2f 63 6f 64 65 3e 29 20 68 61 73 0a 20 20 20 20 20 20 63 72 6f 73 73 2d 70 6c 61 74 66 6f 72 | </code>).has.......cross-platfor |
| d56c0 | 6d 20 61 62 73 74 72 61 63 74 69 6f 6e 73 2c 20 6d 61 6b 69 6e 67 20 74 68 65 20 73 61 6d 65 20 | m.abstractions,.making.the.same. |
| d56e0 | 73 6f 75 72 63 65 20 63 6f 64 65 20 76 69 61 62 6c 65 20 6f 6e 20 6d 61 6e 79 20 74 61 72 67 65 | source.code.viable.on.many.targe |
| d5700 | 74 73 2e 0a 20 20 20 20 20 20 53 6f 6d 65 20 63 6f 64 65 20 69 73 20 6d 6f 72 65 20 70 6f 72 74 | ts........Some.code.is.more.port |
| d5720 | 61 62 6c 65 20 74 68 61 6e 20 6f 74 68 65 72 20 63 6f 64 65 2e 20 49 6e 20 67 65 6e 65 72 61 6c | able.than.other.code..In.general |
| d5740 | 2c 20 5a 69 67 20 63 6f 64 65 20 69 73 20 65 78 74 72 65 6d 65 6c 79 0a 20 20 20 20 20 20 70 6f | ,.Zig.code.is.extremely.......po |
| d5760 | 72 74 61 62 6c 65 20 63 6f 6d 70 61 72 65 64 20 74 6f 20 6f 74 68 65 72 20 70 72 6f 67 72 61 6d | rtable.compared.to.other.program |
| d5780 | 6d 69 6e 67 20 6c 61 6e 67 75 61 67 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | ming.languages........</p>...... |
| d57a0 | 20 3c 70 3e 0a 20 20 20 20 20 20 45 61 63 68 20 70 6c 61 74 66 6f 72 6d 20 72 65 71 75 69 72 65 | .<p>.......Each.platform.require |
| d57c0 | 73 20 69 74 73 20 6f 77 6e 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 20 74 6f 20 6d 61 6b | s.its.own.implementations.to.mak |
| d57e0 | 65 20 5a 69 67 27 73 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 | e.Zig's.......cross-platform.abs |
| d5800 | 74 72 61 63 74 69 6f 6e 73 20 77 6f 72 6b 2e 20 54 68 65 73 65 20 69 6d 70 6c 65 6d 65 6e 74 61 | tractions.work..These.implementa |
| d5820 | 74 69 6f 6e 73 20 61 72 65 20 61 74 20 76 61 72 69 6f 75 73 0a 20 20 20 20 20 20 64 65 67 72 65 | tions.are.at.various.......degre |
| d5840 | 65 73 20 6f 66 20 63 6f 6d 70 6c 65 74 69 6f 6e 2e 20 45 61 63 68 20 74 61 67 67 65 64 20 72 65 | es.of.completion..Each.tagged.re |
| d5860 | 6c 65 61 73 65 20 6f 66 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 63 6f 6d 65 73 20 77 69 74 68 | lease.of.the.compiler.comes.with |
| d5880 | 0a 20 20 20 20 20 20 72 65 6c 65 61 73 65 20 6e 6f 74 65 73 20 74 68 61 74 20 70 72 6f 76 69 64 | .......release.notes.that.provid |
| d58a0 | 65 20 74 68 65 20 66 75 6c 6c 20 73 75 70 70 6f 72 74 20 74 61 62 6c 65 20 66 6f 72 20 65 61 63 | e.the.full.support.table.for.eac |
| d58c0 | 68 20 74 61 72 67 65 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 | h.target........</p>............ |
| d58e0 | 20 20 3c 68 32 20 69 64 3d 22 53 74 79 6c 65 2d 47 75 69 64 65 22 3e 3c 61 20 68 72 65 66 3d 22 | ..<h2.id="Style-Guide"><a.href=" |
| d5900 | 23 74 6f 63 2d 53 74 79 6c 65 2d 47 75 69 64 65 22 3e 53 74 79 6c 65 20 47 75 69 64 65 3c 2f 61 | #toc-Style-Guide">Style.Guide</a |
| d5920 | 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 79 6c 65 2d 47 75 | >.<a.class="hdr".href="#Style-Gu |
| d5940 | 69 64 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 54 68 65 73 | ide">..</a></h2>........<p>.Thes |
| d5960 | 65 20 63 6f 64 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 65 6e 66 | e.coding.conventions.are.not.enf |
| d5980 | 6f 72 63 65 64 20 62 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 2c 20 62 75 74 20 74 68 65 79 20 | orced.by.the.compiler,.but.they. |
| d59a0 | 61 72 65 20 73 68 69 70 70 65 64 20 69 6e 0a 74 68 69 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f | are.shipped.in.this.documentatio |
| d59c0 | 6e 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 69 6e 20 6f 72 64 | n.along.with.the.compiler.in.ord |
| d59e0 | 65 72 20 74 6f 20 70 72 6f 76 69 64 65 20 61 20 70 6f 69 6e 74 20 6f 66 0a 72 65 66 65 72 65 6e | er.to.provide.a.point.of.referen |
| d5a00 | 63 65 2c 20 73 68 6f 75 6c 64 20 61 6e 79 6f 6e 65 20 77 69 73 68 20 74 6f 20 70 6f 69 6e 74 20 | ce,.should.anyone.wish.to.point. |
| d5a20 | 74 6f 20 61 6e 20 61 75 74 68 6f 72 69 74 79 20 6f 6e 20 61 67 72 65 65 64 20 75 70 6f 6e 20 5a | to.an.authority.on.agreed.upon.Z |
| d5a40 | 69 67 0a 63 6f 64 69 6e 67 20 73 74 79 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ig.coding.style........</p>..... |
| d5a60 | 20 20 3c 68 33 20 69 64 3d 22 41 76 6f 69 64 2d 52 65 64 75 6e 64 61 6e 63 79 2d 69 6e 2d 4e 61 | ..<h3.id="Avoid-Redundancy-in-Na |
| d5a80 | 6d 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 76 6f 69 64 2d 52 65 64 75 6e 64 61 | mes"><a.href="#toc-Avoid-Redunda |
| d5aa0 | 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 63 79 20 69 | ncy-in-Names">Avoid.Redundancy.i |
| d5ac0 | 6e 20 4e 61 6d 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | n.Names</a>.<a.class="hdr".href= |
| d5ae0 | 22 23 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 22 3e c2 a7 3c | "#Avoid-Redundancy-in-Names">..< |
| d5b00 | 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 76 6f 69 64 20 74 68 65 73 65 20 77 | /a></h3>........<p>Avoid.these.w |
| d5b20 | 6f 72 64 73 20 69 6e 20 74 79 70 65 20 6e 61 6d 65 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 | ords.in.type.names:</p>.......<u |
| d5b40 | 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 56 61 6c 75 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | l>.........<li>Value</li>....... |
| d5b60 | 20 20 3c 6c 69 3e 44 61 74 61 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6e 74 | ..<li>Data</li>.........<li>Cont |
| d5b80 | 65 78 74 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4d 61 6e 61 67 65 72 3c 2f 6c 69 | ext</li>.........<li>Manager</li |
| d5ba0 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 75 74 69 6c 73 2c 20 6d 69 73 63 2c 20 6f 72 20 73 6f | >.........<li>utils,.misc,.or.so |
| d5bc0 | 6d 65 62 6f 64 79 27 73 20 69 6e 69 74 69 61 6c 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 | mebody's.initials</li>.......</u |
| d5be0 | 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 45 76 65 72 79 74 68 69 6e 67 20 69 73 20 61 20 76 61 6c 75 | l>.......<p>Everything.is.a.valu |
| d5c00 | 65 2c 20 61 6c 6c 20 74 79 70 65 73 20 61 72 65 20 64 61 74 61 2c 20 65 76 65 72 79 74 68 69 6e | e,.all.types.are.data,.everythin |
| d5c20 | 67 20 69 73 20 63 6f 6e 74 65 78 74 2c 20 61 6c 6c 20 6c 6f 67 69 63 20 6d 61 6e 61 67 65 73 20 | g.is.context,.all.logic.manages. |
| d5c40 | 73 74 61 74 65 2e 0a 20 20 20 20 20 20 4e 6f 74 68 69 6e 67 20 69 73 20 63 6f 6d 6d 75 6e 69 63 | state........Nothing.is.communic |
| d5c60 | 61 74 65 64 20 62 79 20 75 73 69 6e 67 20 61 20 77 6f 72 64 20 74 68 61 74 20 61 70 70 6c 69 65 | ated.by.using.a.word.that.applie |
| d5c80 | 73 20 74 6f 20 61 6c 6c 20 74 79 70 65 73 2e 3c 2f 70 3e 20 0a 20 20 20 20 20 20 3c 70 3e 54 65 | s.to.all.types.</p>........<p>Te |
| d5ca0 | 6d 70 74 61 74 69 6f 6e 20 74 6f 20 75 73 65 20 22 75 74 69 6c 69 74 69 65 73 22 2c 20 22 6d 69 | mptation.to.use."utilities",."mi |
| d5cc0 | 73 63 65 6c 6c 61 6e 65 6f 75 73 22 2c 20 6f 72 20 73 6f 6d 65 62 6f 64 79 27 73 20 69 6e 69 74 | scellaneous",.or.somebody's.init |
| d5ce0 | 69 61 6c 73 0a 20 20 20 20 20 20 69 73 20 61 20 66 61 69 6c 75 72 65 20 74 6f 20 63 61 74 65 67 | ials.......is.a.failure.to.categ |
| d5d00 | 6f 72 69 7a 65 2c 20 6f 72 20 6d 6f 72 65 20 63 6f 6d 6d 6f 6e 6c 79 2c 20 6f 76 65 72 63 61 74 | orize,.or.more.commonly,.overcat |
| d5d20 | 65 67 6f 72 69 7a 61 74 69 6f 6e 2e 20 53 75 63 68 0a 20 20 20 20 20 20 64 65 63 6c 61 72 61 74 | egorization..Such.......declarat |
| d5d40 | 69 6f 6e 73 20 63 61 6e 20 6c 69 76 65 20 61 74 20 74 68 65 20 72 6f 6f 74 20 6f 66 20 61 20 6d | ions.can.live.at.the.root.of.a.m |
| d5d60 | 6f 64 75 6c 65 20 74 68 61 74 20 6e 65 65 64 73 20 74 68 65 6d 20 77 69 74 68 20 6e 6f 0a 20 20 | odule.that.needs.them.with.no... |
| d5d80 | 20 20 20 20 6e 61 6d 65 73 70 61 63 65 20 6e 65 65 64 65 64 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 | ....namespace.needed.</p>....... |
| d5da0 | 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 41 76 6f 69 64 2d 52 65 64 75 6e 64 61 6e 74 2d | ........<h3.id="Avoid-Redundant- |
| d5dc0 | 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 |
| d5de0 | 63 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 76 6f 69 64 2d 52 65 64 75 6e 64 61 | ces"><a.href="#toc-Avoid-Redunda |
| d5e00 | 6e 74 2d 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 | nt-Names-in-Fully-Qualified-Name |
| d5e20 | 73 70 61 63 65 73 22 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 | spaces">Avoid.Redundant.Names.in |
| d5e40 | 20 46 75 6c 6c 79 2d 51 75 61 6c 69 66 69 65 64 20 4e 61 6d 65 73 70 61 63 65 73 3c 2f 61 3e 20 | .Fully-Qualified.Namespaces</a>. |
| d5e60 | 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 |
| d5e80 | 6e 64 61 6e 74 2d 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 | ndant-Names-in-Fully-Qualified-N |
| d5ea0 | 61 6d 65 73 70 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 70 | amespaces">..</a></h3>........<p |
| d5ec0 | 3e 45 76 65 72 79 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 69 73 20 61 73 73 69 67 6e 65 64 20 61 | >Every.declaration.is.assigned.a |
| d5ee0 | 20 3c 73 74 72 6f 6e 67 3e 66 75 6c 6c 79 20 71 75 61 6c 69 66 69 65 64 0a 20 20 20 20 20 20 6e | .<strong>fully.qualified.......n |
| d5f00 | 61 6d 65 73 70 61 63 65 3c 2f 73 74 72 6f 6e 67 3e 20 62 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 | amespace</strong>.by.the.compile |
| d5f20 | 72 2c 20 63 72 65 61 74 69 6e 67 20 61 20 74 72 65 65 20 73 74 72 75 63 74 75 72 65 2e 20 43 68 | r,.creating.a.tree.structure..Ch |
| d5f40 | 6f 6f 73 65 20 6e 61 6d 65 73 20 62 61 73 65 64 0a 20 20 20 20 20 20 6f 6e 20 74 68 65 20 66 75 | oose.names.based.......on.the.fu |
| d5f60 | 6c 6c 79 2d 71 75 61 6c 69 66 69 65 64 20 6e 61 6d 65 73 70 61 63 65 2c 20 61 6e 64 20 61 76 6f | lly-qualified.namespace,.and.avo |
| d5f80 | 69 64 20 72 65 64 75 6e 64 61 6e 74 20 6e 61 6d 65 20 73 65 67 6d 65 6e 74 73 2e 3c 2f 70 3e 0a | id.redundant.name.segments.</p>. |
| d5fa0 | 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= |
| d5fc0 | 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 64 | "zig-cap"><cite.class="file">red |
| d5fe0 | 75 6e 64 61 6e 74 5f 66 71 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | undant_fqn.zig</cite></figcaptio |
| d6000 | 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 |
| d6020 | 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 |
| d6040 | 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 |
| d6060 | 70 61 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 |
| d6080 | 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 |
| d60a0 | 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 |
| d60c0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6a 73 6f 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | w">const</span>.json.=.<span.cla |
| d60e0 | 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>.{..... |
| d6100 | 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>. |
| d6120 | 3c 73 70 61 6e 20 63 6c 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 |
| d6140 | 3e 20 4a 73 6f 6e 56 61 6c 75 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | >.JsonValue.=.<span.class="tok-k |
| d6160 | 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 6f 6b | w">union</span>(<span.class="tok |
| d6180 | 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 6e 75 6d 62 | -kw">enum</span>).{.........numb |
| d61a0 | 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 66 36 34 3c 2f | er:.<span.class="tok-type">f64</ |
| d61c0 | 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 62 6f 6f 6c 65 61 6e 3a 20 3c 73 70 61 6e 20 63 6c | span>,.........boolean:.<span.cl |
| d61e0 | 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 20 20 20 | ass="tok-type">bool</span>,..... |
| d6200 | 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">// |
| d6220 | 20 2e 2e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 7d 3b 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | ....</span>.....};.};..<span.cla |
| d6240 | 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 |
| d6260 | 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 |
| d6280 | 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 |
| d62a0 | 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>.{... |
| d62c0 | 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ..std.debug.print(<span.class="t |
| d62e0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | ok-str">"{s}\n"</span> |
| d6300 | 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 |
| d6320 | 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 6a 73 6f 6e 2e 4a 73 6f 6e 56 61 6c 75 65 29 7d 29 | ypeName</span>(json.JsonValue)}) |
| d6340 | 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 |
| d6360 | 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 |
| d6380 | 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 |
| d63a0 | 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 72 65 64 75 6e 64 61 6e 74 5f 66 71 6e 2e 7a | bd>zig.build-exe.redundant_fqn.z |
| d63c0 | 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 65 64 75 6e 64 61 6e 74 5f 66 71 6e 3c | ig</kbd>.$.<kbd>./redundant_fqn< |
| d63e0 | 2f 6b 62 64 3e 0a 72 65 64 75 6e 64 61 6e 74 5f 66 71 6e 2e 6a 73 6f 6e 2e 4a 73 6f 6e 56 61 6c | /kbd>.redundant_fqn.json.JsonVal |
| d6400 | 75 65 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 | ue.</samp></pre></figure>....... |
| d6420 | 20 3c 70 3e 49 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 2c 20 22 6a 73 6f 6e 22 20 69 73 20 72 | .<p>In.this.example,."json".is.r |
| d6440 | 65 70 65 61 74 65 64 20 69 6e 20 74 68 65 20 66 75 6c 6c 79 2d 71 75 61 6c 69 66 69 65 64 20 6e | epeated.in.the.fully-qualified.n |
| d6460 | 61 6d 65 73 70 61 63 65 2e 20 54 68 65 20 73 6f 6c 75 74 69 6f 6e 0a 20 20 20 20 20 20 69 73 20 | amespace..The.solution.......is. |
| d6480 | 74 6f 20 64 65 6c 65 74 65 20 3c 63 6f 64 65 3e 4a 73 6f 6e 3c 2f 63 6f 64 65 3e 20 66 72 6f 6d | to.delete.<code>Json</code>.from |
| d64a0 | 20 3c 63 6f 64 65 3e 4a 73 6f 6e 56 61 6c 75 65 3c 2f 63 6f 64 65 3e 2e 20 49 6e 20 74 68 69 73 | .<code>JsonValue</code>..In.this |
| d64c0 | 20 65 78 61 6d 70 6c 65 20 77 65 20 68 61 76 65 0a 20 20 20 20 20 20 61 6e 20 65 6d 70 74 79 20 | .example.we.have.......an.empty. |
| d64e0 | 73 74 72 75 63 74 20 6e 61 6d 65 64 20 3c 63 6f 64 65 3e 6a 73 6f 6e 3c 2f 63 6f 64 65 3e 20 62 | struct.named.<code>json</code>.b |
| d6500 | 75 74 20 72 65 6d 65 6d 62 65 72 20 74 68 61 74 20 66 69 6c 65 73 20 61 6c 73 6f 20 61 63 74 0a | ut.remember.that.files.also.act. |
| d6520 | 20 20 20 20 20 20 61 73 20 70 61 72 74 20 6f 66 20 74 68 65 20 66 75 6c 6c 79 2d 71 75 61 6c 69 | ......as.part.of.the.fully-quali |
| d6540 | 66 69 65 64 20 6e 61 6d 65 73 70 61 63 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 69 | fied.namespace.</p>.......<p>Thi |
| d6560 | 73 20 65 78 61 6d 70 6c 65 20 69 73 20 61 6e 20 65 78 63 65 70 74 69 6f 6e 20 74 6f 20 74 68 65 | s.example.is.an.exception.to.the |
| d6580 | 20 72 75 6c 65 20 73 70 65 63 69 66 69 65 64 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 41 76 6f | .rule.specified.in.<a.href="#Avo |
| d65a0 | 69 64 2d 52 65 64 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 | id-Redundancy-in-Names">Avoid.Re |
| d65c0 | 64 75 6e 64 61 6e 63 79 20 69 6e 20 4e 61 6d 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 54 68 65 | dundancy.in.Names</a>........The |
| d65e0 | 20 6d 65 61 6e 69 6e 67 20 6f 66 20 74 68 65 20 74 79 70 65 20 68 61 73 20 62 65 65 6e 20 72 65 | .meaning.of.the.type.has.been.re |
| d6600 | 64 75 63 65 64 20 74 6f 20 69 74 73 20 63 6f 72 65 3a 20 69 74 20 69 73 20 61 20 6a 73 6f 6e 20 | duced.to.its.core:.it.is.a.json. |
| d6620 | 76 61 6c 75 65 2e 20 54 68 65 20 6e 61 6d 65 0a 20 20 20 20 20 20 63 61 6e 6e 6f 74 20 62 65 20 | value..The.name.......cannot.be. |
| d6640 | 61 6e 79 20 6d 6f 72 65 20 73 70 65 63 69 66 69 63 20 77 69 74 68 6f 75 74 20 62 65 69 6e 67 20 | any.more.specific.without.being. |
| d6660 | 69 6e 63 6f 72 72 65 63 74 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 | incorrect.</p>...............<h3 |
| d6680 | 20 69 64 3d 22 57 68 69 74 65 73 70 61 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 57 | .id="Whitespace"><a.href="#toc-W |
| d66a0 | 68 69 74 65 73 70 61 63 65 22 3e 57 68 69 74 65 73 70 61 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 | hitespace">Whitespace</a>.<a.cla |
| d66c0 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 57 68 69 74 65 73 70 61 63 65 22 3e c2 a7 3c 2f | ss="hdr".href="#Whitespace">..</ |
| d66e0 | 61 3e 3c 2f 68 33 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 | a></h3>........<ul>.........<li> |
| d6700 | 0a 20 20 20 20 20 20 20 20 20 20 34 20 73 70 61 63 65 20 69 6e 64 65 6e 74 61 74 69 6f 6e 0a 20 | ...........4.space.indentation.. |
| d6720 | 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 20 20 | .......</li>.........<li>....... |
| d6740 | 20 20 20 20 4f 70 65 6e 20 62 72 61 63 65 73 20 6f 6e 20 73 61 6d 65 20 6c 69 6e 65 2c 20 75 6e | ....Open.braces.on.same.line,.un |
| d6760 | 6c 65 73 73 20 79 6f 75 20 6e 65 65 64 20 74 6f 20 77 72 61 70 2e 0a 20 20 20 20 20 20 20 20 3c | less.you.need.to.wrap..........< |
| d6780 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 61 20 6c 69 73 74 20 6f 66 20 74 68 | /li>.........<li>If.a.list.of.th |
| d67a0 | 69 6e 67 73 20 69 73 20 6c 6f 6e 67 65 72 20 74 68 61 6e 20 32 2c 20 70 75 74 20 65 61 63 68 20 | ings.is.longer.than.2,.put.each. |
| d67c0 | 69 74 65 6d 20 6f 6e 20 69 74 73 20 6f 77 6e 20 6c 69 6e 65 20 61 6e 64 0a 20 20 20 20 20 20 20 | item.on.its.own.line.and........ |
| d67e0 | 20 20 20 65 78 65 72 63 69 73 65 20 74 68 65 20 61 62 69 6c 69 74 79 20 74 6f 20 70 75 74 20 61 | ...exercise.the.ability.to.put.a |
| d6800 | 6e 20 65 78 74 72 61 20 63 6f 6d 6d 61 20 61 74 20 74 68 65 20 65 6e 64 2e 0a 20 20 20 20 20 20 | n.extra.comma.at.the.end........ |
| d6820 | 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 20 20 20 4c | ..</li>.........<li>...........L |
| d6840 | 69 6e 65 20 6c 65 6e 67 74 68 3a 20 61 69 6d 20 66 6f 72 20 31 30 30 3b 20 75 73 65 20 63 6f 6d | ine.length:.aim.for.100;.use.com |
| d6860 | 6d 6f 6e 20 73 65 6e 73 65 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c | mon.sense..........</li>.......< |
| d6880 | 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 4e 61 6d 65 73 22 | /ul>..............<h3.id="Names" |
| d68a0 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4e 61 6d 65 73 22 3e 4e 61 6d 65 73 3c 2f 61 3e 20 | ><a.href="#toc-Names">Names</a>. |
| d68c0 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4e 61 6d 65 73 22 3e c2 a7 3c | <a.class="hdr".href="#Names">..< |
| d68e0 | 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 52 6f 75 67 68 6c | /a></h3>........<p>.......Roughl |
| d6900 | 79 20 73 70 65 61 6b 69 6e 67 3a 20 3c 63 6f 64 65 3e 63 61 6d 65 6c 43 61 73 65 46 75 6e 63 74 | y.speaking:.<code>camelCaseFunct |
| d6920 | 69 6f 6e 4e 61 6d 65 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 54 69 74 6c 65 43 61 73 65 54 | ionName</code>,.<code>TitleCaseT |
| d6940 | 79 70 65 4e 61 6d 65 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 | ypeName</code>,...............<c |
| d6960 | 6f 64 65 3e 73 6e 61 6b 65 5f 63 61 73 65 5f 76 61 72 69 61 62 6c 65 5f 6e 61 6d 65 3c 2f 63 6f | ode>snake_case_variable_name</co |
| d6980 | 64 65 3e 2e 20 4d 6f 72 65 20 70 72 65 63 69 73 65 6c 79 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | de>..More.precisely:.......</p>. |
| d69a0 | 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 20 20 20 | ......<ul>.........<li>......... |
| d69c0 | 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 61 20 3c 63 6f 64 65 | ....If.<code>x</code>.is.a.<code |
| d69e0 | 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 |
| d6a00 | 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 68 65 6e 20 3c 63 6f 64 | an></code>.............then.<cod |
| d6a20 | 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 3e 54 69 74 6c 65 | e>x</code>.should.be.<code>Title |
| d6a40 | 43 61 73 65 3c 2f 63 6f 64 65 3e 2c 20 75 6e 6c 65 73 73 20 69 74 0a 20 20 20 20 20 20 20 20 20 | Case</code>,.unless.it.......... |
| d6a60 | 20 20 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 6b | ...is.a.<code><span.class="tok-k |
| d6a80 | 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 74 68 20 30 20 66 | w">struct</span></code>.with.0.f |
| d6aa0 | 69 65 6c 64 73 20 61 6e 64 20 69 73 20 6e 65 76 65 72 20 6d 65 61 6e 74 20 74 6f 20 62 65 20 69 | ields.and.is.never.meant.to.be.i |
| d6ac0 | 6e 73 74 61 6e 74 69 61 74 65 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 20 77 68 69 63 | nstantiated,.............in.whic |
| d6ae0 | 68 20 63 61 73 65 20 69 74 20 69 73 20 63 6f 6e 73 69 64 65 72 65 64 20 74 6f 20 62 65 20 61 20 | h.case.it.is.considered.to.be.a. |
| d6b00 | 22 6e 61 6d 65 73 70 61 63 65 22 20 61 6e 64 20 75 73 65 73 20 3c 63 6f 64 65 3e 73 6e 61 6b 65 | "namespace".and.uses.<code>snake |
| d6b20 | 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 3e 0a 20 20 20 20 | _case</code>..........</li>..... |
| d6b40 | 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 78 3c | ....<li>.............If.<code>x< |
| d6b60 | 2f 63 6f 64 65 3e 20 69 73 20 63 61 6c 6c 61 62 6c 65 2c 20 61 6e 64 20 3c 63 6f 64 65 3e 78 3c | /code>.is.callable,.and.<code>x< |
| d6b80 | 2f 63 6f 64 65 3e 27 73 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 0a 20 20 20 20 20 20 20 20 | /code>'s.return.type.is......... |
| d6ba0 | 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" |
| d6bc0 | 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 6e 20 3c 63 6f 64 65 3e | >type</span></code>,.then.<code> |
| d6be0 | 78 3c 2f 63 6f 64 65 3e 20 73 68 6f 75 6c 64 20 62 65 20 3c 63 6f 64 65 3e 54 69 74 6c 65 43 61 | x</code>.should.be.<code>TitleCa |
| d6c00 | 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 20 20 20 20 20 | se</code>..........</li>........ |
| d6c20 | 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 78 3c 2f 63 6f | .<li>.............If.<code>x</co |
| d6c40 | 64 65 3e 20 69 73 20 6f 74 68 65 72 77 69 73 65 20 63 61 6c 6c 61 62 6c 65 2c 20 74 68 65 6e 20 | de>.is.otherwise.callable,.then. |
| d6c60 | 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 73 68 6f 75 6c 64 0a 20 20 20 20 20 20 20 20 20 20 | <code>x</code>.should........... |
| d6c80 | 20 20 62 65 20 3c 63 6f 64 65 3e 63 61 6d 65 6c 43 61 73 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 | ..be.<code>camelCase</code>..... |
| d6ca0 | 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 20 | .....</li>.........<li>......... |
| d6cc0 | 20 20 20 20 4f 74 68 65 72 77 69 73 65 2c 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 73 68 | ....Otherwise,.<code>x</code>.sh |
| d6ce0 | 6f 75 6c 64 20 62 65 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 | ould.be.<code>snake_case</code>. |
| d6d00 | 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 | .........</li>.......</ul>...... |
| d6d20 | 20 3c 70 3e 0a 20 20 20 20 20 20 41 63 72 6f 6e 79 6d 73 2c 20 69 6e 69 74 69 61 6c 69 73 6d 73 | .<p>.......Acronyms,.initialisms |
| d6d40 | 2c 20 70 72 6f 70 65 72 20 6e 6f 75 6e 73 2c 20 6f 72 20 61 6e 79 20 6f 74 68 65 72 20 77 6f 72 | ,.proper.nouns,.or.any.other.wor |
| d6d60 | 64 20 74 68 61 74 20 68 61 73 20 63 61 70 69 74 61 6c 69 7a 61 74 69 6f 6e 0a 20 20 20 20 20 20 | d.that.has.capitalization....... |
| d6d80 | 72 75 6c 65 73 20 69 6e 20 77 72 69 74 74 65 6e 20 45 6e 67 6c 69 73 68 20 61 72 65 20 73 75 62 | rules.in.written.English.are.sub |
| d6da0 | 6a 65 63 74 20 74 6f 20 6e 61 6d 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 73 20 6a 75 73 74 20 | ject.to.naming.conventions.just. |
| d6dc0 | 6c 69 6b 65 20 61 6e 79 20 6f 74 68 65 72 0a 20 20 20 20 20 20 77 6f 72 64 2e 20 45 76 65 6e 20 | like.any.other.......word..Even. |
| d6de0 | 61 63 72 6f 6e 79 6d 73 20 74 68 61 74 20 61 72 65 20 6f 6e 6c 79 20 32 20 6c 65 74 74 65 72 73 | acronyms.that.are.only.2.letters |
| d6e00 | 20 6c 6f 6e 67 20 61 72 65 20 73 75 62 6a 65 63 74 20 74 6f 20 74 68 65 73 65 0a 20 20 20 20 20 | .long.are.subject.to.these...... |
| d6e20 | 20 63 6f 6e 76 65 6e 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 | .conventions........</p>.......< |
| d6e40 | 70 3e 0a 20 20 20 20 20 20 46 69 6c 65 20 6e 61 6d 65 73 20 66 61 6c 6c 20 69 6e 74 6f 20 74 77 | p>.......File.names.fall.into.tw |
| d6e60 | 6f 20 63 61 74 65 67 6f 72 69 65 73 3a 20 74 79 70 65 73 20 61 6e 64 20 6e 61 6d 65 73 70 61 63 | o.categories:.types.and.namespac |
| d6e80 | 65 73 2e 20 49 66 20 74 68 65 20 66 69 6c 65 0a 20 20 20 20 20 20 28 69 6d 70 6c 69 63 69 74 6c | es..If.the.file.......(implicitl |
| d6ea0 | 79 20 61 20 73 74 72 75 63 74 29 20 68 61 73 20 74 6f 70 20 6c 65 76 65 6c 20 66 69 65 6c 64 73 | y.a.struct).has.top.level.fields |
| d6ec0 | 2c 20 69 74 20 73 68 6f 75 6c 64 20 62 65 20 6e 61 6d 65 64 20 6c 69 6b 65 20 61 6e 79 0a 20 20 | ,.it.should.be.named.like.any... |
| d6ee0 | 20 20 20 20 6f 74 68 65 72 20 73 74 72 75 63 74 20 77 69 74 68 20 66 69 65 6c 64 73 20 75 73 69 | ....other.struct.with.fields.usi |
| d6f00 | 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 54 69 74 6c 65 43 61 73 65 3c | ng.<code.class="file">TitleCase< |
| d6f20 | 2f 63 6f 64 65 3e 2e 20 4f 74 68 65 72 77 69 73 65 2c 0a 20 20 20 20 20 20 69 74 20 73 68 6f 75 | /code>..Otherwise,.......it.shou |
| d6f40 | 6c 64 20 75 73 65 20 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 | ld.use.<code.class="file">snake_ |
| d6f60 | 63 61 73 65 3c 2f 63 6f 64 65 3e 2e 20 44 69 72 65 63 74 6f 72 79 20 6e 61 6d 65 73 20 73 68 6f | case</code>..Directory.names.sho |
| d6f80 | 75 6c 64 20 62 65 0a 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 | uld.be.......<code.class="file"> |
| d6fa0 | 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 3c 2f 70 3e 0a 20 20 | snake_case</code>........</p>... |
| d6fc0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 73 65 20 61 72 65 20 67 65 6e 65 72 61 6c 20 | ....<p>.......These.are.general. |
| d6fe0 | 72 75 6c 65 73 20 6f 66 20 74 68 75 6d 62 3b 20 69 66 20 69 74 20 6d 61 6b 65 73 20 73 65 6e 73 | rules.of.thumb;.if.it.makes.sens |
| d7000 | 65 20 74 6f 20 64 6f 20 73 6f 6d 65 74 68 69 6e 67 20 64 69 66 66 65 72 65 6e 74 2c 0a 20 20 20 | e.to.do.something.different,.... |
| d7020 | 20 20 20 64 6f 20 77 68 61 74 20 6d 61 6b 65 73 20 73 65 6e 73 65 2e 20 46 6f 72 20 65 78 61 6d | ...do.what.makes.sense..For.exam |
| d7040 | 70 6c 65 2c 20 69 66 20 74 68 65 72 65 20 69 73 20 61 6e 20 65 73 74 61 62 6c 69 73 68 65 64 20 | ple,.if.there.is.an.established. |
| d7060 | 63 6f 6e 76 65 6e 74 69 6f 6e 20 73 75 63 68 20 61 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 45 | convention.such.as.......<code>E |
| d7080 | 4e 4f 45 4e 54 3c 2f 63 6f 64 65 3e 2c 20 66 6f 6c 6c 6f 77 20 74 68 65 20 65 73 74 61 62 6c 69 | NOENT</code>,.follow.the.establi |
| d70a0 | 73 68 65 64 20 63 6f 6e 76 65 6e 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | shed.convention........</p>..... |
| d70c0 | 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 45 78 61 6d 70 6c 65 73 22 3e 3c 61 20 68 72 | .........<h3.id="Examples"><a.hr |
| d70e0 | 65 66 3d 22 23 74 6f 63 2d 45 78 61 6d 70 6c 65 73 22 3e 45 78 61 6d 70 6c 65 73 3c 2f 61 3e 20 | ef="#toc-Examples">Examples</a>. |
| d7100 | 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 6d 70 6c 65 73 22 3e | <a.class="hdr".href="#Examples"> |
| d7120 | 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 63 | ..</a></h3>........<figure><figc |
| d7140 | 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 |
| d7160 | 73 73 3d 22 66 69 6c 65 22 3e 73 74 79 6c 65 5f 65 78 61 6d 70 6c 65 2e 7a 69 67 3c 2f 63 69 74 | ss="file">style_example.zig</cit |
| d7180 | 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. |
| d71a0 | 63 6c 61 73 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 6d 65 | class="tok-kw">const</span>.name |
| d71c0 | 73 70 61 63 65 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 62 75 | space_name.=.<span.class="tok-bu |
| d71e0 | 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 |
| d7200 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 69 72 5f 6e 61 6d 65 2f 66 69 6c 65 5f | s="tok-str">"dir_name/file_ |
| d7220 | 6e 61 6d 65 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c | name.zig"</span>);.<span.cl |
| d7240 | 61 73 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 79 70 65 4e 61 | ass="tok-kw">const</span>.TypeNa |
| d7260 | 6d 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 6e 22 3e 40 | me.=.<span.class="tok-builtin">@ |
| d7280 | 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 |
| d72a0 | 74 72 22 3e 26 71 75 6f 74 3b 64 69 72 5f 6e 61 6d 65 2f 54 79 70 65 4e 61 6d 65 2e 7a 69 67 26 | tr">"dir_name/TypeName.zig& |
| d72c0 | 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- |
| d72e0 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 67 6c 6f 62 61 6c 5f 76 61 72 3a 20 3c 73 70 61 6e | kw">var</span>.global_var:.<span |
| d7300 | 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>.=.< |
| d7320 | 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< |
| d7340 | 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 6e | /span>;.<span.class="tok-kw">con |
| d7360 | 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 6e 73 74 5f 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | st</span>.const_name.=.<span.cla |
| d7380 | 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 3b 0a 3c 73 70 61 6e | ss="tok-number">42</span>;.<span |
| d73a0 | 20 63 6c 61 73 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 |
| d73c0 | 6d 69 74 69 76 65 5f 74 79 70 65 5f 61 6c 69 61 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | mitive_type_alias.=.<span.class= |
| d73e0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 | "tok-type">f32</span>;.<span.cla |
| d7400 | 73 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 6e 67 5f | ss="tok-kw">const</span>.string_ |
| d7420 | 61 6c 69 61 73 20 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 | alias.=.[]<span.class="tok-type" |
| d7440 | 3e 75 38 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | >u8</span>;..<span.class="tok-kw |
| d7460 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 74 72 75 63 74 4e 61 6d 65 20 3d 20 3c 73 70 61 | ">const</span>.StructName.=.<spa |
| d7480 | 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>.{ |
| d74a0 | 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 |
| d74c0 | 65 22 3e 69 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 22 74 | e">i32</span>,.};.<span.class="t |
| d74e0 | 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 41 6c 69 61 73 20 | ok-kw">const</span>.StructAlias. |
| d7500 | 3d 20 53 74 72 75 63 74 4e 61 6d 65 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | =.StructName;..<span.class="tok- |
| d7520 | 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 |
| d7540 | 6e 22 3e 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 70 61 72 61 6d 5f 6e 61 6d | n">functionName</span>(param_nam |
| d7560 | 65 3a 20 54 79 70 65 4e 61 6d 65 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | e:.TypeName).<span.class="tok-ty |
| d7580 | 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 |
| d75a0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 75 6e 63 74 69 6f 6e 50 6f | s="tok-kw">var</span>.functionPo |
| d75c0 | 69 6e 74 65 72 20 3d 20 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 3b 0a 20 20 20 20 66 75 6e 63 74 69 | inter.=.functionName;.....functi |
| d75e0 | 6f 6e 50 6f 69 6e 74 65 72 28 29 3b 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 50 6f 69 6e 74 65 72 | onPointer();.....functionPointer |
| d7600 | 20 3d 20 6f 74 68 65 72 46 75 6e 63 74 69 6f 6e 3b 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 50 6f | .=.otherFunction;.....functionPo |
| d7620 | 69 6e 74 65 72 28 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 | inter();.}.<span.class="tok-kw"> |
| d7640 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 75 6e 63 74 69 6f 6e 41 6c 69 61 73 20 3d 20 66 75 6e | const</span>.functionAlias.=.fun |
| d7660 | 63 74 69 6f 6e 4e 61 6d 65 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ctionName;..<span.class="tok-kw" |
| d7680 | 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"> |
| d76a0 | 4c 69 73 74 54 65 6d 70 6c 61 74 65 46 75 6e 63 74 69 6f 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | ListTemplateFunction</span>(<spa |
| d76c0 | 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> |
| d76e0 | 20 43 68 69 6c 64 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | .ChildType:.<span.class="tok-typ |
| d7700 | 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 6f 6b | e">type</span>,.<span.class="tok |
| d7720 | 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 66 69 78 65 64 5f 73 69 7a 65 3a | -kw">comptime</span>.fixed_size: |
| d7740 | 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 |
| d7760 | 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 | pan>).<span.class="tok-type">typ |
| d7780 | 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- |
| d77a0 | 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 4c 69 73 74 28 43 68 69 6c 64 54 79 70 65 | kw">return</span>.List(ChildType |
| d77c0 | 2c 20 66 69 78 65 64 5f 73 69 7a 65 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ,.fixed_size);.}..<span.class="t |
| d77e0 | 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 |
| d7800 | 6b 2d 66 6e 22 3e 53 68 6f 72 74 4c 69 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | k-fn">ShortList</span>(<span.cla |
| d7820 | 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:.< |
| d7840 | 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 |
| d7860 | 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 |
| d7880 | 3c 2f 73 70 61 6e 3e 20 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>.n:.<span.class="tok-type |
| d78a0 | 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 6f 6b | ">usize</span>).<span.class="tok |
| d78c0 | 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | -type">type</span>.{.....<span.c |
| d78e0 | 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 |
| d7900 | 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>.{ |
| d7920 | 0a 20 20 20 20 20 20 20 20 66 69 65 6c 64 5f 6e 61 6d 65 3a 20 5b 6e 5d 54 2c 0a 20 20 20 20 20 | .........field_name:.[n]T,...... |
| d7940 | 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 6e | ...<span.class="tok-kw">fn</span |
| d7960 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 65 74 68 6f 64 4e 61 6d | >.<span.class="tok-fn">methodNam |
| d7980 | 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 6f 6b 2d 74 79 70 65 | e</span>().<span.class="tok-type |
| d79a0 | 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e | ">void</span>.{}.....};.}..<span |
| d79c0 | 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 77 6f 72 64 | .class="tok-comment">//.The.word |
| d79e0 | 20 58 4d 4c 20 6c 6f 73 65 73 20 69 74 73 20 63 61 73 69 6e 67 20 77 68 65 6e 20 75 73 65 64 20 | .XML.loses.its.casing.when.used. |
| d7a00 | 69 6e 20 5a 69 67 20 69 64 65 6e 74 69 66 69 65 72 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | in.Zig.identifiers.</span>.<span |
| d7a20 | 20 63 6c 61 73 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 6d 6c | .class="tok-kw">const</span>.xml |
| d7a40 | 5f 64 6f 63 75 6d 65 6e 74 20 3d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | _document.=.....<span.class="tok |
| d7a60 | 2d 73 74 72 22 3e 5c 5c 26 6c 74 3b 3f 78 6d 6c 20 76 65 72 73 69 6f 6e 3d 26 71 75 6f 74 3b 31 | -str">\\<?xml.version="1 |
| d7a80 | 2e 30 26 71 75 6f 74 3b 20 65 6e 63 6f 64 69 6e 67 3d 26 71 75 6f 74 3b 55 54 46 2d 38 26 71 75 | .0".encoding="UTF-8&qu |
| d7aa0 | 6f 74 3b 3f 26 67 74 3b 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ot;?>.</span>....<span.class= |
| d7ac0 | 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 26 6c 74 3b 64 6f 63 75 6d 65 6e 74 26 67 74 3b 0a 3c 2f 73 | "tok-str">\\<document>.</s |
| d7ae0 | 70 61 6e 3e 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c | pan>....<span.class="tok-str">\\ |
| d7b00 | 26 6c 74 3b 2f 64 6f 63 75 6d 65 6e 74 26 67 74 3b 0a 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e | </document>.</span>;.<span |
| d7b20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 58 6d 6c | .class="tok-kw">const</span>.Xml |
| d7b40 | 50 61 72 73 65 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 | Parser.=.<span.class="tok-kw">st |
| d7b60 | 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 73 70 61 6e 20 63 | ruct</span>.{.....field:.<span.c |
| d7b80 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a | lass="tok-type">i32</span>,.};.. |
| d7ba0 | 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 |
| d7bc0 | 20 69 6e 69 74 69 61 6c 73 20 42 45 20 28 42 69 67 20 45 6e 64 69 61 6e 29 20 61 72 65 20 6a 75 | .initials.BE.(Big.Endian).are.ju |
| d7be0 | 73 74 20 61 6e 6f 74 68 65 72 20 77 6f 72 64 20 69 6e 20 5a 69 67 20 69 64 65 6e 74 69 66 69 65 | st.another.word.in.Zig.identifie |
| d7c00 | 72 20 6e 61 6d 65 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | r.names.</span>.<span.class="tok |
| d7c20 | 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- |
| d7c40 | 66 6e 22 3e 72 65 61 64 55 33 32 42 65 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 | fn">readU32Be</span>().<span.cla |
| d7c60 | 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 7d 3c 2f 63 6f 64 | ss="tok-type">u32</span>.{}</cod |
| d7c80 | 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>..... |
| d7ca0 | 20 20 53 65 65 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 53 74 61 6e 64 61 72 64 | ..See.the.<a.href="#Zig-Standard |
| d7cc0 | 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 61 72 79 3c 2f | -Library">Zig.Standard.Library</ |
| d7ce0 | 61 3e 20 66 6f 72 20 6d 6f 72 65 20 65 78 61 6d 70 6c 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | a>.for.more.examples........</p> |
| d7d00 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 44 6f 63 2d 43 6f 6d 6d 65 6e | ..............<h3.id="Doc-Commen |
| d7d20 | 74 2d 47 75 69 64 61 6e 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 6f 63 2d 43 6f | t-Guidance"><a.href="#toc-Doc-Co |
| d7d40 | 6d 6d 65 6e 74 2d 47 75 69 64 61 6e 63 65 22 3e 44 6f 63 20 43 6f 6d 6d 65 6e 74 20 47 75 69 64 | mment-Guidance">Doc.Comment.Guid |
| d7d60 | 61 6e 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 | ance</a>.<a.class="hdr".href="#D |
| d7d80 | 6f 63 2d 43 6f 6d 6d 65 6e 74 2d 47 75 69 64 61 6e 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e | oc-Comment-Guidance">..</a></h3> |
| d7da0 | 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 4f 6d 69 74 20 61 6e | ........<ul>.........<li>Omit.an |
| d7dc0 | 79 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 74 68 61 74 20 69 73 20 72 65 64 75 6e 64 61 6e 74 20 | y.information.that.is.redundant. |
| d7de0 | 62 61 73 65 64 20 6f 6e 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 74 68 69 6e 67 20 62 | based.on.the.name.of.the.thing.b |
| d7e00 | 65 69 6e 67 20 64 6f 63 75 6d 65 6e 74 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c | eing.documented.</li>.........<l |
| d7e20 | 69 3e 44 75 70 6c 69 63 61 74 69 6e 67 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 74 6f 20 6d | i>Duplicating.information.onto.m |
| d7e40 | 75 6c 74 69 70 6c 65 20 73 69 6d 69 6c 61 72 20 66 75 6e 63 74 69 6f 6e 73 20 69 73 20 65 6e 63 | ultiple.similar.functions.is.enc |
| d7e60 | 6f 75 72 61 67 65 64 20 62 65 63 61 75 73 65 20 69 74 20 68 65 6c 70 73 20 49 44 45 73 20 61 6e | ouraged.because.it.helps.IDEs.an |
| d7e80 | 64 20 6f 74 68 65 72 20 74 6f 6f 6c 73 20 70 72 6f 76 69 64 65 20 62 65 74 74 65 72 20 68 65 6c | d.other.tools.provide.better.hel |
| d7ea0 | 70 20 74 65 78 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 55 73 65 20 74 68 65 | p.text.</li>.........<li>Use.the |
| d7ec0 | 20 77 6f 72 64 20 3c 73 74 72 6f 6e 67 3e 61 73 73 75 6d 65 3c 2f 73 74 72 6f 6e 67 3e 20 74 6f | .word.<strong>assume</strong>.to |
| d7ee0 | 20 69 6e 64 69 63 61 74 65 20 69 6e 76 61 72 69 61 6e 74 73 20 74 68 61 74 20 63 61 75 73 65 20 | .indicate.invariants.that.cause. |
| d7f00 | 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e | <a.href="#Undefined-Behavior">Un |
| d7f20 | 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 20 77 68 65 6e 20 76 69 6f 6c 61 74 | defined.Behavior</a>.when.violat |
| d7f40 | 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 6f 72 | ed.</li>.........<li>Use.the.wor |
| d7f60 | 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 6e 64 | d.<strong>assert</strong>.to.ind |
| d7f80 | 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 6d 3e | icate.invariants.that.cause.<em> |
| d7fa0 | 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 55 6e | safety-checked</em>.<a.href="#Un |
| d7fc0 | 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 | defined-Behavior">Undefined.Beha |
| d7fe0 | 76 69 6f 72 3c 2f 61 3e 20 77 68 65 6e 20 76 69 6f 6c 61 74 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 | vior</a>.when.violated.</li>.... |
| d8000 | 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 | ...</ul>.....................<h2 |
| d8020 | 20 69 64 3d 22 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 | .id="Source-Encoding"><a.href="# |
| d8040 | 74 6f 63 2d 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e 53 6f 75 72 63 65 20 45 6e 63 6f | toc-Source-Encoding">Source.Enco |
| d8060 | 64 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 | ding</a>.<a.class="hdr".href="#S |
| d8080 | 6f 75 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 | ource-Encoding">..</a></h2>..... |
| d80a0 | 20 20 20 3c 70 3e 5a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 65 20 69 73 20 65 6e 63 6f 64 65 64 | ...<p>Zig.source.code.is.encoded |
| d80c0 | 20 69 6e 20 55 54 46 2d 38 2e 20 41 6e 20 69 6e 76 61 6c 69 64 20 55 54 46 2d 38 20 62 79 74 65 | .in.UTF-8..An.invalid.UTF-8.byte |
| d80e0 | 20 73 65 71 75 65 6e 63 65 20 72 65 73 75 6c 74 73 20 69 6e 20 61 20 63 6f 6d 70 69 6c 65 20 65 | .sequence.results.in.a.compile.e |
| d8100 | 72 72 6f 72 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 72 6f 75 67 68 6f 75 74 20 61 6c | rror.</p>.......<p>Throughout.al |
| d8120 | 6c 20 7a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 65 20 28 69 6e 63 6c 75 64 69 6e 67 20 69 6e 20 | l.zig.source.code.(including.in. |
| d8140 | 63 6f 6d 6d 65 6e 74 73 29 2c 20 73 6f 6d 65 20 63 6f 64 65 20 70 6f 69 6e 74 73 20 61 72 65 20 | comments),.some.code.points.are. |
| d8160 | 6e 65 76 65 72 20 61 6c 6c 6f 77 65 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | never.allowed:</p>.......<ul>... |
| d8180 | 20 20 20 20 20 20 3c 6c 69 3e 41 73 63 69 69 20 63 6f 6e 74 72 6f 6c 20 63 68 61 72 61 63 74 65 | ......<li>Ascii.control.characte |
| d81a0 | 72 73 2c 20 65 78 63 65 70 74 20 66 6f 72 20 55 2b 30 30 30 61 20 28 4c 46 29 2c 20 55 2b 30 30 | rs,.except.for.U+000a.(LF),.U+00 |
| d81c0 | 30 64 20 28 43 52 29 2c 20 61 6e 64 20 55 2b 30 30 30 39 20 28 48 54 29 3a 20 55 2b 30 30 30 30 | 0d.(CR),.and.U+0009.(HT):.U+0000 |
| d81e0 | 20 2d 20 55 2b 30 30 30 38 2c 20 55 2b 30 30 30 62 20 2d 20 55 2b 30 30 30 63 2c 20 55 2b 30 30 | .-.U+0008,.U+000b.-.U+000c,.U+00 |
| d8200 | 30 65 20 2d 20 55 2b 30 30 30 31 66 2c 20 55 2b 30 30 37 66 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | 0e.-.U+0001f,.U+007f.</li>...... |
| d8220 | 20 20 20 3c 6c 69 3e 4e 6f 6e 2d 41 73 63 69 69 20 55 6e 69 63 6f 64 65 20 6c 69 6e 65 20 65 6e | ...<li>Non-Ascii.Unicode.line.en |
| d8240 | 64 69 6e 67 73 3a 20 55 2b 30 30 38 35 20 28 4e 45 4c 29 2c 20 55 2b 32 30 32 38 20 28 4c 53 29 | dings:.U+0085.(NEL),.U+2028.(LS) |
| d8260 | 2c 20 55 2b 32 30 32 39 20 28 50 53 29 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | ,.U+2029.(PS).</li>.......</ul>. |
| d8280 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4c 46 20 28 62 79 74 65 20 76 61 6c 75 65 20 30 | ......<p>.......LF.(byte.value.0 |
| d82a0 | 78 30 61 2c 20 63 6f 64 65 20 70 6f 69 6e 74 20 55 2b 30 30 30 61 2c 20 3c 63 6f 64 65 3e 3c 73 | x0a,.code.point.U+000a,.<code><s |
| d82c0 | 70 61 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 | pan.class="tok-str">'\n'</span>< |
| d82e0 | 2f 63 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 | /code>).is.the.line.terminator.i |
| d8300 | 6e 20 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 | n.Zig.source.code........This.by |
| d8320 | 74 65 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 | te.value.terminates.every.line.o |
| d8340 | 66 20 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 | f.zig.source.code.except.the.las |
| d8360 | 74 20 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 | t.line.of.the.file........It.is. |
| d8380 | 72 65 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 | recommended.that.non-empty.sourc |
| d83a0 | 65 20 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 | e.files.end.with.an.empty.line,. |
| d83c0 | 77 68 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 | which.means.the.last.byte.would. |
| d83e0 | 62 65 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 | be.0x0a.(LF)........</p>.......< |
| d8400 | 70 3e 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 | p>.......Each.LF.may.be.immediat |
| d8420 | 65 6c 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 | ely.preceded.by.a.single.CR.(byt |
| d8440 | 65 20 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 | e.value.0x0d,.code.point.U+000d, |
| d8460 | 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 27 5c 72 | .<code><span.class="tok-str">'\r |
| d8480 | 27 3c 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 | '</span></code>).......to.form.a |
| d84a0 | 20 57 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 | .Windows.style.line.ending,.but. |
| d84c0 | 74 68 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 | this.is.discouraged..Note.that.i |
| d84e0 | 6e 20 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 | n.multiline.strings,.CRLF.sequen |
| d8500 | 63 65 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 | ces.will.......be.encoded.as.LF. |
| d8520 | 77 68 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 | when.compiled.into.a.zig.program |
| d8540 | 2e 0a 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 | ........A.CR.in.any.other.contex |
| d8560 | 74 20 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 | t.is.not.allowed........</p>.... |
| d8580 | 20 20 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 | ...<p>.......HT.hard.tabs.(byte. |
| d85a0 | 76 61 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 | value.0x09,.code.point.U+0009,.< |
| d85c0 | 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 74 27 3c | code><span.class="tok-str">'\t'< |
| d85e0 | 2f 73 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 | /span></code>).are.interchangeab |
| d8600 | 6c 65 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 | le.with.......SP.spaces.(byte.va |
| d8620 | 6c 75 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 | lue.0x20,.code.point.U+0020,.<co |
| d8640 | 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 20 27 3c 2f 73 70 | de><span.class="tok-str">'.'</sp |
| d8660 | 61 6e 3e 3c 2f 63 6f 64 65 3e 29 20 61 73 20 61 20 74 6f 6b 65 6e 20 73 65 70 61 72 61 74 6f 72 | an></code>).as.a.token.separator |
| d8680 | 2c 0a 20 20 20 20 20 20 62 75 74 20 75 73 65 20 6f 66 20 68 61 72 64 20 74 61 62 73 20 69 73 20 | ,.......but.use.of.hard.tabs.is. |
| d86a0 | 64 69 73 63 6f 75 72 61 67 65 64 2e 20 53 65 65 20 3c 61 20 68 72 65 66 3d 22 23 47 72 61 6d 6d | discouraged..See.<a.href="#Gramm |
| d86c0 | 61 72 22 3e 47 72 61 6d 6d 61 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ar">Grammar</a>........</p>..... |
| d86e0 | 20 20 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 | ..<p>.......For.compatibility.wi |
| d8700 | 74 68 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 | th.other.tools,.the.compiler.ign |
| d8720 | 6f 72 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 | ores.a.UTF-8-encoded.byte.order. |
| d8740 | 6d 61 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 | mark.(U+FEFF).......if.it.is.the |
| d8760 | 20 66 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 | .first.Unicode.code.point.in.the |
| d8780 | 20 73 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 | .source.text..A.byte.order.mark. |
| d87a0 | 69 73 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 | is.not.allowed.anywhere.else.in. |
| d87c0 | 74 68 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 | the.source........</p>.......<p> |
| d87e0 | 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 72 75 6e 6e 69 6e 67 20 3c 6b 62 64 3e 7a 69 | .......Note.that.running.<kbd>zi |
| d8800 | 67 20 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 | g.fmt</kbd>.on.a.source.file.wil |
| d8820 | 6c 20 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 | l.implement.all.recommendations. |
| d8840 | 6d 65 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 | mentioned.here........</p>...... |
| d8860 | 20 3c 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 | .<p>.......Note.that.a.tool.read |
| d8880 | 69 6e 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 | ing.Zig.source.code.can.make.ass |
| d88a0 | 75 6d 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 | umptions.if.the.source.code.is.a |
| d88c0 | 73 73 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 | ssumed.to.be.correct.Zig.code... |
| d88e0 | 20 20 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 | .....For.example,.when.identifyi |
| d8900 | 6e 67 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 | ng.the.ends.of.lines,.a.tool.can |
| d8920 | 20 75 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 | .use.a.naive.search.such.as.<cod |
| d8940 | 65 3e 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 | e>/\n/</code>,.......or.an.<a.hr |
| d8960 | 65 66 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 | ef="https://msdn.microsoft.com/e |
| d8980 | 6e 2d 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 | n-us/library/dd409797.aspx">adva |
| d89a0 | 6e 63 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 | nced</a>.......search.such.as.<c |
| d89c0 | 6f 64 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 | ode>/\r\n?|[\n\u0085\u2028\u2029 |
| d89e0 | 5d 2f 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 | ]/</code>,.and.in.either.case.li |
| d8a00 | 6e 65 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 | ne.endings.will.be.correctly.ide |
| d8a20 | 6e 74 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 | ntified........For.another.examp |
| d8a40 | 6c 65 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 | le,.when.identifying.the.whitesp |
| d8a60 | 61 63 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 | ace.before.the.first.token.on.a. |
| d8a80 | 6c 69 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 | line,.......a.tool.can.either.us |
| d8aa0 | 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 2f | e.a.naive.search.such.as.<code>/ |
| d8ac0 | 5b 20 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 | [.\t]/</code>,.......or.an.<a.hr |
| d8ae0 | 65 66 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 | ef="https://tc39.es/ecma262/#sec |
| d8b00 | 2d 63 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 | -characterclassescape">advanced< |
| d8b20 | 2f 61 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 | /a>.search.such.as.<code>/\s/</c |
| d8b40 | 6f 64 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 | ode>,.......and.in.either.case.w |
| d8b60 | 68 69 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 | hitespace.will.be.correctly.iden |
| d8b80 | 74 69 66 69 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 | tified........</p>.............. |
| d8ba0 | 20 3c 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 | .<h2.id="Keyword-Reference"><a.h |
| d8bc0 | 72 65 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 | ref="#toc-Keyword-Reference">Key |
| d8be0 | 77 6f 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 | word.Reference</a>.<a.class="hdr |
| d8c00 | 22 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 c2 a7 3c 2f | ".href="#Keyword-Reference">..</ |
| d8c20 | 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 64 69 76 20 63 6c 61 73 73 3d 22 74 61 62 6c 65 | a></h2>........<div.class="table |
| d8c40 | 2d 77 72 61 70 70 65 72 22 3e 0a 20 20 20 20 20 20 3c 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 20 | -wrapper">.......<table>........ |
| d8c60 | 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 20 20 | .<thead>.........<tr>........... |
| d8c80 | 3c 74 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 | <th.scope="col">Keyword</th>.... |
| d8ca0 | 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 69 70 74 69 | .......<th.scope="col">Descripti |
| d8cc0 | 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 20 20 3c 2f | on</th>.........</tr>.........</ |
| d8ce0 | 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 3c | thead>.........<tbody>.........< |
| d8d00 | 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">.. |
| d8d20 | 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 |
| d8d40 | 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 3e 3c 2f 63 6f 64 | s="tok-kw">addrspace</span></cod |
| d8d60 | 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>........ |
| d8d80 | 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 3e 3c 73 | ...<td>.............The.<code><s |
| d8da0 | 70 61 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 | pan.class="tok-kw">addrspace</sp |
| d8dc0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | an></code>.keyword.............. |
| d8de0 | 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 4f 44 4f 20 61 64 64 20 | <ul>...............<li>TODO.add. |
| d8e00 | 64 6f 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 | documentation.for.addrspace</li> |
| d8e20 | 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 |
| d8e40 | 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>... |
| d8e60 | 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 20 | ........<th.scope="row">........ |
| d8e80 | 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 |
| d8ea0 | 2d 6b 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 | -kw">align</span></code></pre>.. |
| d8ec0 | 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>... |
| d8ee0 | 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 |
| d8f00 | 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 | -kw">align</span></code>.can.be. |
| d8f20 | 75 73 65 64 20 74 6f 20 73 70 65 63 69 66 79 20 74 68 65 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 66 | used.to.specify.the.alignment.of |
| d8f40 | 20 61 20 70 6f 69 6e 74 65 72 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 74 20 63 61 6e 20 61 | .a.pointer..............It.can.a |
| d8f60 | 6c 73 6f 20 62 65 20 75 73 65 64 20 61 66 74 65 72 20 61 20 76 61 72 69 61 62 6c 65 20 6f 72 20 | lso.be.used.after.a.variable.or. |
| d8f80 | 66 75 6e 63 74 69 6f 6e 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 74 6f 20 73 70 65 63 69 66 79 20 | function.declaration.to.specify. |
| d8fa0 | 74 68 65 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 66 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 74 68 61 | the.alignment.of.pointers.to.tha |
| d8fc0 | 74 20 76 61 72 69 61 62 6c 65 20 6f 72 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 | t.variable.or.function.......... |
| d8fe0 | 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 |
| d9000 | 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 41 6c 69 67 6e 6d 65 6e 74 22 3e 41 6c 69 67 6e 6d 65 | lso.<a.href="#Alignment">Alignme |
| d9020 | 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 2f 75 6c 3e 0a 20 20 | nt</a></li>.............</ul>... |
| d9040 | 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>..... |
| d9060 | 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 |
| d9080 | 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 |
| d90a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 73 70 61 6e 3e | .class="tok-kw">allowzero</span> |
| d90c0 | 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>... |
| d90e0 | 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 20 70 6f 69 | ........<td>.............The.poi |
| d9100 | 6e 74 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 | nter.attribute.<code><span.class |
| d9120 | 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 65 | ="tok-kw">allowzero</span></code |
| d9140 | 3e 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 | >.allows.a.pointer.to.have.addre |
| d9160 | 73 73 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 | ss.zero..............<ul>....... |
| d9180 | 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 61 | ........<li>See.also.<a.href="#a |
| d91a0 | 6c 6c 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 | llowzero">allowzero</a></li>.... |
| d91c0 | 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>.. |
| d91e0 | 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>....... |
| d9200 | 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">............ |
| d9220 | 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" |
| d9240 | 3e 61 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 | >and</span></code></pre>........ |
| d9260 | 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>......... |
| d9280 | 20 20 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 | ....The.boolean.operator.<code>< |
| d92a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 3c 2f | span.class="tok-kw">and</span></ |
| d92c0 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | code>..............<ul>......... |
| d92e0 | 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 4f 70 65 | ......<li>See.also.<a.href="#Ope |
| d9300 | 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 20 20 20 20 | rators">Operators</a></li>...... |
| d9320 | 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>.... |
| d9340 | 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>......... |
| d9360 | 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">.............< |
| d9380 | 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 |
| d93a0 | 6e 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | nyframe</span></code></pre>..... |
| d93c0 | 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>...... |
| d93e0 | 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 |
| d9400 | 22 3e 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 | ">anyframe</span></code>.can.be. |
| d9420 | 75 73 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 | used.as.a.type.for.variables.whi |
| d9440 | 63 68 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 | ch.hold.pointers.to.function.fra |
| d9460 | 6d 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 | mes..............<ul>........... |
| d9480 | 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 41 73 79 6e 63 | ....<li>See.also.<a.href="#Async |
| d94a0 | 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c | -Functions">Async.Functions</a>< |
| d94c0 | 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>.......... |
| d94e0 | 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 |
| d9500 | 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">.... |
| d9520 | 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= |
| d9540 | 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 3e 3c 2f | "tok-kw">anytype</span></code></ |
| d9560 | 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>...........< |
| d9580 | 74 64 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 | td>.............Function.paramet |
| d95a0 | 65 72 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 | ers.can.be.declared.with.<code>< |
| d95c0 | 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 |
| d95e0 | 6e 3e 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 | n></code>.in.place.of.the.type.. |
| d9600 | 20 20 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 | ............The.type.will.be.inf |
| d9620 | 65 72 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 | erred.where.the.function.is.call |
| d9640 | 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ed..............<ul>............ |
| d9660 | 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 |
| d9680 | 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 6e | on-Parameter-Type-Inference">Fun |
| d96a0 | 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 2f | ction.Parameter.Type.Inference</ |
| d96c0 | 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>....... |
| d96e0 | 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>......... |
| d9700 | 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">. |
| d9720 | 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 |
| d9740 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 6d 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 | ss="tok-kw">asm</span></code></p |
| d9760 | 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 |
| d9780 | 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 |
| d97a0 | 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 20 62 65 67 69 | ="tok-kw">asm</span></code>.begi |
| d97c0 | 6e 73 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 | ns.an.inline.assembly.expression |
| d97e0 | 2e 20 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 | ..This.allows.for.directly.contr |
| d9800 | 6f 6c 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 | olling.the.machine.code.generate |
| d9820 | 64 20 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 | d.on.compilation..............<u |
| d9840 | 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 |
| d9860 | 20 68 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 | .href="#Assembly">Assembly</a></ |
| d9880 | 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>........... |
| d98a0 | 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> |
| d98c0 | 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">..... |
| d98e0 | 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=" |
| d9900 | 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | tok-kw">async</span></code></pre |
| d9920 | 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> |
| d9940 | 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=" |
| d9960 | 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 | tok-kw">async</span></code>.can. |
| d9980 | 62 65 20 75 73 65 64 20 62 65 66 6f 72 65 20 61 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 74 | be.used.before.a.function.call.t |
| d99a0 | 6f 20 67 65 74 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 27 | o.get.a.pointer.to.the.function' |
| d99c0 | 73 20 66 72 61 6d 65 20 77 68 65 6e 20 69 74 20 73 75 73 70 65 6e 64 73 2e 0a 20 20 20 20 20 20 | s.frame.when.it.suspends........ |
| d99e0 | 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 |
| d9a00 | 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 6f 6e 73 22 | .also.<a.href="#Async-Functions" |
| d9a20 | 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 20 20 20 20 | >Async.Functions</a></li>....... |
| d9a40 | 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>..... |
| d9a60 | 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>.......... |
| d9a80 | 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 70 | .<th.scope="row">.............<p |
| d9aa0 | 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 77 | re><code><span.class="tok-kw">aw |
| d9ac0 | 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 | ait</span></code></pre>......... |
| d9ae0 | 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>.......... |
| d9b00 | 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 61 77 | ...<code><span.class="tok-kw">aw |
| d9b20 | 61 69 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 | ait</span></code>.can.be.used.to |
| d9b40 | 20 73 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 | .suspend.the.current.function.un |
| d9b60 | 74 69 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 | til.the.frame.provided.after.the |
| d9b80 | 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 |
| d9ba0 | 74 3c 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 | t</span></code>.completes....... |
| d9bc0 | 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 |
| d9be0 | 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 6f 70 69 65 73 20 74 68 65 | ">await</span></code>.copies.the |
| d9c00 | 20 76 61 6c 75 65 20 72 65 74 75 72 6e 65 64 20 66 72 6f 6d 20 74 68 65 20 74 61 72 67 65 74 20 | .value.returned.from.the.target. |
| d9c20 | 66 75 6e 63 74 69 6f 6e 27 73 20 66 72 61 6d 65 20 74 6f 20 74 68 65 20 63 61 6c 6c 65 72 2e 0a | function's.frame.to.the.caller.. |
| d9c40 | 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>...............< |
| d9c60 | 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 75 6e 63 | li>See.also.<a.href="#Async-Func |
| d9c80 | 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 69 3e 0a | tions">Async.Functions</a></li>. |
| d9ca0 | 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 |
| d9cc0 | 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>.... |
| d9ce0 | 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 20 20 | .......<th.scope="row">......... |
| d9d00 | 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- |
| d9d20 | 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | kw">break</span></code></pre>... |
| d9d40 | 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>.... |
| d9d60 | 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 2d | .........<code><span.class="tok- |
| d9d80 | 6b 77 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 | kw">break</span></code>.can.be.u |
| d9da0 | 73 65 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 | sed.with.a.block.label.to.return |
| d9dc0 | 20 61 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 | .a.value.from.the.block......... |
| d9de0 | 20 20 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 | .....It.can.also.be.used.to.exit |
| d9e00 | 20 61 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 | .a.loop.before.iteration.complet |
| d9e20 | 65 73 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 | es.naturally..............<ul>.. |
| d9e40 | 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 |
| d9e60 | 66 3d 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 | f="#Blocks">Blocks</a>,.<a.href= |
| d9e80 | 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 |
| d9ea0 | 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 |
| d9ec0 | 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>. |
| d9ee0 | 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 |
| d9f00 | 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>< |
| d9f20 | 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 |
| d9f40 | 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> |
| d9f60 | 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 |
| d9f80 | 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 6c 6c 63 6f 6e 76 3c | e><span.class="tok-kw">callconv< |
| d9fa0 | 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 70 65 | /span></code>.can.be.used.to.spe |
| d9fc0 | 63 69 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 | cify.the.calling.convention.in.a |
| d9fe0 | 20 66 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 | .function.type..............<ul> |
| da000 | 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 |
| da020 | 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 2f | ref="#Functions">Functions</a></ |
| da040 | 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>........... |
| da060 | 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> |
| da080 | 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">..... |
| da0a0 | 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=" |
| da0c0 | 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 3c 2f 70 72 65 | tok-kw">catch</span></code></pre |
| da0e0 | 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> |
| da100 | 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=" |
| da120 | 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 | tok-kw">catch</span></code>.can. |
| da140 | 62 65 20 75 73 65 64 20 74 6f 20 65 76 61 6c 75 61 74 65 20 61 6e 20 65 78 70 72 65 73 73 69 6f | be.used.to.evaluate.an.expressio |
| da160 | 6e 20 69 66 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 62 65 66 6f 72 65 20 69 74 20 65 76 | n.if.the.expression.before.it.ev |
| da180 | 61 6c 75 61 74 65 73 20 74 6f 20 61 6e 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 20 20 20 20 20 | aluates.to.an.error............. |
| da1a0 | 20 54 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 61 66 74 65 72 20 74 68 65 20 3c 63 6f 64 65 3e | .The.expression.after.the.<code> |
| da1c0 | 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 |
| da1e0 | 3e 3c 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 | ></code>.can.optionally.capture. |
| da200 | 74 68 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 | the.error.value..............<ul |
| da220 | 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 20 | >...............<li>See.also.<a. |
| da240 | 68 72 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 | href="#catch">catch</a>,.<a.href |
| da260 | 3d 22 23 4f 70 65 72 61 74 6f 72 73 22 3e 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e | ="#Operators">Operators</a></li> |
| da280 | 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 |
| da2a0 | 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>... |
| da2c0 | 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 20 | ........<th.scope="row">........ |
| da2e0 | 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 |
| da300 | 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 3c 2f 70 72 65 | -kw">comptime</span></code></pre |
| da320 | 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> |
| da340 | 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=" |
| da360 | 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 20 62 | tok-kw">comptime</span></code>.b |
| da380 | 65 66 6f 72 65 20 61 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 63 61 6e 20 62 65 20 75 73 65 64 20 | efore.a.declaration.can.be.used. |
| da3a0 | 74 6f 20 6c 61 62 65 6c 20 76 61 72 69 61 62 6c 65 73 20 6f 72 20 66 75 6e 63 74 69 6f 6e 20 70 | to.label.variables.or.function.p |
| da3c0 | 61 72 61 6d 65 74 65 72 73 20 61 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 | arameters.as.known.at.compile.ti |
| da3e0 | 6d 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 74 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 75 | me..............It.can.also.be.u |
| da400 | 73 65 64 20 74 6f 20 67 75 61 72 61 6e 74 65 65 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 69 | sed.to.guarantee.an.expression.i |
| da420 | 73 20 72 75 6e 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 2e 0a 20 20 20 20 20 20 20 20 20 | s.run.at.compile.time........... |
| da440 | 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 |
| da460 | 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c | so.<a.href="#comptime">comptime< |
| da480 | 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>...... |
| da4a0 | 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>........ |
| da4c0 | 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"> |
| da4e0 | 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 |
| da500 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-kw">const</span></code> |
| da520 | 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>.......... |
| da540 | 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 |
| da560 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-kw">const</span></code> |
| da580 | 20 64 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 | .declares.a.variable.that.can.no |
| da5a0 | 74 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 55 73 65 64 20 | t.be.modified..............Used. |
| da5c0 | 61 73 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 | as.a.pointer.attribute,.it.denot |
| da5e0 | 65 73 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 | es.the.value.referenced.by.the.p |
| da600 | 6f 69 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 | ointer.cannot.be.modified....... |
| da620 | 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 |
| da640 | 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 56 61 72 69 61 62 6c 65 73 22 3e 56 61 72 69 | e.also.<a.href="#Variables">Vari |
| da660 | 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e | ables</a></li>.............</ul> |
| da680 | 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>.. |
| da6a0 | 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 3d | .......<tr>...........<th.scope= |
| da6c0 | 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 73 | "row">.............<pre><code><s |
| da6e0 | 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 |
| da700 | 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 0a | n></code></pre>...........</th>. |
| da720 | 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 65 | ..........<td>.............<code |
| da740 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f | ><span.class="tok-kw">continue</ |
| da760 | 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 69 6e 20 61 20 6c 6f | span></code>.can.be.used.in.a.lo |
| da780 | 6f 70 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 | op.to.jump.back.to.the.beginning |
| da7a0 | 20 6f 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 | .of.the.loop..............<ul>.. |
| da7c0 | 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 |
| da7e0 | 66 3d 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 | f="#while">while</a>,.<a.href="# |
| da800 | 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f | for">for</a></li>.............</ |
| da820 | 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 |
| da840 | 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 |
| da860 | 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 |
| da880 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 | ><span.class="tok-kw">defer</spa |
| da8a0 | 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 0a | n></code></pre>...........</th>. |
| da8c0 | 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 65 | ..........<td>.............<code |
| da8e0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 | ><span.class="tok-kw">defer</spa |
| da900 | 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 65 78 65 63 75 74 65 20 61 6e 20 65 78 70 72 65 73 | n></code>.will.execute.an.expres |
| da920 | 73 69 6f 6e 20 77 68 65 6e 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 6c 65 61 76 65 73 20 74 68 | sion.when.control.flow.leaves.th |
| da940 | 65 20 63 75 72 72 65 6e 74 20 62 6c 6f 63 6b 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c | e.current.block..............<ul |
| da960 | 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 20 | >...............<li>See.also.<a. |
| da980 | 68 72 65 66 3d 22 23 64 65 66 65 72 22 3e 64 65 66 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | href="#defer">defer</a></li>.... |
| da9a0 | 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>.. |
| da9c0 | 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>....... |
| da9e0 | 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">............ |
| daa00 | 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" |
| daa20 | 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | >else</span></code></pre>....... |
| daa40 | 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>........ |
| daa60 | 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"> |
| daa80 | 65 6c 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 | else</span></code>.can.be.used.t |
| daaa0 | 6f 20 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 | o.provide.an.alternate.branch.fo |
| daac0 | 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 22 3e 69 66 3c | r.<code><span.class="tok-kw">if< |
| daae0 | 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 73 | /span></code>,.<code><span.class |
| dab00 | 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 2c 0a | ="tok-kw">switch</span></code>,. |
| dab20 | 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 74 | ............<code><span.class="t |
| dab40 | 6f 6b 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 | ok-kw">while</span></code>,.and. |
| dab60 | 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 6f 72 3c 2f | <code><span.class="tok-kw">for</ |
| dab80 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 0a 20 20 20 20 20 20 | span></code>.expressions........ |
| daba0 | 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 49 66 20 | ......<ul>...............<li>If. |
| dabc0 | 75 73 65 64 20 61 66 74 65 72 20 61 6e 20 69 66 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 74 68 65 | used.after.an.if.expression,.the |
| dabe0 | 20 65 6c 73 65 20 62 72 61 6e 63 68 20 77 69 6c 6c 20 62 65 20 65 78 65 63 75 74 65 64 20 69 66 | .else.branch.will.be.executed.if |
| dac00 | 20 74 68 65 20 74 65 73 74 20 76 61 6c 75 65 20 72 65 74 75 72 6e 73 20 66 61 6c 73 65 2c 20 6e | .the.test.value.returns.false,.n |
| dac20 | 75 6c 6c 2c 20 6f 72 20 61 6e 20 65 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ull,.or.an.error.</li>.......... |
| dac40 | 20 20 20 20 20 3c 6c 69 3e 49 66 20 75 73 65 64 20 77 69 74 68 69 6e 20 61 20 73 77 69 74 63 68 | .....<li>If.used.within.a.switch |
| dac60 | 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 6c | .expression,.the.else.branch.wil |
| dac80 | 6c 20 62 65 20 65 78 65 63 75 74 65 64 20 69 66 20 74 68 65 20 74 65 73 74 20 76 61 6c 75 65 20 | l.be.executed.if.the.test.value. |
| daca0 | 6d 61 74 63 68 65 73 20 6e 6f 20 6f 74 68 65 72 20 63 61 73 65 73 2e 3c 2f 6c 69 3e 0a 20 20 20 | matches.no.other.cases.</li>.... |
| dacc0 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 75 73 65 64 20 61 66 74 65 72 20 61 20 6c | ...........<li>If.used.after.a.l |
| dace0 | 6f 6f 70 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 74 68 65 20 65 6c 73 65 20 62 72 61 6e 63 68 20 | oop.expression,.the.else.branch. |
| dad00 | 77 69 6c 6c 20 62 65 20 65 78 65 63 75 74 65 64 20 69 66 20 74 68 65 20 6c 6f 6f 70 20 66 69 6e | will.be.executed.if.the.loop.fin |
| dad20 | 69 73 68 65 73 20 77 69 74 68 6f 75 74 20 62 72 65 61 6b 69 6e 67 2e 3c 2f 6c 69 3e 0a 20 20 20 | ishes.without.breaking.</li>.... |
| dad40 | 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= |
| dad60 | 22 23 69 66 22 3e 69 66 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e | "#if">if</a>,.<a.href="#switch"> |
| dad80 | 73 77 69 74 63 68 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 77 68 69 6c 65 22 3e 77 68 69 | switch</a>,.<a.href="#while">whi |
| dada0 | 6c 65 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 3c 2f | le</a>,.<a.href="#for">for</a></ |
| dadc0 | 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>........... |
| dade0 | 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> |
| dae00 | 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">..... |
| dae20 | 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=" |
| dae40 | 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | tok-kw">enum</span></code></pre> |
| dae60 | 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 0a | ...........</th>...........<td>. |
| dae80 | 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 74 | ............<code><span.class="t |
| daea0 | 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 66 69 6e 65 | ok-kw">enum</span></code>.define |
| daec0 | 73 20 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 | s.an.enum.type..............<ul> |
| daee0 | 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 |
| daf00 | 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 20 20 20 20 20 20 | ref="#enum">enum</a></li>....... |
| daf20 | 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>..... |
| daf40 | 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>.......... |
| daf60 | 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 70 | .<th.scope="row">.............<p |
| daf80 | 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 72 | re><code><span.class="tok-kw">er |
| dafa0 | 72 64 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 | rdefer</span></code></pre>...... |
| dafc0 | 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 20 | .....</th>...........<td>....... |
| dafe0 | 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" |
| db000 | 3e 65 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 | >errdefer</span></code>.will.exe |
| db020 | 63 75 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 | cute.an.expression.when.control. |
| db040 | 66 6c 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 | flow.leaves.the.current.block.if |
| db060 | 20 74 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 | .the.function.returns.an.error,. |
| db080 | 74 68 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 | the.errdefer.expression.can.capt |
| db0a0 | 75 72 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 | ure.the.unwrapped.value......... |
| db0c0 | 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. |
| db0e0 | 61 6c 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 | also.<a.href="#errdefer">errdefe |
| db100 | 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 20 20 20 | r</a></li>.............</ul>.... |
| db120 | 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 | .......</td>.........</tr>...... |
| db140 | 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 77 | ...<tr>...........<th.scope="row |
| db160 | 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 20 | ">.............<pre><code><span. |
| db180 | 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 3c 2f 63 6f 64 | class="tok-kw">error</span></cod |
| db1a0 | 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>........ |
| db1c0 | 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. |
| db1e0 | 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 3c 2f 63 6f 64 | class="tok-kw">error</span></cod |
| db200 | 65 3e 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 | e>.defines.an.error.type........ |
| db220 | 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 |
| db240 | 20 61 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 | .also.<a.href="#Errors">Errors</ |
| db260 | 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>....... |
| db280 | 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>......... |
| db2a0 | 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">. |
| db2c0 | 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 |
| db2e0 | 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 3c 2f 63 6f 64 65 3e | ss="tok-kw">export</span></code> |
| db300 | 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>.......... |
| db320 | 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 |
| db340 | 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 3c 2f 63 6f 64 65 | ass="tok-kw">export</span></code |
| db360 | 3e 20 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 | >.makes.a.function.or.variable.e |
| db380 | 78 74 65 72 6e 61 6c 6c 79 20 76 69 73 69 62 6c 65 20 69 6e 20 74 68 65 20 67 65 6e 65 72 61 74 | xternally.visible.in.the.generat |
| db3a0 | 65 64 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 | ed.object.file..............Expo |
| db3c0 | 72 74 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 | rted.functions.default.to.the.C. |
| db3e0 | 63 61 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 | calling.convention.............. |
| db400 | 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. |
| db420 | 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 69 6f 6e 73 3c 2f | <a.href="#Functions">Functions</ |
| db440 | 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>....... |
| db460 | 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>......... |
| db480 | 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">. |
| db4a0 | 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 |
| db4c0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ss="tok-kw">extern</span></code> |
| db4e0 | 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>.......... |
| db500 | 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 |
| db520 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-kw">extern</span></code |
| db540 | 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 64 65 63 6c 61 72 65 20 61 20 66 75 6e 63 74 | >.can.be.used.to.declare.a.funct |
| db560 | 69 6f 6e 20 6f 72 20 76 61 72 69 61 62 6c 65 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 72 65 73 | ion.or.variable.that.will.be.res |
| db580 | 6f 6c 76 65 64 20 61 74 20 6c 69 6e 6b 20 74 69 6d 65 2c 20 77 68 65 6e 20 6c 69 6e 6b 69 6e 67 | olved.at.link.time,.when.linking |
| db5a0 | 20 73 74 61 74 69 63 61 6c 6c 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 20 61 74 20 72 75 | .statically.............or.at.ru |
| db5c0 | 6e 74 69 6d 65 2c 20 77 68 65 6e 20 6c 69 6e 6b 69 6e 67 20 64 79 6e 61 6d 69 63 61 6c 6c 79 2e | ntime,.when.linking.dynamically. |
| db5e0 | 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>............... |
| db600 | 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 73 | <li>See.also.<a.href="#Functions |
| db620 | 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ">Functions</a></li>............ |
| db640 | 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c | .</ul>...........</td>.........< |
| db660 | 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 20 | /tr>.........<tr>...........<th. |
| db680 | 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 63 | scope="row">.............<pre><c |
| db6a0 | 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 70 61 | ode><span.class="tok-kw">fn</spa |
| db6c0 | 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 0a | n></code></pre>...........</th>. |
| db6e0 | 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 65 | ..........<td>.............<code |
| db700 | 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 3c | ><span.class="tok-kw">fn</span>< |
| db720 | 2f 63 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 | /code>.declares.a.function...... |
| db740 | 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 | ........<ul>...............<li>S |
| db760 | 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 75 6e | ee.also.<a.href="#Functions">Fun |
| db780 | 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 |
| db7a0 | 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>. |
| db7c0 | 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 |
| db7e0 | 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>< |
| db800 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 3c 2f | span.class="tok-kw">for</span></ |
| db820 | 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>..... |
| db840 | 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 20 3c 63 6f 64 65 3e 3c | ......<td>.............A.<code>< |
| db860 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 3c 2f | span.class="tok-kw">for</span></ |
| db880 | 63 6f 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 | code>.expression.can.be.used.to. |
| db8a0 | 69 74 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 | iterate.over.the.elements.of.a.s |
| db8c0 | 6c 69 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 | lice,.array,.or.tuple........... |
| db8e0 | 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 |
| db900 | 73 6f 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 | so.<a.href="#for">for</a></li>.. |
| db920 | 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> |
| db940 | 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>..... |
| db960 | 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">.......... |
| db980 | 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 |
| db9a0 | 77 22 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 | w">if</span></code></pre>....... |
| db9c0 | 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>........ |
| db9e0 | 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 22 74 6f 6b 2d 6b | .....An.<code><span.class="tok-k |
| dba00 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 20 63 | w">if</span></code>.expression.c |
| dba20 | 61 6e 20 74 65 73 74 20 62 6f 6f 6c 65 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 73 2c 20 6f 70 74 | an.test.boolean.expressions,.opt |
| dba40 | 69 6f 6e 61 6c 20 76 61 6c 75 65 73 2c 20 6f 72 20 65 72 72 6f 72 20 75 6e 69 6f 6e 73 2e 0a 20 | ional.values,.or.error.unions... |
| dba60 | 20 20 20 20 20 20 20 20 20 20 20 46 6f 72 20 6f 70 74 69 6f 6e 61 6c 20 76 61 6c 75 65 73 20 6f | ...........For.optional.values.o |
| dba80 | 72 20 65 72 72 6f 72 20 75 6e 69 6f 6e 73 2c 20 74 68 65 20 69 66 20 65 78 70 72 65 73 73 69 6f | r.error.unions,.the.if.expressio |
| dbaa0 | 6e 20 63 61 6e 20 63 61 70 74 75 72 65 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 76 61 6c 75 | n.can.capture.the.unwrapped.valu |
| dbac0 | 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | e..............<ul>............. |
| dbae0 | 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 69 66 22 3e 69 66 3c | ..<li>See.also.<a.href="#if">if< |
| dbb00 | 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>...... |
| dbb20 | 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>........ |
| dbb40 | 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"> |
| dbb60 | 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 |
| dbb80 | 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 65 | ass="tok-kw">inline</span></code |
| dbba0 | 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>......... |
| dbbc0 | 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 |
| dbbe0 | 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 |
| dbc00 | 65 3e 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 | e>.can.be.used.to.label.a.loop.e |
| dbc20 | 78 70 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 | xpression.such.that.it.will.be.u |
| dbc40 | 6e 72 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 | nrolled.at.compile.time......... |
| dbc60 | 20 20 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 | .....It.can.also.be.used.to.forc |
| dbc80 | 65 20 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 | e.a.function.to.be.inlined.at.al |
| dbca0 | 6c 20 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 | l.call.sites..............<ul>.. |
| dbcc0 | 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 |
| dbce0 | 66 3d 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 | f="#inline-while">inline.while</ |
| dbd00 | 61 3e 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 | a>,.<a.href="#inline-for">inline |
| dbd20 | 20 66 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 | .for</a>,.<a.href="#Functions">F |
| dbd40 | 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>.............</ |
| dbd60 | 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 |
| dbd80 | 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 |
| dbda0 | 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 |
| dbdc0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6c 69 6e 6b 73 65 63 74 69 6f | ><span.class="tok-kw">linksectio |
| dbde0 | 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 20 20 20 20 | n</span></code></pre>........... |
| dbe00 | 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>............ |
| dbe20 | 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 6b 77 22 3e | .The.<code><span.class="tok-kw"> |
| dbe40 | 6c 69 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 | linksection</span></code>.keywor |
| dbe60 | 64 20 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 | d.can.be.used.to.specify.what.se |
| dbe80 | 63 74 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 | ction.the.function.or.global.var |
| dbea0 | 69 61 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 | iable.will.be.put.into.(e.g..<co |
| dbec0 | 64 65 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 | de>.text</code>)............</td |
| dbee0 | 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>.... |
| dbf00 | 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 20 20 | .......<th.scope="row">......... |
| dbf20 | 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- |
| dbf40 | 6b 77 22 3e 6e 6f 61 6c 69 61 73 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | kw">noalias</span></code></pre>. |
| dbf60 | 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>.. |
| dbf80 | 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 73 73 | ...........The.<code><span.class |
| dbfa0 | 3d 22 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 | ="tok-kw">noalias</span></code>. |
| dbfc0 | 6b 65 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 | keyword..............<ul>....... |
| dbfe0 | 20 20 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 | ........<li>TODO.add.documentati |
| dc000 | 6f 6e 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 | on.for.noalias</li>............. |
| dc020 | 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f | </ul>...........</td>.........</ |
| dc040 | 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 20 73 | tr>.........<tr>...........<th.s |
| dc060 | 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 63 6f | cope="row">.............<pre><co |
| dc080 | 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 65 | de><span.class="tok-kw">noinline |
| dc0a0 | 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>...........< |
| dc0c0 | 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>............. |
| dc0e0 | 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 69 6e 6c | <code><span.class="tok-kw">noinl |
| dc100 | 69 6e 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 | ine</span></code>.disallows.func |
| dc120 | 74 69 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 | tion.to.be.inlined.in.all.call.s |
| dc140 | 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 20 20 20 20 20 20 | ites..............<ul>.......... |
| dc160 | 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 46 75 6e 63 | .....<li>See.also.<a.href="#Func |
| dc180 | 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | tions">Functions</a></li>....... |
| dc1a0 | 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>..... |
| dc1c0 | 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>.......... |
| dc1e0 | 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 70 | .<th.scope="row">.............<p |
| dc200 | 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 6e 6f | re><code><span.class="tok-kw">no |
| dc220 | 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | suspend</span></code></pre>..... |
| dc240 | 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>...... |
| dc260 | 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 74 6f | .......The.<code><span.class="to |
| dc280 | 6b 2d 6b 77 22 3e 6e 6f 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 | k-kw">nosuspend</span></code>.ke |
| dc2a0 | 79 77 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 | yword.can.be.used.in.front.of.a. |
| dc2c0 | 62 6c 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 | block,.statement.or.expression,. |
| dc2e0 | 74 6f 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 | to.mark.a.scope.where.no.suspens |
| dc300 | 69 6f 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 | ion.points.are.reached.......... |
| dc320 | 20 20 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 | ....In.particular,.inside.a.<cod |
| dc340 | 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 73 70 65 6e 64 | e><span.class="tok-kw">nosuspend |
| dc360 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 63 6f 70 65 3a 0a 20 20 20 20 20 20 20 20 20 20 | </span></code>.scope:........... |
| dc380 | 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 55 73 69 6e 67 20 74 | ..<ul>...............<li>Using.t |
| dc3a0 | 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 73 75 | he.<code><span.class="tok-kw">su |
| dc3c0 | 73 70 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 | spend</span></code>.keyword.resu |
| dc3e0 | 6c 74 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 | lts.in.a.compile.error.</li>.... |
| dc400 | 20 20 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 | ...........<li>Using.<code><span |
| dc420 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | .class="tok-kw">await</span></co |
| dc440 | 64 65 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 | de>.on.a.function.frame.which.ha |
| dc460 | 73 6e 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 | sn't.completed.yet.results.in.sa |
| dc480 | 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 | fety-checked.<a.href="#Undefined |
| dc4a0 | 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 | -Behavior">Undefined.Behavior</a |
| dc4c0 | 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6c 6c 69 6e | >.</li>...............<li>Callin |
| dc4e0 | 67 20 61 6e 20 61 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 | g.an.async.function.may.result.i |
| dc500 | 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 55 6e 64 65 66 | n.safety-checked.<a.href="#Undef |
| dc520 | 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f | ined-Behavior">Undefined.Behavio |
| dc540 | 72 3c 2f 61 3e 2c 20 62 65 63 61 75 73 65 20 69 74 27 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 | r</a>,.because.it's.equivalent.t |
| dc560 | 6f 20 3c 63 6f 64 65 3e 61 77 61 69 74 20 61 73 79 6e 63 20 73 6f 6d 65 5f 61 73 79 6e 63 5f 66 | o.<code>await.async.some_async_f |
| dc580 | 6e 28 29 3c 2f 63 6f 64 65 3e 2c 20 77 68 69 63 68 20 63 6f 6e 74 61 69 6e 73 20 61 6e 20 3c 63 | n()</code>,.which.contains.an.<c |
| dc5a0 | 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 2f | ode><span.class="tok-kw">await</ |
| dc5c0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | span></code>.</li>.............< |
| dc5e0 | 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 43 6f 64 65 20 69 6e 73 69 64 65 20 61 20 3c | /ul>.............Code.inside.a.< |
| dc600 | 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 73 70 | code><span.class="tok-kw">nosusp |
| dc620 | 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 63 6f 70 65 20 64 6f 65 73 20 6e 6f 74 | end</span></code>.scope.does.not |
| dc640 | 20 63 61 75 73 65 20 74 68 65 20 65 6e 63 6c 6f 73 69 6e 67 20 66 75 6e 63 74 69 6f 6e 20 74 6f | .cause.the.enclosing.function.to |
| dc660 | 20 62 65 63 6f 6d 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 | .become.an.<a.href="#Async-Funct |
| dc680 | 69 6f 6e 73 22 3e 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 | ions">async.function</a>........ |
| dc6a0 | 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 |
| dc6c0 | 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 6f 6e 73 22 | .also.<a.href="#Async-Functions" |
| dc6e0 | 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 20 20 20 20 | >Async.Functions</a></li>....... |
| dc700 | 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>..... |
| dc720 | 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>.......... |
| dc740 | 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 70 | .<th.scope="row">.............<p |
| dc760 | 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 6f 70 | re><code><span.class="tok-kw">op |
| dc780 | 61 71 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 | aque</span></code></pre>........ |
| dc7a0 | 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>......... |
| dc7c0 | 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 6f | ....<code><span.class="tok-kw">o |
| dc7e0 | 70 61 71 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 66 69 6e 65 73 20 61 6e 20 6f | paque</span></code>.defines.an.o |
| dc800 | 70 61 71 75 65 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 20 20 | paque.type..............<ul>.... |
| dc820 | 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= |
| dc840 | 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 0a 20 20 20 20 20 20 | "#opaque">opaque</a></li>....... |
| dc860 | 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>..... |
| dc880 | 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>.......... |
| dc8a0 | 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 70 | .<th.scope="row">.............<p |
| dc8c0 | 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 6f 72 | re><code><span.class="tok-kw">or |
| dc8e0 | 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>...........< |
| dc900 | 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>............. |
| dc920 | 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 61 6e | The.boolean.operator.<code><span |
| dc940 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | .class="tok-kw">or</span></code> |
| dc960 | 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>.............. |
| dc980 | 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 74 6f 72 | .<li>See.also.<a.href="#Operator |
| dc9a0 | 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 20 20 20 | s">Operators</a></li>........... |
| dc9c0 | 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>......... |
| dc9e0 | 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 |
| dca00 | 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>< |
| dca20 | 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 6c 73 65 | code><span.class="tok-kw">orelse |
| dca40 | 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>...........< |
| dca60 | 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>............. |
| dca80 | 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 6c 73 | <code><span.class="tok-kw">orels |
| dcaa0 | 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 65 | e</span></code>.can.be.used.to.e |
| dcac0 | 76 61 6c 75 61 74 65 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 69 66 20 74 68 65 20 65 78 70 | valuate.an.expression.if.the.exp |
| dcae0 | 72 65 73 73 69 6f 6e 20 62 65 66 6f 72 65 20 69 74 20 65 76 61 6c 75 61 74 65 73 20 74 6f 20 6e | ression.before.it.evaluates.to.n |
| dcb00 | 75 6c 6c 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 | ull..............<ul>........... |
| dcb20 | 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 74 69 6f | ....<li>See.also.<a.href="#Optio |
| dcb40 | 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 4f | nals">Optionals</a>,.<a.href="#O |
| dcb60 | 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 20 20 | perators">Operators</a></li>.... |
| dcb80 | 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>.. |
| dcba0 | 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>....... |
| dcbc0 | 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">............ |
| dcbe0 | 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" |
| dcc00 | 3e 70 61 63 6b 65 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 | >packed</span></code></pre>..... |
| dcc20 | 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>...... |
| dcc40 | 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 74 6f | .......The.<code><span.class="to |
| dcc60 | 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 6b 65 79 77 6f | k-kw">packed</span></code>.keywo |
| dcc80 | 72 64 20 62 65 66 6f 72 65 20 61 20 73 74 72 75 63 74 20 64 65 66 69 6e 69 74 69 6f 6e 20 63 68 | rd.before.a.struct.definition.ch |
| dcca0 | 61 6e 67 65 73 20 74 68 65 20 73 74 72 75 63 74 27 73 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c 61 79 | anges.the.struct's.in-memory.lay |
| dccc0 | 6f 75 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 20 74 68 65 20 67 75 61 72 61 6e 74 65 65 | out.............to.the.guarantee |
| dcce0 | 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 70 61 63 | d.<code><span.class="tok-kw">pac |
| dcd00 | 6b 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 61 79 6f 75 74 2e 0a 20 20 20 20 20 20 | ked</span></code>.layout........ |
| dcd20 | 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 |
| dcd40 | 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 70 | .also.<a.href="#packed-struct">p |
| dcd60 | 61 63 6b 65 64 20 73 74 72 75 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | acked.struct</a></li>........... |
| dcd80 | 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>......... |
| dcda0 | 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 |
| dcdc0 | 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>< |
| dcde0 | 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 |
| dce00 | 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 |
| dce20 | 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 |
| dce40 | 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< |
| dce60 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 6e 20 66 72 6f 6e 74 20 6f 66 20 61 20 74 6f 70 20 | /span></code>.in.front.of.a.top. |
| dce80 | 6c 65 76 65 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 6d 61 6b 65 73 20 74 68 65 20 64 65 63 6c | level.declaration.makes.the.decl |
| dcea0 | 61 72 61 74 69 6f 6e 20 61 76 61 69 6c 61 62 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 6f | aration.available.............to |
| dcec0 | 20 72 65 66 65 72 65 6e 63 65 20 66 72 6f 6d 20 61 20 64 69 66 66 65 72 65 6e 74 20 66 69 6c 65 | .reference.from.a.different.file |
| dcee0 | 20 74 68 61 6e 20 74 68 65 20 6f 6e 65 20 69 74 20 69 73 20 64 65 63 6c 61 72 65 64 20 69 6e 2e | .than.the.one.it.is.declared.in. |
| dcf00 | 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>............... |
| dcf20 | 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 69 6d 70 6f 72 74 22 3e 69 | <li>See.also.<a.href="#import">i |
| dcf40 | 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e | mport</a></li>.............</ul> |
| dcf60 | 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>.. |
| dcf80 | 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 3d | .......<tr>...........<th.scope= |
| dcfa0 | 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 73 | "row">.............<pre><code><s |
| dcfc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e | pan.class="tok-kw">resume</span> |
| dcfe0 | 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>... |
| dd000 | 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>< |
| dd020 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e | span.class="tok-kw">resume</span |
| dd040 | 3e 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 63 6f 6e 74 69 6e 75 65 20 65 78 65 63 75 74 69 6f 6e | ></code>.will.continue.execution |
| dd060 | 20 6f 66 20 61 20 66 75 6e 63 74 69 6f 6e 20 66 72 61 6d 65 20 61 66 74 65 72 20 74 68 65 20 70 | .of.a.function.frame.after.the.p |
| dd080 | 6f 69 6e 74 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 77 61 73 20 73 75 73 70 65 6e 64 65 64 2e | oint.the.function.was.suspended. |
| dd0a0 | 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>.. |
| dd0c0 | 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 3d | .......<tr>...........<th.scope= |
| dd0e0 | 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 73 | "row">.............<pre><code><s |
| dd100 | 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> |
| dd120 | 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>... |
| dd140 | 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>< |
| dd160 | 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 |
| dd180 | 3e 3c 2f 63 6f 64 65 3e 20 65 78 69 74 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 61 | ></code>.exits.a.function.with.a |
| dd1a0 | 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | .value..............<ul>........ |
| dd1c0 | 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 46 75 | .......<li>See.also.<a.href="#Fu |
| dd1e0 | 6e 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | nctions">Functions</a></li>..... |
| dd200 | 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>... |
| dd220 | 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>........ |
| dd240 | 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">............. |
| dd260 | 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"> |
| dd280 | 73 74 72 75 63 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 | struct</span></code></pre>...... |
| dd2a0 | 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 20 | .....</th>...........<td>....... |
| dd2c0 | 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" |
| dd2e0 | 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 66 69 6e 65 73 20 61 20 | >struct</span></code>.defines.a. |
| dd300 | 73 74 72 75 63 74 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 | struct..............<ul>........ |
| dd320 | 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 74 | .......<li>See.also.<a.href="#st |
| dd340 | 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 20 | ruct">struct</a></li>........... |
| dd360 | 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>......... |
| dd380 | 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 |
| dd3a0 | 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>< |
| dd3c0 | 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 65 6e | code><span.class="tok-kw">suspen |
| dd3e0 | 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 20 | d</span></code></pre>........... |
| dd400 | 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>............ |
| dd420 | 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 |
| dd440 | 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 63 61 75 73 65 20 63 6f 6e | end</span></code>.will.cause.con |
| dd460 | 74 72 6f 6c 20 66 6c 6f 77 20 74 6f 20 72 65 74 75 72 6e 20 74 6f 20 74 68 65 20 63 61 6c 6c 20 | trol.flow.to.return.to.the.call. |
| dd480 | 73 69 74 65 20 6f 72 20 72 65 73 75 6d 65 72 20 6f 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 2e | site.or.resumer.of.the.function. |
| dd4a0 | 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=" |
| dd4c0 | 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 | tok-kw">suspend</span></code>.ca |
| dd4e0 | 6e 20 61 6c 73 6f 20 62 65 20 75 73 65 64 20 62 65 66 6f 72 65 20 61 20 62 6c 6f 63 6b 20 77 69 | n.also.be.used.before.a.block.wi |
| dd500 | 74 68 69 6e 20 61 20 66 75 6e 63 74 69 6f 6e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 20 | thin.a.function,.............to. |
| dd520 | 61 6c 6c 6f 77 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 61 63 63 65 73 73 20 74 6f 20 69 74 73 | allow.the.function.access.to.its |
| dd540 | 20 66 72 61 6d 65 20 62 65 66 6f 72 65 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 72 65 74 75 72 | .frame.before.control.flow.retur |
| dd560 | 6e 73 20 74 6f 20 74 68 65 20 63 61 6c 6c 20 73 69 74 65 2e 0a 20 20 20 20 20 20 20 20 20 20 3c | ns.to.the.call.site............< |
| dd580 | 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>. |
| dd5a0 | 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">...... |
| dd5c0 | 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 |
| dd5e0 | 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 3c 2f 70 72 65 | ok-kw">switch</span></code></pre |
| dd600 | 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> |
| dd620 | 0a 20 20 20 20 20 20 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 | .............A.<code><span.class |
| dd640 | 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 20 65 | ="tok-kw">switch</span></code>.e |
| dd660 | 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 74 65 73 74 20 76 61 | xpression.can.be.used.to.test.va |
| dd680 | 6c 75 65 73 20 6f 66 20 61 20 63 6f 6d 6d 6f 6e 20 74 79 70 65 2e 0a 20 20 20 20 20 20 20 20 20 | lues.of.a.common.type........... |
| dd6a0 | 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 77 | ...<code><span.class="tok-kw">sw |
| dd6c0 | 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 73 65 73 20 63 61 6e 20 63 61 70 | itch</span></code>.cases.can.cap |
| dd6e0 | 74 75 72 65 20 66 69 65 6c 64 20 76 61 6c 75 65 73 20 6f 66 20 61 20 3c 61 20 68 72 65 66 3d 22 | ture.field.values.of.a.<a.href=" |
| dd700 | 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 6e 3c 2f 61 3e 2e | #Tagged-union">Tagged.union</a>. |
| dd720 | 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>............... |
| dd740 | 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 | <li>See.also.<a.href="#switch">s |
| dd760 | 77 69 74 63 68 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e | witch</a></li>.............</ul> |
| dd780 | 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>.. |
| dd7a0 | 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 3d | .......<tr>...........<th.scope= |
| dd7c0 | 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 73 | "row">.............<pre><code><s |
| dd7e0 | 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 2f | pan.class="tok-kw">test</span></ |
| dd800 | 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>..... |
| dd820 | 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 3c 63 6f 64 65 | ......<td>.............The.<code |
| dd840 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e | ><span.class="tok-kw">test</span |
| dd860 | 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 | ></code>.keyword.can.be.used.to. |
| dd880 | 64 65 6e 6f 74 65 20 61 20 74 6f 70 2d 6c 65 76 65 6c 20 62 6c 6f 63 6b 20 6f 66 20 63 6f 64 65 | denote.a.top-level.block.of.code |
| dd8a0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 75 73 65 64 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 62 | .............used.to.make.sure.b |
| dd8c0 | 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 2e 0a 20 20 20 20 | ehavior.meets.expectations...... |
| dd8e0 | 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 | ........<ul>...............<li>S |
| dd900 | 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 54 65 73 74 22 3e 5a 69 67 20 | ee.also.<a.href="#Zig-Test">Zig. |
| dd920 | 54 65 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 2f 75 6c 3e 0a | Test</a></li>.............</ul>. |
| dd940 | 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>... |
| dd960 | 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=" |
| dd980 | 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 |
| dd9a0 | 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 73 | an.class="tok-kw">threadlocal</s |
| dd9c0 | 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 |
| dd9e0 | 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 |
| dda00 | 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 68 72 65 61 64 6c 6f | de><span.class="tok-kw">threadlo |
| dda20 | 63 61 6c 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 | cal</span></code>.can.be.used.to |
| dda40 | 20 73 70 65 63 69 66 79 20 61 20 76 61 72 69 61 62 6c 65 20 61 73 20 74 68 72 65 61 64 2d 6c 6f | .specify.a.variable.as.thread-lo |
| dda60 | 63 61 6c 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 | cal..............<ul>........... |
| dda80 | 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 54 68 72 65 61 | ....<li>See.also.<a.href="#Threa |
| ddaa0 | 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. |
| ddac0 | 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>.............< |
| ddae0 | 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 |
| ddb00 | 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 |
| ddb20 | 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 |
| ddb40 | 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 6e | e><span.class="tok-kw">try</span |
| ddb60 | 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>.. |
| ddb80 | 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> |
| ddba0 | 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 3c | <span.class="tok-kw">try</span>< |
| ddbc0 | 2f 63 6f 64 65 3e 20 65 76 61 6c 75 61 74 65 73 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 | /code>.evaluates.an.error.union. |
| ddbe0 | 65 78 70 72 65 73 73 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 69 74 20 69 73 | expression..............If.it.is |
| ddc00 | 20 61 6e 20 65 72 72 6f 72 2c 20 69 74 20 72 65 74 75 72 6e 73 20 66 72 6f 6d 20 74 68 65 20 63 | .an.error,.it.returns.from.the.c |
| ddc20 | 75 72 72 65 6e 74 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 20 65 72 | urrent.function.with.the.same.er |
| ddc40 | 72 6f 72 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 | ror..............Otherwise,.the. |
| ddc60 | 65 78 70 72 65 73 73 69 6f 6e 20 72 65 73 75 6c 74 73 20 69 6e 20 74 68 65 20 75 6e 77 72 61 70 | expression.results.in.the.unwrap |
| ddc80 | 70 65 64 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | ped.value..............<ul>..... |
| ddca0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 | ..........<li>See.also.<a.href=" |
| ddcc0 | 23 74 72 79 22 3e 74 72 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | #try">try</a></li>.............< |
| ddce0 | 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 |
| ddd00 | 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 |
| ddd20 | 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 |
| ddd40 | 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 69 6f 6e 3c 2f 73 70 | e><span.class="tok-kw">union</sp |
| ddd60 | 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> |
| ddd80 | 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 |
| ddda0 | 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 69 6f 6e 3c 2f 73 70 | e><span.class="tok-kw">union</sp |
| dddc0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 66 69 6e 65 73 20 61 20 75 6e 69 6f 6e 2e 0a 20 20 20 20 | an></code>.defines.a.union...... |
| ddde0 | 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 | ........<ul>...............<li>S |
| dde00 | 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f | ee.also.<a.href="#union">union</ |
| dde20 | 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>....... |
| dde40 | 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>......... |
| dde60 | 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">. |
| dde80 | 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 |
| ddea0 | 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></ |
| ddec0 | 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>..... |
| ddee0 | 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 |
| ddf00 | 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 73 | an.class="tok-kw">unreachable</s |
| ddf20 | 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 61 73 73 65 72 | pan></code>.can.be.used.to.asser |
| ddf40 | 74 20 74 68 61 74 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 77 69 6c 6c 20 6e 65 76 65 72 20 68 | t.that.control.flow.will.never.h |
| ddf60 | 61 70 70 65 6e 20 75 70 6f 6e 20 61 20 70 61 72 74 69 63 75 6c 61 72 20 6c 6f 63 61 74 69 6f 6e | appen.upon.a.particular.location |
| ddf80 | 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 62 | ..............Depending.on.the.b |
| ddfa0 | 75 69 6c 64 20 6d 6f 64 65 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | uild.mode,.<code><span.class="to |
| ddfc0 | 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | k-kw">unreachable</span></code>. |
| ddfe0 | 6d 61 79 20 65 6d 69 74 20 61 20 70 61 6e 69 63 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 | may.emit.a.panic..............<u |
| de000 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 45 6d 69 74 73 20 61 20 70 61 6e | l>...............<li>Emits.a.pan |
| de020 | 69 63 20 69 6e 20 3c 63 6f 64 65 3e 44 65 62 75 67 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f | ic.in.<code>Debug</code>.and.<co |
| de040 | 64 65 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 63 6f 64 65 3e 20 6d 6f 64 65 2c 20 6f 72 20 77 | de>ReleaseSafe</code>.mode,.or.w |
| de060 | 68 65 6e 20 75 73 69 6e 67 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 3c 2f 6b 62 64 3e 2e 3c 2f | hen.using.<kbd>zig.test</kbd>.</ |
| de080 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 44 6f 65 73 20 6e 6f 74 20 65 | li>...............<li>Does.not.e |
| de0a0 | 6d 69 74 20 61 20 70 61 6e 69 63 20 69 6e 20 3c 63 6f 64 65 3e 52 65 6c 65 61 73 65 46 61 73 74 | mit.a.panic.in.<code>ReleaseFast |
| de0c0 | 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 53 6d 61 6c 6c 3c 2f | </code>.and.<code>ReleaseSmall</ |
| de0e0 | 63 6f 64 65 3e 20 6d 6f 64 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | code>.mode.</li>...............< |
| de100 | 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 72 65 61 63 68 61 62 6c | li>See.also.<a.href="#unreachabl |
| de120 | 65 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | e">unreachable</a></li>......... |
| de140 | 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>....... |
| de160 | 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>...........< |
| de180 | 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 |
| de1a0 | 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 75 73 69 6e | ><code><span.class="tok-kw">usin |
| de1c0 | 67 6e 61 6d 65 73 70 61 63 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | gnamespace</span></code></pre>.. |
| de1e0 | 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>... |
| de200 | 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 |
| de220 | 2d 6b 77 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | -kw">usingnamespace</span></code |
| de240 | 3e 20 69 73 20 61 20 74 6f 70 2d 6c 65 76 65 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 74 68 61 | >.is.a.top-level.declaration.tha |
| de260 | 74 20 69 6d 70 6f 72 74 73 20 61 6c 6c 20 74 68 65 20 70 75 62 6c 69 63 20 64 65 63 6c 61 72 61 | t.imports.all.the.public.declara |
| de280 | 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 6f 70 65 72 61 6e 64 2c 0a 20 20 20 20 20 20 20 20 20 20 | tions.of.the.operand,........... |
| de2a0 | 20 20 77 68 69 63 68 20 6d 75 73 74 20 62 65 20 61 20 73 74 72 75 63 74 2c 20 75 6e 69 6f 6e 2c | ..which.must.be.a.struct,.union, |
| de2c0 | 20 6f 72 20 65 6e 75 6d 2c 20 69 6e 74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 63 6f 70 65 | .or.enum,.into.the.current.scope |
| de2e0 | 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>.............. |
| de300 | 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 75 73 69 6e 67 6e 61 6d | .<li>See.also.<a.href="#usingnam |
| de320 | 65 73 70 61 63 65 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a | espace">usingnamespace</a></li>. |
| de340 | 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 |
| de360 | 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>.... |
| de380 | 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 20 20 | .......<th.scope="row">......... |
| de3a0 | 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- |
| de3c0 | 6b 77 22 3e 76 61 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 | kw">var</span></code></pre>..... |
| de3e0 | 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>...... |
| de400 | 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 |
| de420 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 65 73 20 61 20 76 | ">var</span></code>.declares.a.v |
| de440 | 61 72 69 61 62 6c 65 20 74 68 61 74 20 6d 61 79 20 62 65 20 6d 6f 64 69 66 69 65 64 2e 0a 20 20 | ariable.that.may.be.modified.... |
| de460 | 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 |
| de480 | 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 56 61 72 69 61 62 6c 65 73 22 3e 56 | >See.also.<a.href="#Variables">V |
| de4a0 | 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 2f | ariables</a></li>.............</ |
| de4c0 | 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 |
| de4e0 | 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 |
| de500 | 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 |
| de520 | 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 3c 2f | ><span.class="tok-kw">volatile</ |
| de540 | 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 |
| de560 | 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 |
| de580 | 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 6c | ode><span.class="tok-kw">volatil |
| de5a0 | 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 64 | e</span></code>.can.be.used.to.d |
| de5c0 | 65 6e 6f 74 65 20 6c 6f 61 64 73 20 6f 72 20 73 74 6f 72 65 73 20 6f 66 20 61 20 70 6f 69 6e 74 | enote.loads.or.stores.of.a.point |
| de5e0 | 65 72 20 68 61 76 65 20 73 69 64 65 20 65 66 66 65 63 74 73 2e 0a 20 20 20 20 20 20 20 20 20 20 | er.have.side.effects............ |
| de600 | 20 20 49 74 20 63 61 6e 20 61 6c 73 6f 20 6d 6f 64 69 66 79 20 61 6e 20 69 6e 6c 69 6e 65 20 61 | ..It.can.also.modify.an.inline.a |
| de620 | 73 73 65 6d 62 6c 79 20 65 78 70 72 65 73 73 69 6f 6e 20 74 6f 20 64 65 6e 6f 74 65 20 69 74 20 | ssembly.expression.to.denote.it. |
| de640 | 68 61 73 20 73 69 64 65 20 65 66 66 65 63 74 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 | has.side.effects..............<u |
| de660 | 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 |
| de680 | 20 68 72 65 66 3d 22 23 76 6f 6c 61 74 69 6c 65 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 61 3e 2c 20 | .href="#volatile">volatile</a>,. |
| de6a0 | 3c 61 20 68 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 | <a.href="#Assembly">Assembly</a> |
| de6c0 | 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>......... |
| de6e0 | 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 |
| de700 | 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">... |
| de720 | 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 |
| de740 | 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 64 65 3e 3c 2f 70 | ="tok-kw">while</span></code></p |
| de760 | 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 |
| de780 | 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 61 6e 20 63 6c 61 | d>.............A.<code><span.cla |
| de7a0 | 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 64 65 3e 20 | ss="tok-kw">while</span></code>. |
| de7c0 | 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 72 65 70 65 61 74 | expression.can.be.used.to.repeat |
| de7e0 | 65 64 6c 79 20 74 65 73 74 20 61 20 62 6f 6f 6c 65 61 6e 2c 20 6f 70 74 69 6f 6e 61 6c 2c 20 6f | edly.test.a.boolean,.optional,.o |
| de800 | 72 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 65 78 70 72 65 73 73 69 6f 6e 2c 0a 20 20 20 20 20 20 | r.error.union.expression,....... |
| de820 | 20 20 20 20 20 20 61 6e 64 20 63 65 61 73 65 20 6c 6f 6f 70 69 6e 67 20 77 68 65 6e 20 74 68 61 | ......and.cease.looping.when.tha |
| de840 | 74 20 65 78 70 72 65 73 73 69 6f 6e 20 65 76 61 6c 75 61 74 65 73 20 74 6f 20 66 61 6c 73 65 2c | t.expression.evaluates.to.false, |
| de860 | 20 6e 75 6c 6c 2c 20 6f 72 20 61 6e 20 65 72 72 6f 72 2c 20 72 65 73 70 65 63 74 69 76 65 6c 79 | .null,.or.an.error,.respectively |
| de880 | 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>.............. |
| de8a0 | 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 77 68 69 6c 65 22 3e 77 | .<li>See.also.<a.href="#while">w |
| de8c0 | 68 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | hile</a></li>.............</ul>. |
| de8e0 | 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>... |
| de900 | 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>... |
| de920 | 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | ....</div>...............<h2.id= |
| de940 | 22 41 70 70 65 6e 64 69 78 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 70 70 65 6e 64 69 | "Appendix"><a.href="#toc-Appendi |
| de960 | 78 22 3e 41 70 70 65 6e 64 69 78 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | x">Appendix</a>.<a.class="hdr".h |
| de980 | 72 65 66 3d 22 23 41 70 70 65 6e 64 69 78 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 | ref="#Appendix">..</a></h2>..... |
| de9a0 | 20 20 20 3c 68 33 20 69 64 3d 22 43 6f 6e 74 61 69 6e 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 | ...<h3.id="Containers"><a.href=" |
| de9c0 | 23 74 6f 63 2d 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 20 | #toc-Containers">Containers</a>. |
| de9e0 | 3c 61 20 63 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 73 | <a.class="hdr".href="#Containers |
| dea00 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 | ">..</a></h3>........<p>.......A |
| dea20 | 20 3c 65 6d 3e 63 6f 6e 74 61 69 6e 65 72 3c 2f 65 6d 3e 20 69 6e 20 5a 69 67 20 69 73 20 61 6e | .<em>container</em>.in.Zig.is.an |
| dea40 | 79 20 73 79 6e 74 61 63 74 69 63 61 6c 20 63 6f 6e 73 74 72 75 63 74 20 74 68 61 74 20 61 63 74 | y.syntactical.construct.that.act |
| dea60 | 73 20 61 73 20 61 20 6e 61 6d 65 73 70 61 63 65 20 74 6f 20 68 6f 6c 64 20 3c 61 20 68 72 65 66 | s.as.a.namespace.to.hold.<a.href |
| dea80 | 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 76 61 | ="#Container-Level-Variables">va |
| deaa0 | 72 69 61 62 6c 65 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f | riable</a>.and.<a.href="#Functio |
| deac0 | 6e 73 22 3e 66 75 6e 63 74 69 6f 6e 3c 2f 61 3e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2e 0a 20 | ns">function</a>.declarations... |
| deae0 | 20 20 20 20 20 43 6f 6e 74 61 69 6e 65 72 73 20 61 72 65 20 61 6c 73 6f 20 74 79 70 65 20 64 65 | .....Containers.are.also.type.de |
| deb00 | 66 69 6e 69 74 69 6f 6e 73 20 77 68 69 63 68 20 63 61 6e 20 62 65 20 69 6e 73 74 61 6e 74 69 61 | finitions.which.can.be.instantia |
| deb20 | 74 65 64 2e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 53 74 72 | ted........<a.href="#struct">Str |
| deb40 | 75 63 74 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 73 3c | ucts</a>,.<a.href="#enum">enums< |
| deb60 | 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 73 3c 2f 61 3e | /a>,.<a.href="#union">unions</a> |
| deb80 | 2c 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 73 3c 2f 61 3e 2c | ,.<a.href="#opaque">opaques</a>, |
| deba0 | 20 61 6e 64 20 65 76 65 6e 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 73 20 74 68 65 6d 73 | .and.even.Zig.source.files.thems |
| debc0 | 65 6c 76 65 73 20 61 72 65 20 63 6f 6e 74 61 69 6e 65 72 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | elves.are.containers........</p> |
| debe0 | 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 63 6f 6e 74 61 69 | .......<p>.......Although.contai |
| dec00 | 6e 65 72 73 20 28 65 78 63 65 70 74 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 73 29 20 75 | ners.(except.Zig.source.files).u |
| dec20 | 73 65 20 63 75 72 6c 79 20 62 72 61 63 65 73 20 74 6f 20 73 75 72 72 6f 75 6e 64 20 74 68 65 69 | se.curly.braces.to.surround.thei |
| dec40 | 72 20 64 65 66 69 6e 69 74 69 6f 6e 2c 20 74 68 65 79 20 73 68 6f 75 6c 64 20 6e 6f 74 20 62 65 | r.definition,.they.should.not.be |
| dec60 | 20 63 6f 6e 66 75 73 65 64 20 77 69 74 68 20 3c 61 20 68 72 65 66 3d 22 23 42 6c 6f 63 6b 73 22 | .confused.with.<a.href="#Blocks" |
| dec80 | 3e 62 6c 6f 63 6b 73 3c 2f 61 3e 20 6f 72 20 66 75 6e 63 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 | >blocks</a>.or.functions........ |
| deca0 | 43 6f 6e 74 61 69 6e 65 72 73 20 64 6f 20 6e 6f 74 20 63 6f 6e 74 61 69 6e 20 73 74 61 74 65 6d | Containers.do.not.contain.statem |
| decc0 | 65 6e 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 3c | ents........</p>...............< |
| dece0 | 68 33 20 69 64 3d 22 47 72 61 6d 6d 61 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 47 72 | h3.id="Grammar"><a.href="#toc-Gr |
| ded00 | 61 6d 6d 61 72 22 3e 47 72 61 6d 6d 61 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | ammar">Grammar</a>.<a.class="hdr |
| ded20 | 22 20 68 72 65 66 3d 22 23 47 72 61 6d 6d 61 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 | ".href="#Grammar">..</a></h3>... |
| ded40 | 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=" |
| ded60 | 70 65 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 72 61 6d | peg-cap"><cite.class="file">gram |
| ded80 | 6d 61 72 2e 70 65 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 | mar.peg</cite></figcaption><pre> |
| deda0 | 3c 63 6f 64 65 3e 52 6f 6f 74 20 26 6c 74 3b 2d 20 73 6b 69 70 20 63 6f 6e 74 61 69 6e 65 72 5f | <code>Root.<-.skip.container_ |
| dedc0 | 64 6f 63 5f 63 6f 6d 6d 65 6e 74 3f 20 43 6f 6e 74 61 69 6e 65 72 4d 65 6d 62 65 72 73 20 65 6f | doc_comment?.ContainerMembers.eo |
| dede0 | 66 0a 0a 23 20 2a 2a 2a 20 54 6f 70 20 6c 65 76 65 6c 20 2a 2a 2a 0a 43 6f 6e 74 61 69 6e 65 72 | f..#.***.Top.level.***.Container |
| dee00 | 4d 65 6d 62 65 72 73 20 26 6c 74 3b 2d 20 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 61 72 61 74 69 | Members.<-.ContainerDeclarati |
| dee20 | 6f 6e 2a 20 28 43 6f 6e 74 61 69 6e 65 72 46 69 65 6c 64 20 43 4f 4d 4d 41 29 2a 20 28 43 6f 6e | on*.(ContainerField.COMMA)*.(Con |
| dee40 | 74 61 69 6e 65 72 46 69 65 6c 64 20 2f 20 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 61 72 61 74 69 | tainerField./.ContainerDeclarati |
| dee60 | 6f 6e 2a 29 0a 0a 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 61 72 61 74 69 6f 6e 20 26 6c 74 3b 2d | on*)..ContainerDeclaration.<- |
| dee80 | 20 54 65 73 74 44 65 63 6c 20 2f 20 43 6f 6d 70 74 69 6d 65 44 65 63 6c 20 2f 20 64 6f 63 5f 63 | .TestDecl./.ComptimeDecl./.doc_c |
| deea0 | 6f 6d 6d 65 6e 74 3f 20 4b 45 59 57 4f 52 44 5f 70 75 62 3f 20 44 65 63 6c 0a 0a 54 65 73 74 44 | omment?.KEYWORD_pub?.Decl..TestD |
| deec0 | 65 63 6c 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 74 65 73 74 20 28 53 54 52 49 4e 47 4c 49 | ecl.<-.KEYWORD_test.(STRINGLI |
| deee0 | 54 45 52 41 4c 53 49 4e 47 4c 45 20 2f 20 49 44 45 4e 54 49 46 49 45 52 29 3f 20 42 6c 6f 63 6b | TERALSINGLE./.IDENTIFIER)?.Block |
| def00 | 0a 0a 43 6f 6d 70 74 69 6d 65 44 65 63 6c 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 63 6f 6d | ..ComptimeDecl.<-.KEYWORD_com |
| def20 | 70 74 69 6d 65 20 42 6c 6f 63 6b 0a 0a 44 65 63 6c 0a 20 20 20 20 26 6c 74 3b 2d 20 28 4b 45 59 | ptime.Block..Decl.....<-.(KEY |
| def40 | 57 4f 52 44 5f 65 78 70 6f 72 74 20 2f 20 4b 45 59 57 4f 52 44 5f 65 78 74 65 72 6e 20 53 54 52 | WORD_export./.KEYWORD_extern.STR |
| def60 | 49 4e 47 4c 49 54 45 52 41 4c 53 49 4e 47 4c 45 3f 20 2f 20 4b 45 59 57 4f 52 44 5f 69 6e 6c 69 | INGLITERALSINGLE?./.KEYWORD_inli |
| def80 | 6e 65 20 2f 20 4b 45 59 57 4f 52 44 5f 6e 6f 69 6e 6c 69 6e 65 29 3f 20 46 6e 50 72 6f 74 6f 20 | ne./.KEYWORD_noinline)?.FnProto. |
| defa0 | 28 53 45 4d 49 43 4f 4c 4f 4e 20 2f 20 42 6c 6f 63 6b 29 0a 20 20 20 20 20 2f 20 28 4b 45 59 57 | (SEMICOLON./.Block)....../.(KEYW |
| defc0 | 4f 52 44 5f 65 78 70 6f 72 74 20 2f 20 4b 45 59 57 4f 52 44 5f 65 78 74 65 72 6e 20 53 54 52 49 | ORD_export./.KEYWORD_extern.STRI |
| defe0 | 4e 47 4c 49 54 45 52 41 4c 53 49 4e 47 4c 45 3f 29 3f 20 4b 45 59 57 4f 52 44 5f 74 68 72 65 61 | NGLITERALSINGLE?)?.KEYWORD_threa |
| df000 | 64 6c 6f 63 61 6c 3f 20 47 6c 6f 62 61 6c 56 61 72 44 65 63 6c 0a 20 20 20 20 20 2f 20 4b 45 59 | dlocal?.GlobalVarDecl....../.KEY |
| df020 | 57 4f 52 44 5f 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 20 45 78 70 72 20 53 45 4d 49 43 4f 4c | WORD_usingnamespace.Expr.SEMICOL |
| df040 | 4f 4e 0a 0a 46 6e 50 72 6f 74 6f 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 66 6e 20 49 44 45 | ON..FnProto.<-.KEYWORD_fn.IDE |
| df060 | 4e 54 49 46 49 45 52 3f 20 4c 50 41 52 45 4e 20 50 61 72 61 6d 44 65 63 6c 4c 69 73 74 20 52 50 | NTIFIER?.LPAREN.ParamDeclList.RP |
| df080 | 41 52 45 4e 20 42 79 74 65 41 6c 69 67 6e 3f 20 41 64 64 72 53 70 61 63 65 3f 20 4c 69 6e 6b 53 | AREN.ByteAlign?.AddrSpace?.LinkS |
| df0a0 | 65 63 74 69 6f 6e 3f 20 43 61 6c 6c 43 6f 6e 76 3f 20 45 58 43 4c 41 4d 41 54 49 4f 4e 4d 41 52 | ection?.CallConv?.EXCLAMATIONMAR |
| df0c0 | 4b 3f 20 54 79 70 65 45 78 70 72 0a 0a 56 61 72 44 65 63 6c 50 72 6f 74 6f 20 26 6c 74 3b 2d 20 | K?.TypeExpr..VarDeclProto.<-. |
| df0e0 | 28 4b 45 59 57 4f 52 44 5f 63 6f 6e 73 74 20 2f 20 4b 45 59 57 4f 52 44 5f 76 61 72 29 20 49 44 | (KEYWORD_const./.KEYWORD_var).ID |
| df100 | 45 4e 54 49 46 49 45 52 20 28 43 4f 4c 4f 4e 20 54 79 70 65 45 78 70 72 29 3f 20 42 79 74 65 41 | ENTIFIER.(COLON.TypeExpr)?.ByteA |
| df120 | 6c 69 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 0a 0a 47 | lign?.AddrSpace?.LinkSection?..G |
| df140 | 6c 6f 62 61 6c 56 61 72 44 65 63 6c 20 26 6c 74 3b 2d 20 56 61 72 44 65 63 6c 50 72 6f 74 6f 20 | lobalVarDecl.<-.VarDeclProto. |
| df160 | 28 45 51 55 41 4c 20 45 78 70 72 29 3f 20 53 45 4d 49 43 4f 4c 4f 4e 0a 0a 43 6f 6e 74 61 69 6e | (EQUAL.Expr)?.SEMICOLON..Contain |
| df180 | 65 72 46 69 65 6c 64 20 26 6c 74 3b 2d 20 64 6f 63 5f 63 6f 6d 6d 65 6e 74 3f 20 4b 45 59 57 4f | erField.<-.doc_comment?.KEYWO |
| df1a0 | 52 44 5f 63 6f 6d 70 74 69 6d 65 3f 20 21 4b 45 59 57 4f 52 44 5f 66 6e 20 28 49 44 45 4e 54 49 | RD_comptime?.!KEYWORD_fn.(IDENTI |
| df1c0 | 46 49 45 52 20 43 4f 4c 4f 4e 29 3f 20 54 79 70 65 45 78 70 72 20 42 79 74 65 41 6c 69 67 6e 3f | FIER.COLON)?.TypeExpr.ByteAlign? |
| df1e0 | 20 28 45 51 55 41 4c 20 45 78 70 72 29 3f 0a 0a 23 20 2a 2a 2a 20 42 6c 6f 63 6b 20 4c 65 76 65 | .(EQUAL.Expr)?..#.***.Block.Leve |
| df200 | 6c 20 2a 2a 2a 0a 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 | l.***.Statement.....<-.KEYWOR |
| df220 | 44 5f 63 6f 6d 70 74 69 6d 65 20 43 6f 6d 70 74 69 6d 65 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 | D_comptime.ComptimeStatement.... |
| df240 | 20 20 2f 20 4b 45 59 57 4f 52 44 5f 6e 6f 73 75 73 70 65 6e 64 20 42 6c 6f 63 6b 45 78 70 72 53 | ../.KEYWORD_nosuspend.BlockExprS |
| df260 | 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 73 75 73 70 65 6e 64 20 | tatement....../.KEYWORD_suspend. |
| df280 | 42 6c 6f 63 6b 45 78 70 72 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 | BlockExprStatement....../.KEYWOR |
| df2a0 | 44 5f 64 65 66 65 72 20 42 6c 6f 63 6b 45 78 70 72 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 20 | D_defer.BlockExprStatement...... |
| df2c0 | 2f 20 4b 45 59 57 4f 52 44 5f 65 72 72 64 65 66 65 72 20 50 61 79 6c 6f 61 64 3f 20 42 6c 6f 63 | /.KEYWORD_errdefer.Payload?.Bloc |
| df2e0 | 6b 45 78 70 72 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 20 2f 20 49 66 53 74 61 74 65 6d 65 6e | kExprStatement....../.IfStatemen |
| df300 | 74 0a 20 20 20 20 20 2f 20 4c 61 62 65 6c 65 64 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 20 2f | t....../.LabeledStatement....../ |
| df320 | 20 53 77 69 74 63 68 45 78 70 72 0a 20 20 20 20 20 2f 20 56 61 72 44 65 63 6c 45 78 70 72 53 74 | .SwitchExpr....../.VarDeclExprSt |
| df340 | 61 74 65 6d 65 6e 74 0a 0a 43 6f 6d 70 74 69 6d 65 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 26 | atement..ComptimeStatement.....& |
| df360 | 6c 74 3b 2d 20 42 6c 6f 63 6b 45 78 70 72 0a 20 20 20 20 20 2f 20 56 61 72 44 65 63 6c 45 78 70 | lt;-.BlockExpr....../.VarDeclExp |
| df380 | 72 53 74 61 74 65 6d 65 6e 74 0a 0a 49 66 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 26 6c 74 3b | rStatement..IfStatement.....< |
| df3a0 | 2d 20 49 66 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 | -.IfPrefix.BlockExpr.(.KEYWORD_e |
| df3c0 | 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.)?....../ |
| df3e0 | 20 49 66 50 72 65 66 69 78 20 41 73 73 69 67 6e 45 78 70 72 20 28 20 53 45 4d 49 43 4f 4c 4f 4e | .IfPrefix.AssignExpr.(.SEMICOLON |
| df400 | 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 65 6d 65 | ./.KEYWORD_else.Payload?.Stateme |
| df420 | 6e 74 20 29 0a 0a 4c 61 62 65 6c 65 64 53 74 61 74 65 6d 65 6e 74 20 26 6c 74 3b 2d 20 42 6c 6f | nt.)..LabeledStatement.<-.Blo |
| df440 | 63 6b 4c 61 62 65 6c 3f 20 28 42 6c 6f 63 6b 20 2f 20 4c 6f 6f 70 53 74 61 74 65 6d 65 6e 74 29 | ckLabel?.(Block./.LoopStatement) |
| df460 | 0a 0a 4c 6f 6f 70 53 74 61 74 65 6d 65 6e 74 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 69 6e | ..LoopStatement.<-.KEYWORD_in |
| df480 | 6c 69 6e 65 3f 20 28 46 6f 72 53 74 61 74 65 6d 65 6e 74 20 2f 20 57 68 69 6c 65 53 74 61 74 65 | line?.(ForStatement./.WhileState |
| df4a0 | 6d 65 6e 74 29 0a 0a 46 6f 72 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 26 6c 74 3b 2d 20 46 6f | ment)..ForStatement.....<-.Fo |
| df4c0 | 72 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 6c 73 65 | rPrefix.BlockExpr.(.KEYWORD_else |
| df4e0 | 20 53 74 61 74 65 6d 65 6e 74 20 29 3f 0a 20 20 20 20 20 2f 20 46 6f 72 50 72 65 66 69 78 20 41 | .Statement.)?....../.ForPrefix.A |
| df500 | 73 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 | ssignExpr.(.SEMICOLON./.KEYWORD_ |
| df520 | 65 6c 73 65 20 53 74 61 74 65 6d 65 6e 74 20 29 0a 0a 57 68 69 6c 65 53 74 61 74 65 6d 65 6e 74 | else.Statement.)..WhileStatement |
| df540 | 0a 20 20 20 20 26 6c 74 3b 2d 20 57 68 69 6c 65 50 72 65 66 69 78 20 42 6c 6f 63 6b 45 78 70 72 | .....<-.WhilePrefix.BlockExpr |
| df560 | 20 28 20 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 50 61 79 6c 6f 61 64 3f 20 53 74 61 74 65 6d 65 | .(.KEYWORD_else.Payload?.Stateme |
| df580 | 6e 74 20 29 3f 0a 20 20 20 20 20 2f 20 57 68 69 6c 65 50 72 65 66 69 78 20 41 73 73 69 67 6e 45 | nt.)?....../.WhilePrefix.AssignE |
| df5a0 | 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 6c 73 65 20 50 | xpr.(.SEMICOLON./.KEYWORD_else.P |
| df5c0 | 61 79 6c 6f 61 64 3f 20 53 74 61 74 65 6d 65 6e 74 20 29 0a 0a 42 6c 6f 63 6b 45 78 70 72 53 74 | ayload?.Statement.)..BlockExprSt |
| df5e0 | 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 70 72 0a 20 20 20 20 | atement.....<-.BlockExpr..... |
| df600 | 20 2f 20 41 73 73 69 67 6e 45 78 70 72 20 53 45 4d 49 43 4f 4c 4f 4e 0a 0a 42 6c 6f 63 6b 45 78 | ./.AssignExpr.SEMICOLON..BlockEx |
| df620 | 70 72 20 26 6c 74 3b 2d 20 42 6c 6f 63 6b 4c 61 62 65 6c 3f 20 42 6c 6f 63 6b 0a 0a 23 20 41 6e | pr.<-.BlockLabel?.Block..#.An |
| df640 | 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 61 73 73 69 67 6e 6d 65 6e 74 2c 20 6f 72 20 61 6e 79 20 | .expression,.assignment,.or.any. |
| df660 | 64 65 73 74 72 75 63 74 75 72 65 2c 20 61 73 20 61 20 73 74 61 74 65 6d 65 6e 74 2e 0a 56 61 72 | destructure,.as.a.statement..Var |
| df680 | 44 65 63 6c 45 78 70 72 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 26 6c 74 3b 2d 20 56 61 72 44 | DeclExprStatement.....<-.VarD |
| df6a0 | 65 63 6c 50 72 6f 74 6f 20 28 43 4f 4d 4d 41 20 28 56 61 72 44 65 63 6c 50 72 6f 74 6f 20 2f 20 | eclProto.(COMMA.(VarDeclProto./. |
| df6c0 | 45 78 70 72 29 29 2a 20 45 51 55 41 4c 20 45 78 70 72 20 53 45 4d 49 43 4f 4c 4f 4e 0a 20 20 20 | Expr))*.EQUAL.Expr.SEMICOLON.... |
| df6e0 | 20 20 2f 20 45 78 70 72 20 28 41 73 73 69 67 6e 4f 70 20 45 78 70 72 20 2f 20 28 43 4f 4d 4d 41 | ../.Expr.(AssignOp.Expr./.(COMMA |
| df700 | 20 28 56 61 72 44 65 63 6c 50 72 6f 74 6f 20 2f 20 45 78 70 72 29 29 2b 20 45 51 55 41 4c 20 45 | .(VarDeclProto./.Expr))+.EQUAL.E |
| df720 | 78 70 72 29 3f 20 53 45 4d 49 43 4f 4c 4f 4e 0a 0a 23 20 2a 2a 2a 20 45 78 70 72 65 73 73 69 6f | xpr)?.SEMICOLON..#.***.Expressio |
| df740 | 6e 20 4c 65 76 65 6c 20 2a 2a 2a 0a 0a 23 20 41 6e 20 61 73 73 69 67 6e 6d 65 6e 74 20 6f 72 20 | n.Level.***..#.An.assignment.or. |
| df760 | 61 20 64 65 73 74 72 75 63 74 75 72 65 20 77 68 6f 73 65 20 4c 48 53 20 61 72 65 20 61 6c 6c 20 | a.destructure.whose.LHS.are.all. |
| df780 | 6c 76 61 6c 75 65 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 0a 41 73 73 69 67 6e 45 78 70 72 20 26 | lvalue.expressions..AssignExpr.& |
| df7a0 | 6c 74 3b 2d 20 45 78 70 72 20 28 41 73 73 69 67 6e 4f 70 20 45 78 70 72 20 2f 20 28 43 4f 4d 4d | lt;-.Expr.(AssignOp.Expr./.(COMM |
| df7c0 | 41 20 45 78 70 72 29 2b 20 45 51 55 41 4c 20 45 78 70 72 29 3f 0a 0a 53 69 6e 67 6c 65 41 73 73 | A.Expr)+.EQUAL.Expr)?..SingleAss |
| df7e0 | 69 67 6e 45 78 70 72 20 26 6c 74 3b 2d 20 45 78 70 72 20 28 41 73 73 69 67 6e 4f 70 20 45 78 70 | ignExpr.<-.Expr.(AssignOp.Exp |
| df800 | 72 29 3f 0a 0a 45 78 70 72 20 26 6c 74 3b 2d 20 42 6f 6f 6c 4f 72 45 78 70 72 0a 0a 42 6f 6f 6c | r)?..Expr.<-.BoolOrExpr..Bool |
| df820 | 4f 72 45 78 70 72 20 26 6c 74 3b 2d 20 42 6f 6f 6c 41 6e 64 45 78 70 72 20 28 4b 45 59 57 4f 52 | OrExpr.<-.BoolAndExpr.(KEYWOR |
| df840 | 44 5f 6f 72 20 42 6f 6f 6c 41 6e 64 45 78 70 72 29 2a 0a 0a 42 6f 6f 6c 41 6e 64 45 78 70 72 20 | D_or.BoolAndExpr)*..BoolAndExpr. |
| df860 | 26 6c 74 3b 2d 20 43 6f 6d 70 61 72 65 45 78 70 72 20 28 4b 45 59 57 4f 52 44 5f 61 6e 64 20 43 | <-.CompareExpr.(KEYWORD_and.C |
| df880 | 6f 6d 70 61 72 65 45 78 70 72 29 2a 0a 0a 43 6f 6d 70 61 72 65 45 78 70 72 20 26 6c 74 3b 2d 20 | ompareExpr)*..CompareExpr.<-. |
| df8a0 | 42 69 74 77 69 73 65 45 78 70 72 20 28 43 6f 6d 70 61 72 65 4f 70 20 42 69 74 77 69 73 65 45 78 | BitwiseExpr.(CompareOp.BitwiseEx |
| df8c0 | 70 72 29 3f 0a 0a 42 69 74 77 69 73 65 45 78 70 72 20 26 6c 74 3b 2d 20 42 69 74 53 68 69 66 74 | pr)?..BitwiseExpr.<-.BitShift |
| df8e0 | 45 78 70 72 20 28 42 69 74 77 69 73 65 4f 70 20 42 69 74 53 68 69 66 74 45 78 70 72 29 2a 0a 0a | Expr.(BitwiseOp.BitShiftExpr)*.. |
| df900 | 42 69 74 53 68 69 66 74 45 78 70 72 20 26 6c 74 3b 2d 20 41 64 64 69 74 69 6f 6e 45 78 70 72 20 | BitShiftExpr.<-.AdditionExpr. |
| df920 | 28 42 69 74 53 68 69 66 74 4f 70 20 41 64 64 69 74 69 6f 6e 45 78 70 72 29 2a 0a 0a 41 64 64 69 | (BitShiftOp.AdditionExpr)*..Addi |
| df940 | 74 69 6f 6e 45 78 70 72 20 26 6c 74 3b 2d 20 4d 75 6c 74 69 70 6c 79 45 78 70 72 20 28 41 64 64 | tionExpr.<-.MultiplyExpr.(Add |
| df960 | 69 74 69 6f 6e 4f 70 20 4d 75 6c 74 69 70 6c 79 45 78 70 72 29 2a 0a 0a 4d 75 6c 74 69 70 6c 79 | itionOp.MultiplyExpr)*..Multiply |
| df980 | 45 78 70 72 20 26 6c 74 3b 2d 20 50 72 65 66 69 78 45 78 70 72 20 28 4d 75 6c 74 69 70 6c 79 4f | Expr.<-.PrefixExpr.(MultiplyO |
| df9a0 | 70 20 50 72 65 66 69 78 45 78 70 72 29 2a 0a 0a 50 72 65 66 69 78 45 78 70 72 20 26 6c 74 3b 2d | p.PrefixExpr)*..PrefixExpr.<- |
| df9c0 | 20 50 72 65 66 69 78 4f 70 2a 20 50 72 69 6d 61 72 79 45 78 70 72 0a 0a 50 72 69 6d 61 72 79 45 | .PrefixOp*.PrimaryExpr..PrimaryE |
| df9e0 | 78 70 72 0a 20 20 20 20 26 6c 74 3b 2d 20 41 73 6d 45 78 70 72 0a 20 20 20 20 20 2f 20 49 66 45 | xpr.....<-.AsmExpr....../.IfE |
| dfa00 | 78 70 72 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 62 72 65 61 6b 20 42 72 65 61 6b 4c 61 | xpr....../.KEYWORD_break.BreakLa |
| dfa20 | 62 65 6c 3f 20 45 78 70 72 3f 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 | bel?.Expr?....../.KEYWORD_compti |
| dfa40 | 6d 65 20 45 78 70 72 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 6e 6f 73 75 73 70 65 6e 64 | me.Expr....../.KEYWORD_nosuspend |
| dfa60 | 20 45 78 70 72 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6e 74 69 6e 75 65 20 42 72 | .Expr....../.KEYWORD_continue.Br |
| dfa80 | 65 61 6b 4c 61 62 65 6c 3f 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 72 65 73 75 6d 65 20 | eakLabel?....../.KEYWORD_resume. |
| dfaa0 | 45 78 70 72 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 72 65 74 75 72 6e 20 45 78 70 72 3f | Expr....../.KEYWORD_return.Expr? |
| dfac0 | 0a 20 20 20 20 20 2f 20 42 6c 6f 63 6b 4c 61 62 65 6c 3f 20 4c 6f 6f 70 45 78 70 72 0a 20 20 20 | ....../.BlockLabel?.LoopExpr.... |
| dfae0 | 20 20 2f 20 42 6c 6f 63 6b 0a 20 20 20 20 20 2f 20 43 75 72 6c 79 53 75 66 66 69 78 45 78 70 72 | ../.Block....../.CurlySuffixExpr |
| dfb00 | 0a 0a 49 66 45 78 70 72 20 26 6c 74 3b 2d 20 49 66 50 72 65 66 69 78 20 45 78 70 72 20 28 4b 45 | ..IfExpr.<-.IfPrefix.Expr.(KE |
| dfb20 | 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 42 6c 6f 63 | YWORD_else.Payload?.Expr)?..Bloc |
| dfb40 | 6b 20 26 6c 74 3b 2d 20 4c 42 52 41 43 45 20 53 74 61 74 65 6d 65 6e 74 2a 20 52 42 52 41 43 45 | k.<-.LBRACE.Statement*.RBRACE |
| dfb60 | 0a 0a 4c 6f 6f 70 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 | ..LoopExpr.<-.KEYWORD_inline? |
| dfb80 | 20 28 46 6f 72 45 78 70 72 20 2f 20 57 68 69 6c 65 45 78 70 72 29 0a 0a 46 6f 72 45 78 70 72 20 | .(ForExpr./.WhileExpr)..ForExpr. |
| dfba0 | 26 6c 74 3b 2d 20 46 6f 72 50 72 65 66 69 78 20 45 78 70 72 20 28 4b 45 59 57 4f 52 44 5f 65 6c | <-.ForPrefix.Expr.(KEYWORD_el |
| dfbc0 | 73 65 20 45 78 70 72 29 3f 0a 0a 57 68 69 6c 65 45 78 70 72 20 26 6c 74 3b 2d 20 57 68 69 6c 65 | se.Expr)?..WhileExpr.<-.While |
| dfbe0 | 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 61 79 6c 6f 61 | Prefix.Expr.(KEYWORD_else.Payloa |
| dfc00 | 64 3f 20 45 78 70 72 29 3f 0a 0a 43 75 72 6c 79 53 75 66 66 69 78 45 78 70 72 20 26 6c 74 3b 2d | d?.Expr)?..CurlySuffixExpr.<- |
| dfc20 | 20 54 79 70 65 45 78 70 72 20 49 6e 69 74 4c 69 73 74 3f 0a 0a 49 6e 69 74 4c 69 73 74 0a 20 20 | .TypeExpr.InitList?..InitList... |
| dfc40 | 20 20 26 6c 74 3b 2d 20 4c 42 52 41 43 45 20 46 69 65 6c 64 49 6e 69 74 20 28 43 4f 4d 4d 41 20 | ..<-.LBRACE.FieldInit.(COMMA. |
| dfc60 | 46 69 65 6c 64 49 6e 69 74 29 2a 20 43 4f 4d 4d 41 3f 20 52 42 52 41 43 45 0a 20 20 20 20 20 2f | FieldInit)*.COMMA?.RBRACE....../ |
| dfc80 | 20 4c 42 52 41 43 45 20 45 78 70 72 20 28 43 4f 4d 4d 41 20 45 78 70 72 29 2a 20 43 4f 4d 4d 41 | .LBRACE.Expr.(COMMA.Expr)*.COMMA |
| dfca0 | 3f 20 52 42 52 41 43 45 0a 20 20 20 20 20 2f 20 4c 42 52 41 43 45 20 52 42 52 41 43 45 0a 0a 54 | ?.RBRACE....../.LBRACE.RBRACE..T |
| dfcc0 | 79 70 65 45 78 70 72 20 26 6c 74 3b 2d 20 50 72 65 66 69 78 54 79 70 65 4f 70 2a 20 45 72 72 6f | ypeExpr.<-.PrefixTypeOp*.Erro |
| dfce0 | 72 55 6e 69 6f 6e 45 78 70 72 0a 0a 45 72 72 6f 72 55 6e 69 6f 6e 45 78 70 72 20 26 6c 74 3b 2d | rUnionExpr..ErrorUnionExpr.<- |
| dfd00 | 20 53 75 66 66 69 78 45 78 70 72 20 28 45 58 43 4c 41 4d 41 54 49 4f 4e 4d 41 52 4b 20 54 79 70 | .SuffixExpr.(EXCLAMATIONMARK.Typ |
| dfd20 | 65 45 78 70 72 29 3f 0a 0a 53 75 66 66 69 78 45 78 70 72 0a 20 20 20 20 26 6c 74 3b 2d 20 4b 45 | eExpr)?..SuffixExpr.....<-.KE |
| dfd40 | 59 57 4f 52 44 5f 61 73 79 6e 63 20 50 72 69 6d 61 72 79 54 79 70 65 45 78 70 72 20 53 75 66 66 | YWORD_async.PrimaryTypeExpr.Suff |
| dfd60 | 69 78 4f 70 2a 20 46 6e 43 61 6c 6c 41 72 67 75 6d 65 6e 74 73 0a 20 20 20 20 20 2f 20 50 72 69 | ixOp*.FnCallArguments....../.Pri |
| dfd80 | 6d 61 72 79 54 79 70 65 45 78 70 72 20 28 53 75 66 66 69 78 4f 70 20 2f 20 46 6e 43 61 6c 6c 41 | maryTypeExpr.(SuffixOp./.FnCallA |
| dfda0 | 72 67 75 6d 65 6e 74 73 29 2a 0a 0a 50 72 69 6d 61 72 79 54 79 70 65 45 78 70 72 0a 20 20 20 20 | rguments)*..PrimaryTypeExpr..... |
| dfdc0 | 26 6c 74 3b 2d 20 42 55 49 4c 54 49 4e 49 44 45 4e 54 49 46 49 45 52 20 46 6e 43 61 6c 6c 41 72 | <-.BUILTINIDENTIFIER.FnCallAr |
| dfde0 | 67 75 6d 65 6e 74 73 0a 20 20 20 20 20 2f 20 43 48 41 52 5f 4c 49 54 45 52 41 4c 0a 20 20 20 20 | guments....../.CHAR_LITERAL..... |
| dfe00 | 20 2f 20 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 0a 20 20 20 20 20 2f 20 44 4f 54 20 49 44 45 4e | ./.ContainerDecl....../.DOT.IDEN |
| dfe20 | 54 49 46 49 45 52 0a 20 20 20 20 20 2f 20 44 4f 54 20 49 6e 69 74 4c 69 73 74 0a 20 20 20 20 20 | TIFIER....../.DOT.InitList...... |
| dfe40 | 2f 20 45 72 72 6f 72 53 65 74 44 65 63 6c 0a 20 20 20 20 20 2f 20 46 4c 4f 41 54 0a 20 20 20 20 | /.ErrorSetDecl....../.FLOAT..... |
| dfe60 | 20 2f 20 46 6e 50 72 6f 74 6f 0a 20 20 20 20 20 2f 20 47 72 6f 75 70 65 64 45 78 70 72 0a 20 20 | ./.FnProto....../.GroupedExpr... |
| dfe80 | 20 20 20 2f 20 4c 61 62 65 6c 65 64 54 79 70 65 45 78 70 72 0a 20 20 20 20 20 2f 20 49 44 45 4e | .../.LabeledTypeExpr....../.IDEN |
| dfea0 | 54 49 46 49 45 52 0a 20 20 20 20 20 2f 20 49 66 54 79 70 65 45 78 70 72 0a 20 20 20 20 20 2f 20 | TIFIER....../.IfTypeExpr....../. |
| dfec0 | 49 4e 54 45 47 45 52 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 6d 65 20 | INTEGER....../.KEYWORD_comptime. |
| dfee0 | 54 79 70 65 45 78 70 72 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 65 72 72 6f 72 20 44 4f | TypeExpr....../.KEYWORD_error.DO |
| dff00 | 54 20 49 44 45 4e 54 49 46 49 45 52 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6e 79 66 | T.IDENTIFIER....../.KEYWORD_anyf |
| dff20 | 72 61 6d 65 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 75 6e 72 65 61 63 68 61 62 6c 65 0a | rame....../.KEYWORD_unreachable. |
| dff40 | 20 20 20 20 20 2f 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 0a 20 20 20 20 20 2f 20 53 77 69 74 | ...../.STRINGLITERAL....../.Swit |
| dff60 | 63 68 45 78 70 72 0a 0a 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 20 26 6c 74 3b 2d 20 28 4b 45 59 | chExpr..ContainerDecl.<-.(KEY |
| dff80 | 57 4f 52 44 5f 65 78 74 65 72 6e 20 2f 20 4b 45 59 57 4f 52 44 5f 70 61 63 6b 65 64 29 3f 20 43 | WORD_extern./.KEYWORD_packed)?.C |
| dffa0 | 6f 6e 74 61 69 6e 65 72 44 65 63 6c 41 75 74 6f 0a 0a 45 72 72 6f 72 53 65 74 44 65 63 6c 20 26 | ontainerDeclAuto..ErrorSetDecl.& |
| dffc0 | 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 65 72 72 6f 72 20 4c 42 52 41 43 45 20 49 64 65 6e 74 69 | lt;-.KEYWORD_error.LBRACE.Identi |
| dffe0 | 66 69 65 72 4c 69 73 74 20 52 42 52 41 43 45 0a 0a 47 72 6f 75 70 65 64 45 78 70 72 20 26 6c 74 | fierList.RBRACE..GroupedExpr.< |
| e0000 | 3b 2d 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 0a 0a 49 66 54 79 70 65 45 78 70 | ;-.LPAREN.Expr.RPAREN..IfTypeExp |
| e0020 | 72 20 26 6c 74 3b 2d 20 49 66 50 72 65 66 69 78 20 54 79 70 65 45 78 70 72 20 28 4b 45 59 57 4f | r.<-.IfPrefix.TypeExpr.(KEYWO |
| e0040 | 52 44 5f 65 6c 73 65 20 50 61 79 6c 6f 61 64 3f 20 54 79 70 65 45 78 70 72 29 3f 0a 0a 4c 61 62 | RD_else.Payload?.TypeExpr)?..Lab |
| e0060 | 65 6c 65 64 54 79 70 65 45 78 70 72 0a 20 20 20 20 26 6c 74 3b 2d 20 42 6c 6f 63 6b 4c 61 62 65 | eledTypeExpr.....<-.BlockLabe |
| e0080 | 6c 20 42 6c 6f 63 6b 0a 20 20 20 20 20 2f 20 42 6c 6f 63 6b 4c 61 62 65 6c 3f 20 4c 6f 6f 70 54 | l.Block....../.BlockLabel?.LoopT |
| e00a0 | 79 70 65 45 78 70 72 0a 0a 4c 6f 6f 70 54 79 70 65 45 78 70 72 20 26 6c 74 3b 2d 20 4b 45 59 57 | ypeExpr..LoopTypeExpr.<-.KEYW |
| e00c0 | 4f 52 44 5f 69 6e 6c 69 6e 65 3f 20 28 46 6f 72 54 79 70 65 45 78 70 72 20 2f 20 57 68 69 6c 65 | ORD_inline?.(ForTypeExpr./.While |
| e00e0 | 54 79 70 65 45 78 70 72 29 0a 0a 46 6f 72 54 79 70 65 45 78 70 72 20 26 6c 74 3b 2d 20 46 6f 72 | TypeExpr)..ForTypeExpr.<-.For |
| e0100 | 50 72 65 66 69 78 20 54 79 70 65 45 78 70 72 20 28 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 54 79 | Prefix.TypeExpr.(KEYWORD_else.Ty |
| e0120 | 70 65 45 78 70 72 29 3f 0a 0a 57 68 69 6c 65 54 79 70 65 45 78 70 72 20 26 6c 74 3b 2d 20 57 68 | peExpr)?..WhileTypeExpr.<-.Wh |
| e0140 | 69 6c 65 50 72 65 66 69 78 20 54 79 70 65 45 78 70 72 20 28 4b 45 59 57 4f 52 44 5f 65 6c 73 65 | ilePrefix.TypeExpr.(KEYWORD_else |
| e0160 | 20 50 61 79 6c 6f 61 64 3f 20 54 79 70 65 45 78 70 72 29 3f 0a 0a 53 77 69 74 63 68 45 78 70 72 | .Payload?.TypeExpr)?..SwitchExpr |
| e0180 | 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 73 77 69 74 63 68 20 4c 50 41 52 45 4e 20 45 78 70 | .<-.KEYWORD_switch.LPAREN.Exp |
| e01a0 | 72 20 52 50 41 52 45 4e 20 4c 42 52 41 43 45 20 53 77 69 74 63 68 50 72 6f 6e 67 4c 69 73 74 20 | r.RPAREN.LBRACE.SwitchProngList. |
| e01c0 | 52 42 52 41 43 45 0a 0a 23 20 2a 2a 2a 20 41 73 73 65 6d 62 6c 79 20 2a 2a 2a 0a 41 73 6d 45 78 | RBRACE..#.***.Assembly.***.AsmEx |
| e01e0 | 70 72 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 61 73 6d 20 4b 45 59 57 4f 52 44 5f 76 6f 6c | pr.<-.KEYWORD_asm.KEYWORD_vol |
| e0200 | 61 74 69 6c 65 3f 20 4c 50 41 52 45 4e 20 45 78 70 72 20 41 73 6d 4f 75 74 70 75 74 3f 20 52 50 | atile?.LPAREN.Expr.AsmOutput?.RP |
| e0220 | 41 52 45 4e 0a 0a 41 73 6d 4f 75 74 70 75 74 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 41 73 6d 4f | AREN..AsmOutput.<-.COLON.AsmO |
| e0240 | 75 74 70 75 74 4c 69 73 74 20 41 73 6d 49 6e 70 75 74 3f 0a 0a 41 73 6d 4f 75 74 70 75 74 49 74 | utputList.AsmInput?..AsmOutputIt |
| e0260 | 65 6d 20 26 6c 74 3b 2d 20 4c 42 52 41 43 4b 45 54 20 49 44 45 4e 54 49 46 49 45 52 20 52 42 52 | em.<-.LBRACKET.IDENTIFIER.RBR |
| e0280 | 41 43 4b 45 54 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 20 4c 50 41 52 45 4e 20 28 4d 49 4e 55 | ACKET.STRINGLITERAL.LPAREN.(MINU |
| e02a0 | 53 52 41 52 52 4f 57 20 54 79 70 65 45 78 70 72 20 2f 20 49 44 45 4e 54 49 46 49 45 52 29 20 52 | SRARROW.TypeExpr./.IDENTIFIER).R |
| e02c0 | 50 41 52 45 4e 0a 0a 41 73 6d 49 6e 70 75 74 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 41 73 6d 49 | PAREN..AsmInput.<-.COLON.AsmI |
| e02e0 | 6e 70 75 74 4c 69 73 74 20 41 73 6d 43 6c 6f 62 62 65 72 73 3f 0a 0a 41 73 6d 49 6e 70 75 74 49 | nputList.AsmClobbers?..AsmInputI |
| e0300 | 74 65 6d 20 26 6c 74 3b 2d 20 4c 42 52 41 43 4b 45 54 20 49 44 45 4e 54 49 46 49 45 52 20 52 42 | tem.<-.LBRACKET.IDENTIFIER.RB |
| e0320 | 52 41 43 4b 45 54 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 20 4c 50 41 52 45 4e 20 45 78 70 72 | RACKET.STRINGLITERAL.LPAREN.Expr |
| e0340 | 20 52 50 41 52 45 4e 0a 0a 41 73 6d 43 6c 6f 62 62 65 72 73 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e | .RPAREN..AsmClobbers.<-.COLON |
| e0360 | 20 53 74 72 69 6e 67 4c 69 73 74 0a 0a 23 20 2a 2a 2a 20 48 65 6c 70 65 72 20 67 72 61 6d 6d 61 | .StringList..#.***.Helper.gramma |
| e0380 | 72 20 2a 2a 2a 0a 42 72 65 61 6b 4c 61 62 65 6c 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 49 44 45 | r.***.BreakLabel.<-.COLON.IDE |
| e03a0 | 4e 54 49 46 49 45 52 0a 0a 42 6c 6f 63 6b 4c 61 62 65 6c 20 26 6c 74 3b 2d 20 49 44 45 4e 54 49 | NTIFIER..BlockLabel.<-.IDENTI |
| e03c0 | 46 49 45 52 20 43 4f 4c 4f 4e 0a 0a 46 69 65 6c 64 49 6e 69 74 20 26 6c 74 3b 2d 20 44 4f 54 20 | FIER.COLON..FieldInit.<-.DOT. |
| e03e0 | 49 44 45 4e 54 49 46 49 45 52 20 45 51 55 41 4c 20 45 78 70 72 0a 0a 57 68 69 6c 65 43 6f 6e 74 | IDENTIFIER.EQUAL.Expr..WhileCont |
| e0400 | 69 6e 75 65 45 78 70 72 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 4c 50 41 52 45 4e 20 41 73 73 69 | inueExpr.<-.COLON.LPAREN.Assi |
| e0420 | 67 6e 45 78 70 72 20 52 50 41 52 45 4e 0a 0a 4c 69 6e 6b 53 65 63 74 69 6f 6e 20 26 6c 74 3b 2d | gnExpr.RPAREN..LinkSection.<- |
| e0440 | 20 4b 45 59 57 4f 52 44 5f 6c 69 6e 6b 73 65 63 74 69 6f 6e 20 4c 50 41 52 45 4e 20 45 78 70 72 | .KEYWORD_linksection.LPAREN.Expr |
| e0460 | 20 52 50 41 52 45 4e 0a 0a 41 64 64 72 53 70 61 63 65 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 | .RPAREN..AddrSpace.<-.KEYWORD |
| e0480 | 5f 61 64 64 72 73 70 61 63 65 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 0a 0a 23 | _addrspace.LPAREN.Expr.RPAREN..# |
| e04a0 | 20 46 6e 20 73 70 65 63 69 66 69 63 0a 43 61 6c 6c 43 6f 6e 76 20 26 6c 74 3b 2d 20 4b 45 59 57 | .Fn.specific.CallConv.<-.KEYW |
| e04c0 | 4f 52 44 5f 63 61 6c 6c 63 6f 6e 76 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 0a | ORD_callconv.LPAREN.Expr.RPAREN. |
| e04e0 | 0a 50 61 72 61 6d 44 65 63 6c 0a 20 20 20 20 26 6c 74 3b 2d 20 64 6f 63 5f 63 6f 6d 6d 65 6e 74 | .ParamDecl.....<-.doc_comment |
| e0500 | 3f 20 28 4b 45 59 57 4f 52 44 5f 6e 6f 61 6c 69 61 73 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6d | ?.(KEYWORD_noalias./.KEYWORD_com |
| e0520 | 70 74 69 6d 65 29 3f 20 28 49 44 45 4e 54 49 46 49 45 52 20 43 4f 4c 4f 4e 29 3f 20 50 61 72 61 | ptime)?.(IDENTIFIER.COLON)?.Para |
| e0540 | 6d 54 79 70 65 0a 20 20 20 20 20 2f 20 44 4f 54 33 0a 0a 50 61 72 61 6d 54 79 70 65 0a 20 20 20 | mType....../.DOT3..ParamType.... |
| e0560 | 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 61 6e 79 74 79 70 65 0a 20 20 20 20 20 2f 20 54 79 | .<-.KEYWORD_anytype....../.Ty |
| e0580 | 70 65 45 78 70 72 0a 0a 23 20 43 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 70 72 65 66 69 78 65 73 0a | peExpr..#.Control.flow.prefixes. |
| e05a0 | 49 66 50 72 65 66 69 78 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 69 66 20 4c 50 41 52 45 4e | IfPrefix.<-.KEYWORD_if.LPAREN |
| e05c0 | 20 45 78 70 72 20 52 50 41 52 45 4e 20 50 74 72 50 61 79 6c 6f 61 64 3f 0a 0a 57 68 69 6c 65 50 | .Expr.RPAREN.PtrPayload?..WhileP |
| e05e0 | 72 65 66 69 78 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 77 68 69 6c 65 20 4c 50 41 52 45 4e | refix.<-.KEYWORD_while.LPAREN |
| e0600 | 20 45 78 70 72 20 52 50 41 52 45 4e 20 50 74 72 50 61 79 6c 6f 61 64 3f 20 57 68 69 6c 65 43 6f | .Expr.RPAREN.PtrPayload?.WhileCo |
| e0620 | 6e 74 69 6e 75 65 45 78 70 72 3f 0a 0a 46 6f 72 50 72 65 66 69 78 20 26 6c 74 3b 2d 20 4b 45 59 | ntinueExpr?..ForPrefix.<-.KEY |
| e0640 | 57 4f 52 44 5f 66 6f 72 20 4c 50 41 52 45 4e 20 46 6f 72 41 72 67 75 6d 65 6e 74 73 4c 69 73 74 | WORD_for.LPAREN.ForArgumentsList |
| e0660 | 20 52 50 41 52 45 4e 20 50 74 72 4c 69 73 74 50 61 79 6c 6f 61 64 0a 0a 23 20 50 61 79 6c 6f 61 | .RPAREN.PtrListPayload..#.Payloa |
| e0680 | 64 73 0a 50 61 79 6c 6f 61 64 20 26 6c 74 3b 2d 20 50 49 50 45 20 49 44 45 4e 54 49 46 49 45 52 | ds.Payload.<-.PIPE.IDENTIFIER |
| e06a0 | 20 50 49 50 45 0a 0a 50 74 72 50 61 79 6c 6f 61 64 20 26 6c 74 3b 2d 20 50 49 50 45 20 41 53 54 | .PIPE..PtrPayload.<-.PIPE.AST |
| e06c0 | 45 52 49 53 4b 3f 20 49 44 45 4e 54 49 46 49 45 52 20 50 49 50 45 0a 0a 50 74 72 49 6e 64 65 78 | ERISK?.IDENTIFIER.PIPE..PtrIndex |
| e06e0 | 50 61 79 6c 6f 61 64 20 26 6c 74 3b 2d 20 50 49 50 45 20 41 53 54 45 52 49 53 4b 3f 20 49 44 45 | Payload.<-.PIPE.ASTERISK?.IDE |
| e0700 | 4e 54 49 46 49 45 52 20 28 43 4f 4d 4d 41 20 49 44 45 4e 54 49 46 49 45 52 29 3f 20 50 49 50 45 | NTIFIER.(COMMA.IDENTIFIER)?.PIPE |
| e0720 | 0a 0a 50 74 72 4c 69 73 74 50 61 79 6c 6f 61 64 20 26 6c 74 3b 2d 20 50 49 50 45 20 41 53 54 45 | ..PtrListPayload.<-.PIPE.ASTE |
| e0740 | 52 49 53 4b 3f 20 49 44 45 4e 54 49 46 49 45 52 20 28 43 4f 4d 4d 41 20 41 53 54 45 52 49 53 4b | RISK?.IDENTIFIER.(COMMA.ASTERISK |
| e0760 | 3f 20 49 44 45 4e 54 49 46 49 45 52 29 2a 20 43 4f 4d 4d 41 3f 20 50 49 50 45 0a 0a 23 20 53 77 | ?.IDENTIFIER)*.COMMA?.PIPE..#.Sw |
| e0780 | 69 74 63 68 20 73 70 65 63 69 66 69 63 0a 53 77 69 74 63 68 50 72 6f 6e 67 20 26 6c 74 3b 2d 20 | itch.specific.SwitchProng.<-. |
| e07a0 | 4b 45 59 57 4f 52 44 5f 69 6e 6c 69 6e 65 3f 20 53 77 69 74 63 68 43 61 73 65 20 45 51 55 41 4c | KEYWORD_inline?.SwitchCase.EQUAL |
| e07c0 | 52 41 52 52 4f 57 20 50 74 72 49 6e 64 65 78 50 61 79 6c 6f 61 64 3f 20 53 69 6e 67 6c 65 41 73 | RARROW.PtrIndexPayload?.SingleAs |
| e07e0 | 73 69 67 6e 45 78 70 72 0a 0a 53 77 69 74 63 68 43 61 73 65 0a 20 20 20 20 26 6c 74 3b 2d 20 53 | signExpr..SwitchCase.....<-.S |
| e0800 | 77 69 74 63 68 49 74 65 6d 20 28 43 4f 4d 4d 41 20 53 77 69 74 63 68 49 74 65 6d 29 2a 20 43 4f | witchItem.(COMMA.SwitchItem)*.CO |
| e0820 | 4d 4d 41 3f 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 65 6c 73 65 0a 0a 53 77 69 74 63 68 | MMA?....../.KEYWORD_else..Switch |
| e0840 | 49 74 65 6d 20 26 6c 74 3b 2d 20 45 78 70 72 20 28 44 4f 54 33 20 45 78 70 72 29 3f 0a 0a 23 20 | Item.<-.Expr.(DOT3.Expr)?..#. |
| e0860 | 46 6f 72 20 73 70 65 63 69 66 69 63 0a 46 6f 72 41 72 67 75 6d 65 6e 74 73 4c 69 73 74 20 26 6c | For.specific.ForArgumentsList.&l |
| e0880 | 74 3b 2d 20 46 6f 72 49 74 65 6d 20 28 43 4f 4d 4d 41 20 46 6f 72 49 74 65 6d 29 2a 20 43 4f 4d | t;-.ForItem.(COMMA.ForItem)*.COM |
| e08a0 | 4d 41 3f 0a 0a 46 6f 72 49 74 65 6d 20 26 6c 74 3b 2d 20 45 78 70 72 20 28 44 4f 54 32 20 45 78 | MA?..ForItem.<-.Expr.(DOT2.Ex |
| e08c0 | 70 72 3f 29 3f 0a 0a 23 20 4f 70 65 72 61 74 6f 72 73 0a 41 73 73 69 67 6e 4f 70 0a 20 20 20 20 | pr?)?..#.Operators.AssignOp..... |
| e08e0 | 26 6c 74 3b 2d 20 41 53 54 45 52 49 53 4b 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 41 53 54 45 52 | <-.ASTERISKEQUAL....../.ASTER |
| e0900 | 49 53 4b 50 49 50 45 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 53 4c 41 53 48 45 51 55 41 4c 0a 20 | ISKPIPEEQUAL....../.SLASHEQUAL.. |
| e0920 | 20 20 20 20 2f 20 50 45 52 43 45 4e 54 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 50 4c 55 53 45 51 | ..../.PERCENTEQUAL....../.PLUSEQ |
| e0940 | 55 41 4c 0a 20 20 20 20 20 2f 20 50 4c 55 53 50 49 50 45 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 | UAL....../.PLUSPIPEEQUAL....../. |
| e0960 | 4d 49 4e 55 53 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 50 49 50 45 45 51 55 41 4c | MINUSEQUAL....../.MINUSPIPEEQUAL |
| e0980 | 0a 20 20 20 20 20 2f 20 4c 41 52 52 4f 57 32 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 4c 41 52 52 | ....../.LARROW2EQUAL....../.LARR |
| e09a0 | 4f 57 32 50 49 50 45 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 52 41 52 52 4f 57 32 45 51 55 41 4c | OW2PIPEEQUAL....../.RARROW2EQUAL |
| e09c0 | 0a 20 20 20 20 20 2f 20 41 4d 50 45 52 53 41 4e 44 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 43 41 | ....../.AMPERSANDEQUAL....../.CA |
| e09e0 | 52 45 54 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 50 49 50 45 45 51 55 41 4c 0a 20 20 20 20 20 2f | RETEQUAL....../.PIPEEQUAL....../ |
| e0a00 | 20 41 53 54 45 52 49 53 4b 50 45 52 43 45 4e 54 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 50 4c 55 | .ASTERISKPERCENTEQUAL....../.PLU |
| e0a20 | 53 50 45 52 43 45 4e 54 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 50 45 52 43 45 4e | SPERCENTEQUAL....../.MINUSPERCEN |
| e0a40 | 54 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 45 51 55 41 4c 0a 0a 43 6f 6d 70 61 72 65 4f 70 0a 20 | TEQUAL....../.EQUAL..CompareOp.. |
| e0a60 | 20 20 20 26 6c 74 3b 2d 20 45 51 55 41 4c 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 45 58 43 4c 41 | ...<-.EQUALEQUAL....../.EXCLA |
| e0a80 | 4d 41 54 49 4f 4e 4d 41 52 4b 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 4c 41 52 52 4f 57 0a 20 20 | MATIONMARKEQUAL....../.LARROW... |
| e0aa0 | 20 20 20 2f 20 52 41 52 52 4f 57 0a 20 20 20 20 20 2f 20 4c 41 52 52 4f 57 45 51 55 41 4c 0a 20 | .../.RARROW....../.LARROWEQUAL.. |
| e0ac0 | 20 20 20 20 2f 20 52 41 52 52 4f 57 45 51 55 41 4c 0a 0a 42 69 74 77 69 73 65 4f 70 0a 20 20 20 | ..../.RARROWEQUAL..BitwiseOp.... |
| e0ae0 | 20 26 6c 74 3b 2d 20 41 4d 50 45 52 53 41 4e 44 0a 20 20 20 20 20 2f 20 43 41 52 45 54 0a 20 20 | .<-.AMPERSAND....../.CARET... |
| e0b00 | 20 20 20 2f 20 50 49 50 45 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 6f 72 65 6c 73 65 0a | .../.PIPE....../.KEYWORD_orelse. |
| e0b20 | 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 63 61 74 63 68 20 50 61 79 6c 6f 61 64 3f 0a 0a 42 | ...../.KEYWORD_catch.Payload?..B |
| e0b40 | 69 74 53 68 69 66 74 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 4c 41 52 52 4f 57 32 0a 20 20 20 20 | itShiftOp.....<-.LARROW2..... |
| e0b60 | 20 2f 20 52 41 52 52 4f 57 32 0a 20 20 20 20 20 2f 20 4c 41 52 52 4f 57 32 50 49 50 45 0a 0a 41 | ./.RARROW2....../.LARROW2PIPE..A |
| e0b80 | 64 64 69 74 69 6f 6e 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 50 4c 55 53 0a 20 20 20 20 20 2f 20 | dditionOp.....<-.PLUS....../. |
| e0ba0 | 4d 49 4e 55 53 0a 20 20 20 20 20 2f 20 50 4c 55 53 32 0a 20 20 20 20 20 2f 20 50 4c 55 53 50 45 | MINUS....../.PLUS2....../.PLUSPE |
| e0bc0 | 52 43 45 4e 54 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 50 45 52 43 45 4e 54 0a 20 20 20 20 20 2f | RCENT....../.MINUSPERCENT....../ |
| e0be0 | 20 50 4c 55 53 50 49 50 45 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 50 49 50 45 0a 0a 4d 75 6c 74 | .PLUSPIPE....../.MINUSPIPE..Mult |
| e0c00 | 69 70 6c 79 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 50 49 50 45 32 0a 20 20 20 20 20 2f 20 41 53 | iplyOp.....<-.PIPE2....../.AS |
| e0c20 | 54 45 52 49 53 4b 0a 20 20 20 20 20 2f 20 53 4c 41 53 48 0a 20 20 20 20 20 2f 20 50 45 52 43 45 | TERISK....../.SLASH....../.PERCE |
| e0c40 | 4e 54 0a 20 20 20 20 20 2f 20 41 53 54 45 52 49 53 4b 32 0a 20 20 20 20 20 2f 20 41 53 54 45 52 | NT....../.ASTERISK2....../.ASTER |
| e0c60 | 49 53 4b 50 45 52 43 45 4e 54 0a 20 20 20 20 20 2f 20 41 53 54 45 52 49 53 4b 50 49 50 45 0a 0a | ISKPERCENT....../.ASTERISKPIPE.. |
| e0c80 | 50 72 65 66 69 78 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 45 58 43 4c 41 4d 41 54 49 4f 4e 4d 41 | PrefixOp.....<-.EXCLAMATIONMA |
| e0ca0 | 52 4b 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 0a 20 20 20 20 20 2f 20 54 49 4c 44 45 0a 20 20 20 | RK....../.MINUS....../.TILDE.... |
| e0cc0 | 20 20 2f 20 4d 49 4e 55 53 50 45 52 43 45 4e 54 0a 20 20 20 20 20 2f 20 41 4d 50 45 52 53 41 4e | ../.MINUSPERCENT....../.AMPERSAN |
| e0ce0 | 44 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 74 72 79 0a 20 20 20 20 20 2f 20 4b 45 59 57 | D....../.KEYWORD_try....../.KEYW |
| e0d00 | 4f 52 44 5f 61 77 61 69 74 0a 0a 50 72 65 66 69 78 54 79 70 65 4f 70 0a 20 20 20 20 26 6c 74 3b | ORD_await..PrefixTypeOp.....< |
| e0d20 | 2d 20 51 55 45 53 54 49 4f 4e 4d 41 52 4b 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6e | -.QUESTIONMARK....../.KEYWORD_an |
| e0d40 | 79 66 72 61 6d 65 20 4d 49 4e 55 53 52 41 52 52 4f 57 0a 20 20 20 20 20 2f 20 53 6c 69 63 65 54 | yframe.MINUSRARROW....../.SliceT |
| e0d60 | 79 70 65 53 74 61 72 74 20 28 42 79 74 65 41 6c 69 67 6e 20 2f 20 41 64 64 72 53 70 61 63 65 20 | ypeStart.(ByteAlign./.AddrSpace. |
| e0d80 | 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6e 73 74 20 2f 20 4b 45 59 57 4f 52 44 5f 76 6f 6c 61 74 69 | /.KEYWORD_const./.KEYWORD_volati |
| e0da0 | 6c 65 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6c 6c 6f 77 7a 65 72 6f 29 2a 0a 20 20 20 20 20 2f 20 | le./.KEYWORD_allowzero)*....../. |
| e0dc0 | 50 74 72 54 79 70 65 53 74 61 72 74 20 28 41 64 64 72 53 70 61 63 65 20 2f 20 4b 45 59 57 4f 52 | PtrTypeStart.(AddrSpace./.KEYWOR |
| e0de0 | 44 5f 61 6c 69 67 6e 20 4c 50 41 52 45 4e 20 45 78 70 72 20 28 43 4f 4c 4f 4e 20 45 78 70 72 20 | D_align.LPAREN.Expr.(COLON.Expr. |
| e0e00 | 43 4f 4c 4f 4e 20 45 78 70 72 29 3f 20 52 50 41 52 45 4e 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f | COLON.Expr)?.RPAREN./.KEYWORD_co |
| e0e20 | 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 |
| e0e40 | 5f 61 6c 6c 6f 77 7a 65 72 6f 29 2a 0a 20 20 20 20 20 2f 20 41 72 72 61 79 54 79 70 65 53 74 61 | _allowzero)*....../.ArrayTypeSta |
| e0e60 | 72 74 0a 0a 53 75 66 66 69 78 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 4c 42 52 41 43 4b 45 54 20 | rt..SuffixOp.....<-.LBRACKET. |
| e0e80 | 45 78 70 72 20 28 44 4f 54 32 20 28 45 78 70 72 3f 20 28 43 4f 4c 4f 4e 20 45 78 70 72 29 3f 29 | Expr.(DOT2.(Expr?.(COLON.Expr)?) |
| e0ea0 | 3f 29 3f 20 52 42 52 41 43 4b 45 54 0a 20 20 20 20 20 2f 20 44 4f 54 20 49 44 45 4e 54 49 46 49 | ?)?.RBRACKET....../.DOT.IDENTIFI |
| e0ec0 | 45 52 0a 20 20 20 20 20 2f 20 44 4f 54 41 53 54 45 52 49 53 4b 0a 20 20 20 20 20 2f 20 44 4f 54 | ER....../.DOTASTERISK....../.DOT |
| e0ee0 | 51 55 45 53 54 49 4f 4e 4d 41 52 4b 0a 0a 46 6e 43 61 6c 6c 41 72 67 75 6d 65 6e 74 73 20 26 6c | QUESTIONMARK..FnCallArguments.&l |
| e0f00 | 74 3b 2d 20 4c 50 41 52 45 4e 20 45 78 70 72 4c 69 73 74 20 52 50 41 52 45 4e 0a 0a 23 20 50 74 | t;-.LPAREN.ExprList.RPAREN..#.Pt |
| e0f20 | 72 20 73 70 65 63 69 66 69 63 0a 53 6c 69 63 65 54 79 70 65 53 74 61 72 74 20 26 6c 74 3b 2d 20 | r.specific.SliceTypeStart.<-. |
| e0f40 | 4c 42 52 41 43 4b 45 54 20 28 43 4f 4c 4f 4e 20 45 78 70 72 29 3f 20 52 42 52 41 43 4b 45 54 0a | LBRACKET.(COLON.Expr)?.RBRACKET. |
| e0f60 | 0a 50 74 72 54 79 70 65 53 74 61 72 74 0a 20 20 20 20 26 6c 74 3b 2d 20 41 53 54 45 52 49 53 4b | .PtrTypeStart.....<-.ASTERISK |
| e0f80 | 0a 20 20 20 20 20 2f 20 41 53 54 45 52 49 53 4b 32 0a 20 20 20 20 20 2f 20 4c 42 52 41 43 4b 45 | ....../.ASTERISK2....../.LBRACKE |
| e0fa0 | 54 20 41 53 54 45 52 49 53 4b 20 28 4c 45 54 54 45 52 43 20 2f 20 43 4f 4c 4f 4e 20 45 78 70 72 | T.ASTERISK.(LETTERC./.COLON.Expr |
| e0fc0 | 29 3f 20 52 42 52 41 43 4b 45 54 0a 0a 41 72 72 61 79 54 79 70 65 53 74 61 72 74 20 26 6c 74 3b | )?.RBRACKET..ArrayTypeStart.< |
| e0fe0 | 2d 20 4c 42 52 41 43 4b 45 54 20 45 78 70 72 20 28 43 4f 4c 4f 4e 20 45 78 70 72 29 3f 20 52 42 | -.LBRACKET.Expr.(COLON.Expr)?.RB |
| e1000 | 52 41 43 4b 45 54 0a 0a 23 20 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 20 73 70 65 63 69 66 69 63 | RACKET..#.ContainerDecl.specific |
| e1020 | 0a 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 41 75 74 6f 20 26 6c 74 3b 2d 20 43 6f 6e 74 61 69 6e | .ContainerDeclAuto.<-.Contain |
| e1040 | 65 72 44 65 63 6c 54 79 70 65 20 4c 42 52 41 43 45 20 63 6f 6e 74 61 69 6e 65 72 5f 64 6f 63 5f | erDeclType.LBRACE.container_doc_ |
| e1060 | 63 6f 6d 6d 65 6e 74 3f 20 43 6f 6e 74 61 69 6e 65 72 4d 65 6d 62 65 72 73 20 52 42 52 41 43 45 | comment?.ContainerMembers.RBRACE |
| e1080 | 0a 0a 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 54 79 70 65 0a 20 20 20 20 26 6c 74 3b 2d 20 4b 45 | ..ContainerDeclType.....<-.KE |
| e10a0 | 59 57 4f 52 44 5f 73 74 72 75 63 74 20 28 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e | YWORD_struct.(LPAREN.Expr.RPAREN |
| e10c0 | 29 3f 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 6f 70 61 71 75 65 0a 20 20 20 20 20 2f 20 | )?....../.KEYWORD_opaque....../. |
| e10e0 | 4b 45 59 57 4f 52 44 5f 65 6e 75 6d 20 28 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e | KEYWORD_enum.(LPAREN.Expr.RPAREN |
| e1100 | 29 3f 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 75 6e 69 6f 6e 20 28 4c 50 41 52 45 4e 20 | )?....../.KEYWORD_union.(LPAREN. |
| e1120 | 28 4b 45 59 57 4f 52 44 5f 65 6e 75 6d 20 28 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 | (KEYWORD_enum.(LPAREN.Expr.RPARE |
| e1140 | 4e 29 3f 20 2f 20 45 78 70 72 29 20 52 50 41 52 45 4e 29 3f 0a 0a 23 20 41 6c 69 67 6e 6d 65 6e | N)?./.Expr).RPAREN)?..#.Alignmen |
| e1160 | 74 0a 42 79 74 65 41 6c 69 67 6e 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 61 6c 69 67 6e 20 | t.ByteAlign.<-.KEYWORD_align. |
| e1180 | 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 0a 0a 23 20 4c 69 73 74 73 0a 49 64 65 6e | LPAREN.Expr.RPAREN..#.Lists.Iden |
| e11a0 | 74 69 66 69 65 72 4c 69 73 74 20 26 6c 74 3b 2d 20 28 64 6f 63 5f 63 6f 6d 6d 65 6e 74 3f 20 49 | tifierList.<-.(doc_comment?.I |
| e11c0 | 44 45 4e 54 49 46 49 45 52 20 43 4f 4d 4d 41 29 2a 20 28 64 6f 63 5f 63 6f 6d 6d 65 6e 74 3f 20 | DENTIFIER.COMMA)*.(doc_comment?. |
| e11e0 | 49 44 45 4e 54 49 46 49 45 52 29 3f 0a 0a 53 77 69 74 63 68 50 72 6f 6e 67 4c 69 73 74 20 26 6c | IDENTIFIER)?..SwitchProngList.&l |
| e1200 | 74 3b 2d 20 28 53 77 69 74 63 68 50 72 6f 6e 67 20 43 4f 4d 4d 41 29 2a 20 53 77 69 74 63 68 50 | t;-.(SwitchProng.COMMA)*.SwitchP |
| e1220 | 72 6f 6e 67 3f 0a 0a 41 73 6d 4f 75 74 70 75 74 4c 69 73 74 20 26 6c 74 3b 2d 20 28 41 73 6d 4f | rong?..AsmOutputList.<-.(AsmO |
| e1240 | 75 74 70 75 74 49 74 65 6d 20 43 4f 4d 4d 41 29 2a 20 41 73 6d 4f 75 74 70 75 74 49 74 65 6d 3f | utputItem.COMMA)*.AsmOutputItem? |
| e1260 | 0a 0a 41 73 6d 49 6e 70 75 74 4c 69 73 74 20 26 6c 74 3b 2d 20 28 41 73 6d 49 6e 70 75 74 49 74 | ..AsmInputList.<-.(AsmInputIt |
| e1280 | 65 6d 20 43 4f 4d 4d 41 29 2a 20 41 73 6d 49 6e 70 75 74 49 74 65 6d 3f 0a 0a 53 74 72 69 6e 67 | em.COMMA)*.AsmInputItem?..String |
| e12a0 | 4c 69 73 74 20 26 6c 74 3b 2d 20 28 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 20 43 4f 4d 4d 41 29 | List.<-.(STRINGLITERAL.COMMA) |
| e12c0 | 2a 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 3f 0a 0a 50 61 72 61 6d 44 65 63 6c 4c 69 73 74 20 | *.STRINGLITERAL?..ParamDeclList. |
| e12e0 | 26 6c 74 3b 2d 20 28 50 61 72 61 6d 44 65 63 6c 20 43 4f 4d 4d 41 29 2a 20 50 61 72 61 6d 44 65 | <-.(ParamDecl.COMMA)*.ParamDe |
| e1300 | 63 6c 3f 0a 0a 45 78 70 72 4c 69 73 74 20 26 6c 74 3b 2d 20 28 45 78 70 72 20 43 4f 4d 4d 41 29 | cl?..ExprList.<-.(Expr.COMMA) |
| e1320 | 2a 20 45 78 70 72 3f 0a 0a 23 20 2a 2a 2a 20 54 6f 6b 65 6e 73 20 2a 2a 2a 0a 65 6f 66 20 26 6c | *.Expr?..#.***.Tokens.***.eof.&l |
| e1340 | 74 3b 2d 20 21 2e 0a 62 69 6e 20 26 6c 74 3b 2d 20 5b 30 31 5d 0a 62 69 6e 5f 20 26 6c 74 3b 2d | t;-.!..bin.<-.[01].bin_.<- |
| e1360 | 20 27 5f 27 3f 20 62 69 6e 0a 6f 63 74 20 26 6c 74 3b 2d 20 5b 30 2d 37 5d 0a 6f 63 74 5f 20 26 | .'_'?.bin.oct.<-.[0-7].oct_.& |
| e1380 | 6c 74 3b 2d 20 27 5f 27 3f 20 6f 63 74 0a 68 65 78 20 26 6c 74 3b 2d 20 5b 30 2d 39 61 2d 66 41 | lt;-.'_'?.oct.hex.<-.[0-9a-fA |
| e13a0 | 2d 46 5d 0a 68 65 78 5f 20 26 6c 74 3b 2d 20 27 5f 27 3f 20 68 65 78 0a 64 65 63 20 26 6c 74 3b | -F].hex_.<-.'_'?.hex.dec.< |
| e13c0 | 2d 20 5b 30 2d 39 5d 0a 64 65 63 5f 20 26 6c 74 3b 2d 20 27 5f 27 3f 20 64 65 63 0a 0a 62 69 6e | -.[0-9].dec_.<-.'_'?.dec..bin |
| e13e0 | 5f 69 6e 74 20 26 6c 74 3b 2d 20 62 69 6e 20 62 69 6e 5f 2a 0a 6f 63 74 5f 69 6e 74 20 26 6c 74 | _int.<-.bin.bin_*.oct_int.< |
| e1400 | 3b 2d 20 6f 63 74 20 6f 63 74 5f 2a 0a 64 65 63 5f 69 6e 74 20 26 6c 74 3b 2d 20 64 65 63 20 64 | ;-.oct.oct_*.dec_int.<-.dec.d |
| e1420 | 65 63 5f 2a 0a 68 65 78 5f 69 6e 74 20 26 6c 74 3b 2d 20 68 65 78 20 68 65 78 5f 2a 0a 0a 6f 78 | ec_*.hex_int.<-.hex.hex_*..ox |
| e1440 | 38 30 5f 6f 78 42 46 20 26 6c 74 3b 2d 20 5b 5c 32 30 30 2d 5c 32 37 37 5d 0a 6f 78 46 34 20 26 | 80_oxBF.<-.[\200-\277].oxF4.& |
| e1460 | 6c 74 3b 2d 20 27 5c 33 36 34 27 0a 6f 78 38 30 5f 6f 78 38 46 20 26 6c 74 3b 2d 20 5b 5c 32 30 | lt;-.'\364'.ox80_ox8F.<-.[\20 |
| e1480 | 30 2d 5c 32 31 37 5d 0a 6f 78 46 31 5f 6f 78 46 33 20 26 6c 74 3b 2d 20 5b 5c 33 36 31 2d 5c 33 | 0-\217].oxF1_oxF3.<-.[\361-\3 |
| e14a0 | 36 33 5d 0a 6f 78 46 30 20 26 6c 74 3b 2d 20 27 5c 33 36 30 27 0a 6f 78 39 30 5f 30 78 42 46 20 | 63].oxF0.<-.'\360'.ox90_0xBF. |
| e14c0 | 26 6c 74 3b 2d 20 5b 5c 32 32 30 2d 5c 32 37 37 5d 0a 6f 78 45 45 5f 6f 78 45 46 20 26 6c 74 3b | <-.[\220-\277].oxEE_oxEF.< |
| e14e0 | 2d 20 5b 5c 33 35 36 2d 5c 33 35 37 5d 0a 6f 78 45 44 20 26 6c 74 3b 2d 20 27 5c 33 35 35 27 0a | -.[\356-\357].oxED.<-.'\355'. |
| e1500 | 6f 78 38 30 5f 6f 78 39 46 20 26 6c 74 3b 2d 20 5b 5c 32 30 30 2d 5c 32 33 37 5d 0a 6f 78 45 31 | ox80_ox9F.<-.[\200-\237].oxE1 |
| e1520 | 5f 6f 78 45 43 20 26 6c 74 3b 2d 20 5b 5c 33 34 31 2d 5c 33 35 34 5d 0a 6f 78 45 30 20 26 6c 74 | _oxEC.<-.[\341-\354].oxE0.< |
| e1540 | 3b 2d 20 27 5c 33 34 30 27 0a 6f 78 41 30 5f 6f 78 42 46 20 26 6c 74 3b 2d 20 5b 5c 32 34 30 2d | ;-.'\340'.oxA0_oxBF.<-.[\240- |
| e1560 | 5c 32 37 37 5d 0a 6f 78 43 32 5f 6f 78 44 46 20 26 6c 74 3b 2d 20 5b 5c 33 30 32 2d 5c 33 33 37 | \277].oxC2_oxDF.<-.[\302-\337 |
| e1580 | 5d 0a 0a 23 20 46 72 6f 6d 20 68 74 74 70 73 3a 2f 2f 6c 65 6d 69 72 65 2e 6d 65 2f 62 6c 6f 67 | ]..#.From.https://lemire.me/blog |
| e15a0 | 2f 32 30 31 38 2f 30 35 2f 30 39 2f 68 6f 77 2d 71 75 69 63 6b 6c 79 2d 63 61 6e 2d 79 6f 75 2d | /2018/05/09/how-quickly-can-you- |
| e15c0 | 63 68 65 63 6b 2d 74 68 61 74 2d 61 2d 73 74 72 69 6e 67 2d 69 73 2d 76 61 6c 69 64 2d 75 6e 69 | check-that-a-string-is-valid-uni |
| e15e0 | 63 6f 64 65 2d 75 74 66 2d 38 2f 0a 23 20 46 69 72 73 74 20 42 79 74 65 20 20 20 20 20 20 53 65 | code-utf-8/.#.First.Byte......Se |
| e1600 | 63 6f 6e 64 20 42 79 74 65 20 20 20 20 20 54 68 69 72 64 20 42 79 74 65 20 20 20 20 20 20 46 6f | cond.Byte.....Third.Byte......Fo |
| e1620 | 75 72 74 68 20 42 79 74 65 0a 23 20 5b 30 78 30 30 2c 30 78 37 46 5d 0a 23 20 5b 30 78 43 32 2c | urth.Byte.#.[0x00,0x7F].#.[0xC2, |
| e1640 | 30 78 44 46 5d 20 20 20 20 20 5b 30 78 38 30 2c 30 78 42 46 5d 0a 23 20 20 20 20 30 78 45 30 20 | 0xDF].....[0x80,0xBF].#....0xE0. |
| e1660 | 20 20 20 20 20 20 20 20 5b 30 78 41 30 2c 30 78 42 46 5d 20 20 20 20 20 5b 30 78 38 30 2c 30 78 | ........[0xA0,0xBF].....[0x80,0x |
| e1680 | 42 46 5d 0a 23 20 5b 30 78 45 31 2c 30 78 45 43 5d 20 20 20 20 20 5b 30 78 38 30 2c 30 78 42 46 | BF].#.[0xE1,0xEC].....[0x80,0xBF |
| e16a0 | 5d 20 20 20 20 20 5b 30 78 38 30 2c 30 78 42 46 5d 0a 23 20 20 20 20 30 78 45 44 20 20 20 20 20 | ].....[0x80,0xBF].#....0xED..... |
| e16c0 | 20 20 20 20 5b 30 78 38 30 2c 30 78 39 46 5d 20 20 20 20 20 5b 30 78 38 30 2c 30 78 42 46 5d 0a | ....[0x80,0x9F].....[0x80,0xBF]. |
| e16e0 | 23 20 5b 30 78 45 45 2c 30 78 45 46 5d 20 20 20 20 20 5b 30 78 38 30 2c 30 78 42 46 5d 20 20 20 | #.[0xEE,0xEF].....[0x80,0xBF]... |
| e1700 | 20 20 5b 30 78 38 30 2c 30 78 42 46 5d 0a 23 20 20 20 20 30 78 46 30 20 20 20 20 20 20 20 20 20 | ..[0x80,0xBF].#....0xF0......... |
| e1720 | 5b 30 78 39 30 2c 30 78 42 46 5d 20 20 20 20 20 5b 30 78 38 30 2c 30 78 42 46 5d 20 20 20 20 20 | [0x90,0xBF].....[0x80,0xBF]..... |
| e1740 | 5b 30 78 38 30 2c 30 78 42 46 5d 0a 23 20 5b 30 78 46 31 2c 30 78 46 33 5d 20 20 20 20 20 5b 30 | [0x80,0xBF].#.[0xF1,0xF3].....[0 |
| e1760 | 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 20 20 20 20 20 5b 30 | x80,0xBF].....[0x80,0xBF].....[0 |
| e1780 | 78 38 30 2c 30 78 42 46 5d 0a 23 20 20 20 20 30 78 46 34 20 20 20 20 20 20 20 20 20 5b 30 78 38 | x80,0xBF].#....0xF4.........[0x8 |
| e17a0 | 30 2c 30 78 38 46 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 | 0,0x8F].....[0x80,0xBF].....[0x8 |
| e17c0 | 30 2c 30 78 42 46 5d 0a 0a 6d 62 5f 75 74 66 38 5f 6c 69 74 65 72 61 6c 20 26 6c 74 3b 2d 0a 20 | 0,0xBF]..mb_utf8_literal.<-.. |
| e17e0 | 20 20 20 20 20 20 6f 78 46 34 20 20 20 20 20 20 6f 78 38 30 5f 6f 78 38 46 20 6f 78 38 30 5f 6f | ......oxF4......ox80_ox8F.ox80_o |
| e1800 | 78 42 46 20 6f 78 38 30 5f 6f 78 42 46 0a 20 20 20 20 20 2f 20 6f 78 46 31 5f 6f 78 46 33 20 6f | xBF.ox80_oxBF....../.oxF1_oxF3.o |
| e1820 | 78 38 30 5f 6f 78 42 46 20 6f 78 38 30 5f 6f 78 42 46 20 6f 78 38 30 5f 6f 78 42 46 0a 20 20 20 | x80_oxBF.ox80_oxBF.ox80_oxBF.... |
| e1840 | 20 20 2f 20 6f 78 46 30 20 20 20 20 20 20 6f 78 39 30 5f 30 78 42 46 20 6f 78 38 30 5f 6f 78 42 | ../.oxF0......ox90_0xBF.ox80_oxB |
| e1860 | 46 20 6f 78 38 30 5f 6f 78 42 46 0a 20 20 20 20 20 2f 20 6f 78 45 45 5f 6f 78 45 46 20 6f 78 38 | F.ox80_oxBF....../.oxEE_oxEF.ox8 |
| e1880 | 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 45 44 20 20 20 20 | 0_oxBF.ox80_oxBF....../.oxED.... |
| e18a0 | 20 20 6f 78 38 30 5f 6f 78 39 46 20 6f 78 38 30 5f 6f 78 42 46 0a 20 20 20 20 20 2f 20 6f 78 45 | ..ox80_ox9F.ox80_oxBF....../.oxE |
| e18c0 | 31 5f 6f 78 45 43 20 6f 78 38 30 5f 6f 78 42 46 20 6f 78 38 30 5f 6f 78 42 46 0a 20 20 20 20 20 | 1_oxEC.ox80_oxBF.ox80_oxBF...... |
| e18e0 | 2f 20 6f 78 45 30 20 20 20 20 20 20 6f 78 41 30 5f 6f 78 42 46 20 6f 78 38 30 5f 6f 78 42 46 0a | /.oxE0......oxA0_oxBF.ox80_oxBF. |
| e1900 | 20 20 20 20 20 2f 20 6f 78 43 32 5f 6f 78 44 46 20 6f 78 38 30 5f 6f 78 42 46 0a 0a 61 73 63 69 | ...../.oxC2_oxDF.ox80_oxBF..asci |
| e1920 | 69 5f 63 68 61 72 5f 6e 6f 74 5f 6e 6c 5f 73 6c 61 73 68 5f 73 71 75 6f 74 65 20 26 6c 74 3b 2d | i_char_not_nl_slash_squote.<- |
| e1940 | 20 5b 5c 30 30 30 2d 5c 30 31 31 5c 30 31 33 2d 5c 30 34 36 5c 30 35 30 2d 5c 31 33 33 5c 31 33 | .[\000-\011\013-\046\050-\133\13 |
| e1960 | 35 2d 5c 31 37 37 5d 0a 0a 63 68 61 72 5f 65 73 63 61 70 65 0a 20 20 20 20 26 6c 74 3b 2d 20 26 | 5-\177]..char_escape.....<-.& |
| e1980 | 71 75 6f 74 3b 5c 5c 78 26 71 75 6f 74 3b 20 68 65 78 20 68 65 78 0a 20 20 20 20 20 2f 20 26 71 | quot;\\x".hex.hex....../.&q |
| e19a0 | 75 6f 74 3b 5c 5c 75 7b 26 71 75 6f 74 3b 20 68 65 78 2b 20 26 71 75 6f 74 3b 7d 26 71 75 6f 74 | uot;\\u{".hex+."}" |
| e19c0 | 3b 0a 20 20 20 20 20 2f 20 26 71 75 6f 74 3b 5c 5c 26 71 75 6f 74 3b 20 5b 6e 72 5c 5c 74 27 26 | ;....../."\\".[nr\\t'& |
| e19e0 | 71 75 6f 74 3b 5d 0a 63 68 61 72 5f 63 68 61 72 0a 20 20 20 20 26 6c 74 3b 2d 20 6d 62 5f 75 74 | quot;].char_char.....<-.mb_ut |
| e1a00 | 66 38 5f 6c 69 74 65 72 61 6c 0a 20 20 20 20 20 2f 20 63 68 61 72 5f 65 73 63 61 70 65 0a 20 20 | f8_literal....../.char_escape... |
| e1a20 | 20 20 20 2f 20 61 73 63 69 69 5f 63 68 61 72 5f 6e 6f 74 5f 6e 6c 5f 73 6c 61 73 68 5f 73 71 75 | .../.ascii_char_not_nl_slash_squ |
| e1a40 | 6f 74 65 0a 0a 73 74 72 69 6e 67 5f 63 68 61 72 0a 20 20 20 20 26 6c 74 3b 2d 20 63 68 61 72 5f | ote..string_char.....<-.char_ |
| e1a60 | 65 73 63 61 70 65 0a 20 20 20 20 20 2f 20 5b 5e 5c 5c 26 71 75 6f 74 3b 5c 6e 5d 0a 0a 63 6f 6e | escape....../.[^\\"\n]..con |
| e1a80 | 74 61 69 6e 65 72 5f 64 6f 63 5f 63 6f 6d 6d 65 6e 74 20 26 6c 74 3b 2d 20 28 27 2f 2f 21 27 20 | tainer_doc_comment.<-.('//!'. |
| e1aa0 | 5b 5e 5c 6e 5d 2a 20 5b 20 5c 6e 5d 2a 20 73 6b 69 70 29 2b 0a 64 6f 63 5f 63 6f 6d 6d 65 6e 74 | [^\n]*.[.\n]*.skip)+.doc_comment |
| e1ac0 | 20 26 6c 74 3b 2d 20 28 27 2f 2f 2f 27 20 5b 5e 5c 6e 5d 2a 20 5b 20 5c 6e 5d 2a 20 73 6b 69 70 | .<-.('///'.[^\n]*.[.\n]*.skip |
| e1ae0 | 29 2b 0a 6c 69 6e 65 5f 63 6f 6d 6d 65 6e 74 20 26 6c 74 3b 2d 20 27 2f 2f 27 20 21 5b 21 2f 5d | )+.line_comment.<-.'//'.![!/] |
| e1b00 | 5b 5e 5c 6e 5d 2a 20 2f 20 27 2f 2f 2f 2f 27 20 5b 5e 5c 6e 5d 2a 0a 6c 69 6e 65 5f 73 74 72 69 | [^\n]*./.'////'.[^\n]*.line_stri |
| e1b20 | 6e 67 20 26 6c 74 3b 2d 20 28 26 71 75 6f 74 3b 5c 5c 5c 5c 26 71 75 6f 74 3b 20 5b 5e 5c 6e 5d | ng.<-.("\\\\".[^\n] |
| e1b40 | 2a 20 5b 20 5c 6e 5d 2a 29 2b 0a 73 6b 69 70 20 26 6c 74 3b 2d 20 28 5b 20 5c 6e 5d 20 2f 20 6c | *.[.\n]*)+.skip.<-.([.\n]./.l |
| e1b60 | 69 6e 65 5f 63 6f 6d 6d 65 6e 74 29 2a 0a 0a 43 48 41 52 5f 4c 49 54 45 52 41 4c 20 26 6c 74 3b | ine_comment)*..CHAR_LITERAL.< |
| e1b80 | 2d 20 26 71 75 6f 74 3b 27 26 71 75 6f 74 3b 20 63 68 61 72 5f 63 68 61 72 20 26 71 75 6f 74 3b | -."'".char_char." |
| e1ba0 | 27 26 71 75 6f 74 3b 20 73 6b 69 70 0a 46 4c 4f 41 54 0a 20 20 20 20 26 6c 74 3b 2d 20 26 71 75 | '".skip.FLOAT.....<-.&qu |
| e1bc0 | 6f 74 3b 30 78 26 71 75 6f 74 3b 20 68 65 78 5f 69 6e 74 20 26 71 75 6f 74 3b 2e 26 71 75 6f 74 | ot;0x".hex_int."." |
| e1be0 | 3b 20 68 65 78 5f 69 6e 74 20 28 5b 70 50 5d 20 5b 2d 2b 5d 3f 20 64 65 63 5f 69 6e 74 29 3f 20 | ;.hex_int.([pP].[-+]?.dec_int)?. |
| e1c00 | 73 6b 69 70 0a 20 20 20 20 20 2f 20 20 20 20 20 20 64 65 63 5f 69 6e 74 20 26 71 75 6f 74 3b 2e | skip....../......dec_int.". |
| e1c20 | 26 71 75 6f 74 3b 20 64 65 63 5f 69 6e 74 20 28 5b 65 45 5d 20 5b 2d 2b 5d 3f 20 64 65 63 5f 69 | ".dec_int.([eE].[-+]?.dec_i |
| e1c40 | 6e 74 29 3f 20 73 6b 69 70 0a 20 20 20 20 20 2f 20 26 71 75 6f 74 3b 30 78 26 71 75 6f 74 3b 20 | nt)?.skip....../."0x". |
| e1c60 | 68 65 78 5f 69 6e 74 20 5b 70 50 5d 20 5b 2d 2b 5d 3f 20 64 65 63 5f 69 6e 74 20 73 6b 69 70 0a | hex_int.[pP].[-+]?.dec_int.skip. |
| e1c80 | 20 20 20 20 20 2f 20 20 20 20 20 20 64 65 63 5f 69 6e 74 20 5b 65 45 5d 20 5b 2d 2b 5d 3f 20 64 | ...../......dec_int.[eE].[-+]?.d |
| e1ca0 | 65 63 5f 69 6e 74 20 73 6b 69 70 0a 49 4e 54 45 47 45 52 0a 20 20 20 20 26 6c 74 3b 2d 20 26 71 | ec_int.skip.INTEGER.....<-.&q |
| e1cc0 | 75 6f 74 3b 30 62 26 71 75 6f 74 3b 20 62 69 6e 5f 69 6e 74 20 73 6b 69 70 0a 20 20 20 20 20 2f | uot;0b".bin_int.skip....../ |
| e1ce0 | 20 26 71 75 6f 74 3b 30 6f 26 71 75 6f 74 3b 20 6f 63 74 5f 69 6e 74 20 73 6b 69 70 0a 20 20 20 | ."0o".oct_int.skip.... |
| e1d00 | 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 73 6b 69 70 0a | ../."0x".hex_int.skip. |
| e1d20 | 20 20 20 20 20 2f 20 20 20 20 20 20 64 65 63 5f 69 6e 74 20 20 20 73 6b 69 70 0a 53 54 52 49 4e | ...../......dec_int...skip.STRIN |
| e1d40 | 47 4c 49 54 45 52 41 4c 53 49 4e 47 4c 45 20 26 6c 74 3b 2d 20 26 71 75 6f 74 3b 5c 26 71 75 6f | GLITERALSINGLE.<-."\&quo |
| e1d60 | 74 3b 26 71 75 6f 74 3b 20 73 74 72 69 6e 67 5f 63 68 61 72 2a 20 26 71 75 6f 74 3b 5c 26 71 75 | t;".string_char*."\&qu |
| e1d80 | 6f 74 3b 26 71 75 6f 74 3b 20 73 6b 69 70 0a 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 0a 20 20 20 | ot;".skip.STRINGLITERAL.... |
| e1da0 | 20 26 6c 74 3b 2d 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 4e 47 4c 45 0a 20 20 20 20 20 | .<-.STRINGLITERALSINGLE...... |
| e1dc0 | 2f 20 28 6c 69 6e 65 5f 73 74 72 69 6e 67 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 | /.(line_string.................s |
| e1de0 | 6b 69 70 29 2b 0a 49 44 45 4e 54 49 46 49 45 52 0a 20 20 20 20 26 6c 74 3b 2d 20 21 6b 65 79 77 | kip)+.IDENTIFIER.....<-.!keyw |
| e1e00 | 6f 72 64 20 5b 41 2d 5a 61 2d 7a 5f 5d 20 5b 41 2d 5a 61 2d 7a 30 2d 39 5f 5d 2a 20 73 6b 69 70 | ord.[A-Za-z_].[A-Za-z0-9_]*.skip |
| e1e20 | 0a 20 20 20 20 20 2f 20 26 71 75 6f 74 3b 40 26 71 75 6f 74 3b 20 53 54 52 49 4e 47 4c 49 54 45 | ....../."@".STRINGLITE |
| e1e40 | 52 41 4c 53 49 4e 47 4c 45 0a 42 55 49 4c 54 49 4e 49 44 45 4e 54 49 46 49 45 52 20 26 6c 74 3b | RALSINGLE.BUILTINIDENTIFIER.< |
| e1e60 | 2d 20 26 71 75 6f 74 3b 40 26 71 75 6f 74 3b 5b 41 2d 5a 61 2d 7a 5f 5d 5b 41 2d 5a 61 2d 7a 30 | -."@"[A-Za-z_][A-Za-z0 |
| e1e80 | 2d 39 5f 5d 2a 20 73 6b 69 70 0a 0a 0a 41 4d 50 45 52 53 41 4e 44 20 20 20 20 20 20 20 20 20 20 | -9_]*.skip...AMPERSAND.......... |
| e1ea0 | 20 20 26 6c 74 3b 2d 20 27 26 61 6d 70 3b 27 20 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 | ..<-.'&'......![=]......s |
| e1ec0 | 6b 69 70 0a 41 4d 50 45 52 53 41 4e 44 45 51 55 41 4c 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 | kip.AMPERSANDEQUAL.......<-.' |
| e1ee0 | 26 61 6d 70 3b 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 41 53 54 45 52 | &='...............skip.ASTER |
| e1f00 | 49 53 4b 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2a 27 20 20 20 20 20 20 21 | ISK.............<-.'*'......! |
| e1f20 | 5b 2a 25 3d 7c 5d 20 20 20 73 6b 69 70 0a 41 53 54 45 52 49 53 4b 32 20 20 20 20 20 20 20 20 20 | [*%=|]...skip.ASTERISK2......... |
| e1f40 | 20 20 20 26 6c 74 3b 2d 20 27 2a 2a 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 | ...<-.'**'...............skip |
| e1f60 | 0a 41 53 54 45 52 49 53 4b 45 51 55 41 4c 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2a 3d 27 | .ASTERISKEQUAL........<-.'*=' |
| e1f80 | 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 50 45 52 43 | ...............skip.ASTERISKPERC |
| e1fa0 | 45 4e 54 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2a 25 27 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 | ENT......<-.'*%'.....![=].... |
| e1fc0 | 20 20 73 6b 69 70 0a 41 53 54 45 52 49 53 4b 50 45 52 43 45 4e 54 45 51 55 41 4c 20 26 6c 74 3b | ..skip.ASTERISKPERCENTEQUAL.< |
| e1fe0 | 2d 20 27 2a 25 3d 27 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 | -.'*%='..............skip.ASTERI |
| e2000 | 53 4b 50 49 50 45 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2a 7c 27 20 20 20 20 20 21 5b | SKPIPE.........<-.'*|'.....![ |
| e2020 | 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 41 53 54 45 52 49 53 4b 50 49 50 45 45 51 55 41 4c 20 20 | =]......skip.ASTERISKPIPEEQUAL.. |
| e2040 | 20 20 26 6c 74 3b 2d 20 27 2a 7c 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a | ..<-.'*|='..............skip. |
| e2060 | 43 41 52 45 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 5e 27 20 20 | CARET................<-.'^'.. |
| e2080 | 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 43 41 52 45 54 45 51 55 41 4c 20 20 20 | ....![=]......skip.CARETEQUAL... |
| e20a0 | 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 5e 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ........<-.'^='.............. |
| e20c0 | 20 73 6b 69 70 0a 43 4f 4c 4f 4e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d | .skip.COLON................<- |
| e20e0 | 20 27 3a 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 43 4f 4d 4d 41 20 20 | .':'................skip.COMMA.. |
| e2100 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2c 27 20 20 20 20 20 20 20 20 20 | ..............<-.','......... |
| e2120 | 20 20 20 20 20 20 20 73 6b 69 70 0a 44 4f 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .......skip.DOT................. |
| e2140 | 20 26 6c 74 3b 2d 20 27 2e 27 20 20 20 20 20 20 21 5b 2a 2e 3f 5d 20 20 20 20 73 6b 69 70 0a 44 | .<-.'.'......![*.?]....skip.D |
| e2160 | 4f 54 32 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 2e 27 20 20 | OT2.................<-.'..'.. |
| e2180 | 20 20 20 21 5b 2e 5d 20 20 20 20 20 20 73 6b 69 70 0a 44 4f 54 33 20 20 20 20 20 20 20 20 20 20 | ...![.]......skip.DOT3.......... |
| e21a0 | 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2e 2e 2e 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .......<-.'...'.............. |
| e21c0 | 73 6b 69 70 0a 44 4f 54 41 53 54 45 52 49 53 4b 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 | skip.DOTASTERISK..........<-. |
| e21e0 | 27 2e 2a 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 44 4f 54 51 55 45 53 54 | '.*'...............skip.DOTQUEST |
| e2200 | 49 4f 4e 4d 41 52 4b 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2e 3f 27 20 20 20 20 20 20 20 20 20 | IONMARK......<-.'.?'......... |
| e2220 | 20 20 20 20 20 20 73 6b 69 70 0a 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ......skip.EQUAL................ |
| e2240 | 26 6c 74 3b 2d 20 27 3d 27 20 20 20 20 20 20 21 5b 26 67 74 3b 3d 5d 20 20 20 20 20 73 6b 69 70 | <-.'='......![>=].....skip |
| e2260 | 0a 45 51 55 41 4c 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 3d 3d 27 | .EQUALEQUAL...........<-.'==' |
| e2280 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 45 51 55 41 4c 52 41 52 52 4f 57 20 | ...............skip.EQUALRARROW. |
| e22a0 | 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 3d 26 67 74 3b 27 20 20 20 20 20 20 20 20 20 20 | .........<-.'=>'.......... |
| e22c0 | 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 20 20 20 20 20 20 26 | .....skip.EXCLAMATIONMARK......& |
| e22e0 | 6c 74 3b 2d 20 27 21 27 20 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 45 58 43 | lt;-.'!'......![=]......skip.EXC |
| e2300 | 4c 41 4d 41 54 49 4f 4e 4d 41 52 4b 45 51 55 41 4c 20 26 6c 74 3b 2d 20 27 21 3d 27 20 20 20 20 | LAMATIONMARKEQUAL.<-.'!='.... |
| e2320 | 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4c 41 52 52 4f 57 20 20 20 20 20 20 20 20 20 20 | ...........skip.LARROW.......... |
| e2340 | 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 6c 74 3b 27 20 20 20 20 20 20 21 5b 26 6c 74 3b 3d 5d 20 | .....<-.'<'......![<=]. |
| e2360 | 20 20 20 20 73 6b 69 70 0a 4c 41 52 52 4f 57 32 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c | ....skip.LARROW2..............&l |
| e2380 | 74 3b 2d 20 27 26 6c 74 3b 26 6c 74 3b 27 20 20 20 20 20 21 5b 3d 7c 5d 20 20 20 20 20 73 6b 69 | t;-.'<<'.....![=|].....ski |
| e23a0 | 70 0a 4c 41 52 52 4f 57 32 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 6c | p.LARROW2EQUAL.........<-.'&l |
| e23c0 | 74 3b 26 6c 74 3b 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4c 41 52 52 4f | t;<='..............skip.LARRO |
| e23e0 | 57 32 50 49 50 45 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 6c 74 3b 26 6c 74 3b 7c | W2PIPE..........<-.'<<| |
| e2400 | 27 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 4c 41 52 52 4f 57 32 50 49 50 45 45 | '....![=]......skip.LARROW2PIPEE |
| e2420 | 51 55 41 4c 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 6c 74 3b 26 6c 74 3b 7c 3d 27 20 20 20 20 20 | QUAL.....<-.'<<|='..... |
| e2440 | 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4c 41 52 52 4f 57 45 51 55 41 4c 20 20 20 20 20 20 20 20 | ........skip.LARROWEQUAL........ |
| e2460 | 20 20 26 6c 74 3b 2d 20 27 26 6c 74 3b 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b | ..<-.'<='...............sk |
| e2480 | 69 70 0a 4c 42 52 41 43 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 7b | ip.LBRACE...............<-.'{ |
| e24a0 | 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4c 42 52 41 43 4b 45 54 20 20 | '................skip.LBRACKET.. |
| e24c0 | 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 5b 27 20 20 20 20 20 20 20 20 20 20 20 20 | ...........<-.'['............ |
| e24e0 | 20 20 20 20 73 6b 69 70 0a 4c 50 41 52 45 4e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c | ....skip.LPAREN...............&l |
| e2500 | 74 3b 2d 20 27 28 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4d 49 4e 55 | t;-.'('................skip.MINU |
| e2520 | 53 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2d 27 20 20 20 20 20 20 | S................<-.'-'...... |
| e2540 | 21 5b 25 3d 26 67 74 3b 7c 5d 20 20 20 73 6b 69 70 0a 4d 49 4e 55 53 45 51 55 41 4c 20 20 20 20 | ![%=>|]...skip.MINUSEQUAL.... |
| e2560 | 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2d 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .......<-.'-='............... |
| e2580 | 73 6b 69 70 0a 4d 49 4e 55 53 50 45 52 43 45 4e 54 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 | skip.MINUSPERCENT.........<-. |
| e25a0 | 27 2d 25 27 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 4d 49 4e 55 53 50 45 52 | '-%'.....![=]......skip.MINUSPER |
| e25c0 | 43 45 4e 54 45 51 55 41 4c 20 20 20 20 26 6c 74 3b 2d 20 27 2d 25 3d 27 20 20 20 20 20 20 20 20 | CENTEQUAL....<-.'-%='........ |
| e25e0 | 20 20 20 20 20 20 73 6b 69 70 0a 4d 49 4e 55 53 50 49 50 45 20 20 20 20 20 20 20 20 20 20 20 20 | ......skip.MINUSPIPE............ |
| e2600 | 26 6c 74 3b 2d 20 27 2d 7c 27 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 4d 49 | <-.'-|'.....![=]......skip.MI |
| e2620 | 4e 55 53 50 49 50 45 45 51 55 41 4c 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2d 7c 3d 27 20 20 | NUSPIPEEQUAL.......<-.'-|='.. |
| e2640 | 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4d 49 4e 55 53 52 41 52 52 4f 57 20 20 20 20 | ............skip.MINUSRARROW.... |
| e2660 | 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2d 26 67 74 3b 27 20 20 20 20 20 20 20 20 20 20 20 20 20 | ......<-.'->'............. |
| e2680 | 20 20 73 6b 69 70 0a 50 45 52 43 45 4e 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b | ..skip.PERCENT..............< |
| e26a0 | 2d 20 27 25 27 20 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 50 45 52 43 45 4e | -.'%'......![=]......skip.PERCEN |
| e26c0 | 54 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 25 3d 27 20 20 20 20 20 20 20 | TEQUAL.........<-.'%='....... |
| e26e0 | 20 20 20 20 20 20 20 20 73 6b 69 70 0a 50 49 50 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ........skip.PIPE............... |
| e2700 | 20 20 26 6c 74 3b 2d 20 27 7c 27 20 20 20 20 20 20 21 5b 7c 3d 5d 20 20 20 20 20 73 6b 69 70 0a | ..<-.'|'......![|=].....skip. |
| e2720 | 50 49 50 45 32 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 7c 7c 27 20 | PIPE2................<-.'||'. |
| e2740 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 50 49 50 45 45 51 55 41 4c 20 20 20 20 | ..............skip.PIPEEQUAL.... |
| e2760 | 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 7c 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ........<-.'|='.............. |
| e2780 | 20 73 6b 69 70 0a 50 4c 55 53 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d | .skip.PLUS.................<- |
| e27a0 | 20 27 2b 27 20 20 20 20 20 20 21 5b 25 2b 3d 7c 5d 20 20 20 73 6b 69 70 0a 50 4c 55 53 32 20 20 | .'+'......![%+=|]...skip.PLUS2.. |
| e27c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2b 2b 27 20 20 20 20 20 20 20 20 | ..............<-.'++'........ |
| e27e0 | 20 20 20 20 20 20 20 73 6b 69 70 0a 50 4c 55 53 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 20 20 | .......skip.PLUSEQUAL........... |
| e2800 | 20 26 6c 74 3b 2d 20 27 2b 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 50 | .<-.'+='...............skip.P |
| e2820 | 4c 55 53 50 45 52 43 45 4e 54 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2b 25 27 20 20 | LUSPERCENT..........<-.'+%'.. |
| e2840 | 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 50 4c 55 53 50 45 52 43 45 4e 54 45 51 55 | ...![=]......skip.PLUSPERCENTEQU |
| e2860 | 41 4c 20 20 20 20 20 26 6c 74 3b 2d 20 27 2b 25 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | AL.....<-.'+%='.............. |
| e2880 | 73 6b 69 70 0a 50 4c 55 53 50 49 50 45 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 | skip.PLUSPIPE.............<-. |
| e28a0 | 27 2b 7c 27 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 50 4c 55 53 50 49 50 45 | '+|'.....![=]......skip.PLUSPIPE |
| e28c0 | 45 51 55 41 4c 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2b 7c 3d 27 20 20 20 20 20 20 20 20 | EQUAL........<-.'+|='........ |
| e28e0 | 20 20 20 20 20 20 73 6b 69 70 0a 4c 45 54 54 45 52 43 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ......skip.LETTERC.............. |
| e2900 | 26 6c 74 3b 2d 20 27 63 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 51 55 | <-.'c'................skip.QU |
| e2920 | 45 53 54 49 4f 4e 4d 41 52 4b 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 3f 27 20 20 20 20 | ESTIONMARK.........<-.'?'.... |
| e2940 | 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 52 41 52 52 4f 57 20 20 20 20 20 20 20 20 20 | ............skip.RARROW......... |
| e2960 | 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 67 74 3b 27 20 20 20 20 20 20 21 5b 26 67 74 3b 3d 5d | ......<-.'>'......![>=] |
| e2980 | 20 20 20 20 20 73 6b 69 70 0a 52 41 52 52 4f 57 32 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 | .....skip.RARROW2..............& |
| e29a0 | 6c 74 3b 2d 20 27 26 67 74 3b 26 67 74 3b 27 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b | lt;-.'>>'.....![=]......sk |
| e29c0 | 69 70 0a 52 41 52 52 4f 57 32 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 | ip.RARROW2EQUAL.........<-.'& |
| e29e0 | 67 74 3b 26 67 74 3b 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 52 41 52 52 | gt;>='..............skip.RARR |
| e2a00 | 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 67 74 3b 3d 27 20 20 | OWEQUAL..........<-.'>='.. |
| e2a20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 52 42 52 41 43 45 20 20 20 20 20 20 20 20 | .............skip.RBRACE........ |
| e2a40 | 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 7d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .......<-.'}'................ |
| e2a60 | 73 6b 69 70 0a 52 42 52 41 43 4b 45 54 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 | skip.RBRACKET.............<-. |
| e2a80 | 27 5d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 52 50 41 52 45 4e 20 20 | ']'................skip.RPAREN.. |
| e2aa0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 29 27 20 20 20 20 20 20 20 20 20 20 | .............<-.')'.......... |
| e2ac0 | 20 20 20 20 20 20 73 6b 69 70 0a 53 45 4d 49 43 4f 4c 4f 4e 20 20 20 20 20 20 20 20 20 20 20 20 | ......skip.SEMICOLON............ |
| e2ae0 | 26 6c 74 3b 2d 20 27 3b 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 53 4c | <-.';'................skip.SL |
| e2b00 | 41 53 48 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2f 27 20 20 20 20 | ASH................<-.'/'.... |
| e2b20 | 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 53 4c 41 53 48 45 51 55 41 4c 20 20 20 20 20 | ..![=]......skip.SLASHEQUAL..... |
| e2b40 | 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2f 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 | ......<-.'/='...............s |
| e2b60 | 6b 69 70 0a 54 49 4c 44 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 | kip.TILDE................<-.' |
| e2b80 | 7e 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 0a 65 6e 64 5f 6f 66 5f 77 | ~'................skip..end_of_w |
| e2ba0 | 6f 72 64 20 26 6c 74 3b 2d 20 21 5b 61 2d 7a 41 2d 5a 30 2d 39 5f 5d 20 73 6b 69 70 0a 4b 45 59 | ord.<-.![a-zA-Z0-9_].skip.KEY |
| e2bc0 | 57 4f 52 44 5f 61 64 64 72 73 70 61 63 65 20 20 20 26 6c 74 3b 2d 20 27 61 64 64 72 73 70 61 63 | WORD_addrspace...<-.'addrspac |
| e2be0 | 65 27 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 6c 69 67 6e 20 20 | e'...end_of_word.KEYWORD_align.. |
| e2c00 | 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 6c 69 67 6e 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f | .....<-.'align'.......end_of_ |
| e2c20 | 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 6c 6c 6f 77 7a 65 72 6f 20 20 20 26 6c 74 3b 2d 20 27 | word.KEYWORD_allowzero...<-.' |
| e2c40 | 61 6c 6c 6f 77 7a 65 72 6f 27 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 | allowzero'...end_of_word.KEYWORD |
| e2c60 | 5f 61 6e 64 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 6e 64 27 20 20 20 20 20 20 20 20 | _and.........<-.'and'........ |
| e2c80 | 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 6e 79 66 72 61 6d 65 20 20 20 | .end_of_word.KEYWORD_anyframe... |
| e2ca0 | 20 26 6c 74 3b 2d 20 27 61 6e 79 66 72 61 6d 65 27 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 | .<-.'anyframe'....end_of_word |
| e2cc0 | 0a 4b 45 59 57 4f 52 44 5f 61 6e 79 74 79 70 65 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 6e 79 74 | .KEYWORD_anytype.....<-.'anyt |
| e2ce0 | 79 70 65 27 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 73 6d | ype'.....end_of_word.KEYWORD_asm |
| e2d00 | 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 73 6d 27 20 20 20 20 20 20 20 20 20 65 6e 64 | .........<-.'asm'.........end |
| e2d20 | 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 73 79 6e 63 20 20 20 20 20 20 20 26 6c 74 | _of_word.KEYWORD_async.......< |
| e2d40 | 3b 2d 20 27 61 73 79 6e 63 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 | ;-.'async'.......end_of_word.KEY |
| e2d60 | 57 4f 52 44 5f 61 77 61 69 74 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 77 61 69 74 27 20 20 | WORD_await.......<-.'await'.. |
| e2d80 | 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 62 72 65 61 6b 20 20 | .....end_of_word.KEYWORD_break.. |
| e2da0 | 20 20 20 20 20 26 6c 74 3b 2d 20 27 62 72 65 61 6b 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f | .....<-.'break'.......end_of_ |
| e2dc0 | 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 63 61 6c 6c 63 6f 6e 76 20 20 20 20 26 6c 74 3b 2d 20 27 | word.KEYWORD_callconv....<-.' |
| e2de0 | 63 61 6c 6c 63 6f 6e 76 27 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 | callconv'....end_of_word.KEYWORD |
| e2e00 | 5f 63 61 74 63 68 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 63 61 74 63 68 27 20 20 20 20 20 20 | _catch.......<-.'catch'...... |
| e2e20 | 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 6d 65 20 20 20 | .end_of_word.KEYWORD_comptime... |
| e2e40 | 20 26 6c 74 3b 2d 20 27 63 6f 6d 70 74 69 6d 65 27 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 | .<-.'comptime'....end_of_word |
| e2e60 | 0a 4b 45 59 57 4f 52 44 5f 63 6f 6e 73 74 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 63 6f 6e 73 | .KEYWORD_const.......<-.'cons |
| e2e80 | 74 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 63 6f 6e | t'.......end_of_word.KEYWORD_con |
| e2ea0 | 74 69 6e 75 65 20 20 20 20 26 6c 74 3b 2d 20 27 63 6f 6e 74 69 6e 75 65 27 20 20 20 20 65 6e 64 | tinue....<-.'continue'....end |
| e2ec0 | 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 64 65 66 65 72 20 20 20 20 20 20 20 26 6c 74 | _of_word.KEYWORD_defer.......< |
| e2ee0 | 3b 2d 20 27 64 65 66 65 72 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 | ;-.'defer'.......end_of_word.KEY |
| e2f00 | 57 4f 52 44 5f 65 6c 73 65 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 65 6c 73 65 27 20 20 20 | WORD_else........<-.'else'... |
| e2f20 | 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 65 6e 75 6d 20 20 20 | .....end_of_word.KEYWORD_enum... |
| e2f40 | 20 20 20 20 20 26 6c 74 3b 2d 20 27 65 6e 75 6d 27 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f | .....<-.'enum'........end_of_ |
| e2f60 | 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 65 72 72 64 65 66 65 72 20 20 20 20 26 6c 74 3b 2d 20 27 | word.KEYWORD_errdefer....<-.' |
| e2f80 | 65 72 72 64 65 66 65 72 27 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 | errdefer'....end_of_word.KEYWORD |
| e2fa0 | 5f 65 72 72 6f 72 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 65 72 72 6f 72 27 20 20 20 20 20 20 | _error.......<-.'error'...... |
| e2fc0 | 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 65 78 70 6f 72 74 20 20 20 20 20 | .end_of_word.KEYWORD_export..... |
| e2fe0 | 20 26 6c 74 3b 2d 20 27 65 78 70 6f 72 74 27 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 | .<-.'export'......end_of_word |
| e3000 | 0a 4b 45 59 57 4f 52 44 5f 65 78 74 65 72 6e 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 65 78 74 65 | .KEYWORD_extern......<-.'exte |
| e3020 | 72 6e 27 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 66 6e 20 | rn'......end_of_word.KEYWORD_fn. |
| e3040 | 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 66 6e 27 20 20 20 20 20 20 20 20 20 20 65 6e 64 | .........<-.'fn'..........end |
| e3060 | 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 66 6f 72 20 20 20 20 20 20 20 20 20 26 6c 74 | _of_word.KEYWORD_for.........< |
| e3080 | 3b 2d 20 27 66 6f 72 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 | ;-.'for'.........end_of_word.KEY |
| e30a0 | 57 4f 52 44 5f 69 66 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 69 66 27 20 20 20 20 20 | WORD_if..........<-.'if'..... |
| e30c0 | 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 6e 6c 69 6e 65 20 | .....end_of_word.KEYWORD_inline. |
| e30e0 | 20 20 20 20 20 26 6c 74 3b 2d 20 27 69 6e 6c 69 6e 65 27 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f | .....<-.'inline'......end_of_ |
| e3100 | 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 6e 6f 61 6c 69 61 73 20 20 20 20 20 26 6c 74 3b 2d 20 27 | word.KEYWORD_noalias.....<-.' |
| e3120 | 6e 6f 61 6c 69 61 73 27 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 | noalias'.....end_of_word.KEYWORD |
| e3140 | 5f 6e 6f 73 75 73 70 65 6e 64 20 20 20 26 6c 74 3b 2d 20 27 6e 6f 73 75 73 70 65 6e 64 27 20 20 | _nosuspend...<-.'nosuspend'.. |
| e3160 | 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 6e 6f 69 6e 6c 69 6e 65 20 20 20 | .end_of_word.KEYWORD_noinline... |
| e3180 | 20 26 6c 74 3b 2d 20 27 6e 6f 69 6e 6c 69 6e 65 27 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 | .<-.'noinline'....end_of_word |
| e31a0 | 0a 4b 45 59 57 4f 52 44 5f 6f 70 61 71 75 65 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 6f 70 61 71 | .KEYWORD_opaque......<-.'opaq |
| e31c0 | 75 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 5f 6f 72 20 | ue'......end_of_word.KEYWORD_or. |
| e31e0 | 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 6f 72 27 20 20 20 20 20 20 20 20 20 20 65 6e 64 | .........<-.'or'..........end |
| e3200 | 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 6f 72 65 6c 73 65 20 20 20 20 20 20 26 6c 74 | _of_word.KEYWORD_orelse......< |
| e3220 | 3b 2d 20 27 6f 72 65 6c 73 65 27 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 | ;-.'orelse'......end_of_word.KEY |
| e3240 | 57 4f 52 44 5f 70 61 63 6b 65 64 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 70 61 63 6b 65 64 27 20 | WORD_packed......<-.'packed'. |
| e3260 | 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 75 62 20 20 20 20 | .....end_of_word.KEYWORD_pub.... |
| e3280 | 20 20 20 20 20 26 6c 74 3b 2d 20 27 70 75 62 27 20 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f | .....<-.'pub'.........end_of_ |
| e32a0 | 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 72 65 73 75 6d 65 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 | word.KEYWORD_resume......<-.' |
| e32c0 | 72 65 73 75 6d 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 | resume'......end_of_word.KEYWORD |
| e32e0 | 5f 72 65 74 75 72 6e 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 72 65 74 75 72 6e 27 20 20 20 20 20 | _return......<-.'return'..... |
| e3300 | 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 6c 69 6e 6b 73 65 63 74 69 6f 6e | .end_of_word.KEYWORD_linksection |
| e3320 | 20 26 6c 74 3b 2d 20 27 6c 69 6e 6b 73 65 63 74 69 6f 6e 27 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 | .<-.'linksection'.end_of_word |
| e3340 | 0a 4b 45 59 57 4f 52 44 5f 73 74 72 75 63 74 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 73 74 72 75 | .KEYWORD_struct......<-.'stru |
| e3360 | 63 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 73 75 73 | ct'......end_of_word.KEYWORD_sus |
| e3380 | 70 65 6e 64 20 20 20 20 20 26 6c 74 3b 2d 20 27 73 75 73 70 65 6e 64 27 20 20 20 20 20 65 6e 64 | pend.....<-.'suspend'.....end |
| e33a0 | 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 73 77 69 74 63 68 20 20 20 20 20 20 26 6c 74 | _of_word.KEYWORD_switch......< |
| e33c0 | 3b 2d 20 27 73 77 69 74 63 68 27 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 | ;-.'switch'......end_of_word.KEY |
| e33e0 | 57 4f 52 44 5f 74 65 73 74 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 74 65 73 74 27 20 20 20 | WORD_test........<-.'test'... |
| e3400 | 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 68 72 65 61 64 6c | .....end_of_word.KEYWORD_threadl |
| e3420 | 6f 63 61 6c 20 26 6c 74 3b 2d 20 27 74 68 72 65 61 64 6c 6f 63 61 6c 27 20 65 6e 64 5f 6f 66 5f | ocal.<-.'threadlocal'.end_of_ |
| e3440 | 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 74 72 79 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 | word.KEYWORD_try.........<-.' |
| e3460 | 74 72 79 27 20 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 | try'.........end_of_word.KEYWORD |
| e3480 | 5f 75 6e 69 6f 6e 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 75 6e 69 6f 6e 27 20 20 20 20 20 20 | _union.......<-.'union'...... |
| e34a0 | 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 75 6e 72 65 61 63 68 61 62 6c 65 | .end_of_word.KEYWORD_unreachable |
| e34c0 | 20 26 6c 74 3b 2d 20 27 75 6e 72 65 61 63 68 61 62 6c 65 27 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 | .<-.'unreachable'.end_of_word |
| e34e0 | 0a 4b 45 59 57 4f 52 44 5f 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 20 26 6c 74 3b 2d 20 27 75 | .KEYWORD_usingnamespace.<-.'u |
| e3500 | 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 27 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f | singnamespace'.end_of_word.KEYWO |
| e3520 | 52 44 5f 76 61 72 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 76 61 72 27 20 20 20 20 20 20 | RD_var.........<-.'var'...... |
| e3540 | 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 76 6f 6c 61 74 69 6c 65 20 | ...end_of_word.KEYWORD_volatile. |
| e3560 | 20 20 20 26 6c 74 3b 2d 20 27 76 6f 6c 61 74 69 6c 65 27 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f | ...<-.'volatile'....end_of_wo |
| e3580 | 72 64 0a 4b 45 59 57 4f 52 44 5f 77 68 69 6c 65 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 77 68 | rd.KEYWORD_while.......<-.'wh |
| e35a0 | 69 6c 65 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 0a 6b 65 79 77 6f 72 64 20 | ile'.......end_of_word..keyword. |
| e35c0 | 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 61 64 64 72 73 70 61 63 65 20 2f 20 4b 45 59 57 4f 52 | <-.KEYWORD_addrspace./.KEYWOR |
| e35e0 | 44 5f 61 6c 69 67 6e 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6c 6c 6f 77 7a 65 72 6f 20 2f 20 4b 45 | D_align./.KEYWORD_allowzero./.KE |
| e3600 | 59 57 4f 52 44 5f 61 6e 64 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6e 79 | YWORD_and........../.KEYWORD_any |
| e3620 | 66 72 61 6d 65 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6e 79 74 79 70 65 20 2f 20 4b 45 59 57 4f 52 | frame./.KEYWORD_anytype./.KEYWOR |
| e3640 | 44 5f 61 73 6d 20 2f 20 4b 45 59 57 4f 52 44 5f 61 73 79 6e 63 0a 20 20 20 20 20 20 20 20 20 2f | D_asm./.KEYWORD_async........../ |
| e3660 | 20 4b 45 59 57 4f 52 44 5f 61 77 61 69 74 20 2f 20 4b 45 59 57 4f 52 44 5f 62 72 65 61 6b 20 2f | .KEYWORD_await./.KEYWORD_break./ |
| e3680 | 20 4b 45 59 57 4f 52 44 5f 63 61 6c 6c 63 6f 6e 76 20 2f 20 4b 45 59 57 4f 52 44 5f 63 61 74 63 | .KEYWORD_callconv./.KEYWORD_catc |
| e36a0 | 68 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 6d 65 20 2f 20 | h........../.KEYWORD_comptime./. |
| e36c0 | 4b 45 59 57 4f 52 44 5f 63 6f 6e 73 74 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6e 74 69 6e 75 65 | KEYWORD_const./.KEYWORD_continue |
| e36e0 | 20 2f 20 4b 45 59 57 4f 52 44 5f 64 65 66 65 72 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 | ./.KEYWORD_defer........../.KEYW |
| e3700 | 4f 52 44 5f 65 6c 73 65 20 2f 20 4b 45 59 57 4f 52 44 5f 65 6e 75 6d 20 2f 20 4b 45 59 57 4f 52 | ORD_else./.KEYWORD_enum./.KEYWOR |
| e3720 | 44 5f 65 72 72 64 65 66 65 72 20 2f 20 4b 45 59 57 4f 52 44 5f 65 72 72 6f 72 20 2f 20 4b 45 59 | D_errdefer./.KEYWORD_error./.KEY |
| e3740 | 57 4f 52 44 5f 65 78 70 6f 72 74 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 65 | WORD_export........../.KEYWORD_e |
| e3760 | 78 74 65 72 6e 20 2f 20 4b 45 59 57 4f 52 44 5f 66 6e 20 2f 20 4b 45 59 57 4f 52 44 5f 66 6f 72 | xtern./.KEYWORD_fn./.KEYWORD_for |
| e3780 | 20 2f 20 4b 45 59 57 4f 52 44 5f 69 66 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 | ./.KEYWORD_if........../.KEYWORD |
| e37a0 | 5f 69 6e 6c 69 6e 65 20 2f 20 4b 45 59 57 4f 52 44 5f 6e 6f 61 6c 69 61 73 20 2f 20 4b 45 59 57 | _inline./.KEYWORD_noalias./.KEYW |
| e37c0 | 4f 52 44 5f 6e 6f 73 75 73 70 65 6e 64 20 2f 20 4b 45 59 57 4f 52 44 5f 6e 6f 69 6e 6c 69 6e 65 | ORD_nosuspend./.KEYWORD_noinline |
| e37e0 | 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 6f 70 61 71 75 65 20 2f 20 4b 45 59 | ........../.KEYWORD_opaque./.KEY |
| e3800 | 57 4f 52 44 5f 6f 72 20 2f 20 4b 45 59 57 4f 52 44 5f 6f 72 65 6c 73 65 20 2f 20 4b 45 59 57 4f | WORD_or./.KEYWORD_orelse./.KEYWO |
| e3820 | 52 44 5f 70 61 63 6b 65 64 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 70 75 62 | RD_packed........../.KEYWORD_pub |
| e3840 | 20 2f 20 4b 45 59 57 4f 52 44 5f 72 65 73 75 6d 65 20 2f 20 4b 45 59 57 4f 52 44 5f 72 65 74 75 | ./.KEYWORD_resume./.KEYWORD_retu |
| e3860 | 72 6e 20 2f 20 4b 45 59 57 4f 52 44 5f 6c 69 6e 6b 73 65 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 | rn./.KEYWORD_linksection........ |
| e3880 | 20 20 2f 20 4b 45 59 57 4f 52 44 5f 73 74 72 75 63 74 20 2f 20 4b 45 59 57 4f 52 44 5f 73 75 73 | ../.KEYWORD_struct./.KEYWORD_sus |
| e38a0 | 70 65 6e 64 20 2f 20 4b 45 59 57 4f 52 44 5f 73 77 69 74 63 68 20 2f 20 4b 45 59 57 4f 52 44 5f | pend./.KEYWORD_switch./.KEYWORD_ |
| e38c0 | 74 65 73 74 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 74 68 72 65 61 64 6c 6f | test........../.KEYWORD_threadlo |
| e38e0 | 63 61 6c 20 2f 20 4b 45 59 57 4f 52 44 5f 74 72 79 20 2f 20 4b 45 59 57 4f 52 44 5f 75 6e 69 6f | cal./.KEYWORD_try./.KEYWORD_unio |
| e3900 | 6e 20 2f 20 4b 45 59 57 4f 52 44 5f 75 6e 72 65 61 63 68 61 62 6c 65 0a 20 20 20 20 20 20 20 20 | n./.KEYWORD_unreachable......... |
| e3920 | 20 2f 20 4b 45 59 57 4f 52 44 5f 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 20 2f 20 4b 45 59 57 | ./.KEYWORD_usingnamespace./.KEYW |
| e3940 | 4f 52 44 5f 76 61 72 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 | ORD_var./.KEYWORD_volatile./.KEY |
| e3960 | 57 4f 52 44 5f 77 68 69 6c 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | WORD_while</code></pre></figure> |
| e3980 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 5a 65 6e 22 3e 3c 61 20 68 72 | ..............<h3.id="Zen"><a.hr |
| e39a0 | 65 66 3d 22 23 74 6f 63 2d 5a 65 6e 22 3e 5a 65 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | ef="#toc-Zen">Zen</a>.<a.class=" |
| e39c0 | 68 64 72 22 20 68 72 65 66 3d 22 23 5a 65 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | hdr".href="#Zen">..</a></h3>.... |
| e39e0 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6d 6d 75 6e 69 63 61 74 65 | ....<ul>.........<li>Communicate |
| e3a00 | 20 69 6e 74 65 6e 74 20 70 72 65 63 69 73 65 6c 79 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | .intent.precisely.</li>......... |
| e3a20 | 3c 6c 69 3e 45 64 67 65 20 63 61 73 65 73 20 6d 61 74 74 65 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 | <li>Edge.cases.matter.</li>..... |
| e3a40 | 20 20 20 20 3c 6c 69 3e 46 61 76 6f 72 20 72 65 61 64 69 6e 67 20 63 6f 64 65 20 6f 76 65 72 20 | ....<li>Favor.reading.code.over. |
| e3a60 | 77 72 69 74 69 6e 67 20 63 6f 64 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4f | writing.code.</li>.........<li>O |
| e3a80 | 6e 6c 79 20 6f 6e 65 20 6f 62 76 69 6f 75 73 20 77 61 79 20 74 6f 20 64 6f 20 74 68 69 6e 67 73 | nly.one.obvious.way.to.do.things |
| e3aa0 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 75 6e 74 69 6d 65 20 63 72 61 73 68 | .</li>.........<li>Runtime.crash |
| e3ac0 | 65 73 20 61 72 65 20 62 65 74 74 65 72 20 74 68 61 6e 20 62 75 67 73 2e 3c 2f 6c 69 3e 0a 20 20 | es.are.better.than.bugs.</li>... |
| e3ae0 | 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6d 70 69 6c 65 20 65 72 72 6f 72 73 20 61 72 65 20 62 65 74 | ......<li>Compile.errors.are.bet |
| e3b00 | 74 65 72 20 74 68 61 6e 20 72 75 6e 74 69 6d 65 20 63 72 61 73 68 65 73 2e 3c 2f 6c 69 3e 0a 20 | ter.than.runtime.crashes.</li>.. |
| e3b20 | 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 63 72 65 6d 65 6e 74 61 6c 20 69 6d 70 72 6f 76 65 6d 65 | .......<li>Incremental.improveme |
| e3b40 | 6e 74 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 76 6f 69 64 20 6c 6f 63 61 | nts.</li>.........<li>Avoid.loca |
| e3b60 | 6c 20 6d 61 78 69 6d 75 6d 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 65 64 | l.maximums.</li>.........<li>Red |
| e3b80 | 75 63 65 20 74 68 65 20 61 6d 6f 75 6e 74 20 6f 6e 65 20 6d 75 73 74 20 72 65 6d 65 6d 62 65 72 | uce.the.amount.one.must.remember |
| e3ba0 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 6f 63 75 73 20 6f 6e 20 63 6f 64 65 | .</li>.........<li>Focus.on.code |
| e3bc0 | 20 72 61 74 68 65 72 20 74 68 61 6e 20 73 74 79 6c 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | .rather.than.style.</li>........ |
| e3be0 | 20 3c 6c 69 3e 52 65 73 6f 75 72 63 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 6d 61 79 20 66 61 69 | .<li>Resource.allocation.may.fai |
| e3c00 | 6c 3b 20 72 65 73 6f 75 72 63 65 20 64 65 61 6c 6c 6f 63 61 74 69 6f 6e 20 6d 75 73 74 20 73 75 | l;.resource.deallocation.must.su |
| e3c20 | 63 63 65 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4d 65 6d 6f 72 79 20 69 | cceed.</li>.........<li>Memory.i |
| e3c40 | 73 20 61 20 72 65 73 6f 75 72 63 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 | s.a.resource.</li>.........<li>T |
| e3c60 | 6f 67 65 74 68 65 72 20 77 65 20 73 65 72 76 65 20 74 68 65 20 75 73 65 72 73 2e 3c 2f 6c 69 3e | ogether.we.serve.the.users.</li> |
| e3c80 | 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 0a 20 20 20 20 20 | .......</ul>.................... |
| e3ca0 | 20 3c 2f 6d 61 69 6e 3e 3c 2f 64 69 76 3e 0a 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 3c 2f 62 6f | .</main></div>.....</div>...</bo |
| e3cc0 | 64 79 3e 0a 3c 2f 68 74 6d 6c 3e 0a 50 4b 01 02 14 00 14 00 00 00 00 00 00 00 21 52 6f 61 ab 2c | dy>.</html>.PK............!Roa., |
| e3ce0 | 14 00 00 00 14 00 00 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6d 69 6d 65 74 79 | ..........................mimety |
| e3d00 | 70 65 50 4b 01 02 14 00 14 00 00 00 00 00 00 00 21 52 6f 92 d0 0a fc 00 00 00 fc 00 00 00 16 00 | pePK............!Ro............. |
| e3d20 | 00 00 00 00 00 00 00 00 00 00 00 00 3a 00 00 00 4d 45 54 41 2d 49 4e 46 2f 63 6f 6e 74 61 69 6e | ............:...META-INF/contain |
| e3d40 | 65 72 2e 78 6d 6c 50 4b 01 02 14 00 14 00 00 00 00 00 00 00 21 52 47 31 08 3e a9 02 00 00 a9 02 | er.xmlPK............!RG1.>...... |
| e3d60 | 00 00 11 00 00 00 00 00 00 00 00 00 00 00 00 00 6a 01 00 00 4f 45 42 50 53 2f 63 6f 6e 74 65 6e | ................j...OEBPS/conten |
| e3d80 | 74 2e 6f 70 66 50 4b 01 02 14 00 14 00 00 00 00 00 00 00 21 52 4e 29 b7 9a 88 01 00 00 88 01 00 | t.opfPK............!RN)......... |
| e3da0 | 00 0f 00 00 00 00 00 00 00 00 00 00 00 00 00 42 04 00 00 4f 45 42 50 53 2f 6e 61 76 2e 78 68 74 | ...............B...OEBPS/nav.xht |
| e3dc0 | 6d 6c 50 4b 01 02 14 00 14 00 00 00 00 00 00 00 21 52 99 97 b7 2b a6 36 0e 00 a6 36 0e 00 11 00 | mlPK............!R...+.6...6.... |
| e3de0 | 00 00 00 00 00 00 00 00 00 00 00 00 f7 05 00 00 4f 45 42 50 53 2f 69 6e 64 65 78 2e 78 68 74 6d | ................OEBPS/index.xhtm |
| e3e00 | 6c 50 4b 05 06 00 00 00 00 05 00 05 00 35 01 00 00 cc 3c 0e 00 00 00 | lPK..........5....<.... |